Hallo.
Habe das Problem dass der state des WOL beim niederfahren des überwachten Clients toggelt.
Sprich, es kommt folgende Event folge:
off, on, off
Das sieht im Log dann so aus:
2019.03.28 23:56:06 1: act_off_PCs_SZ_OFF: Szene Aus aktivieren, es ist Schlafenszeit!
2019.03.28 23:56:16 1: act_on_PCs_SZ_ON: Szene Nacht aktivieren, es ist dunkel!
2019.03.28 23:56:28 1: act_off_PCs_SZ_OFF: Szene Aus aktivieren, es ist Schlafenszeit!
act_on_PCs_SZ_ON ist ein notify mit " WOL_SZ_TV:on {...}" und act_on_PCs_SZ_OFF ist ein notify mit " WOL_SZ_TV:off {...}".
Das gleiche Problem besteht wenn ich auf isRunning triggere.
Kennt das Thema jemand und hat eine Idee wie ich das "einfach" (ohne zusätzlichen Watchdog usw.) entprellen kann?
Das WOL def:
defmod WOL_SZ_TV WOL XX:XX:XX:XX:XX:XX 192.168.0.XX
attr WOL_SZ_TV alias Fernseher
attr WOL_SZ_TV devStateIcon off:rc_TV on:rc_TV1_on refresh:rc_TV1_off
attr WOL_SZ_TV event-on-change-reading status
attr WOL_SZ_TV group Geräte
attr WOL_SZ_TV icon it_television
attr WOL_SZ_TV interval 10
attr WOL_SZ_TV room Schlafzimmer
attr WOL_SZ_TV shutdownCmd {`curl -u eguser:dintiseg --max-time 3 http://192.168.0.7:8888/?Shutdown`}
Danke
pOpY
Update:
Spannenderweise kann ich es mit mehrmaligem ein/aus nicht nachvollziehen.
Es passiert einfach manchmal.
Habe jetzt mal testweise die beiden notifys in eines zusammengefasst (Siehe def unten) und das disabledAfterTrigger auf 15 gesetzt.
notify def:
defmod act_on_PCs_WZ_ON notify WOL_WZ.*:isRunning:.* {\
#on/true or off/false\
if(index($EVENT, "true") != -1)\
{\
#on/true\
if(Value("Tageslicht") eq "dunkel") {\
Log 1, "act_on_PCs_WZ: Szene FernsehLicht aktivieren, es ist dunkel! (event ".$EVENT." from ".$NAME.")";;\
fhem "set WZ_Szenen scene Fernsehlicht";;\
}else{\
Log 1, "act_on_PCs_WZ: Szene FernsehLicht NICHT aktivieren, es ist zu hell! (event ".$EVENT." from ".$NAME.")";;\
} \
}else{\
#off/false\
if(ReadingsVal("WOL_WZ_TV","isRunning","false") eq "false" && ReadingsVal("WOL_WZ_NOTEBOOK","isRunning","false") eq "false")\
{\
if(Value("Tageslicht") eq "dunkel") {\
Log 1, "act_on_PCs_WZ: Szene Schlafen Gehen aktivieren, es ist dunkel! (event ".$EVENT." from ".$NAME.")";;\
fhem "set WZ_Szenen scene Schlafen_Gehen";;\
}else{\
Log 1, "act_on_PCs_WZ: Szene Schlafen Gehen NICHT aktivieren, es ist zu hell! (event ".$EVENT." from ".$NAME.")";;\
}\
}else{\
Log 1, "act_on_PCs_WZ: Nichts umschalten, da ein Gerät läuft! (event ".$EVENT." from ".$NAME.")";; \
}\
} \
}
attr act_on_PCs_WZ_ON alias Wohnzimmer Fernsehlicht/Nachtlicht bei PCs ein/aus
attr act_on_PCs_WZ_ON disabledAfterTrigger 15
attr act_on_PCs_WZ_ON group Wohnzimmer
attr act_on_PCs_WZ_ON icon rc_TV1_on
attr act_on_PCs_WZ_ON room System
Ich halte euch auf dem laufenden...
Schaut gut aus!
Das on wurde "verschluckt"...
2019.03.29 22:50:08 1: act_on_PCs: Szene Aus aktivieren, es ist Schlafenszeit!
2019.03.29 22:50:31 1: act_on_PCs: Szene Aus aktivieren, es ist Schlafenszeit!