FHEM Forum

FHEM => Automatisierung => Thema gestartet von: Klingelbastler am 12 März 2018, 10:33:01

Titel: notify Aufruf-Sequenz innerhalb eines Device
Beitrag von: Klingelbastler am 12 März 2018, 10:33:01
Hallo,

ich habe ein notify ("n1"), welches ein userreading eines dummy-Device verändert. Das klappt.
An diesem userreading ("ur1") hängt wiederum ein notify ("n2"), das ein weiteres userreading ("ur2") desselben dummy-Device ändern soll.
Letzteres notify n2 funktioniert zwar wenn ich das userreading ur1 direkt per set manipuliere - dann triggert n2 und ändert userreading ur2.
Es klappt aber nicht wenn ich notify n1 trigger, dieses dann userreading ur1 aktualisiert, dann eigentlich n2 anziehen sollte (was es leider nicht tut).

Nun bilde ich mir ein dass ich irgendwann mal gelesen habe dass eine solche notify-Sequenz innerhalb eines einzelnen Device nicht vorgesehen ist und man als Workaround dann eine Pause (glaube irgendwas mit wait oder sleep) einbauen müsse. Leider finde ich diese Information nicht mehr.
Kann mir jemand einen Hinweis geben?

Das einzige was ich gefunden habe ist ein Beitrag zu rekursiven notifies:

https://forum.fhem.de/index.php?topic=41733.0

Aber das trifft für mich nicht zu, ich möchte ja unterschiedliche userreadings aktualisieren, und nicht immer sich selbst.

Gruß Klingelbastler
Titel: Antw:notify Aufruf-Sequenz innerhalb eines Device
Beitrag von: dev0 am 12 März 2018, 10:44:25
https://fhem.de/commandref.html#setreading
Zitat
setreading won't generate an event for device X, if it is called from a notify for device X. Use "sleep 0.1; setreading X Y Z" in this case.
Titel: Antw:notify Aufruf-Sequenz innerhalb eines Device
Beitrag von: Klingelbastler am 12 März 2018, 10:54:07
Wow, Blitzantwort!
Danke... genau das war's. Jetzt läuft es wie gewünscht.