Hallo.
Mit einem Watchdog möchte ich überprüfen, ob Kodi (auf einem Raspberry Pi) innerhalb der letzten 5 Minuten ausgeschaltet wurde. Hierzu habe ich bislang PRESENCE mit lan-ping verwendet.
define sz_kodi_wdg watchdog sz_kodi_prsnc:absent 00:05 sz_kodi_prsnc:present {\
Da ich ohnehin das Kodi-Modul in FHEM verwende, habe ich den Watchdog entsprechend angepasst. Sobald Kodi erreichbar ist erhält das Reading "state" des Kodi-Device ein "opened", andernfalls "disconnected".
define sz_kodi_wdg watchdog sz_kodi:disconnected 00:05 sz_kodi:opened {\
Allerdings reagiert der Watchdog darauf nicht. Er bleibt auf "defined" stehen.
Als Attribute für das Kodi-Modul sind gesetzt
event-on-change-reading state
updateInterval 60
Warum kommt das State-Event vom Kodi-Modul nicht beim Watchdog an?
Muss der Watchdog für das Kodi-Modul anders konfiguriert werden?
Vielen Dank!
Kai
Mach mal bitte ein list vom Kodidevice und vom Watchdog Device
list DEVICENAME
list sz_kodi
Internals:
DEF 10.0.13.41 tcp
DeviceName 10.0.13.41:9090
Host 10.0.13.41
NAME sz_kodi
NR 211
NextID 1
Port 9090
Protocol tcp
STATE Disconnected
TYPE KODI
READINGS:
2018-03-22 22:40:41 fullscreen off
2018-03-22 22:40:41 mute off
2018-03-22 22:40:41 name Kodi
2018-03-22 22:39:41 partymode
2018-03-22 22:40:52 playStatus stopped
2018-03-22 22:39:41 repeat
2018-03-22 22:39:41 shuffle
2018-03-22 22:40:41 skin Estuary(skin.estuary)
2018-03-22 22:39:41 speed
2018-03-22 22:40:52 state disconnected
2018-03-22 22:40:41 stereoscopicmode off
2018-03-22 22:40:52 system quit
2018-03-22 22:39:41 time
2018-03-22 22:39:41 totaltime
2018-03-22 22:40:41 version 18.0-258cf89 alpha
2018-03-22 22:40:41 volume 100
Attributes:
devStateIcon opened:rc_GREEN disconnected:rc_RED
disable 0
event-on-change-reading state
fork enable
room Schlafzimmer
updateInterval 60
list sz_kodi_wdg
Internals:
CMD {
if (ReadingsVal("sz_kodi_tasmota_state","power",0) eq "ON") {
fhem "set sz_kodi_tasmota_button off";
}
}
DEF sz_kodi_wdg watchdog sz_kodi:disconnected 00:05 sz_kodi:opened {
if (ReadingsVal("sz_kodi_tasmota_state","power",0) eq "ON") {
fhem "set sz_kodi_tasmota_button off";
}
}
NAME sz_kodi_wdg
NOTIFYDEV sz_kodi_wdg,sz_kodi
NR 238
NTFY_ORDER 50-sz_kodi_wdg
RE1 sz_kodi:disconnected
RE2 sz_kodi:opened
STATE defined
TO 480
TYPE watchdog
READINGS:
2018-03-23 01:54:22 Activated activated
2018-03-23 01:59:22 Triggered triggered
2018-03-22 22:34:09 state defined
Attributes:
autoRestart 1
regexp1WontReactivate 1
room Schlafzimmer
Die Readings "Activated" und "Triggered" im Watchdog kamen nur zustande, da ich mittels des Trigger-Befehls
trigger kz_kodi disconnected
das Event manuell ausgelöst habe; darauf hat der Watchdog zumindest reagiert.
sz_kodi.disconnected 00:05 sz_kodi.opened
Versuch mal bitte.
Zitat von: Kaimane am 23 März 2018, 14:14:38
trigger kz_kodi disconnected
das Event manuell ausgelöst habe; darauf hat der Watchdog zumindest reagiert.
Das glaube ich eher nicht. Einem watchdog, der auf sz_kodi reagieren soll, ist es völlig egal, was mit einem device namens kz_kodi passiert.
Zitat von: CoolTux am 23 März 2018, 15:31:16
sz_kodi.disconnected 00:05 sz_kodi.opened
Versuch mal bitte.
Das hat leider auch nicht funktioniert. Sobald ich Kodi herunterfahre und das Device sz_kodi den State disconnected einnimmt passiert mit dem Watchdog Device weiterhin nichts.
Erst ein erneuter
trigger sz_kodi disconnected
löst den Watchdog aus.
Zitat von: betateilchen am 23 März 2018, 17:05:35
Das glaube ich eher nicht. Einem watchdog, der auf sz_kodi reagieren soll, ist es völlig egal, was mit einem device namens kz_kodi passiert.
Da hat sich ein Schreibfehler eingeschlichen. Es handelt sich selbstverständlich um das Device
sz_kodi und nicht
kz_kodi.
Zeig Mal bitte den genauen Event aus dem Eventmonitor
Event Monitor auf sz_kodi.*
2018-03-26 22:24:36 dummy sz_kodi_tasmota_button on
2018-03-26 22:24:54 HTTPMOD sz_kodi_tasmota_state power: ON
2018-03-26 22:25:22 PRESENCE sz_kodi_ping present
2018-03-26 22:25:56 KODI sz_kodi CONNECTED
2018-03-26 22:26:48 KODI sz_kodi DISCONNECTED
2018-03-26 22:27:38 PRESENCE sz_kodi_ping absent
2018-03-26 22:32:54 HTTPMOD sz_kodi_tasmota_state power: OFF
Das Nichtbeachten von case sensitive ...
Ich bin selber drauf gekommen. Vielen Dank CoolTux, für den Hinweis mit dem Event monitor ;)
Hiermit reagiert nun der sz_kodi_wdg Watchdog
sz_kodi:DISCONNECTED 00:05 sz_kodi:CONNECTED {