Hello,
Vielen Dank!!! Hat nicht gleich geklappt weil noch Klammern gefehlt haben. Das hab ich dank der Logs noch geschafft. Leider bekomm ich im openhab.log folgende Fehlermeldung:
2018-02-01 21:08:13.070 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'Bewegungsmelder': cannot invoke method public abstract boolean org.eclipse.smarthome.model.script.actions.Timer.r eschedule(org.joda.time.base.AbstractInstant) on null
Das Einschalten funktioniert. Allerdings schaltet er nicht ab. Was fehlt mir noch?
Den Dimmer02 hab ich bewusst noch deaktiviert.
Vielen Dank!!! Hat nicht gleich geklappt weil noch Klammern gefehlt haben. Das hab ich dank der Logs noch geschafft. Leider bekomm ich im openhab.log folgende Fehlermeldung:
2018-02-01 21:08:13.070 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'Bewegungsmelder': cannot invoke method public abstract boolean org.eclipse.smarthome.model.script.actions.Timer.r eschedule(org.joda.time.base.AbstractInstant) on null
Das Einschalten funktioniert. Allerdings schaltet er nicht ab. Was fehlt mir noch?
Den Dimmer02 hab ich bewusst noch deaktiviert.
Code:
var Timer tLight = null val int cTimeout = 60 // val eine Konstante, deren Wert zur Laufzeit nicht geändert werden kann rule "Bewegungsmelder" when Item FibEye01_Movement changed then if (FibEye01_Movement.state == ON) { if ((Var_Tageszeit.state as Number) == 2) Dimmer01_Switch.sendCommand(10) else if ((Var_Tageszeit.state as Number) == 3) { Dimmer01_Switch.sendCommand(10) //Dimmer02_Switch.sendCommand(10) } if ((Var_Tageszeit.state as Number) == 2 || (Var_Tageszeit.state as Number) == 3) { if (tLight !== null) tLight.cancel tLight = createTimer(now.plusSeconds(cTimeout), ( if (FibEye01_Movement.state != ON) { Dimmer01_Switch.sendCommand(OFF) //Dimmer02_Switch.sendCommand(OFF) tLight = null } else tLight.reschedule(now.plusSeconds(cTimeout)) ) ) }} else tLight.reschedule(now.plusSeconds(cTimeout)) end
Kommentar