3.1 KiB
crystal-orb
Ta en titt inn i krystallkulen og se om det går en buss i dag.
AtB-infoskjerm til å visepå TV-skjermen på terminalrommet.
Få tak i avgangstider
Det ser ut til at API-et mpolden har laget er tilstrekkelig for å få tak i alle busser og avgangstider for et gitt stoppested (stopPlace). API-et hans er en wrapper for Entur sitt API som er litt tyngre skyts en det hackere har behov for, derav hvorfor han lagde et (tror jeg).
Informasjon fra mpolden sitt API
Dersom man gir https://mpolden.no/atb/v2/departures/ en høvelig kode for stoppested, gir den tilbake disse feltene:
line
- Dette er linje-nummeret til bussen
scheduledDepartureTime
- Dette er den forventede avgangstiden til bussen, basert på Entur sitt felt
expectedDepartureTime
- I tilleg finnes
aimedDepartureTime
ogactualDepartureTime
hos Entur, som er hva bussen er satt opp til etter planen og når bussen faktisk dro. - Av disse er naturligvis
expectedDepartureTime
det viktigste feltet for oss
- Dette er den forventede avgangstiden til bussen, basert på Entur sitt felt
destination
- Hvor bussen skal til slutt, det er dette som står foran på bussen
- Basert på
destinationDisplay.frontText
hos Entur
isRealTimeData
- Hvorvidt tidspunktet er oppdatert/basert på sanntidsdata
- Gir en indikasjon på hvor stabil informasjonen er
- Hvis det er sanntid skal man ta det med en klype salt
- Hvis det ikke er sanntid er det ikke vits å finne frem saltbøssen engang
isGoingTowardsCentrum
- Basert på
journeyPattern.directionType
hos Entur - Busser går stort sett enten inn mot Midtbyen eller ut, dette er kjekt å vite ettersom man ofte vet hvilken retning man skal herfra
- Basert på
Koder for stoppested
Man kan finne stoppestedskoden på url https://stoppested.entur.org/ . De mest relevante kodene for oss på PVV er:
- Gløshaugen: 44085
- Høgskoleringen: 42029
- Hesthagen: 41620
Funksjonalitet
Vi har på dette tidspunktet ingen anelse hvilken funksjonalitet dette programmet skal ha, men noen ideer har vi allerede.
- Mulighet for å vise de kommende avgangstidene på Georg/Grzegorz
- Mer generelt gjennom
mpv
på en eller annen måte - Gjerne med kule farger eller et nice layout
- Mer generelt gjennom
- Hadde kanskje vært kult med et cli hvor man kjapt kan sjekke de neste bussene som drar
- Kule farger er også nice her
- En nettside eller en annen visualiseringsmetode
- Nettopp for å kunne støtte et brukervennlig layout av informasjonen
Hvordan kjøre programmet slik det er
Akkurat nå funker crystal_orb.py
omtrent slik:
- Man kjører programmet med
python crystal_orb.py <stoppested>
- Stoppested kan være gløshaugen, høgskoleringen eller hesthagen
crystal orb
får avgangsinformasjon frampolden
sitt APIcrystal orb
lager en liste av all avgangsinformasjonen den fikkcrystal orb
skriver teksten på en kjørende mpv-sesjon- Merk at
mpv
må ha satt opp en ipc socket somcrystal orb
skriver til - Hvis denne socket-en ikke finnes, skrives listen til stdout
- Merk at
Forbedringer
- Legge til
aimedDepartureTime
slik at vi kan se hva avviket er- Av og til kjører bussen inn igjen etterslepet, dermed kan det være nyttig