HTTPMOD und reading01-1Name

Begonnen von andies, 28 April 2017, 21:14:30

Vorheriges Thema - Nächstes Thema

andies

Ich habe eine HTTPMOD-Abfrage von Fahrplandaten und dabei das Problem, das mal ein Bus angezeigt wird und mal zwei bis drei:
defmod BVG HTTPMOD none 0
attr BVG userattr get01Name get01OExpr get01RegOpt get01Regex get01URL reading01-1Name reading01-2Name reading01-3Name reading01Name
attr BVG enableControlSet 1
attr BVG get01Name Uni
attr BVG get01OExpr $val
attr BVG get01RegOpt g
attr BVG get01Regex \[\"X10\"\,\"S\+U Zoologischer Garten\"\,\"(\d+)\"\]
attr BVG get01URL http://transportrest-sbiermann.rhcloud.com/departureFHEM?from=9051371&provider=Bvg
attr BVG group BVG
attr BVG reading01-1Name Uni1
attr BVG reading01-2Name Uni2
attr BVG reading01-3Name Uni3
attr BVG reading01Name Uni1
attr BVG timeout 30
attr BVG webCmd reread

Wenn nur ein Bus angezeigt wird, wird in Uni geschrieben. Zeigt er zwei Busse an, werden Uni1 und Uni2 gefüllt. Das jeweils ältere Reading bleibt dabei erhalten und ich  habe nun das Problem, sich die aktuellen Werte anzuzeigen. Daher dachte ich, dass ich (wie oben geschehen) jeweils Uni und Uni1 mit einem identischen Namen erfasse, damit man unterscheiden kann, welche der beiden Daten aktuell sind. Aber irgendwie geht das nicht und das erscheint mir nun auch unlogisch. Weiß jemand, wie ich das machen kann?
FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

viegener

Also vielleicht kenne ich ja auch nicht alle Details von httpmod, aber Du hast doch für reading01... gar kein Regex angegeben, da wird dann auch nichts gefüllt. Mit Deiner Definition wird eigentlich nur über die get-definition gefüllt.



Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

andies

Jetzt läuft es, danke. Dauerte eine Weile, bis ich den Unterschied zwischen reading.. und get.. bei HTTPMOD verstanden habe. Hier nochmal meine Definition, falls jemand ein analoges Problem hat
defmod BVG HTTPMOD http://transportrest-sbiermann.rhcloud.com/departureFHEM?from=9051371&provider=Bvg 0
attr BVG userattr reading01-1Name reading01-2Name reading01-3Name reading01Name reading01OExpr reading01RegOpt reading01Regex reading01URL
attr BVG enableControlSet 1
attr BVG group BVG
attr BVG reading01-1Name Uni1
attr BVG reading01-2Name Uni2
attr BVG reading01-3Name Uni3
attr BVG reading01Name Uni1
attr BVG reading01OExpr $val
attr BVG reading01RegOpt g
attr BVG reading01Regex \[\"X10\"\,\"S\+U Zoologischer Garten\"\,\"(\d+)\"\]
attr BVG reading01URL http://transportrest-sbiermann.rhcloud.com/departureFHEM?from=9051371&provider=Bvg
attr BVG timeout 30
FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann