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!
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!
Danke! Scheint soweit zu funktionieren...