Hilfe bei einem notify

Begonnen von eppi, 16 Dezember 2011, 07:56:56

Vorheriges Thema - Nächstes Thema

eppi

                                               

Hallo zusammen
Ich benutze zurzeit beim Einschalten meiner selbst gestrickten
Alarmanlage folgenden notify:

define alarm_ein notify Alarm:on set Sig_Alarmein on;;set
Aussenbeleuchtung on;;{if($value{Daemmerungsschalter} eq "on") {fhem
"set
Store_Kueche,Store_Pergola,Store_Essen,Store_Sitzpl_r,Store_Sitzpl_l
off"}}

Bei Aktivierung des notify ertönt von meinem Signalgeber eine Infos,
dass er Alarm eingeschaltet ist und die Aussenbeleuchtung schaltet
ein. Zusätzlich fahren bei bereits aktiver Dämmerung die Rolladen
(Storen)  nach unten.

Das funktioniert so tadellos. Ich möchte nun dass die
Aussenbeleuchtung ebenfalls erst eingeschaltet wird bei bereits
aktiver Dämmerung. Dazu habe ich den notify wie folgt abgeändert:


define alarm_ein notify Alarm:on { \
   fhem("set Sig_Alarmein on") } \
   {if($value{Daemmerungsschalter} eq "on") { \
      fhem("set
Store_Kueche,Store_Pergola,Store_Essen,Store_Sitzpl_r,Store_Sitzpl_l
off");; \
      fhem("set Aussenbeleuchtung on");; \
       } \
}

Das Problem ist nun, dass dieser notify von FHEM wiederholt wird, dass
heisst, doppelt ausgeführt (auch im Log nachvollziehbar bei verbose
3). Das wirkt sich so aus, dass die Rolladen (Storen) beim zweiten
gleichen Befehl stehen bleiben und nicht nach unten fahren.

Kann mir jemand einen Tipp geben?
Vielen Dank und Gruss Dani

PS: Ich verwende die aktuelle SVN Version von FHEM.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

rudolfkoenig

                                                   

> Kann mir jemand einen Tipp geben?

Erst muss die Ursache rausgefunden werden:
- wenn z.Bsp ein Knopf zweimal gedrueckt wird, dann koennte man zusaetzlich den
  alten Status abfragen (&& OldValue("Alarm") ne "on")
  Entprellen ist in fhem z.Zt noch nicht so einfach zu realisieren.
- wenn es ein Bug ist, dann melden: alles was ich zum reproduzieren wissen
  muss mir mitteilen.

Sonst:
  set Store_Kueche,Store_Pergola,Store_Essen,Store_Sitzpl_r,Store_Sitzpl_l off
koennte auch als
  set Store.* off geschrieben werden.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

eppi

                                               

Hallo Rudi
Besten Dank für deine Unterstützung.

Ich habe deinen Tipp mit (&& OldValue("Alarm") ne "on")  in meine
fhem.cfg eingebaut und nun habe ich das Problem nicht mehr. Meine code
sieht nun wie folgt aus:

define alarm_ein notify Alarm:on { \
   fhem("set Sig_Alarmein on") } \
   {if($value{Daemmerungsschalter} eq "on" && OldValue("Alarm") ne
"on") { \
      fhem("set Store_.* off");; \
      fhem("set Aussenbeleuchtung on");; \
       } \
}

Einzig wird ab und zu (komischer weise nicht immer) der "Sig_Alarmein"
wiederholt, dass stört mich aber nicht und könnte ich noch anpassen in
der cfg Datei.

Vielen Dank für die Unterstützung sowie der Optimierung gleich
geschriebener Device's ;=)
Gruss Dani

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Zrrronggg!

                                                     

> wenn z.Bsp ein Knopf zweimal gedrueckt wird, dann koennte man zusaetzlich den
>  alten Status abfragen (&& OldValue("Alarm") ne "on")

Irgendwann mach ich im Wiki mal ne Kategorie "FHEM Schweinetricks, auf
die man erstmal kommen muss" oder so.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL