FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: kermitthefrog am 11 März 2020, 20:45:35

Titel: Trigger auf MISSING ACK im DOIF
Beitrag von: kermitthefrog am 11 März 2020, 20:45:35
Moin,

ich komme nicht weiter... habe einen Homematic Schalter, der gelegentlich aussteigt (MISSING ACK). Wenn der Fall eintritt, würde ich gerne eine Info aufs Handy bekommen (über Telegram).
Folgendes DOIF habe ich hierfür versucht:
Internals:
   DEF        ([":^MISSING.ACK"]) (set teleBot message $DEVICE nicht erreichbar!)
   DOIFDEV    ^global$|
   FUUID      5e5a07cf-f33f-7d16-86e3-1772d46c1ed6a3d2
   MODEL      FHEM
   NAME       di_MissingACKWarnung
   NR         441
   NTFY_ORDER 50-di_MissingACKWarnung
   STATE      initialize
   TYPE       DOIF
   VERSION    20929 2020-01-10 09:44:35
   READINGS:
     2020-03-11 20:38:38   mode            enabled
     2020-03-11 20:38:38   state           initialize
   Regex:
     accu:
     cond:
       :
         0:
           ":^MISSING.ACK" :^MISSING.ACK
   attr:
     cmdState:
     wait:
     waitdel:
   condition:
     0          ::EventDoIf('',$hash,'^MISSING.ACK',0)
   do:
     0:
       0          set teleBot message $DEVICE nicht erreichbar!
     1:
   helper:
     DEVFILTER  ^global$|
     NOTIFYDEV  global|.*
     globalinit 1
     last_timer 0
     sleeptimer -1
     triggerDev
   uiState:
   uiTable:
Attributes:
   do         always
   room       CUL_HM


es scheint aber irgendwo der Wurm drin zu sein. Das Attribut addStateEvent = 1 bringt mich auch nicht weiter.
Jemand ne Idee, wo ich ansetzen kann?

Besten Dank!
Titel: Antw:Trigger auf MISSING ACK im DOIF
Beitrag von: Sany am 12 März 2020, 13:57:14
Hi,

ich habe das so bei mir gelöst:

([":(MISSING.ACK.*|N(ACK|ack).*)"])

das greift bei MISSING ACK, NACK sowie Nack, wenn es im Event vorkommt. Nack und NACK hatte ich gerade beim Batteriewwechsel eines Fensterkontakts. (... und ja, kann man auch noch kürzer schreiben..)

Wenn Du "set di_MissingACKWarnung cmd1" auslöst solltest Du sehen, dass die Push-nachricht funktioniert, ansonsten kannst Du das DOIF mit "trigger" auslösen: Du brauchst ein vorhandenes Device (egal welches, kannst einen Dummy dafür anlegen, nennen wir es "Tester". Dann mal

trigger Tester Nack

in die fhem-Kommandozeile eingeben. Das sollte die Push-Nachricht auslösen.

Viel Erfolg!
Titel: Antw:Trigger auf MISSING ACK im DOIF
Beitrag von: kermitthefrog am 13 März 2020, 10:33:06
Danke! Scheint soweit zu funktionieren...