Hier meine momentane Rule:
Code: Alles auswählen
// Globale Variablen immer zu Beginn der Datei definieren!
var Timer tLum = null
var Number nLum = 0
rule "Luminanz"
when
Item dataLum changed
then
logInfo("Luminanz", "Rule Luminaz läuft")
if(!(dataLum.state instanceof Number)) {
logWarn("luminanz","dataLum enthält keinen gültigen Wert!")
return;
}
if ((dataLum.state as Number) < 4 && now.getHourOfDay > 17 && now.getHourOfDay < 23 && tLum === null) {
nLum = 0
tLum = createTimer(now.plusSeconds(1), [|
var Number nTime = 1
nLum += 1
switch nLum {
case 1: {
Markise.sendCommand(DOWN)
nTime = 60
}
case 2: {
Roll_WZ_W_li.sendCommand(DOWN)
}
case 3: {
Roll_WZ_W_re.sendCommand(DOWN)
}
case 4: {
Markise.sendCommand(DOWN)
}
case 5: {
Roll_WZ_W_li.sendCommand(DOWN)
}
case 6: {
Roll_WZ_W_re.sendCommand(DOWN)
nTime = 600
}
default: {
nTime = 0
}
}
if(nTime > 0)
tLum.reschedule(now.plusSeconds(nTime))
else {
tLum = null
}
])
}
end
Gruss
atk69
EDIT:
Eintrag scheint korrekt
das sehe ich in meinem openhab.log
Code: Alles auswählen
2019-08-10 17:36:36.075 [INFO ] [ipse.smarthome.model.script.Luminanz] - Rule Luminanz läuft
2019-08-10 17:38:33.603 [INFO ] [ipse.smarthome.model.script.Luminanz] - Rule Luminanz läuft
2019-08-10 17:40:33.807 [INFO ] [ipse.smarthome.model.script.Luminanz] - Rule Luminanz läuft
2019-08-10 17:42:33.604 [INFO ] [ipse.smarthome.model.script.Luminanz] - Rule Luminanz läuft
2019-08-10 17:44:33.578 [INFO ] [ipse.smarthome.model.script.Luminanz] - Rule Luminanz läuft
2019-08-10 17:46:33.598 [INFO ] [ipse.smarthome.model.script.Luminanz] - Rule Luminanz läuft