Befehl im DOIF wird nicht ausgeführt

Begonnen von TiPpFeHlEr, 23 März 2022, 08:37:48

Vorheriges Thema - Nächstes Thema

TiPpFeHlEr

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

Otto123

#1
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
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

TiPpFeHlEr

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