FHEM Forum

FHEM - Hausautomations-Systeme => Homematic => Thema gestartet von: ichbindas am 03 November 2020, 12:31:24

Titel: [gelöst] Seit update "prellt" mein Klingelsensor
Beitrag von: ichbindas am 03 November 2020, 12:31:24
Hi, seit nem update auf dem PI prellt mein Klingeltaster nun (Nachrichten kommen via Pushover doppelt)
Seither lief das perfekt, ob man lang drückt oder ganz oft hintereinander!! Ich habe nichts verändert:

Define vom Klingelsensor:
defmod Klingelsensor CUL_HM 4E04A8
attr Klingelsensor .mId 00DC
attr Klingelsensor IODev CUL
attr Klingelsensor IOgrp VCCU:CUL
attr Klingelsensor autoReadReg 4_reqStatus
attr Klingelsensor event-on-change-reading trigger
attr Klingelsensor expert defReg,rawReg
attr Klingelsensor firmware 1.0
attr Klingelsensor model HM-SEN-DB-PCB
attr Klingelsensor peerIDs 00000000,
attr Klingelsensor room 10_Flur
attr Klingelsensor serialNr NEQ0956680
attr Klingelsensor subType pushButton


Notify ruft eine Funktion auf:
defmod n_Klingelsensor notify Klingelsensor:.* { EsHatGeklingelt () }
attr n_Klingelsensor disabledAfterTrigger 10
attr n_Klingelsensor room 10_Flur


Funktion führt das hier aus:
sub EsHatGeklingelt () {
if (Value ("Anwesenheit_A") eq "on") { fhem "set Pushover msg 'Haustür' 'Es hat geklingelt' 'A' 1 ' '" };
if (Value ("Anwesenheit_B") eq "on") { fhem "set Pushover msg 'Haustür' 'Es hat geklingelt' 'B' 1 ' '" };
if (Value ("Anwesenheit_C") eq "on") { fhem "set Pushover msg 'Haustür' 'Es hat geklingelt' 'C' 1 ' '" };
if (Value ("KlingelBlinkDurchgang") eq "on") { fhem "set Durchgang_Lampe toggle; sleep 1; set Durchgang_Lampe toggle"};
}


Bei Pushover kommt das Zeug auf einmal alles doppelt an. Sieht jemand nen Fehler? Seither lief es... :(
Titel: Antw:Seit update "prellt" mein Klingelsensor
Beitrag von: frank am 03 November 2020, 12:36:24
ich würde mal im eventmonitor die events kontrollieren.
Titel: Antw:Seit update "prellt" mein Klingelsensor
Beitrag von: MadMax-FHEM am 03 November 2020, 12:47:49
Zitat von: frank am 03 November 2020, 12:36:24
ich würde mal im eventmonitor die events kontrollieren.

Würde ich auch machen, weil
Zitatdefmod n_Klingelsensor notify Klingelsensor:.*
auf alles "hört" was vom Klingelsensor kommt...

Mit Update meinst du ein fhem-Update?

Wenn ja: es wurde bei Homematic etwas bzgl. Events verändert...
...und wenn notify etc. zu "grob" gehalten sind, dann fallen sie jetzt "auf die Nase" ;)

EDIT: daher sollte man immer entsprechende Trigger etc. so "genau wie möglich" machen (nicht nur deswegen, sondern generell / auch wegen "System-Last")...

EDIT: dann kann man sich evtl. auch das hier
Zitatattr n_Klingelsensor disabledAfterTrigger 10
"sparen"... Bzw. habe ich auch schon gemerkt, dass wenn Events quasi "gleichzeitig" kommen, dass das Attribut dann auch nicht so wirkt...

Gab schon vor einiger Zeit (als die Änderung "raus kam") einige Posts im Forum so in der Art: "plötzlich gehen Lichter an/aus etc." ;)

Gruß, Joachim
Titel: Antw:Seit update "prellt" mein Klingelsensor
Beitrag von: ichbindas am 04 November 2020, 19:17:58
Klingelsensor:trigger:.* { EsHatGeklingelt () }

das wars...

das disableAfterTrigger 10 benötige ich, dass wenn jemand doppelt auf den Knopf drückt, meine ganzen Routinen doppelt ausgeführt werden und als mal hängenbleiben.
Wenn jemand 5 mal drückt kriege ich keine 10 Pushovers :)
Titel: Antw:Seit update "prellt" mein Klingelsensor
Beitrag von: MadMax-FHEM am 04 November 2020, 19:47:27
Ok, das macht nat. Sinn...
...habe ich bei meiner Klingel auch ;)

Dann kannst du ja ein [gelöst] vorne dran pappen, danke.

Viel Spaß, Joachim
Titel: Antw:Seit update "prellt" mein Klingelsensor
Beitrag von: ichbindas am 04 November 2020, 21:29:23
also mit dem trigger kommt das immernoch doppelt :(
Titel: Antw:Seit update "prellt" mein Klingelsensor
Beitrag von: MadMax-FHEM am 04 November 2020, 21:46:12
Dann poste doch mal Auszüge aus dem Eventmonitor, wenn es klingelt...

Hast du das notify vom Eventmonitor anlegen lassen oder selbst "gebastelt"?

Anmerkung noch: ich würde "Abstand" von Value(DeviceName) nehmen. Besser ReadingsVal/ReadingsNum etc. nehmen. Da ist klar WAS du ausliest. Bei Value ist es das Internal STATE und NICHT das Readung state! STATE wird z.B. durch stateFormat beeinflusst und führt u.U. zu "unerwarteten" Ergebnissen...

Gruß, Joachim
Titel: Antw:Seit update "prellt" mein Klingelsensor
Beitrag von: ichbindas am 08 November 2020, 09:44:22
Das Thema ist nun gelöst, in Pushover war - aus welchem Grund auch immer - ein Gerät auf deaktiviert gesetzt, seitdem kam das alles doppelt.
Ich muss das glaub dem IOS Update in die Schuhe schieben, seitdem die Geräte alle wieder auf aktiviert sind, funktioniert das und es kommt nichts doppelt!

Bin wieder auf den ursprünglichen Code zurück (der auf *alles* vom Klingelsensor reagiert...)

Bin da draufgekommen, weil ich es mit watchDog probiert habe. Und da kam es auch doppelt, wenn ich nur ein Gerät angesprochen hab, hat es funktioniert.
Dadurch konnte sich der Fehler entlarven.

Vielen Dank für eure Hilfe / Feedback.

Mein Code tut jedenfalls :)