FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Pythonf am 08 Dezember 2014, 00:43:44

Titel: DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: Pythonf am 08 Dezember 2014, 00:43:44
Hallo FHEM-Freunde,
Ich habe ein Kindle Fire als Anzeige und Steuerung von FHEM per Webviewcontroll.apk und würde dieses gerne erweitern.
Ich fahre jeden Tag die selbe Strecke mit der Bahn und es wäre eine große Erleichterung für mich, wenn ich schnell am Tablet ablesen könnte, ob mein Zug pünktlich kommt oder nicht. Hierbei wären zwei Optionen für mich interessant: Zum einen die Darstellung wie im Anhang oder ähnlich, welches direkt von der Seite der DB kopiert ist und immer an der aktuellen Uhrzeit gehalten sein müsste. Mein erster Gedanke hierzu war "webif" wie ich es bei mir schon mit einem Regenradar umgesetzt habe. Leider sehe ich keine Möglichkeit dies bei der Bahn Website umzusetzen. Falls diese Umsetzung überhaupt nicht realisierbar ist, wäre noch interessant, ob man - eventuell per DB-App einen Verspätungsalarm einrichten kann und den Inhalt der Pushnachrichten oder ähnlichem an FHEM sendet und das FHEM diese Informationen dann im Frontend anzeigt.

Im Forum gefunden habe ich diesen Thread: http://forum.fhem.de/index.php?topic=10862.0 (http://forum.fhem.de/index.php?topic=10862.0)
Leider hilft mir dieser nicht wirklich weiter, da ich in Baden Württenberg wohne und das nicht zum laufen gebracht habe.

Ich freue mich über Kommentare und Anregungen und bin mir fast sicher, dass der ein oder andere Zugfahrer durchaus auch Interesse an einer solchen Funktion hätte.
Falls fragen zu meiner Idee bestehn versuche ich diese aktiv in den Kommentaren zu klären.

Beste Grüße
Fabian
Titel: Antw:DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: Pythonf am 08 Dezember 2014, 12:49:08
Was ich noch gefunden habe, aber leider genauso wenig integrieren kann wäre dieses Angebot der Deutschen Bahn als Abfahrtsmonitor anstatt der Suche nach einer konkreten Route. Diese Option ist möglicherweise sogar sinnvoller. Es müsste nur eine Art Skript geben, welches  die Eingabefelder ausfüllt, die Seite in einer definierten Zeit aktualisiert und als zusätzliche Option nur den Ausschnitt, der von Interesse ist anzeigt.
http://reiseauskunft.bahn.de/bin/bhftafel.exe (http://reiseauskunft.bahn.de/bin/bhftafel.exe)
Titel: Antw:DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: betateilchen am 08 Dezember 2014, 13:32:07
Ich nutze dafür gerne die Abfahrtsmonitore der ÖBB, die funktionieren auch für deutsche Bahnhöfe. Dort gibt es direkt html-Codeschnipsel für die eigene Homepage, die man einfach per fhem-weblink, beispielsweise als iframe, einbinden kann. Einziges Manko: Die Österrreicher zeigen keine deutschen Verspätungen an.

Sieht dann beispielsweise so aus:

http://bt-bcblog.blogspot.de/p/abfahrten.html

Edit: ich sehe gerade, dass Verspätungen doch berücksichtigt werden :)

(http://up.picr.de/20338220pm.png)
Titel: Antw:DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: betateilchen am 08 Dezember 2014, 13:38:45
Zu finden unter:

http://www.oebb.at/de/Reiseplanung/Fahrplanauskunft/index.jsp

dort -> Fahrplanauskunft -> Stationsinformation

dann den Bahnhof eingeben, danach erscheinen rechts die HTML Codes zum runterladen

(http://up.picr.de/20338256lt.jpg)
Titel: Antw:DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: Pythonf am 08 Dezember 2014, 14:54:38
Das schaut ja mal super aus. Genau was ich gesucht habe. Bin zwar entäuscht von der Deutschen Bahn, dass man sowas über Österreich lösen muss. Aber Beschwerden zur Deutschen Bahn sind eindeutig OffTopic. Schaut zwar nicht ganz so gut aus, wie auf der Deutschen Bahn Website aber es liefert genau die Informationen, die Ich brauche.
Hier der direktlink http://fahrplan.oebb.at/bin/stboard.exe/ (http://fahrplan.oebb.at/bin/stboard.exe/)

Danke und Grüße
Fabian
Titel: Antw:[Gelöst]DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: Freibeuter am 09 Dezember 2014, 21:24:18
Aber Hallo das schaut ja klasse aus!
Hast Du auch schon einen Weg gefunden, die Daten per HTTPMOD auszulesen?
Über OEBB sieht es ja übersichtlich aus nur bekomme die Daten nicht in den buf da sie wohl nachgeladen werden :-(

Alternativ habe ich dieses gefunden und dort über den productsFilter schon auf S-Bahn begrenzt:
http://reiseauskunft.bahn.de/bin/bhftafel.exe/dn?ld=212.138&rt=1&time=actual&productsFilter=000010000&start=yes&boardType=dep&input=D%C3%BCsseldorf (http://reiseauskunft.bahn.de/bin/bhftafel.exe/dn?ld=212.138&rt=1&time=actual&productsFilter=000010000&start=yes&boardType=dep&input=D%C3%BCsseldorf)
Jedoch liefert sie so viel Daten, da bekomme ich keine passenden Regex zusammen.

Titel: Antw:[Gelöst]DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: Wuppi68 am 09 Dezember 2014, 21:48:54
Zitat von: Freibeuter am 09 Dezember 2014, 21:24:18
Aber Hallo das schaut ja klasse aus!
Hast Du auch schon einen Weg gefunden, die Daten per HTTPMOD auszulesen?
Über OEBB sieht es ja übersichtlich aus nur bekomme die Daten nicht in den buf da sie wohl nachgeladen werden :-(

Alternativ habe ich dieses gefunden und dort über den productsFilter schon auf S-Bahn begrenzt:
http://reiseauskunft.bahn.de/bin/bhftafel.exe/dn?ld=212.138&rt=1&time=actual&productsFilter=000010000&start=yes&boardType=dep&input=D%C3%BCsseldorf (http://reiseauskunft.bahn.de/bin/bhftafel.exe/dn?ld=212.138&rt=1&time=actual&productsFilter=000010000&start=yes&boardType=dep&input=D%C3%BCsseldorf)
Jedoch liefert sie so viel Daten, da bekomme ich keine passenden Regex zusammen.

mach die Suche mal über http://m.bahn.de , da gibt es weniger Infos und es sollte auch eine RegEx möglich sein :-)

z.B. http://mobile.bahn.de/bin/mobil/query.exe/dox?ld=9641&n=1&i=ja.02045741.1418157979&rt=1&use_realtime_filter=1&sotRequest=1&webview=&OK#focus
Titel: Antw:[Gelöst]DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: Freibeuter am 09 Dezember 2014, 22:03:40
Danke für den Tip !
Habe die URL noch angepasst damit sie dauerhaft funktioniert:
http://mobile.bahn.de/bin/mobil/bhftafel.exe/dox?time=actual&productsFilter=000010000&start=yes&boardType=dep&input=D%C3%BCsseldorf (http://mobile.bahn.de/bin/mobil/bhftafel.exe/dox?time=actual&productsFilter=000010000&start=yes&boardType=dep&input=D%C3%BCsseldorf)
EDIT mit Verspätungen:
&rt=1&use_realtime_filter=1&sotRequest=1&webview=&OK#focus (//http://#focus)


Und auf eine Verbindung beschränkt:
http://reiseauskunft.bahn.de/bin/query.exe/dox?S=H%C3%B6sel&Z=D%C3%BCsseldorf&start=1&rt=1&use_realtime_filter=1&sotRequest=1&webview=&OK#focus (http://reiseauskunft.bahn.de/bin/query.exe/dox?S=H%C3%B6sel&Z=D%C3%BCsseldorf&start=1&rt=1&use_realtime_filter=1&sotRequest=1&webview=&OK#focus)
Titel: Antw:[Gelöst]DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: Pythonf am 09 Dezember 2014, 22:27:20
Das schaut ja richtig interessant aus. Das erspart mir/uns schonmal den Umweg über die ÖBB.
Kann man die Website in fhem so einbinden, dass jediglich die Informationen zu den Zügen angezeigt werden (mit Verspätung, Abfahrt, Ziel, Zugtyp) ohne das die Einblendungen der Website wie Impressum etc. mit eingebunden sind?

Meine Einbindung schaut aktuell so aus (weblink)
iframe http://mobile.bahn.de/bin/mobil/bhftafel.exe/dox?ld=9646&rt=1&use_realtime_filter=1&webview=&productsFilter=111100000&start=yes&boardType=dep&input=Lauffen" framborder="0" style="border:0px

Funktioniert zwar, sieht m.M. nach auch schon besser aus, als das blau der ÖBB. Aber noch far from perfekt.
Kann man eigentlich die Informationen auslesen, die dort angezeigt werden?
Das ganze funktioniert ja auf Javescript-Basis. Wäre doch eine schöne Idee für ein neues Modul, mit den Parametern:
Ankunft-/Abfahrtszeit;Verspätung;Abfahrtsort;Zielort;Zugtyp;zzgl. Infos(Grund der Verspätung, etc..)
Ich kenne mich leider mit Javaskript, HTML etc.. kaum aus, so dass ich in diese Richtung nicht viel helfen kann,

Grüße
Fabian
Titel: Antw:DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: Freibeuter am 10 Dezember 2014, 09:38:10
Habe noch eine Anleitung für Externe Aufrufparameter des DB Servers gefunden:
http://www.geiervally.lechtal.at/sixcms/media.php/1405/Parametrisierte%20%DCbergabe%20Bahnauskunft(V%205.12-R4.30c,%20f%FCr.pdf (http://www.geiervally.lechtal.at/sixcms/media.php/1405/Parametrisierte%20%DCbergabe%20Bahnauskunft(V%205.12-R4.30c,%20f%FCr.pdf)

Damit ist meine URL jetzt kürzer und auch der buf nicht mehr so umfangreich.
http://reiseauskunft.bahn.de/bin/query.exe/dox?S=H%C3%B6sel&Z=D%C3%BCsseldorf&start=1&rt=1 (http://reiseauskunft.bahn.de/bin/query.exe/dox?S=H%C3%B6sel&Z=D%C3%BCsseldorf&start=1&rt=1)
Titel: Antw:DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: onkel-tobi am 06 April 2015, 19:30:23
Hi,

was genau bewirkt jetzt, dass die Abfrage nicht abläuft?
Wie kriege ich es jetzt hin, dass ich nur die Direktverbindungen abfrage? Wenn ich das PDF richtig verstanden habe über &journeyOptions=0, aber das funktioniert scheinbar nicht?

Danke & Gruß,
Tobi
Titel: Antw:DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: Freibeuter am 07 April 2015, 11:49:03
Hallo, so ganz verstehe ich die Frage nicht, was meinst du mit ablaufen ?
Dieser Link bewirkt, das immer der nächste Zug von Hamburg nach Berlin angezeigt wird, mit Realtime Informationen:

http://reiseauskunft.bahn.de/bin/query.exe/dox?S=hamburg&Z=Berlin&start=1&rt=1&journeyOptions=1001


S=hamburg (Start)
Z=Berlin(Ziel)
start=1(Abfrage direkt starten und nicht er die Bahnhöfe bestätigen)
rt=1(Realtime Informatinen)
&journeyOptions=1001 (nur Direktverbindungen)

Ich hoffe ich konnte Dir helfen.
Gruß Peter F.

Titel: Antw:DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: AxelSchweiss am 07 April 2015, 15:47:57
Ich will ja nicht meckern ... aber ... :-)
So ganz kommt das leider noch nicht hin :-(
Im aktuellen Beispiel zeigt die Auskunft keine Verspätung an.
In der Detailansicht fällt der Zug dann aber sogar ganz aus.
Hier wäre interessant noch das vorhandensein des Warndreiecks auszuwerten.

Titel: Antw:DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: JoWiemann am 07 April 2015, 21:58:14
Hallo,

ich habe mal angefangen ein Modul 98_DBPlan.pm zu bauen. Ist noch die erste Version, aber funktioniert bei mir. Bitte einmal testen und Verbesserungen werden gerne entgegengenommen.

define <Name> DBPlan <Interval for refresh in seconds>


define DB_Test DBPlan 60
attr DB_Test dbplan_departure Köln-Weiden West
attr DB_Test dbplan_destination Köln HBF
attr DB_Test room OPNV


Folgende Readings werden gefüllt:

departure_(1..3) time of departure
arrival_(1..3) time of arrival
connection_(1..3) type of connection
departure_delay_(1..3) delay time for departure
arrival_delay_(1..3) delay time for arrival

Grüße Jörg
Titel: Antw:DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: selfarian am 08 April 2015, 10:09:40
Hallo Jörg,

erstmal: Super Arbeit, gefällt mir schonmal sehr gut. Was mir jetzt noch fehlen würde, ist die Anzeige der Endhaltestelle, dann wäre es nahezu Perfekt.
Im anderen Post hatte ich ja noch die Frage gestellt, wie du mit "Verspätungen" ala "Zug fällt aus" umgehst.

Gruß,
Alex
Titel: Antw:DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: AxelSchweiss am 08 April 2015, 10:37:19
Hi
Erst mal einen großen Dank für das Modul.
Aber ich krieg da was nicht hin oder versteh es einfach nicht.

Die Auskunft sagt mir das der Zug 10 Min Miese hat (Screen_1_1.jpg)
In den Reading Departure_Delay finde ich diese 10 Minuten nicht (Screen_1.jpg)
Aber in den Reading Connect_Plan stehts drin (Screen_1_2.jpg)
Nun dachte ich das die Verspätung (Verursacht durch eine Zug-Entlgeisung von gestern) in den Reading Departure_Delay zu finden ist.
Liege ich da falsch ?

PS: Habe gerade eben festgestellt das alle Readings gemäß dem Intervall aktualisiert werden ... ausser dem Reading Departure_Delay_1 ... das ist das mit den 10 Minuten Verspätung (Screen_1_3.jpg).


Titel: Antw:DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: JoWiemann am 08 April 2015, 10:57:06
Hallo,

wg departure_delay muss ich noch mal prüfen.

Anbei erst einmal ein Update:

zusätzliche Attribute:
dbplan_journey_prod -> DB travel products like: ICE
dbplan_journey_opt -> DB travel options like: direct connection

Bitte die Attribute nur über die Fhem Oberfläche setzen. Es können mehrere Einträge aus den jeweiligen Listen kombiniert werden.

zusätzliches reading:
travel_duration_(1..3) -> travel duration time

Grüße Jörg

Titel: Antw:DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: JoWiemann am 08 April 2015, 10:58:58
Zitat von: selfarian am 08 April 2015, 10:09:40

Im anderen Post hatte ich ja noch die Frage gestellt, wie du mit "Verspätungen" ala "Zug fällt aus" umgehst.

Hallo Alex,

da muss ich dann mal eine entsprechende Verbindung finden, um zu sehen wie das im Seiten-HTML hinterlegt ist.

Grüße Jörg
Titel: Antw:DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: AxelSchweiss am 08 April 2015, 11:18:33
Hi
Als "Verspätungstester" bietet sich momentan die Verbindung "Bad Camberg" nach "Frankfurt" an.
Da gab es gestern eine Zugentgleisung und heute ist die Strecke nur eingeschränkt befahrbar bzw. zeitweise ganz gesperrt.

Ich habe mal ein paar Screenshots und HTML's dran gehängt.
Wichtig ist hier das Warndreieck. Wenn das dranhängt ist was faul.
Auch wenn keine Verspätung angezeigt wird.

EDIT: Musste den Anhang ändern ... war auf der falschen URL gelandet .. sorry.
Titel: Antw:DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: JoWiemann am 08 April 2015, 13:09:41
Hallo,

so, ich glaube ich hab's jetzt.

Anbei eine neue Version mit folgenden zusätzlichen readings:

travel_note_(1..3) -> travel note for travel plan

Grüße Jörg
Titel: Antw:DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: JoWiemann am 08 April 2015, 14:46:18
Hallo,

und noch ein kleines update:

zusätzliche readings:
travel_note_link_(1..3) -> travel note link for further informations
travel_note_text_(1..3) -> travel note text

Grüße Jörg
Titel: Antw:DB - Verspätungsalarm und Abfahrtsmonitor im Frontend
Beitrag von: JoWiemann am 08 April 2015, 16:22:39
Hallo,

und ab jetzt geht es hier weiter: http://forum.fhem.de/index.php/topic,36057.0.html

Grüße Jörg