Hauptmenü

DOIF und ReadingsGroup

Begonnen von RudiRoechel, 01 August 2019, 17:54:09

Vorheriges Thema - Nächstes Thema

RudiRoechel

Hallo,

ich habe ein kleines Problem, was für mich aber wohl doch eher ein großes ist ;-)

Ich wollte den Sinn und die Syntax von DOIF und ReadingsGroup näher verstehen und dafür folgendes probieren:

Ich habe 2 Fritzboxen per Modul FRITZBOX in fhem eingebunden und die werden auch schön ausgelesen, alles OK. Im Reading lastReadout der Fritzboxen kommt immer das Wort "captured" vor. Nun kommt es aber immer wieder mal vor, das die Kommunikation gestört ist. Dann hat das Reading lastReadout irgendwelche Fehlermeldungen als Inhalt aber eben nicht mehr "captured".

Also habe ich erstmal eine Readingsgroup erstellt:  defmod FritzBoxen_ReadingsGroup readingsGroup .*:lastReadout

Wuderbar, in der Gruppe sind alle Fritzboxen und alles gut.

Nun aber das Problem, ich wollte ganz elegant mit einem doif abreifen, wenn bei einer Fritzbox (egal welcher) das Reading lastReadout eben nicht "captured" enthält.

Bei einer einzelnen Fritzbox klappt auch das super. z.B. ([Fritzbox1:lastReadout] =~ "captured") greift immer, wenn kein Fehler vorliegt und ich kann über DOELSE mich über Fehler benachrichtigen lassen.

Bei der ReadingsGroup versuche ich das nun genauso: ([FritzBoxen_ReadingsGroup:"lastReadout"] =~ "captured")
Leider wird dann aber immer der DOELSE Zweig ausgeführt, egal am Fritzbox1 oder 2 was neues liefert, und egal, was in deren Reading steht.

Ich glaube ich schaffe es nicht, die Bedingung richtig zu definieren, das ich die richtigen Readings erwische.

Vielleicht kann mir ja jemand helfen.

Vielen Dank schon mal.