[gelöst] DOIF: Befehl wird noch 1mal ausgeführt obwohl Bedingung nicht erfüllt

Begonnen von MarioS1969, 02 Oktober 2015, 22:55:16

Vorheriges Thema - Nächstes Thema

MarioS1969

Hallo,
ich möchte gerne eine Warnung ausgeben (Sprachnachricht mit SONOS) wenn das Badfenster offen ist und die Temperatur unter 15 Grad ist.
Die Warung soll insgesamt 3 x im Abstand von 20 min erfolgen, aber auch nur in der zeit Zwischen 7:00 und 23:00.

Ich habe versucht dies mit folgender Logik zu realisieren.


define m_Bad dummy
define di_Bad DOIF ( [07:00-23:00] and ([Fenster_Bad] eq "offen") and ([Aussen:temperature] < 15)) (set m_Bad 1) \
DOELSE (set m_Bad 99)
attr di_Bad do always
define di_Badc DOIF ([m_Bad:state] <= 3) (set m_Bad {([m_Bad]+1)}, set Sonos_Wohnzimmer Speak 40 de |bell|   Fenster im Bad offen)
attr di_Badc do always
attr di_Badc wait 1200


Das Problem ist, wenn man das Fenster z.B. nach der 1. Warnung schließt, kommt noch die 2. Warnung. Das ist so nicht gewünscht..
Kann mir jemand einen Tipp geben was an der Logik nicht stimmt oder wie man die Logik besser realisieren kann?
Ich wäre sehr dankbar dafür

Vielen Dank für die Unterstützung
Mario
PI 2, PI4,  RFXtrx433, IT-1500, CMR-1000, ITM 100, TFA Temperatursensor, IR-Sensor, FB 7590, LIRC mit Logitech Harmony, FI9821W, Sonos, Twilight, Benzinpreismonitor, HMLAN, HM-Sen-DB-PCB, HM-LC-Bl1PBU-FM, HM-SEC-SC-2, GPIO4 mit fhem2fhem, Shelly

MarioS1969

Hallo,
ich habe es jetzt wie folgt umgesetzt:



define di_Wz2 DOIF ([Tuer_gr_Terrasse_rechts] eq "zu") (set di_Wz initialize)\
define di_Wz DOIF ( [07:00-23:00] and ([Tuer_gr_Terrasse_rechts] eq "offen") and ([Aussen:temperature] < 15)) (set Sonos_Wohnzimmer Speak 20 de  Fenster offen)
attr di_Wz wait 15
attr di_Wz repeatsame 3


Im Test hat es funktioniert, jedoch kam die Durchsage nicht alle 15s, wie durch "attr di_Wz wait 15" angegeben.
Mal sehen wie es mit 20min funktioniert.
PI 2, PI4,  RFXtrx433, IT-1500, CMR-1000, ITM 100, TFA Temperatursensor, IR-Sensor, FB 7590, LIRC mit Logitech Harmony, FI9821W, Sonos, Twilight, Benzinpreismonitor, HMLAN, HM-Sen-DB-PCB, HM-LC-Bl1PBU-FM, HM-SEC-SC-2, GPIO4 mit fhem2fhem, Shelly

Amenophis86

Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

MarioS1969

Mit der oben aufgeführten Lösung gab es immer noch das Problem mit einer Auslösung nach dem Schließen des Fensters.
Jetzt habe ich es wie folgt umgesetzt:


define di_Bad DOIF ( [07:00-23:00] and ([+1200]) and ([Fenster_Bad] eq "offen") and ([Aussen:temperature] < 15)) (set Sonos_Wohnzimmer Speak 40 de |bell|   Fenster im Bad offen) \
DOELSEIF ([Fenster_Bad] eq "zu") (set di_Bad initialize)
attr di_Bad repeatsame 3
PI 2, PI4,  RFXtrx433, IT-1500, CMR-1000, ITM 100, TFA Temperatursensor, IR-Sensor, FB 7590, LIRC mit Logitech Harmony, FI9821W, Sonos, Twilight, Benzinpreismonitor, HMLAN, HM-Sen-DB-PCB, HM-LC-Bl1PBU-FM, HM-SEC-SC-2, GPIO4 mit fhem2fhem, Shelly

Tueftler1983

Hallo nutzt du einen Raspberry mit OSMC und darauf Fhem und kannst lirc in FHEM nutzen?

Amenophis86

Zitat von: Tueftler1983 am 29 November 2015, 13:43:36
Hallo nutzt du einen Raspberry mit OSMC und darauf Fhem und kannst lirc in FHEM nutzen?

Wenn die Frage an mich geht, ja nutze ich und Lirc nutze ich nur für Kodi. Für FHEM habe ich es nicht getestet. Aber das würde hier thematisch auch nicht passen, oder?  Kannst mir gerne ne PM schreiben, oder machst einen neuen Thread auf.
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...