Hallo zusammen,
ich probiere seit ca. 2 Stunden verzweifelt mit einem simplen IF herum und bekomme in verschiedensten Ausführungen immer folgenden Fehler:
IF: no right bracket: ({fhem("sleep 2
SB_PLAYER_Set: unsupported command given
Das ganze sitzt in folgendem notify : ... notify KuecheChannelD:on.* IF ([PlayerKueche] ne "on") ({fhem("sleep 2;;set PlayerKueche on")})
Der Perl Code war jetzt mein letzer Versuch, nachdem sowohl (sleep 2;; set PlayerKueche on )
als auch (sleep 2; set PlayerKueche on)
nicht funktioniert haben.
Was aber ordnungsgemäßg geht, ist (set PlayerKueche on)
Vielleicht weiß ja jemand Rat bei meinem wahrscheinlich zu simplen Problem
LG
Daniel
Hi,
beim FHEM Befehl IF ist wie bei DOIF das Komma der Trenner.
ZitatMultiple commands are separated by a comma instead of a semicolon, thus eliminating the doubling, quadrupling, etc. of the semicolon:
define check at +00:10 IF ([outdoor:humidity] > 10) (set switch1 off,set switch2 on) ELSE (set switch1 on,set switch2 off)
Gruß Otto
Zitat von: Masiwo am 26 Februar 2019, 12:28:01
Hallo zusammen,
ich probiere seit ca. 2 Stunden verzweifelt mit einem simplen IF herum und bekomme in verschiedensten Ausführungen immer folgenden Fehler:
IF: no right bracket: ({fhem("sleep 2
SB_PLAYER_Set: unsupported command given
Das ganze sitzt in folgendem notify : ... notify KuecheChannelD:on.* IF ([PlayerKueche] ne "on") ({fhem("sleep 2;;set PlayerKueche on")})
Der Perl Code war jetzt mein letzer Versuch, nachdem sowohl (sleep 2;; set PlayerKueche on )
als auch (sleep 2; set PlayerKueche on)
nicht funktioniert haben.
Was aber ordnungsgemäßg geht, ist (set PlayerKueche on)
Vielleicht weiß ja jemand Rat bei meinem wahrscheinlich zu simplen Problem
LG
Daniel
Semikolon pro Ebene zu doppeln ist eine Eigenschaft von FHEM. Um dem Problem aus dem Wege zu gehen, sollte man beim IF-Befehl Komma als Trennzeichen benutzen
... notify KuecheChannelD:on.* IF ([PlayerKueche] ne "on") (sleep 2,set PlayerKueche on)
P.S. Beim IF (und nur dort) wirkt das Komma hinter einem sleep-Befehl nicht blockierend.
Zitat von: Damian am 26 Februar 2019, 12:39:54
P.S. Beim IF (und nur dort) wirkt das Komma hinter einem sleep-Befehl nicht blockierend.
Ahh, super, vielen Dank euch beiden! Vor allem das hier nochmal zitierte wäre dann meine nächste Frage gewesen, danke schonmal für die Beantwortung!
LG und einen sonnigen Tag euch noch!
Daniel
Zitat von: Damian am 26 Februar 2019, 12:39:54
Semikolon pro Ebene zu doppeln ist eine Eigenschaft von FHEM. Um dem Problem aus dem Wege zu gehen, sollte man beim IF-Befehl Komma als Trennzeichen benutzen ... notify KuecheChannelD:on.* IF ([PlayerKueche] ne "on") (sleep 2,set PlayerKueche on)
P.S. Beim IF (und nur dort) wirkt das Komma hinter einem sleep-Befehl nicht blockierend.
Ist das Komma im Perlmodus auch möglich, und nicht blockierend?
nein