Hallo,
ich haben einen Status Anwesenheit
define Anwesenheit dummy
attr Anwesenheit devStateIcon ZuHause:status_available@00FF00:Unterwegs Unterwegs:status_away_2@FFFF00:Urlaub Urlaub:status_locked@FF0000:ZuHause
attr Anwesenheit group Status
attr Anwesenheit setList state:ZuHause,Unterwegs,Urlaub
den ich durch einen Klick auf das Symbol ändern kann.
Jetzt möchte ich abhängig von dem Status Aktionen ausführen (z.B. alle Lichter aus, ...). Das wäre auch kein Problem.
Allerdings möchte ich das erst machen, wenn sich nach einer Statusänderung sich z.B. der Status 10 Sekunden lang nicht mehr geändert hat.
Hintergrund:
Wechsel ich von "ZuHause" auf "Urlaub", muss ich auch über den Status "Unterwegs" gehen. Ich möchte aber vermeiden, dass der Status "Unterwegs" ausgeführt wird.
Ist so etwas mit DOIF machbar?
Bisher habe ich
define di_Anwesenheit DOIF ([Anwesenheit] eq "ZuHause") ({Log 3, "ZuHause"}) \
DOELSEIF ([Anwesenheit] eq "Unterwegs") ({Log 3, "Unterwegs"}) \
DOELSEIF ([Anwesenheit] eq "Urlaub") ({Log 3, "Urlaub"})
attr di_Anwesenheit waitdel 10
Ich habe auch andere Wait-Kommandos durchprobiert, aber ich konnte noch nicht genau das Verhalten erreichen.
Zitatwait 10:10:10
waitdel 10
Super ... vielen Dank.