Public Transport Display
aus Metalab Wiki, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
cf issue 50
Desired Data
Siehe Lage
- U2 Richtung Karlsplatz
- U2 Richtung Aspernstraße
- Linie 2 Richtung Friedrich-Engels-Platz
- Linie 2 Richtung Ottakringer Str., Erdbrustgasse
- Linie 1 Richtung Stefan-Fadinger-Platz
- Linie 1 Richtung Prater Hauptallee
- Linie D Richtung Nußdorf
- Linie D Richtung Südbahnhof S
Ergibt bei Tag 4 (Linien) x 2 (Richtungen) x 2 (Abfahrten) = 16 Abfahrtszeiten (wenn wir "alles" anzeigen wollen)
- Bei Nacht: N25, N38, N60, N66, N67 (Station Rathausplatz/Burgtheater) + U2 am Wochenende
iTip (siehe unten) kann die nächsten Abfahrten pro Station anzeigen (FT API kann das auch) - wir könnten also einfach die ersten N Abfahrten davon anzeigen:
- Station Rathaus U
- Station Rathausplatz, Burgtheater
Walking Distance
Nett wäre, wenn wir für alle Linien + Richtungen ungefähre Minimal-Wegzeiten vom Metalab erarbeiten könnten, dann könnten wir zB U2 Richtung Karlsplatz ausblenden, wenn ETA unter zB 3 Minuten ist (und dafür bei limitiertem Display-Platz schon mehr zukünftigere Events anzeigen).
Bitte hier ergänzen:
- U2 Richtung Karlsplatz: X Minuten
- U2 Richtung Aspernstraße: X Minuten
- Linie 2 Richtung Friedrich-Engels-Platz: X Minuten
- Linie 2 Richtung Ottakringer Str., Erdbrustgasse: X Minuten
- Linie 1 Richtung Stefan-Fadinger-Platz: X Minuten
- Linie 1 Richtung Prater Hauptallee: X Minuten
- Linie D Richtung Nußdorf: X Minuten
- Linie D Richtung Südbahnhof S: X Minuten
Data Sources
Prinzipiell gibt's 2 Möglichkeiten:
- iTip (HTML Scraping): http://www.wienerlinien.at/itip/
- Wird von https://github.com/kelvan/gotoVienna verwendet (Python-Client-Code existiert)
- gotoVienna hat auch ein sehr nettes CLI-Tool ("itip") für Abfragen
- außerdem hat gotoVienna ein "scotty"-CLI-Tool, mit dem man Routing machen kann (wohl eher für interaktive Sachen sinnvoll)
- FT API
- Da gibt's bei Bedarf auch vorhandenen Python-Client-Code (ask PyUGAT)
- Möglicher Vorteil: Zeigt auch erste/letzte Fahrt an
Hardware
Mehrere Möglichkeiten:
- LED-based Display (via USB)
- Backlit LCD Display (via USB)
- Tablet / Screen (via Web/HTTP/HTML)
Wir können ohne Hardware jedenfalls schon mal das Backend prototypen.