[gelöst] Watchdog wird durch Kodi-Modul nicht getriggert

Begonnen von Kaimane, 22 März 2018, 23:10:22

Vorheriges Thema - Nächstes Thema

Kaimane

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

CoolTux

Mach mal bitte ein list vom Kodidevice und vom Watchdog Device

list DEVICENAME
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Kaimane

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.

CoolTux


sz_kodi.disconnected 00:05 sz_kodi.opened


Versuch mal bitte.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

betateilchen

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.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Kaimane

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.

CoolTux

Zeig Mal bitte den genauen Event aus dem Eventmonitor
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Kaimane

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

Kaimane

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 {