98_DBPlan.pm: Fahrplaninformation der DB

Begonnen von JoWiemann, 08 April 2015, 18:57:14

Vorheriges Thema - Nächstes Thema

Jorge3711

Auch von mir vielen Dank für das Modul. Habe mich als FHEM Neuling gleich noch in die readingsGroup eingearbeitet. So sieht das jetzt bei mir aus

AxelSchweiss

Hallo Jorge3711
Sieht ja Cool aus.
Kannst du mal die Definition deiner readingsGroup hier posten  .... danke.

Jorge3711

Die readingsGroup habe ich so umgesetzt:

define rg_fahrplan readingsGroup < >,<Abfahrt>,<Ankunft>,<Dauer>,<Verspätung (Abfahrt)>,<Verbindung> db_erbach_ulm:departure_1,arrival_1,travel_duration_1,departure_delay_1,connection_1  db_erbach_ulm:departure_2,arrival_2,travel_duration_2,departure_delay_2,connection_2 db_erbach_ulm:departure_3,arrival_3,travel_duration_3,departure_delay_3,connection_3 db_blaustein_erbach:departure_1,arrival_1,travel_duration_1,departure_delay_1,connection_1 db_blaustein_erbach:departure_2,arrival_2,travel_duration_2,departure_delay_2,connection_2 db_blaustein_erbach:departure_3,arrival_3,travel_duration_3,departure_delay_3,connection_3
attr rg_fahrplan alias Abfahrtsmonitor
attr rg_fahrplan room ÖPNV
attr rg_fahrplan valueStyle { if($DEVICE =~ "db_*" && $READING =~ "departure_delay_?" && $VALUE == "+0" ) { 'style="color:green"' }elsif ( $DEVICE =~ "db_*" && $READING =~ "departure_delay_?" && $VALUE != "+0") { 'style="color:red"'} }


Viel Spaß damit.

duke-f

Hab die readingsGroup auch so übernommen. Besten Dank. Allerdings kommt im Log jetzt eine Warnung, wenn keine Verspätung angegeben wird (also auch nicht "0"):

PERL WARNING: Argument "none" isn't numeric in numeric eq (==) at (eval 83777) line 1.
Cubietruck, 3 Raspberry Pis,
CUL868, RFXtrx433, CUL433, SCC868, HM-USB,
IRTrans, EZcontrol XS1, IguanaWorks USB IR Transceiver
ESPEasy, Fritz!Box, Samsung TV+BD, LMS, Squeezelite

Thoffi1978

Hallo,
die Abfrage funktioniert super  ;D
Wie muss ich die Readings ändern damit die "Anzeige" von Joerg3711 auf meine Abfrage reagiert?

Startbahnhof ist Bad Oldesloe
Ziel Hamburg

Vielen Dank
Hoffi

AxelSchweiss

Hallo Jorge3711
Mich interessiert wie du die Verbindung angezeigt bekommst.
"Erbach -> Ulm"
Bei mir steht da nur der Name des Fahrplans.
"zugfahrplan"
Ansonsten funktioniert das Reading tadellos ... danke dafür.


klausw

#21
Zitat von: duke-f am 18 Mai 2015, 11:10:59
Hab die readingsGroup auch so übernommen. Besten Dank. Allerdings kommt im Log jetzt eine Warnung, wenn keine Verspätung angegeben wird (also auch nicht "0"):

PERL WARNING: Argument "none" isn't numeric in numeric eq (==) at (eval 83777) line 1.
Bei der Verspätung wird none angezeigt und nicht +0.
Es kann alllerdings auch sein das none bedeutet, die Verspätung ist nicht verfügbar.
Für den ersten Fall kannst du im Attribut valuestyle folgendes erstzenErsetzen:
== "+0" zu eq "none"
!= "+0" zu ne "none"

steht alles in der Fehlermeldung drin  ::)
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

klausw

Zitat von: AxelSchweiss am 20 Mai 2015, 08:10:08
Hallo Jorge3711
Mich interessiert wie du die Verbindung angezeigt bekommst.
"Erbach -> Ulm"
Bei mir steht da nur der Name des Fahrplans.
"zugfahrplan"
Ansonsten funktioniert das Reading tadellos ... danke dafür.
Dazu kannst du das attribut mapping verwenden:
attr <name> {'zugfahrplan' => 'Erbach -> Ulm', 'zugfahrplan1' => 'Ulm -> Erbach'}
Ist beliebig erweiter- oder kürzbar
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Jorge3711

Zitat von: klausw am 20 Mai 2015, 11:39:09
Dazu kannst du das attribut mapping verwenden:
attr <name> {'zugfahrplan' => 'Erbach -> Ulm', 'zugfahrplan1' => 'Ulm -> Erbach'}
Ist beliebig erweiter- oder kürzbar

Ich habe das über einen Alias gelöst:

attr db_erbach_ulm alias 'Erbach -> Ulm'

Wie so oft, führen viele Wege nach Rom.

Jorge3711

Zitat von: klausw am 20 Mai 2015, 11:03:58
Bei der Verspätung wird none angezeigt und nicht +0.
Es kann alllerdings auch sein das none bedeutet, die Verspätung ist nicht verfügbar.
Für den ersten Fall kannst du im Attribut valuestyle folgendes erstzenErsetzen:
== "+0" zu eq "none"
!= "+0" zu ne "none"

steht alles in der Fehlermeldung drin  ::)

Die Meldung kommt immer dann, wenn in der Ausgabe für die Verspätung "none" steht, sollte dann aber auch so in der readingsGroup zu sehen sein.

JoWiemann

Hallo,

das "none" bedeutet, dass überhaupt keine Information vorliegt, also auch nicht keine Verspätung. Diese Situation tritt immer dann ein, wenn Verbindungen vorliegen, die nicht den Vorgabe an die Bahn bezüglich Verspärungsinformationen unterliegen, z.B. Verbidnungen regionalerr ÖPNV-Anbieter.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

klausw

Zitat von: JoWiemann am 20 Mai 2015, 14:04:14
das "none" bedeutet, dass überhaupt keine Information vorliegt, also auch nicht keine Verspätung. Diese Situation tritt immer dann ein, wenn Verbindungen vorliegen, die nicht den Vorgabe an die Bahn bezüglich Verspärungsinformationen unterliegen, z.B. Verbidnungen regionalerr ÖPNV-Anbieter.
stimmen die Abfahrtszeiten in diesem Fall? Oder bekomme ich nur den Fahrplan angezeigt?
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

JoWiemann

Das ist dann wohl immer nur der Fahrplan. Jedenfalls ist das bei den ÖPNV in NRW so.


Grüße Jörg

Gesendet von iPhone mit Tapatalk
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

duke-f

@klausw
Das mit dem Ergänzen in valuestyle habe ich schon gemacht. Die Fehlermeldung kommt trotzdem. Stört mich auch nicht wirklich so sehr dass ich dem jetzt gleich auf den Grund gehen muss. Wollte nur darauf hinweisen.

Aber heute musste ich feststellen, dass in dieser Bauart der readingsGroup auch der Hinweis der Bahn, dass ein Zug ausfällt (vermutlich des Streiks wegen?!?) nicht registriert wird. An der Stelle der entsprechenden Site wird kein "+0" und auch kein "nichts" angezeigt, sondern ein weißes Kreuz auf rotem Grund als Link auf den Hinweis, dass der Zug ausfällt. Das wiederum kann natürlich fatale Folgen haben, da man in der Ansicht den Zug regular ohne Verspätung sieht.

Das wird sich hoffentlich nur diese Tage nachvollziehen lassen :( ;D :o
Cubietruck, 3 Raspberry Pis,
CUL868, RFXtrx433, CUL433, SCC868, HM-USB,
IRTrans, EZcontrol XS1, IguanaWorks USB IR Transceiver
ESPEasy, Fritz!Box, Samsung TV+BD, LMS, Squeezelite

JoWiemann

Ich habe mir die Darstellung der "Streik-Ausfälle" mal angesehen. Die Bahn macht das ja ganz geschickt, in dem sie immer versucht einen Alternativweg aufzuzeigen. Im Moment habe ich leider nicht die Zeit, dass noch zu implementieren.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM