diff options
author | Rose <rose@pinkro.se> | 2025-10-10 11:29:10 +0200 |
---|---|---|
committer | Rose <rose@pinkro.se> | 2025-10-10 11:29:10 +0200 |
commit | b7dfa5fdb2330f1e1cd222365055c3d45ad473be (patch) | |
tree | 78e455c8c43c6c00fc4639932ba7315e8c074cd3 /desktop/Local/share/barmodules/ice.sh | |
parent | 98424148dfe9ab666ee928df7565e65faa41b61b (diff) | |
download | dotfiles-main.tar.gz dotfiles-main.tar.bz2 |
Diffstat (limited to 'desktop/Local/share/barmodules/ice.sh')
-rwxr-xr-x | desktop/Local/share/barmodules/ice.sh | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/desktop/Local/share/barmodules/ice.sh b/desktop/Local/share/barmodules/ice.sh new file mode 100755 index 0000000..ae04fcc --- /dev/null +++ b/desktop/Local/share/barmodules/ice.sh @@ -0,0 +1,21 @@ +#!/usr/bin/bash + +iceStatus=$(curl https://iceportal.de/api1/rs/status 2>/dev/null) +iceTrip=$(curl https://iceportal.de/api1/rs/tripInfo/trip 2> /dev/null) + +nextStopID=$(echo ${iceTrip} | jq -r .trip.stopInfo.actualNext) +nextStopObject=$(echo ${iceTrip} | jq -c ".trip.stops | map(select(.station.evaNr == \"${nextStopID}\"))") + +scheduledArrival=$(echo ${nextStopObject} | jq -r ".[0].timetable.scheduledDepartureTime/1000") +actualArrival=$(echo ${nextStopObject} | jq -r ".[0].timetable.actualArrivalTime/1000") +arrivalDelay=$(echo ${nextStopObject} | jq -r ".[0].timetable.arrivalDelay") + +trainDistanceSinceStop=$(echo ${iceTrip} | jq -r ".trip.distanceFromLastStop") +nextStopDistance=$(echo ${nextStopObject} | jq -r "(.[0].info.distance-${trainDistanceSinceStop})/1000") + + +echo -n "ICE $(echo ${iceTrip} | jq -r '.trip.vzn'): " +echo -n "Speed: $(echo ${iceStatus} | jq -r '.speed')km/h; " +echo -n "Next Stop: $(echo ${nextStopObject} | jq -r '.[0].station.name') " +echo -n $(date --date="@${actualArrival}" +"%H:%M")" (${arrivalDelay}) " +echo -n "${nextStopDistance}km" |