Open florianlederer opened 4 years ago
Gut wäre es auch die Funktion von https://www.mvg.de/api/fahrinfo/location/queryWeb?q=Marienplatz zu erklären und damit die ID Findung zu vereinfachen.
Mir ist aufgefallen, dass die MVG API nur Abfahrtszeiten mit dem Flag "live": false
retourniert? Bedeutet das, die API kennt nur SOLL-Abfahrtszeiten oder sind diese tatsächlich in Echtzeit und das Flag nur irreführend?
@JakobRieckhGraf Es wird "live": false
wenn keine Live Daten zum Verkehrsmittel verfügbar sind, anderenfalls wird "live": true
gesetzt. Die entsprechenden Abfahrtszeiten werden dann im Live-Fall korrekt angepasst, sonst sind es die SOLL-Abfahrtszeiten. Allerdings sind meiner Erfahrung nach die Live Daten der MVG API nicht sonderlich genau.
@florianlederer vielen Dank für deine Antwort. Während der Endpunkt
/location
zwar behauptet, dass bei der Station Marienplatz
Live-Abfahrtszeiten verfügbar sind, gibt der Endpunkt /departure
nur "live": false
für diese Station zurück. Ein Bild zur Erläuterung ist angehängt.
Hast du das gleiche Problem auch bemerkt?
@JakobRieckhGraf Okay ich muss mich korrigieren, die departureTime
wird im Verspätungsfall nicht angepasst, zu ihr muss man das delay
hinzu addieren, das passiert auch im Code. Ich bin da nur nicht mehr so ganz drinnen... :)
@JakobRieckhGraf das mit dem live
tag ist mir so noch gar nicht aufgefallen. In deinem Bild ist ja "delay": 3
und trotzdem "live": false
. Da bin ich ehrlich gesagt überfragt. Ich parse dieses Tag gar nicht.
@florianlederer ja, das live
Flag scheint immer false
zu sein. Evtl steht es für etwas anderes und alle Zeiten sind immer in Echtzeit unabhängig von diesem Flag. Ich muss die API über einen längeren Zeitraum beobachten, um das besser zu verstehen.
@JakobRieckhGraf Reine Spekulation, aber evt. hat es damit etwas auf sich, wie das delay berechnet wird. Zum Beispiel ob es sich um eine berechnete Verzögerung über die Ankunftszeit am letzten Bahnhof oder z.B. über Live GPS-Tracker in den Wägen.
Die Doku für die MVG API sollte mit Beispielen und JSON Antworten ergänzt werden.