DBPlan: Unterschied zwischen den Versionen

Aus FHEMWiki
Keine Bearbeitungszusammenfassung
 
(8 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 5: Zeile 5:
|ModForumArea=Unterstützende Dienste
|ModForumArea=Unterstützende Dienste
|ModTechName=98_DBPlan.pm
|ModTechName=98_DBPlan.pm
|ModOwner=JoWiemann ({{Link2FU|7023|Forum}})
|ModOwner=JoWiemann ({{Link2FU|94|Forum}})
}}
}}


Das Modul holt von der Infoseite der DB aktuelle Informationen zu einer angegeben Verbindung.
Das Modul holt von der Infoseite der DB aktuelle Informationen zu einer angegeben Verbindung. Weitere Information zur API können im Dokument [[media:Parametrisierte_%C3%9Cbergabe_Bahnauskunft(V_5.12-R4.30c,_f%C3%BCr.pdf|Internet-Reiseauskunft der
Deutschen Bahn AG]] nachgelesen werden. Das Dokument stammt von folgender Quelle: http://www.geiervally.lechtal.at/sixcms/media.php/1405/Parametrisierte%20%DCbergabe%20Bahnauskunft(V%205.12-R4.30c,%20f%FCr.pdf.


== Einbinden in FHEM ==
== Einbinden in FHEM ==
Zeile 14: Zeile 15:
Zunächst muss, sofern noch nicht geschehen das Perl Modul HTML:Table Extract installiert werden. Hierzu bitte folgende Befehle in die Terminalsession eingeben:
Zunächst muss, sofern noch nicht geschehen das Perl Modul HTML:Table Extract installiert werden. Hierzu bitte folgende Befehle in die Terminalsession eingeben:


<pre>sudo apt-get upgrade</pre>
<pre>sudo apt-get update</pre>
<pre>sudo apt-get install  libhtml-tableextract-perl</pre>
<pre>sudo apt-get install  libhtml-tableextract-perl</pre>


Zeile 21: Zeile 22:
Dies kann über GitHub und den update Befehl in FHEM geschehen. Dazu folgenden Befehl in der FHEM Kommandozeile ausführen:<br>
Dies kann über GitHub und den update Befehl in FHEM geschehen. Dazu folgenden Befehl in der FHEM Kommandozeile ausführen:<br>
<pre>update all https://raw.githubusercontent.com/jowiemann/DBPlan-for-Fhem/master/controls_dbplan.txt</pre>
<pre>update all https://raw.githubusercontent.com/jowiemann/DBPlan-for-Fhem/master/controls_dbplan.txt</pre>
oder mit
<pre>update add https://raw.githubusercontent.com/jowiemann/DBPlan-for-Fhem/master/controls_dbplan.txt</pre>
der FHEM Updatesteuerung hinzufügen. Ab diesem Zeitpunkt wird DBPlan im Update berücksichtigt.


Anschließend FHEM neu starten.
Anschließend FHEM neu starten.
Zeile 26: Zeile 31:
Nun sollte sich mit folgendem Befehl das Modul nutzen lassen.
Nun sollte sich mit folgendem Befehl das Modul nutzen lassen.


:<code>define <Name> DBPlan <Interval for refresh in seconds></code>
:<code>define <Name> DBPlan <Interval for refresh in seconds> [time offset in minutes]</code>


Weitere Information können über Eingabe von:
Weitere Information können über Eingabe von:
Zeile 33: Zeile 38:


== Attribute ==
== Attribute ==
*attr DB_Test dbplan_departure -> place of departure
*dbplan_station-> Abfahrtsbahnhof / Haltestelle
*attr DB_Test dbplan_destination -> place of destination
*dbplan_destination -> Ankunftsbahnhof / Haltestelle
*dbplan_journey_prod -> DB travel products like: ICE
*dbplan_via_1 -> 1. Zwischenhalt in Bahnhof / Haltestelle
*dbplan_journey_opt -> DB travel options like: direct connection
*dbplan_via_2 -> 2. Zwischenhalt in Bahnhof / Haltestelle
*dbplan_journey_prod -> Verkehrsmittel, wie z.B.: ICE, Bus, Straßenbahn
*dbplan_journey_opt -> Reiseoptionen wie z.B.: direct connection
*dbplan_tariff_class -> 1. oder 2. Klasse
*dbplan_board_type -> Fahrplansuche bzw. Bahnhofsanzeige für Abfahrts- oder Ankunftszeit
*dbplan_delayed_Journey -> Bei off werden nur pünktliche Verbindungen angezeigt
*dbplan_max_Journeys -> Anzahl der angezeigten Zugverbindungen in der Bahnhofsansicht.
*dbplan_reg_train -> die Zugbezeichnung, z.B. S für alles was S- und Straßenbahnen angeht, ICE alle ICE oder ICE mit Zugnummer. Usw.
*dbplan_travel_date -> Reisedatum in der Angabe: dd.mm.yy
*dbplan_travel_time -> Abfahtrtszeit in der Angabe: hh.mm
*dbplan_addon_options -> weitere Optionen, wie sie im API-Dokument der DB beschrieben sind


Bitte die Attribute nur über die Fhem Oberfläche setzen. Es können für dbplan_journey_prod und dbplan_journey_opt mehrere Einträge aus den jeweiligen Listen kombiniert werden. Für Abfahrs- und Ankunftsort bitte vorher prüfen, ob diese Orte von www.bahn.de erkannt werden und ggf. anpassen.
Steuernde Attribute:
*dbplan-disable -> Device aktivieren / deaktivieren (s. auch FHEM-Doku)
*dbplan-default-char -> Hinweis, der angezeigt wird, wenn keine Information für ein reading zur Verfügung steht.
**"none" ist der Standardhinweis.
**"delete" nicht genutzte readings werden auch nicht angezeigt.
**"nochar" das Reading wird mit leerem Inhalt angezeigt.
*dbplan-tabel-headers -> internes Attribut um die Spaltenbezeichnungen für HTML::TableExtract
*dbplan-station-file -> Pfad zur Bahnhofstabelle (/opt/fhem/FHEM/deutschland_bhf.csv). Die Tabelle ist im csv Format abgelegt
*dbplan-base-type -> Anzeige als Bahnhofstabelle (table) oder Verbindungsinformation (plan)
 
HTTPMOD Attribute, siehe entsprechende Doku
*dbplan-remote-timeout
*dbplan-remote-noshutdown
*dbplan-remote-loglevel
 
Bitte die Attribute nur über die FHEM Oberfläche setzen. Es können für dbplan_journey_prod und dbplan_journey_opt mehrere Einträge aus den jeweiligen Listen kombiniert werden. Für Abfahrs- und Ankunftsort bitte vorher prüfen, ob diese Orte von www.bahn.de erkannt werden und ggf. anpassen. Ist die Bahnhofstabelle vorhanden, kann man auch über das entsprechende get sich Bahnhöfe anzeigen oder suchen lassen. Die Bahnhofstabelle wird über das Fhem-Update mitgeladen. Es muss also nur das Attribut mit dem Pfad (/opt/fhem/FHEM/deutschland_bhf.csv)gesetzt werden. '''Leider funktioniert das Laden der Tabelle nicht, wenn configDB genutzt wird.'''


== Readings ==
== Readings ==


*departure_(1..3) -> time of departure
*departure_(1..3) -> Abfahrtszeit
*arrival_(1..3) -> time of arrival
*arrival_(1..3) -> Ankunftszeit
*connection_(1..3) -> type of connection
*connection_(1..3) -> Verbindungstyp
*departure_delay_(1..3) -> delay time for departure
*departure_delay_(1..3) -> Verspätung in der Abfahrtszeit
*arrival_delay_(1..3) -> delay time for arrival
*arrival_delay_(1..3) -> Verspätung in der Ankunftszeit
*travel_duration_(1..3) -> travel duration time
 
*travel_note_(1..3) -> travel note for travel plan
*travel_note_(1..3) -> Hinweise für die Verbindung
*travel_note_link_(1..3) -> travel note link for further informations
*travel_note_link_(1..3) -> Link zu den weiteren Verbindungsinformationen
*travel_note_text_(1..3) -> travel note text
*travel_note_text_(1..3) -> Verbindungshinweis
*travel_destination_(1..3) -> informations about the destination and the Plattform, if available
*travel_note_error_(1..3) -> Fehlertext der Detailinformation
*travel_change_(1..3) -> travel plattform changings
 
*travel_price_(1..3) -> travel price in EUR
*travel_duration_(1..3) -> Reisezeit
*travel_departure_(1..3) -> Informationen über den Abfahtsbahnhof und das Ankunftsgleis
*travel_destination_(1..3) -> Informationen über den Zielbahnhof und das Ankunftsgleis
*travel_change_(1..3) -> Anzahl der Umstiege
*travel_price_(1..3) -> Fahrpreis
*travel_vehicle_nr_(1..3) -> Anzeige der Zug, Bus,... Bezeichnung / Nummer

Aktuelle Version vom 16. Oktober 2018, 08:41 Uhr

DBPlan
Zweck / Funktion
Abfahrtszeiten Deutsche Bahn
Allgemein
Typ Inoffiziell
Details
Dokumentation Thema
Support (Forum) Unterstützende Dienste
Modulname 98_DBPlan.pm
Ersteller JoWiemann (Forum )
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref!


Das Modul holt von der Infoseite der DB aktuelle Informationen zu einer angegeben Verbindung. Weitere Information zur API können im Dokument Internet-Reiseauskunft der Deutschen Bahn AG nachgelesen werden. Das Dokument stammt von folgender Quelle: http://www.geiervally.lechtal.at/sixcms/media.php/1405/Parametrisierte%20%DCbergabe%20Bahnauskunft(V%205.12-R4.30c,%20f%FCr.pdf.

Einbinden in FHEM

Zunächst muss, sofern noch nicht geschehen das Perl Modul HTML:Table Extract installiert werden. Hierzu bitte folgende Befehle in die Terminalsession eingeben:

sudo apt-get update
sudo apt-get install  libhtml-tableextract-perl

Nun muss noch das FHEM-Modul installiert werden. (Das DBPlan-Modul wird noch nicht über das FHEM update verteilt.)

Dies kann über GitHub und den update Befehl in FHEM geschehen. Dazu folgenden Befehl in der FHEM Kommandozeile ausführen:

update all https://raw.githubusercontent.com/jowiemann/DBPlan-for-Fhem/master/controls_dbplan.txt

oder mit

update add https://raw.githubusercontent.com/jowiemann/DBPlan-for-Fhem/master/controls_dbplan.txt

der FHEM Updatesteuerung hinzufügen. Ab diesem Zeitpunkt wird DBPlan im Update berücksichtigt.

Anschließend FHEM neu starten.

Nun sollte sich mit folgendem Befehl das Modul nutzen lassen.

define <Name> DBPlan <Interval for refresh in seconds> [time offset in minutes]

Weitere Information können über Eingabe von:

? DBPlan

in der FHEM Kommandozeile abgerufen werden und befinden sich im entsprechenden Thread (DBPlan) im Forum.

Attribute

  • dbplan_station-> Abfahrtsbahnhof / Haltestelle
  • dbplan_destination -> Ankunftsbahnhof / Haltestelle
  • dbplan_via_1 -> 1. Zwischenhalt in Bahnhof / Haltestelle
  • dbplan_via_2 -> 2. Zwischenhalt in Bahnhof / Haltestelle
  • dbplan_journey_prod -> Verkehrsmittel, wie z.B.: ICE, Bus, Straßenbahn
  • dbplan_journey_opt -> Reiseoptionen wie z.B.: direct connection
  • dbplan_tariff_class -> 1. oder 2. Klasse
  • dbplan_board_type -> Fahrplansuche bzw. Bahnhofsanzeige für Abfahrts- oder Ankunftszeit
  • dbplan_delayed_Journey -> Bei off werden nur pünktliche Verbindungen angezeigt
  • dbplan_max_Journeys -> Anzahl der angezeigten Zugverbindungen in der Bahnhofsansicht.
  • dbplan_reg_train -> die Zugbezeichnung, z.B. S für alles was S- und Straßenbahnen angeht, ICE alle ICE oder ICE mit Zugnummer. Usw.
  • dbplan_travel_date -> Reisedatum in der Angabe: dd.mm.yy
  • dbplan_travel_time -> Abfahtrtszeit in der Angabe: hh.mm
  • dbplan_addon_options -> weitere Optionen, wie sie im API-Dokument der DB beschrieben sind

Steuernde Attribute:

  • dbplan-disable -> Device aktivieren / deaktivieren (s. auch FHEM-Doku)
  • dbplan-default-char -> Hinweis, der angezeigt wird, wenn keine Information für ein reading zur Verfügung steht.
    • "none" ist der Standardhinweis.
    • "delete" nicht genutzte readings werden auch nicht angezeigt.
    • "nochar" das Reading wird mit leerem Inhalt angezeigt.
  • dbplan-tabel-headers -> internes Attribut um die Spaltenbezeichnungen für HTML::TableExtract
  • dbplan-station-file -> Pfad zur Bahnhofstabelle (/opt/fhem/FHEM/deutschland_bhf.csv). Die Tabelle ist im csv Format abgelegt
  • dbplan-base-type -> Anzeige als Bahnhofstabelle (table) oder Verbindungsinformation (plan)

HTTPMOD Attribute, siehe entsprechende Doku

  • dbplan-remote-timeout
  • dbplan-remote-noshutdown
  • dbplan-remote-loglevel

Bitte die Attribute nur über die FHEM Oberfläche setzen. Es können für dbplan_journey_prod und dbplan_journey_opt mehrere Einträge aus den jeweiligen Listen kombiniert werden. Für Abfahrs- und Ankunftsort bitte vorher prüfen, ob diese Orte von www.bahn.de erkannt werden und ggf. anpassen. Ist die Bahnhofstabelle vorhanden, kann man auch über das entsprechende get sich Bahnhöfe anzeigen oder suchen lassen. Die Bahnhofstabelle wird über das Fhem-Update mitgeladen. Es muss also nur das Attribut mit dem Pfad (/opt/fhem/FHEM/deutschland_bhf.csv)gesetzt werden. Leider funktioniert das Laden der Tabelle nicht, wenn configDB genutzt wird.

Readings

  • departure_(1..3) -> Abfahrtszeit
  • arrival_(1..3) -> Ankunftszeit
  • connection_(1..3) -> Verbindungstyp
  • departure_delay_(1..3) -> Verspätung in der Abfahrtszeit
  • arrival_delay_(1..3) -> Verspätung in der Ankunftszeit
  • travel_note_(1..3) -> Hinweise für die Verbindung
  • travel_note_link_(1..3) -> Link zu den weiteren Verbindungsinformationen
  • travel_note_text_(1..3) -> Verbindungshinweis
  • travel_note_error_(1..3) -> Fehlertext der Detailinformation
  • travel_duration_(1..3) -> Reisezeit
  • travel_departure_(1..3) -> Informationen über den Abfahtsbahnhof und das Ankunftsgleis
  • travel_destination_(1..3) -> Informationen über den Zielbahnhof und das Ankunftsgleis
  • travel_change_(1..3) -> Anzahl der Umstiege
  • travel_price_(1..3) -> Fahrpreis
  • travel_vehicle_nr_(1..3) -> Anzeige der Zug, Bus,... Bezeichnung / Nummer