FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: resben am 22 März 2016, 09:56:01

Titel: Notify für Reading funktioniert nicht.
Beitrag von: resben am 22 März 2016, 09:56:01
Hallo,
ich habe gestern damit begonnen Homematic einzurichten und bin über ein Problem gestolpert, welches wahrscheinlich mehr an einem Denkfehler meinerseits scheitert.

Hier mal kurz und knapp was die Basis ist:
- Ein Gerät mittels HTTPMOD eingebunden (Ich nenn es mal httpmodDevice)
- Dieses Gerät besitzt ein Reading, welches ich einfachheitshalber mal readingXYZ nenne.
- Dieses Reading readingXYZ zeigt auch tatsächlich immer den aktuell richtigen Wert des eingebundenen Gerätes an
- Der Standardwert von readingXYZ  ist immer 1, manchmal ändert es sich auf den Wert 2 und genau dann will ich eine Aktion unternehmen.

Mein Versuch sah jetzt wie folgt aus:
define notifyXYZ notify httpmodDevice.readingXYZ:2 SET telegramBotDevice message test

Was letztendlich ab SET kommt ist egal, da soll halt letztendlich was passieren.

Passieren tut jetzt aber nichts wenn sich der Wert von readingXYZ auf 2 ändert. Habe ich da irgendwo einen Denkfehler?

Danke schonmal!
Titel: Antw:Notify für Reading funktioniert nicht.
Beitrag von: marvin78 am 22 März 2016, 09:58:12
Schaue im Eventmonitor oder per Log ($EVENT), wie dein Event wirklich aussieht. Eventuell fehlt im Regex ein Leerzeichen oder ähnliches.
Titel: Antw:Notify für Reading funktioniert nicht.
Beitrag von: resben am 22 März 2016, 10:10:36
Okay, danke für den Tipp schonmal.
Werde ich heute nach Feierabend ausprobieren und hier nochmal Feedback gegeben und gegebenenfalls nach weiterer Unterstützung fragen.
Titel: Antw:Notify für Reading funktioniert nicht.
Beitrag von: resben am 22 März 2016, 22:55:15
Bin jetzt wieder zuhause und konnte das ganze ausprobieren.

So sieht jetzt mein notify genau aus:
Zitatdefine testNotify notify testDevice:testReading:2 set telegramBot message Test

Jetzt habe ich im Eventmonitor nachgeschaut und folgendes Event wurde geloggt:
Zitat2016-03-22 21:49:25 HTTPMOD testDevice testReading: 2

Leider ist mein Notify nicht angesprungen und der set-befehl wurde nicht ausgeführt.
Habt ihr eine Idee wodran das liegen kann?

Edit:
Wenn ich den regex im reading so schreibe:
ZitattestDevice:testReading:.*
dann triggert er das notify. Dann müsste ich natürlich noch per if prüfen ob eine 2 in $EVENT steht. Aber eigentlich hätte ich laut Wiki und Einsteiger-Doc gedacht, dass mein Notify mit :2 auch funktionieren müsste und er direkt auf den wert 2 matched?
Titel: Antw:Notify für Reading funktioniert nicht.
Beitrag von: MadMax-FHEM am 23 März 2016, 01:54:46
Hallo,

Zitat
2016-03-22 21:49:25 HTTPMOD testDevice testReading: 2

Sieht wie ein Leerzeichen aus zwischen : und 2


testDevice:testReading:.2


könnte helfen...

oder auch


testDevice:testReading:\s2


Gruß, Joachim
Titel: Antw:Notify für Reading funktioniert nicht.
Beitrag von: resben am 23 März 2016, 09:05:10
Hallo Joachim,

da ist in der Tat ein Leerzeichen zwischen. Ich hab mir da gar nichts bei gedacht, weil ich das einfach für die Formatierung gehalten habe, aber deine Begründung und Lösung klingen sehr plausibel.

Werd das heute Abend direkt probieren, vielen Dank!