FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Holger S am 05 Januar 2023, 14:31:14

Titel: Notify funktioniert nicht
Beitrag von: Holger S am 05 Januar 2023, 14:31:14
Hallo,
bei meinem Notify für Batteriestatus wird meine Routine "Batterie_warnung" nicht ausgeführt.

.*:[Bb]attery.*:.* { if($EVENT !~ m/ok/) {Batterie_warnung}}

EVENT Monitor
2023-01-05 14:21:21 MQTT2_DEVICE TempLuftTKT battery: low

Habe schon einiges probiert. Kann jemand unterstützen?

Vielen Dank
Titel: Antw:Notify funktioniert nicht
Beitrag von: Otto123 am 05 Januar 2023, 14:53:15
Hi,

da ist immer die Frage: nicht getriggert oder nicht ausgeführt? Ob getriggert siehst Du in den Readings.
Laut Deiner Zeile Event und dem notify sollte es triggern und das if sollte auch true liefern.

Gruß Otto
Titel: Antw:Notify funktioniert nicht
Beitrag von: Holger S am 05 Januar 2023, 15:06:01
Hallo,

Readings vom Notify:
triggeredByDev TempLuftTKT 2023-01-05 15:01:19
triggeredByEvent battery: low 2023-01-05 15:01:19

Habe Notify geändert um einen Log Eintrag zu erstellen:
.*:[Bb]attery.*:.* { if($EVENT !~ m/ok/) {Batterie_warnung};; Log 3, "$NAME : Batteriewarnung $EVENT";;}

es wird kein Log Eintrag geschrieben wenn battery auf low geht
Titel: Antw:Notify funktioniert nicht
Beitrag von: Uwe S. am 05 Januar 2023, 15:07:09
Zitat.*:[Bb]attery.*:.* { if($EVENT !~ m/ok/) {Batterie_warnung}}

ich vermute der Doppelpunkt vor [Bb] ist das Problem.
In deinem Event taucht kein Doppelpunkt vor dem battery auf und somit passt es nicht zu dem gewählten regulären Ausdruck (RegEx)

Titel: Antw:Notify funktioniert nicht
Beitrag von: Otto123 am 05 Januar 2023, 15:54:27
NEIN der Doppelpunkt ist ok! Suchmuster beim notify ist Device:Event siehe auch https://fhem.de/commandref_modular_DE.html#notify

Dann mach mal nur ein Log
.*:[Bb]attery.*:.* { Log 1, "$NAME : Batteriewarnung $EVENT"}
Titel: Antw:Notify funktioniert nicht
Beitrag von: frank am 05 Januar 2023, 15:59:05
und poste mal die funktion Batterie_warnung.
falls dort zb bestimmte "setreadings" enthalten sind, könnten die zb "verhindert" werden.
Titel: Antw:Notify funktioniert nicht
Beitrag von: Holger S am 05 Januar 2023, 16:15:30
Nach Änderung Notifiy def auf:

.*:[Bb]attery.*:.* { Log 1, "$NAME : Batteriewarnung $EVENT"}

werden Logeinträge geschrieben
2023.01.05 16:11:16 1: TempLuftTKT : Batteriewarnung battery: low
2023.01.05 16:09:15 1: LaCrosse_WzF : Batteriewarnung battery: ok
2023.01.05 16:07:58 1: TempLuftBad : Batteriewarnung batteryPercent: 83.7
usw..
Titel: Antw:Notify funktioniert nicht
Beitrag von: betateilchen am 05 Januar 2023, 16:22:17

defmod TempLuftTKT dummy
defmod TempLuftTKT_notify notify .*:[Bb]attery.*:.* {if($EVENT !~ m/ok/) {Debug $EVENT}}
setreading TempLuftTKT battery low


ergibt bei mir im Log

2023.01.05 16:18:53 1: DEBUG>battery: low

grundsätzlich funktioniert Deine Definition also.
Titel: Antw:Notify funktioniert nicht
Beitrag von: Holger S am 05 Januar 2023, 16:40:21
Habe das:

.*:[Bb]attery.*:.* {if($EVENT !~ m/ok/) {Debug $EVENT}}

bei mir reinkopiert und jetzt funktioniert es. Keine Ahnung was das Problem war.

Danke an alle