DOIF/DOELSEIF wait - Problem ...

Begonnen von M_I_B, 05 Juli 2016, 14:51:35

Vorheriges Thema - Nächstes Thema

M_I_B

Hallo liebe Leute,

Folgender Code:

define HZ_wt dummy
attr HZ_wt setList off auto on
attr HZ_wt webCmd :


define BR_manu DOIF ([HZ_wt] eq "on") (set HM4SW9_1 on-for-timer 500,(set HM4SW9_(2|3|4) on-for-timer 600),set HZ_wt auto) \
DOELSEIF ([HZ_wt] eq "off") ((set HM4SW9_(1|2|3|4) off))
attr BR_manu wait 1,1,1,1,605:10
attr BR_manu do always


Frage 1:
Bezieht sich die Angabe bei wait auf die Anzahl der SET- Befehle (erste Zeile DOIF) oder die Anzahl der mit SET ausgeführten Befehle?
HM2SW9_1 ist die erste Stelle; klar. Aber dann kommt die Klammerung... dafür eine Stelle oder drei (weil drei Aktionen)?

Frage 2:
Bei diesem Konstrukt (mit wait 1,1,605:10 oder auch wait 1,1,1,1,605:10) wird HZ_wt jeweils sofort auf AUTO gesetzt und nicht wie erwartet in 605 Sekunden...


... au Backe :o Man sollte vielleicht die REF mal gründlich lesen; das mit dem Aufteilen in einzelne Klammerblöcke habe ich jetzt bestimmt 100 mal überlesen  >:( >:( >:(


igami

Zitat
Beispieldefinition bei mehreren DO-Blöcken mit Befehlssequenzen:

DOIF (Bedingung1)
(set ...) ## erster Befehl der ersten Sequenz soll um eine Sekunde verzögert werden
(set ...) ## zweiter Befehl der ersten Sequenz soll um 2 Sekunden nach dem ersten Befehl verzögert werden
DOELSEIF (Bedingung2)
(set ...) ## erster Befehl der zweiten Sequenz soll um 3 Sekunden verzögert werden
(set ...) ## zweiter Befehl der zweiten Sequenz soll um 0,5 Sekunden nach dem ersten Befehl verzögert werden

attr <DOIF-module> wait 1,2:3,0.5
Bei dir steht alles in einer Klammer.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

M_I_B

... jo, genau ... Das hatte ich zeitlich etwas vor Deiner Antwort gefunden; keine Ahnung, wieso ich da ungezählte male drüber weg gelesen habe  ::)