Fenster/Tür-Kontakte mit (rf error) und notify

Begonnen von Buelo77, 08 April 2016, 16:02:41

Vorheriges Thema - Nächstes Thema

Buelo77

Hi Gemeinde,
ich bekomme das nicht so richtig in den Griff.
Ich habe ein Fenster im Bad mit MAX Kontakt und wenn ich diesen öffne, dann
wird ein Notify getigert, das mir automatisch zwei andere Fenster im Wohnzimmer für 10 min öffnet.
So weit so gut, nun zum Problem:

Es kommt schon mal vor, das das Fenster im Bad mit opened (rf error) öffnet, kein Problem da ich Notify auf m/opened/ gehe, aber
dann nach einer Stunde, wenn die Fenster im Wohnzimmer schon lange wieder zu sind, werden Sie plötzlich wieder geöffnet, weil
das Bad Fenster von opened (rf error) auf opened gesprungen ist und das Notify wieder feuert!!!!

Jetzt habe ich schon "event-on-change-reading state" aktiv, aber da ja der Status sich zumindest für einen Automaten von
opened (rf error) auf opened ändert wird nochmal getriggert. Zwei Ansätze habe ich probiert:

1) Jetzt dachte ich ich bau einen Reading ein, das gefüllt ist mit "status change" oder "no change" und das zusätzlich mit Abfrage im Notify.

    sub
GetChangeStatus {
  my $name = shift;

  my $status_neu=((split / /, ReadingsVal($name,'state',''))[0]);
  my $status_alt=((split / /, AttrVal("$name","LastState",""))[0]);

  if($status_neu eq $status_alt) {
     return "noChange $status_neu $status_alt";
  } else
  {
    fhem("attr $name LastState $status_neu");
    return "Change $status_neu  $status_alt";
  }
}


Das klappt nicht, es kommt immer "noChange" dabei raus, als wenn er das setzen von LastState zuerst macht und dann erst
abfragt!?!?


2) Baue mir ein Reading welches mir den Status immer ohne (rf error) speichert
    userReadings status {if(ReadingsVal($name,'state','') =~ m/closed/){return "closed"}else{return "opened"}}
    und gehe da dann mit
    event-on-change-reading status
    drauf, da weis ich aber nicht ob es nicht troßdem einen Event geben würde wenn nochmal das selbe reingeschrieben würde!?!

Hat da jemand vielleicht eine Idee, ich möchte ja auch einen Alarmanlage bauen und wenn ich mich da nicht auf die Fenster und
Tür Stati verlassen kann ist das doof!

MfG Bülo







Buelo77

Hallo,
ich muss es noch weiter testen, aber so wie es scheint ist die zweite Lösung funktional.
Ich konnte in der Eventkonsole nur einen Event sehen, obwohl es genau zu dem von
mir beschriebenen verhalten gekommen.

Gruß Buelo