FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: ZeitlerW am 30 Juni 2018, 18:20:44

Titel: [gelöst] Statemachine wieder von vorne starten
Beitrag von: ZeitlerW am 30 Juni 2018, 18:20:44
Hallo zusammen,

ich würde gerne mithilfe eines Triggers, eine statemachine durchtasten. Mein Problem ist nun, den Automaten wieder "von vorne" starten zu lassen. Hier mein Code
defmod SM_Test DOIF ([trigger] and [$SELF:cmd] ==0) (set dummy1 on)
DOELSEIF ([trigger] and [$SELF:cmd] ==1) (set dummy2 on)
DOELSEIF ([trigger] and [$SELF:cmd] ==2) (set dummy3 on)
DOELSEIF ([trigger] and [$SELF:cmd] ==3) (set dummy1 off)
DOELSEIF ([trigger] and [$SELF:cmd] ==4) (set dummy2 off)
DOELSEIF ([trigger] and [$SELF:cmd] ==5) (set dummy3 off) (set $SELF initialize)


Der Automat läuft auch bis zur 6. Zeile, allerdings wird der set $SELF initialize nicht ausgeführt und der Automat endet.

Hat jemand eine Idee?

lG
Wolfgang
Titel: Antw:Statemachine wieder von vorne starten
Beitrag von: Ellert am 30 Juni 2018, 18:38:34
defmod SM_Test DOIF ([trigger] and [$SELF:cmd] eq "0|5") (set dummy1 on)

(set $SELF initialize) weglassen.
Titel: Antw:Statemachine wieder von vorne starten
Beitrag von: ZeitlerW am 30 Juni 2018, 18:44:33
Hallo Ellert,

na klar, das war zu einfach! Manchmal sieht man den Wald vor lauter Bäumen nicht!

Vielen Dank!
Wolfgang