FHEM Forum

FHEM - Hausautomations-Systeme => Homematic => Thema gestartet von: Init am 29 Dezember 2015, 15:00:36

Titel: HMW_IO_12_Sw7_DR als Klingeltaster
Beitrag von: Init am 29 Dezember 2015, 15:00:36
Hallo zusammen,

stehe gerade auf dem Schlauch.

Habe gestern Abend den Taster über ein Relais an den HMW_IO_12_Sw7_DR angeschlossen, um ein Foto von der Tür zu speichern, wenn es schellt.

Jetzt finde ich die Eingänge unter der Gruppe "KEY".
Der STATE ist immer unterschiedlich und verändert sich je nachdem, wie lange der Taster gedrückt wird.
Ich möchte aber nur ein Foto beim schellen speichern.

Hier nofity Logs von einem langen und einem kurzen drücken:
2015.12.29 14:35:29.306 1: Ringing HMW_IO_12_Sw7_DR_LEQ1286184_01 press_long: 20
2015.12.29 14:35:29.318 1: Ringing HMW_IO_12_Sw7_DR_LEQ1286184_01 press_long_20
2015.12.29 14:35:29.557 1: Ringing HMW_IO_12_Sw7_DR_LEQ1286184_01 press_long: 20
2015.12.29 14:35:29.563 1: Ringing HMW_IO_12_Sw7_DR_LEQ1286184_01 press_long_20
2015.12.29 14:35:29.857 1: Ringing HMW_IO_12_Sw7_DR_LEQ1286184_01 press_long: 20
2015.12.29 14:35:29.863 1: Ringing HMW_IO_12_Sw7_DR_LEQ1286184_01 press_long_20
2015.12.29 14:35:30.158 1: Ringing HMW_IO_12_Sw7_DR_LEQ1286184_01 press_long: 20
2015.12.29 14:35:30.164 1: Ringing HMW_IO_12_Sw7_DR_LEQ1286184_01 press_long_20
2015.12.29 14:35:30.459 1: Ringing HMW_IO_12_Sw7_DR_LEQ1286184_01 press_long: 20
2015.12.29 14:35:30.464 1: Ringing HMW_IO_12_Sw7_DR_LEQ1286184_01 press_long_20
2015.12.29 14:35:30.608 1: Ringing HMW_IO_12_Sw7_DR_LEQ1286184_01 press_long: 20
2015.12.29 14:35:30.613 1: Ringing HMW_IO_12_Sw7_DR_LEQ1286184_01 press_long_20
2015.12.29 14:35:34.820 1: Ringing HMW_IO_12_Sw7_DR_LEQ1286184_01 press_short: 21
2015.12.29 14:35:34.826 1: Ringing HMW_IO_12_Sw7_DR_LEQ1286184_01 press_short_21


Mein bisheriges Notify sieht so aus:
define isRinging notify HMW_IO_12_Sw7_DR_LEQ1286184_01 {\
Log 1,"Ringing $NAME $EVENT";;\
}
attr isRinging room Testing


Hat jemand eine Idee, was ich bauen kann, um nur ein Foto/Logeintrag zu bekommen?

Viele Grüße
Marc
Titel: Antw:HMW_IO_12_Sw7_DR als Klingeltaster
Beitrag von: Otto123 am 29 Dezember 2015, 15:39:39
Hallo Marc,

mit dem Attribut event-on-change-reading bekommst Du die mehrfach Events weg.
Dann musst Du entscheiden bei welchen Tastendruck Du ein Foto haben willst - short oder long.
HMW_IO_12_Sw7_DR_LEQ1286184_01:short.* oder HMW_IO_12_Sw7_DR_LEQ1286184_01:long.* für den Trigger beim notify.

Oder Du machst einfach ein DOIF mit wait, das ist dafür besser geeignet.

Den Event auf den Du triggern musst kannst Du besser im Eventmonitor sehen.
Und rename ist vielleicht auch nicht schlecht 8)

Gruß Otto
Titel: Antw:HMW_IO_12_Sw7_DR als Klingeltaster
Beitrag von: Init am 29 Dezember 2015, 17:02:28
Hallo Otto,

danke für die Antwort.

Werde mich heute Abend mal in DOIF und event-on-change-reading einlesen, da ich beides noch nicht im Einsatz habe.

VG
Marc
Titel: Antw:HMW_IO_12_Sw7_DR als Klingeltaster
Beitrag von: Init am 02 Januar 2016, 12:40:27
Hallo zusammen,

habe jetzt versucht mein Problem mit DOIF zu lösen.

Es hat auch ein paar mal funktioniert, aber irgendwie jetzt nicht mehr.

Kann jemand in meiner Definition einen Fehler sehen?

define di_Ringing DOIF ([HMW_KEY_Ringing press_(long|short)(:|_)]) ({execRinging()})
attr di_Ringing room Testing


Hier die entsprechenden Events:
2016-01-02 12:35:40.299 HM485 HMW_KEY_Ringing press_long: 50
2016-01-02 12:35:40.299 HM485 HMW_KEY_Ringing press_long_50
2016-01-02 12:35:40.619 HM485 HMW_KEY_Ringing press_long: 50
2016-01-02 12:35:40.619 HM485 HMW_KEY_Ringing press_long_50
2016-01-02 12:35:40.726 HM485 HMW_KEY_Ringing press_long: 50
2016-01-02 12:35:40.726 HM485 HMW_KEY_Ringing press_long_50
2016-01-02 12:35:42.435 HM485 HMW_KEY_Ringing press_short: 51
2016-01-02 12:35:42.435 HM485 HMW_KEY_Ringing press_short_51
2016-01-02 12:35:43.562 HM485 HMW_KEY_Ringing press_short: 52
2016-01-02 12:35:43.562 HM485 HMW_KEY_Ringing press_short_52


Ich hätte erwartet, dass execRinging() 3x aufgerufen wird.

Vorab vielen Dank für die Hilfe.

Grüße
Marc
Titel: Antw:HMW_IO_12_Sw7_DR als Klingeltaster
Beitrag von: Otto123 am 04 Januar 2016, 00:17:29
Hallo Marc,

so auf die Schnelle: Ich denke Du musst das Attribute do always setzen. Sonst bleibt Dein DOIF beim ersten Trigger hängen.

Gesundes neues Jahr
Otto
Titel: Antw:HMW_IO_12_Sw7_DR als Klingeltaster
Beitrag von: Init am 04 Januar 2016, 16:54:08
Hallo Otto,

ich habe es jetzt doch mit event-on-change-reading gelöst

attr HMW_KEY_Ringing event-on-change-reading press_(long|short)

So funktioniert es perfekt für mich.

Vielen Dank für die Unterstützung
Marc