FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Helmi55 am 31 Oktober 2016, 20:09:21

Titel: [gelöst]Frage zu einem Pushover notify
Beitrag von: Helmi55 am 31 Oktober 2016, 20:09:21
Hallo
ich verwende ein Notify welches mich über den Zustand der Eingangstür informiert (wird nur bei Änderung durchgeführt - Tür auf- Meldung - Tür Zu-meldung)
TuerKontakt {if(Value("Abwesend_Tuer") eq "on"){my $temp_Status = Value("TuerKontakt"); fhem ("set Pushover1 msg 'Eingangstuer Wien' 'Zustand: $temp_Status' '' 0 '' ")}}
Ja, der Türkontakt ist ein IT Kontakt.
Nun habe ich bei meiner Einfahrt ebenso eine Meldung
Einfahrt {if(Value("du_LangeAbwesend") eq "on"){my $temp_Status = Value("Einfahrt"); fhem ("set Pushover1 msg 'Einfahrt Woerdern' 'Zustand: $temp_Status' '' 0 '' ")}}
Hier handelt sich um einen HM Sensor

Nun zu meinem Problem: der HM bei der Einfahrt schickt mir stündlich 3 Meldungen über den Zustand
Warum?

Danke für eure Hilfe
Gruß
Helmut
Titel: Antw:Frage zu einem Pushover notify
Beitrag von: CoolTux am 31 Oktober 2016, 21:24:57
Weil Du auf alle Readings des Device triggerst. Stelle Deine Regexp feiner ein.
Gib mal bitte ein List vom HM Device
Titel: Antw:Frage zu einem Pushover notify
Beitrag von: Helmi55 am 31 Oktober 2016, 22:21:07
Hallo und Servus - Danke für deine Unterstützung
hier das list der Einfahrt
Internals:
   DEF        4ECD11
   IODev      HMUSB
   NAME       Einfahrt
   NOTIFYDEV  global
   NR         342
   STATE      Zu
   TYPE       CUL_HM
   Readings:
     2016-10-31 20:18:25   Activity        alive
     2016-09-03 12:43:07   CommandAccepted yes
     2016-09-03 12:44:58   D-firmware      2.4
     2016-09-03 12:44:58   D-serialNr      NEQ0757436
     2016-09-04 12:37:22   PairedTo        0x220355
     2016-09-04 12:37:22   R-cyclicInfoMsg off
     2016-09-04 12:37:23   R-eventDlyTime  0 s
     2016-09-04 12:37:22   R-pairCentral   0x220355
     2016-09-04 12:37:22   R-sabotageMsg   on
     2016-09-04 12:37:23   R-sign          off
     2016-09-04 12:37:22   RegL_00.        02:01 09:00 0A:22 0B:03 0C:55 10:01 14:06 00:00
     2016-09-04 12:37:23   RegL_01.        08:00 20:60 21:00 22:64 30:06 00:00
     2016-10-22 18:00:00   STATE           0
     2016-09-09 06:59:01   alive           yes
     2016-10-31 13:38:41   battery         ok
     2016-10-31 13:38:41   contact         closed (to HMUSB)
     2016-10-30 23:59:48   power-daily     0
     2016-10-30 23:59:48   power-daily-last 0
     2016-10-31 19:59:49   power-hourly    0
     2016-10-31 19:59:49   power-hourly-last 0.0
     2016-09-30 23:59:48   power-monthly   0
     2016-09-30 23:59:48   power-monthly-last 0
     2016-10-30 23:59:48   power-weekly    0
     2016-10-30 23:59:48   power-weekly-last 0
     2016-09-09 06:59:01   recentStateType info
     2016-09-09 06:59:01   sabotageError   on
     2016-10-31 13:38:41   state           closed
     2016-10-31 13:38:41   trigDst_220355  noConfig
     2016-10-31 13:38:41   trigger_cnt     169
   Helper:
     HM_CMDNR   1
     mId        00B1
     rxType     28
     Expert:
       def        1
       det        0
       raw        1
       tpl        0
     Io:
       newChn     +4ECD11,00,00,00
       prefIO
       rxt        2
       vccu
       p:
         4ECD11
         00
         00
         00
     Mrssi:
       mNo
     Prt:
       bErr       0
       sProc      0
     Q:
       qReqConf
       qReqStat
     Role:
       chn        1
       dev        1
Attributes:
   IODev      HMUSB
   actCycle   028:00
   actStatus  alive
   autoReadReg 4_reqStatus
   devStateIcon Offen:fts_window_2w_open_lr@red Zu:fts_window_2w@green
   eventMap   open:Offen closed:Zu
   expert     2_raw
   firmware   2.4
   model      HM-SEC-SC-2
   peerIDs    00000000,
   room       Einfahrt,Favoriten
   serialNr   NEQ0757436
   subType    threeStateSensor


LG
Helmut
Titel: Antw:Frage zu einem Pushover notify
Beitrag von: Ma_Bo am 31 Oktober 2016, 22:45:50
Versuch mal :

Einfahrt:Offen|Einfahrt:Zu {if(Value("du_LangeAbwesend") eq "on"){my $temp_Status = Value("Einfahrt"); fhem ("set Pushover1 msg 'Einfahrt Woerdern' 'Zustand: $temp_Status' '' 0 '' ")}}

ansonsten

Einfahrt:open|Einfahrt:closed {if(Value("du_LangeAbwesend") eq "on"){my $temp_Status = Value("Einfahrt"); fhem ("set Pushover1 msg 'Einfahrt Woerdern' 'Zustand: $temp_Status' '' 0 '' ")}}

Ich weiss nicht genau welches funktioniert, evtl auch beide, wegen dem eventMap
Titel: Antw:Frage zu einem Pushover notify
Beitrag von: CoolTux am 31 Oktober 2016, 23:18:57

Einfahrt:.(open|closed) {if(Value("du_LangeAbwesend") eq "on"){my $temp_Status = Value("Einfahrt"); fhem ("set Pushover1 msg 'Einfahrt Woerdern' 'Zustand: $temp_Status' '' 0 '' ")}}


Bitte mal schauen. So sollte es passen. Ansonsten bitte mal ohne Doppelpunkte probieren
Titel: Antw:Frage zu einem Pushover notify
Beitrag von: Helmi55 am 01 November 2016, 12:45:15
Hallo und Mahlzeit
hab es jetzt so wie von Cooltux vorgeschlagen umgesetzt.
Bis jetzt keine Meldung und auch keine Fehlermeldung im Log. Bin aber im Moment nicht vor Ort und kann daher auch noch nicht sagen wie
es jetzt beim Öffnen der Einfahrt reagiert.....
Melde mich wieder und DANKE
Helmut
Titel: Antw:Frage zu einem Pushover notify
Beitrag von: Helmi55 am 02 November 2016, 17:06:05
Hallo
also, als ich heute ankam und das Tor öffnete, bekam ich keine Meldungen?
Habe jetzt einmal den ":" weggenommen ( was bewirkt der ": und ."?

Schade ist, ich kann durch klick auf das Icon der IT Türe das ICON auf on und off setzen und bekomme auch Meldungen.
Bei dem HM funktioniert dies leider nicht?

Gruß
Helmut
Titel: Antw:Frage zu einem Pushover notify
Beitrag von: CoolTux am 02 November 2016, 17:18:38
Hallo Helmut,

Entscheidend ist das für ein Event an kommt wenn Dein HM anspringt.

Device Reading: value

So sieht ein Event eines Readings aus. Das : ist Teil des Events, das . Bedeutet ein einziges Zeichen, egal welcher Art. Also ein Leerzeichen.
Nun ist state noch mal ein extra. Da ist es üblich das kein : im Event kommt. Also

Device value

Daher RegEx Device.value

Value ist der Wert des Readings, also on off oder open closed.
Der HM ist ja ein TuerKontakt also ein Sensor. Da kann man nichts setzen.
Das IT Teil ist im übrigen nichts anderes, wurde aber wohl doof implementiert. So das ein psydo on off da ist, was eigentlich ein Open closed sein sollte.
Titel: Antw:Frage zu einem Pushover notify
Beitrag von: Helmi55 am 02 November 2016, 17:37:59
Danke für deine ausführliche Erklärung.
Das mit dem Sensor und Schalten leuchtet mir ein. War nur verwundert warum es geht - jetzt klar.

ich habe wie von dir beschrieben mal den : weggenommen und werde bei der nächsten Ankunft testen

Schönen Abend
Helmut
Titel: Antw:Frage zu einem Pushover notify
Beitrag von: Helmi55 am 05 November 2016, 16:39:10
Hallo und nochmals Danke.
Ohne den ":" hat es tadellos funktioniert.
Einfahrt.(open|closed) {if(Value("du_LangeAbwesend") eq "on"){my $temp_Status = Value("Einfahrt"); fhem ("set Pushover1 msg 'Einfahrt Woerdern' 'Zustand: $temp_Status' '' 0 '' ")}}

Schönes Wochenende
Gruß
Helmut