ich habe ein kleines Problem wie ich eine Rule erstellen soll die meine Anforderungen abdeckt.
Ich habe mein Licht im Wohnzimmer mit einem Shelly an die Helligkeit draußen in Verbindung mit der Fritzbox Anwesenheit gekoppelt.
Und zwar wie folgt:
Draußen ist eine Helligkeit von 15 lux = Licht an wenn jemand da ist
Wenn ich dann abends das Licht per Schalter aus mache = Licht aus und nicht mehr automatisch an
Das funktioniert auch alles, außer bei folgender Konstellation:
Ich mache um 18:00 Uhr das Licht per Schalter an (Rule ist noch nicht durchgelaufen = nCount ist 0)
Mache um 21:00 Uhr das Licht per Schalter aus und gehe ins Bett
Beim nächsten Update der Helligkeit geht das Licht alleine durch die Rule an.
Wie kann man verhindern das in diesem Fall das Licht wieder alleine an geht?
Hier meine bisherige Rule:
Code: Alles auswählen
var Number nCount = 0
rule "Wenn Andre da und dunkel dann Licht an"
when
Item phoscon_Bewegungsmelder_lightlux received update
then
val lux = (phoscon_Bewegungsmelder_lightlux.state as QuantityType<Number>).floatValue
if (lux < 15 && Licht_Fernseher.state == OFF && Anwesenheit_Andre.state == OPEN && now.getHourOfDay() >= 16 && nCount == 0){
Licht_Fernseher.sendCommand(ON)
Lichtband_An.sendCommand(ON)
nCount = 1
}
end
rule "Wenn Miriam da und dunkel dann Licht an"
when
Item phoscon_Bewegungsmelder_lightlux received update
then
val lux = (phoscon_Bewegungsmelder_lightlux.state as QuantityType<Number>).floatValue
if (lux < 15 && Licht_Fernseher.state == OFF && Anwesenheit_Miriam.state == OPEN && now.getHourOfDay() >= 16 && nCount == 0){
Licht_Fernseher.sendCommand(ON)
Lichtband_An.sendCommand(ON)
nCount = 1
}
end
rule "Counter zuruecksetzen"
when Time cron "0 0 15 ? * * *" // Zeitschaltpunkt Counter zurücksetzen 15:59 Uhr für Wonzimmerlicht
then nCount = 0
logInfo("nCount",nCount.toString)
end