Hallo,
könnte mir ev jemand kurz auf die Sprünge helfen? Mit dem alten Bewegungsmelder habe ich die Bewegung so abgefangen:
define Bewegung.EG notify Bewegungsmelder.EG:alarm:.personInside { BewegungEG() }
Der neue (Fibaro) sendet aber einen kompletten Text, nur: wie fange ich den ab? Muss ich den in Anführungszeichen setzen?
define Bewegung.EG notify Bewegungsmelder.EG:alarm:.HomeSecurity: Motion Detection - Unknown Location { BewegungEG() }
Die Meldung, die reinkommt, ist laut Log: "ZWave Bewegungsmelder.OG alarm: HomeSecurity: Motion Detection - Unknown Location"
Zitat von: Det20 am 24 Mai 2017, 13:05:06
Hallo,
könnte mir ev jemand kurz auf die Sprünge helfen? Mit dem alten Bewegungsmelder habe ich die Bewegung so abgefangen:
define Bewegung.EG notify Bewegungsmelder.EG:alarm:.personInside { BewegungEG() }
Der neue (Fibaro) sendet aber einen kompletten Text, nur: wie fange ich den ab?
define Bewegung.EG notify Bewegungsmelder.EG:alarm:.HomeSecurity: Motion Detection - Unknown Location { BewegungEG() }
Die Meldung, die reinkommt, ist laut Log: "ZWave Bewegungsmelder.OG alarm: HomeSecurity: Motion Detection - Unknown Location"
Leerzeichen im RegEx am Einfachsten mit Punkten ersetzen.
Gruß
Dan
define Bewegung.EG notify Bewegungsmelder.EG:alarm:.HomeSecurity:.Motion.Detection.-.Unknown.Location { .... }
So passt es, danke!!!
Setzt du dann bitte auf gelöst? Danke!
Ne, eine kommt noch :)
Dank eines Eintrages hier im Forum (Finde es nicht mehr) setze ich basicSet bei dem Fibaro von Hand:
define Bewegungsmelder.EG.TranslateText DOIF ([Bewegungsmelder.EG:alarm] =~ "cleared") (setreading Bewegungsmelder.EG basicSet 0) DOELSE (setreading Bewegungsmelder.EG basicSet 255)
Damit könnte ich ja theoretisch den Text extrem abkürzen. Leider funktioniert das im Notify nicht:
define Bewegung.EG.Start notify Bewegungsmelder.EG:basicSet:.255 { BewegungEG() }
Liegt es daran, dass das Event VOR dem DOIF ausgeführt wird, STATE deshalb noch nicht aktualisiert wurde? Ich möchte mir beim Notify den elendig langen Text sparen.
öffne doch mal den Eventmonitor und guck was da für Events reinkommen.
auf die kannste dann per notify reagieren.
reihenfolgenproblem glaube ich nicht dran.
Zitat von: Det20 am 24 Mai 2017, 15:38:26Ich möchte mir beim Notify den elendig langen Text sparen.
Die speziellen Readings der Z-Wave-Bewegungsmelder gingen mir bei meinen Notifys auch auf den Keks, und nach Suche im Forum habe ich ein UserReading eingebaut:
attr <Device> userReadings state:alarm.* {(ReadingsVal($name,"alarm","") =~ /^HomeSecurity:.Motion.Detection/)?"open":"closed"}
Die Notifys reagieren jetzt auf open bzw. closed. Vielleicht hilft dir das weiter.
Zitat von: Brice am 24 Mai 2017, 16:38:59
Die speziellen Readings der Z-Wave-Bewegungsmelder gingen mir bei meinen Notifys auch auf den Keks, und nach Suche im Forum habe ich ein UserReading eingebaut:
attr <Device> userReadings state:alarm.* {(ReadingsVal($name,"alarm","") =~ /^HomeSecurity:.Motion.Detection/)?"open":"closed"}
Die Notifys reagieren jetzt auf open bzw. closed. Vielleicht hilft dir das weiter.
Da im Reading alarm diverse Alarmtypen gemeldet werden, liefert das obige userReading auch bei anderen Alarmtypen bspw. Tamperalarm "closed".
(-> Attribut extendedAlarmReadings)
bitte in Zukunft nicht schliessen, sondern nur das Subject ändern, somit haben andere User die Möglichkeit Folgefragen zu stellen. Danke :)