ich habe vor zwei Wochen auf OH 3 umgestellt und alle Items neu angelegt, nun habe ich eine Frage, wie ich am Besten die alten Regeln integriere?
Ich habe z.B. eine Heizungssteuerung/Lichtsteuerung für WC die só aussieht....
Code: Alles auswählen
var Timer WCBewegungsmelder_timer = null
rule "WC Heizung"
when
Item GF_Toilette_Temperatur changed
or
Item GF_Toilette_Window changed
then
var Heizung = OFF // Falls etwas schief geht, auf jeden Fall abschalten
var Number Temp = null
if (GF_Toilette_Window.state == CLOSED)
if(GF_Toilette_Temperatur.state instanceof Number) { //Gültiger Wert?
Temp = GF_Toilette_Temperatur.state as Number
if(now.getHourOfDay > 08 && now.getHourOfDay < 21) //innerhalb des Zeitfensters?
if(Temp < 19 || (Temp < 20 && GF_Toilette_Heating.state == ON)) Heizung = ON
}
if(GF_Toilette_Heating.state != Heizung) GF_Toilette_Heating.sendCommand(Heizung)
end
rule "WC-Licht Bewegungsmelder"
when
Item GF_Toilette_Motion received update ON
then
if
(GF_Toilette_Motion.state == ON && Elevation.state <-0|° && WCBewegungsmelder_timer === null) {
GF_Toilette_Light_Spiegel.sendCommand(ON)
WCBewegungsmelder_timer = createTimer(now.plusMinutes(3)) [|
GF_Toilette_Light_Spiegel.sendCommand(OFF)
WCBewegungsmelder_timer = null
]}
else if
(GF_Toilette_Motion.state == ON) {
WCBewegungsmelder_timer.reschedule(now.plusMinutes(3))
}
end
Code: Alles auswählen
ule "Farbe in der Küche und Wohnzimmer wechseln"
when
Item GF_Wohn_Esszimmer_Milight_Color changed
then
if(!(GF_Wohn_Esszimmer_Milight_Color.state instanceof HSBType)) return;
GF_Kueche_Color_Unterschrank.sendCommand((GF_Wohn_Esszimmer_Milight_Color.state as HSBType).toString)
GF_Kueche_Color_Fensterbank.sendCommand((GF_Wohn_Esszimmer_Milight_Color.state as HSBType).toString)
GF_Wohn_Esszimmer_Color.sendCommand((GF_Wohn_Esszimmer_Milight_Color.state as HSBType).toString)
GF_Wohn_Esszimmer_LED_Strip_TV_Color.sendCommand((GF_Wohn_Esszimmer_Milight_Color.state as HSBType).toString)
GF_Wohn_Esszimmer_LED_Strip_SideboardColor.sendCommand((GF_Wohn_Esszimmer_Milight_Color.state as HSBType).toString)
GF_Kueche_Color_Arbeitsplatte.sendCommand((GF_Wohn_Esszimmer_Milight_Color.state as HSBType).toString)
end
rule "Helligkeitsanpassung "
when
Item GF_Wohn_Esszimmer_Milight_Brightness changed
then
if(!(GF_Wohn_Esszimmer_Milight_Brightness.state instanceof HSBType)) return;
GF_Kueche_Brightness_Unterschrank.sendCommand((GF_Wohn_Esszimmer_Milight_Brightness.state as HSBType).toString)
GF_Kueche_Brightness_Fensterbank.sendCommand((GF_Wohn_Esszimmer_Milight_Brightness.state as HSBType).toString)
GF_Wohn_Esszimmer_Ambiente.sendCommand((GF_Wohn_Esszimmer_Milight_Brightness.state as HSBType).toString)
GF_Wohn_Esszimmer_LED_Strip_TV_Brightness.sendCommand((GF_Wohn_Esszimmer_Milight_Brightness.state as HSBType).toString)
GF_Wohn_Esszimmer_LED_Strip_SideboradBrightness.sendCommand((GF_Wohn_Esszimmer_Milight_Brightness.state as HSBType).toString)
GF_Kueche_Brightness_Arbeitsplatte.sendCommand((GF_Wohn_Esszimmer_Milight_Brightness.state as HSBType).toString)
end
Was mint ihr ist hier der Beste Weg?
Danke vG. Isostar