FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: Kai-Alfonso am 20 Januar 2022, 17:05:40

Titel: $DEVICE bei Generalisierung leer
Beitrag von: Kai-Alfonso am 20 Januar 2022, 17:05:40
Hi,

ich hab mal eine Frage:

ich hab folgendes DOIF

Zitat([+00:01] and [?Umgebungssensor:temperature:sec]>300)
(msg @rr_Kai $DEVICE: Kein Update innerhalb von 5 Minuten ($EVENT) )

Funktioniert auch soweit - nur die Variablen für $DEVICE und $EVENT sind leer, wenn die Pushnachricht geschickt wird.

Wieso ist das so bzw. wo ist der Fehler.

Ich habe ca 10 Sensoren nach dem Muster Umgebungssensor_RAUMNAME

Ich vermute mal, dass das Abfragen des Timestamp kein Event erzeugt, welches dann in $DEVICE und $EVENT geschrieben wird. Nur wie mache ich das richtig?
Titel: Antw:$DEVICE bei Generalisierung leer
Beitrag von: Damian am 20 Januar 2022, 17:09:45
Zitat von: Kai-Alfonso am 20 Januar 2022, 17:05:40
Hi,

ich hab mal eine Frage:

ich hab folgendes DOIF

Funktioniert auch soweit - nur die Variablen für $DEVICE und $EVENT sind leer, wenn die Pushnachricht geschickt wird.

Wieso ist das so bzw. wo ist der Fehler.

Ich habe ca 10 Sensoren nach dem Muster Umgebungssensor_RAUMNAME

Ich vermute mal, dass das Abfragen des Timestamp kein Event erzeugt, welches dann in $DEVICE und $EVENT geschrieben wird. Nur wie mache ich das richtig?

Ohne Eventtrigger kein $DEVICE und kein $EVENT. Wie willst du etwas generalisieren, wenn du bereits in der Abfrage feste Angaben machst? hier: Umgebungssensor:temperature
Titel: Antw:$DEVICE bei Generalisierung leer
Beitrag von: Kai-Alfonso am 20 Januar 2022, 18:03:55
Zitat von: Damian am 20 Januar 2022, 17:09:45
Ohne Eventtrigger kein $DEVICE und kein $EVENT. Wie willst du etwas generalisieren, wenn du bereits in der Abfrage feste Angaben machst? hier: Umgebungssensor:temperature


Hi Damian,

danke für Deine Antwort.

Ja - wenn ich das richtig verstehe, wird mit "  " generalisiert

Also so hatte ich es schon davor mal probiert:

([+00:01] and ["Umgebungssensor:temperature:sec"]>300)
(msg @rr_Kai $DEVICE: Kein Update innerhalb von 5 Minuten ($EVENT) )


Das hatte bei mir aber das doif nicht getriggert - also war ich mir unsicher und habe die "" weggelassen - das hat dann getriggert - wenn das nicht Generalisiert ist, verstehe ich nicht, wieso das getriggert hat, da ich kein  Device habe, was genau Umgebungssensor heißt.


Zum triggern: Wie triggern ich denn dann das Device? Steh da irgendwie auf dem Schlauch. Kann es ja auch nicht im Ausführungsteil extern triggern, weil ja $DEVICE leer ist
Titel: Antw:$DEVICE bei Generalisierung leer
Beitrag von: Damian am 21 Januar 2022, 07:29:57
Zitat von: Kai-Alfonso am 20 Januar 2022, 18:03:55

Hi Damian,

danke für Deine Antwort.

Ja - wenn ich das richtig verstehe, wird mit "  " generalisiert

Also so hatte ich es schon davor mal probiert:

([+00:01] and ["Umgebungssensor:temperature:sec"]>300)
(msg @rr_Kai $DEVICE: Kein Update innerhalb von 5 Minuten ($EVENT) )


Das hatte bei mir aber das doif nicht getriggert - also war ich mir unsicher und habe die "" weggelassen - das hat dann getriggert - wenn das nicht Generalisiert ist, verstehe ich nicht, wieso das getriggert hat, da ich kein  Device habe, was genau Umgebungssensor heißt.


Zum triggern: Wie triggern ich denn dann das Device? Steh da irgendwie auf dem Schlauch. Kann es ja auch nicht im Ausführungsteil extern triggern, weil ja $DEVICE leer ist

Den Trigger ist hier vor allem die Zeitangabe, daher wird kein $DEVICE gefüllt. Diese Definition kannst du so ohne weiteres nicht generalisieren.

Titel: Antw:$DEVICE bei Generalisierung leer
Beitrag von: Kai-Alfonso am 21 Januar 2022, 08:44:14
Zitat von: Damian am 21 Januar 2022, 07:29:57
Den Trigger ist hier vor allem die Zeitangabe, daher wird kein $DEVICE gefüllt. Diese Definition kannst du so ohne weiteres nicht generalisieren.

Danke dir - das leuchtet mir ein. Dann mache ich das ohne Generalisierung und gebe jedes Device einzeln an.