Hi,
hab da mal ne Frage, habe folgendes DOIF
([HomeMaticIP] ne "running/OK") (set HomeMaticIP rpcserver on, set teleBot send RPC offline)
DOELSEIF
([HomeMaticIP] eq "running/OK") (set teleBot send RPC online)
DOELSE()
das DOIF reagiert und führt set teleBot send RPC offline
aus.
der andere Befehl set HomeMaticIP rpcserver on
wird nicht ausgeführt.
in der Commandzeile funktioniert der Befehl.
habe auch schon die Befehle so probiert
([HomeMaticIP] ne "running/OK") (set HomeMaticIP rpcserver on) (set teleBot send RPC offline)
DOELSEIF
([HomeMaticIP] eq "running/OK") (set teleBot send RPC online)
DOELSE()
auch hier wird nur der 2te Befehl ausgeführt.
woran liegts?
Gruß Maik
Hallo Maik,
Du versuchst ein Gerät, auf welches Du triggerst, sofort wieder mit einem Befehl zu beschicken, welcher wieder einen Event auslöst.
Damit das nicht in einer Endlos "Heizung"/Schleife endet, wird es in den meisten Fällen vom System verhindert.
Wenn Du im zweiten Konstrukt ein wait von 1 sec einfügst wird es funktionieren.
Wenn Du es im ersten Fall so machst, eventuell auch (set teleBot send RPC offline , sleep 1; set HomeMaticIP rpcserver on)
Das eine Semikolon gilt in der DEF, in der Raw Def müssen es zwei sein!
Bis das HomeMaticIP Device reagiert und den Status ändert kann, wird auch noch Zeit vergehen. Eventuell musst Du hier sogar mehr als 1 sec nehmen. Oder den Trigger schärfer wählen -> immer eine gute Idee!
Gruß Otto
Zitat von: Otto123 am 23 März 2022, 10:36:37
Damit das nicht in einer Endlos "Heizung"/Schleife endet, wird es in den meisten Fällen vom System verhindert.
das wusste ich garnicht, wieder was gelernt.
GEHT!
Danke