tasmota - rules / IF ELSE

Begonnen von HaWe68, 29 Mai 2020, 10:55:37

Vorheriges Thema - Nächstes Thema

HaWe68

Hallo ,

ich möchte IF/ELSE testen, dazu folgende Regel:

Rule1 ON Button1#State==2 DO IF Power3#state=0 Power3 ON ELSE Power3 OFF ENDIF ENDON

Button#state funktioniert, aber irgendwas stimmt mit der IF-Abfrage nicht ...

Ich bekomme folgende Meldung in der Konsole:

RESULT = {"Command":"Unknown"}

Kennt sich jemand mit IF/ELSE unter tasmota aus ?

frober

#1
Bin mir nicht sicher...da die Rule mit ON gestartet wird, würde ich zum schalten 1 und 0 versuchen.

Nachtrag: laut der Beschreibung commands

Power ON turns first defined power output (usually Relay1) on

Power1 1 also turns first defined power output (usually Relay1) on

Power1 True also turns first defined power output (usually Relay1) on

Raspi 3b mit Raspbian Buster und relativ aktuellem Fhem,  FS20, LGW, PCA301, Zigbee, MQTT, MySensors mit RS485(CAN-Receiver) und RFM69, etc.,
einiges umgesetzt, vieles in Planung, smile

********************************************
...man wächst mit der Herausforderung...

HaWe68

Rule1 ON Button1#State==2 DO IF Power3#state=0 Power3 1 ELSE Power3 0 ENDIF ENDON

... leider gleicher Fehler  :-\

Habe Version 8.3.1 - ein BUG ? Habe schon alles mögliche Versucht, die Doku ist auch sehr dürftig was IF - ELSE angeht

frober

Probiere es Mal so:

Rule1 ON Button1#State==2 DO IF (Power3#state==0) Power3 1 ELSE Power3 0 ENDIF ENDON


Das doppelte == ist wichtig, bei den Klammern bin ich nicht sicher, ob auch ohne geht.
Raspi 3b mit Raspbian Buster und relativ aktuellem Fhem,  FS20, LGW, PCA301, Zigbee, MQTT, MySensors mit RS485(CAN-Receiver) und RFM69, etc.,
einiges umgesetzt, vieles in Planung, smile

********************************************
...man wächst mit der Herausforderung...

no_Legend

Hallo Zusammen,

ich bin auch gerade dabei mich ein wenig mit Tasmota auseinander zu setzten.
So würde ich gerne Zwei Sonoff Pows so reinrichten, dass die Nr. 2 nur angehen darf, wenn die Nr. 1 bereits eingeschaltet ist.

Im Internet hatte ich beim IF gelesen gehabt, dass der Befehl nur geht, wenn man vorher selber kompiliert hat.
Die IF sets sind stand mäßig nicht aktiviert.

Ist das noch richtig?
https://tasmota.github.io/docs/Rules/

Danke und Gruß Robert
IntelNUC mit Ubuntu mit FHEM immer aktuell,2x HMLAN, CUL443, CUL868 -homekit/siri -tablet ui -homebridge
Device, diverse:
HM-SEC-KEY,HM-LC-BL1-FM,HM-SEC-SD,HM-Sen-DB-PCB,HM-Sec-RHS,HM-Sec-SC-2,HM-WDS10-TH-O,Harmony,Netamo, 433MHz Steckdosen uvm.

Billy

#5
Zitat von: no_Legend am 04 Juni 2020, 13:50:12
Hallo Zusammen,

ich bin auch gerade dabei mich ein wenig mit Tasmota auseinander zu setzten.
So würde ich gerne Zwei Sonoff Pows so reinrichten, dass die Nr. 2 nur angehen darf, wenn die Nr. 1 bereits eingeschaltet ist.

Im Internet hatte ich beim IF gelesen gehabt, dass der Befehl nur geht, wenn man vorher selber kompiliert hat.
Die IF sets sind stand mäßig nicht aktiviert.

Ist das noch richtig?
https://tasmota.github.io/docs/Rules/

Danke und Gruß Robert

Ich kann dir da nur Tasmota Scripting empfehlen, das sticht die Rules deutlich aus.
https://tasmota.github.io/docs/Scripting-Language/
Allerdings must du selbst compilieren. Das geht aber mit dem Tasmocompiler ziemlich Problemlos.
https://github.com/benzino77/tasmocompiler#how-to-start-using-tasmocompiler

Billy
FHEM immer akt. auf 3 BeagleBoneBlack: 2xHMLAN 2xJeelink ;10x HM-CC-TC, 13x HM-CC-VD, 1x HM-ES-PMSw1-Pl, 3x HM-LC-SW1-PL2, viele ESP8266, Tasmota Scripting, Mqtt*