FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: jailbreaker07 am 14 Juli 2017, 16:18:33

Titel: Status von zwei Fensterkontakte an Dummy weitergeben
Beitrag von: jailbreaker07 am 14 Juli 2017, 16:18:33
Hallo, ich steuere mit dem Modul THRESHOLD einen Entfeuchter. Jetzt möchte ich das der Entfeuchter aus geht sobald eines der beiden Fenster im Raum geöffnet wird. Mit einem Fenster ist das kein Problem. Nur zwei Fensterkontakte kann ich bei dem THRESHOLD nicht angeben. Ich wollte ich einen Dummy erstellen mit dem Name Fenster auf. Die Dummy soll eingeschaltet sein wenn eines der Fenster auf ist.

Mit dem unten stehen Code müsste es ja theoretisch bei einem Fenster funktionieren ( tut es aber nicht.....) Wenn das funktionieren würde dann würde ich versuchen den Code irgendwie auf zwei Fenster umzubasteln.... man merkt ich bin da nicht ganz so fit......


Fensterkontakt_Sch {\
if (ReadingsVal("Fensterkontakt_Sch", "state ", "open") eq "open"){\
   fhem("Fenster_Sch_auf on");;\
}else{\
   fhem("Fenster_Sch_auf off");;\
}\
}



vielen dank für eure Hilfe
Titel: Antw:Status von zwei Fensterkontakte an Dummy weitergeben
Beitrag von: Beta-User am 14 Juli 2017, 16:22:48
Kennst Du das Modul structure?

Als <struct_type> "room" angeben, das sollte statt des Dummy in Verbindung mit clientstate_priority auf "open" das gewünschte Ergebnis liefern.

Gruß, Beta-User
Titel: Antw:Status von zwei Fensterkontakte an Dummy weitergeben
Beitrag von: Esjay am 14 Juli 2017, 16:24:17
Warum nimmst du nicht Doif?define Entfeuchter doif ([Fenster:state] eq "opened" or [Fenster2:state] eq "opened") ( set Endfeuchter on) Doelse (set Entfeuchter off)
Zumindest in der Art und weise!
Grüße
Titel: Antw:Status von zwei Fensterkontakte an Dummy weitergeben
Beitrag von: Beta-User am 14 Juli 2017, 16:41:05
Zitat von: Esjay am 14 Juli 2017, 16:24:17
Warum nimmst du nicht Doif?
Nicht jeder will das (https://forum.fhem.de/index.php/topic,66830.0.html)...
Titel: Antw:Status von zwei Fensterkontakte an Dummy weitergeben
Beitrag von: Damian am 14 Juli 2017, 18:08:01
Zitat von: Esjay am 14 Juli 2017, 16:24:17
Warum nimmst du nicht Doif?define Entfeuchter doif ([Fenster:state] eq "opened" or [Fenster2:state] eq "opened") ( set Endfeuchter on) Doelse (set Entfeuchter off)
Zumindest in der Art und weise!
Grüße

Wenn die Fensternamen einer bestimmten Systematik folgen, dann kann man bei DOIF inzwischen Mehrfach-Abfragen mithilfe von https://fhem.de/commandref_DE.html#DOIF_aggregation recht einfach definieren:


fenster_offen DOIF ([#"^Fenster":state:"opened"] == 2)
attr fenster_offen cmdState on|off



übersetzt heißt das, wenn die Anzahl der Devices, die mit "Fenster" im Namen beginnen und den Status "opened" haben, zwei ist, dann ist fenster_offen on sonst off.
Titel: Antw:Status von zwei Fensterkontakte an Dummy weitergeben
Beitrag von: CoolTux am 14 Juli 2017, 18:46:54
Das korrekte Modul für diese Anforderung ist Structure. Genau dafür ist es gedacht.
Titel: Antw:Status von zwei Fensterkontakte an Dummy weitergeben
Beitrag von: jailbreaker07 am 14 Juli 2017, 21:05:19
Hallo,
ich habe es jetzt mit dem Modul Structure gemacht und es funtioniert so wie ich es haben wollte :-) Ich habe ja lange gegoogelt.... aber auf das Modul bin ich nicht gestoßen...

Vielen vielen dank für die schnelle Hilfe!

Kann man eigentlich in den THRESHOLD eine Einschaltverzögerung einbauen? Also wenn beide Fenster zu sind soll erst nach 5 Minuten der Entfeuchter angehen....  Aber ich glaube das währe ein neues Thema... fals ich es selber nicht hinbekomme......

Gruß

Thorsten
Titel: Antw:Status von zwei Fensterkontakte an Dummy weitergeben
Beitrag von: Damian am 14 Juli 2017, 21:16:49
Zitat von: jailbreaker07 am 14 Juli 2017, 21:05:19
Kann man eigentlich in den THRESHOLD eine Einschaltverzögerung einbauen? Also wenn beide Fenster zu sind soll erst nach 5 Minuten der Entfeuchter

Gruß

Thorsten

nein, das kann THRESHOLD nicht, alternativ ohne THRESHOLD


entfeuchter DOIF ([#"^Fenster":state:"opened"] == 0 and [sensor:humid] > [desired:humid]) (set entfeuchter on) DOELSE (set entfeuchter off)
attr entfeuchter wait 300:300


ohne THRESHOLD und ohne Structure - kürzer wirst du es nicht hinbekommen ;)