Hallo,
Folgende "Schaltung" ist quasi als Nebenprodukt entstanden. Es ist eine reine DOIF-Lösung ohne "at" oder "sleep".
Es geht darum, Befehle sequenziell mit verschiedenen Zeitverzögerungen auszuführen.
define du_count dummy
define di_step DOIF ([du_event:?on]) ({Log(3, "step 1")}, setreading du_count state 1)
DOELSEIF ([du_count] == 1) ({Log(3, "step 2")}, setreading du_count state 2)
DOELSEIF ([du_count] == 2) ({Log(3, "step 3")}, setreading du_count state 0)
attr di_step wait 0:5:5
Die Anzahl Schritte kann nach Bedarf erweitert werden. Als Auslöser können Events wie im Beispiel oder auch Zeiten verwendet werden.
Gruss
flurin
Zitat von: flurin am 18 Mai 2015, 19:31:44
Hallo,
Folgende "Schaltung" ist quasi als Nebenprodukt entstanden. Es ist eine reine DOIF-Lösung ohne "at" oder "sleep".
Es geht darum, Befehle sequenziell mit verschiedenen Zeitverzögerungen auszuführen.
define du_count dummy
define di_step DOIF ([du_event:?on]) ({Log(3, "step 1")}, setreading du_count state 1)
DOELSEIF ([du_count] == 1) ({Log(3, "step 2")}, setreading du_count state 2)
DOELSEIF ([du_count] == 2) ({Log(3, "step 3")}, setreading du_count state 0)
attr di_step wait 0:5:5
Die Anzahl Schritte kann nach Bedarf erweitert werden. Als Auslöser können Events wie im Beispiel oder auch Zeiten verwendet werden.
Gruss
flurin
Eine gute Alternative zu at-Definitionen oder sleeps.
Es wird aber demnächst etwas einfacher gehen:
define di_step DOIF ([du_event:?on])
({Log(3, "step 1")})
({Log(3, "step 2")})
({Log(3, "step 3")})
attr di_step wait 0:5:5
Gruß
Damian
Zitat von: Damian am 18 Mai 2015, 19:58:20
Eine gute Alternative zu at-Definitionen oder sleeps.
Es wird aber demnächst etwas einfacher gehen:
define di_step DOIF ([du_event:?on])
({Log(3, "step 1")})
({Log(3, "step 2")})
({Log(3, "step 3")})
attr di_step wait 0:5:5
Gruß
Damian
Wenn es einfacher wird, umso besser :)
Gruss
flurin