Hello there,
i’m new on openHAB2, so I had a Little Question.
I just want to create a timer in one rule an close it in another rule.
In the doc’s it’s seams easily so I think the problem sit behind the Computer…
A Little description of what i want to do:
I just want to start a “delay”-timer for give my sensors some seconds to try build up Connection again.
So I create a Timer that’s change the state of my virtuell online-Status just if the sensor isn’t able to reconnect and don’t send a “online” Message.
If the sensor reconnect and sends his “online” Message i want to cancel the timer.
So I created to rules:
First Rule:
var Timer timer_steckbrett_oben_sensor_lastwill = null
rule "steckbrett_oben Sensor-Offline-Delay"
when
Item steckbrett_oben_sensor_lastwill changed from online to offline //wenn channel Item change from onlien to offline
then
logInfo("steckbrett_oben Sensor-Offline-Delay", "Rule wird ausgeführt")
timer_steckbrett_oben_sensor_lastwill = createTimer(now.plusSeconds((steckbrett_oben_sensor_delaytime_offlineDelayTimer.state as Number).intValue), //testen
[|
timer_steckbrett_oben_sensor_lastwill = null
if(steckbrett_oben_sensor_lastwill.state == "offline")
{
logError("steckbrett_oben Sensor-Offline-Delay", "Überschreitung der Offline Delay Time: Sensor steckbrett_oben")
steckbrett_oben_sensor_zustand.sendCommand("offline")
}
])
end
Second Rule:
rule "steckbrett_oben Sensor-Online-Setter"
when
Item steckbrett_oben_sensor_lastwill changed to online
then
logInfo("kleinesgewacheshaus_links Sensor-Online-Setter", "Rule wird ausgeführt")
steckbrett_oben_sensor_zustand.sendCommand("online")
logInfo("Steckbrett_oben_Sensor-online-Setter","beende offline delay Timer")
//timer_steckbrett_oben_sensor_lastwill = null
if(timer_steckbrett_oben_sensor_lastwill != null)
{
timer_steckbrett_oben_sensor_lastwill.cancel
timer_steckbrett_oben_sensor_lastwill=null
}
end
and the Error message from log’s:
[ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'steckbrett_oben Sensor-Online-Setter': The name 'timer_steckbrett_oben_sensor_lastwill' cannot be resolved to an item or type; line 11, column 8, length 37
P.S.: I tried it with other names for the timer but every time there appears the same problem…