- Platform information:
- Hardware: raspberry pi
- OS: OH2
i’m getting error while trying to achieve simple timer
items
Switch Timer01 "Timer 01" <time> ["Switchable"]
Number Timer01RunFor "Run For [%d]" <time>
Number Timer01StopFor "Stop For [%d]" <time>
rules
rule "Timer01 Switch"
when
Item Timer01 changed
then
if(Timer01.state == ON){
var Number RunFor = (Timer01RunFor.state as Number).intValue()
if(RunFor<=0) RunFor = 20
RunFor = RunFor * 1000
var Number StopFor = (Timer01StopFor.state as Number).intValue()
if(StopFor<=0) StopFor = 20
StopFor = StopFor * 1000
while(Timer01.state == ON){
Timer01Group.members.forEach[ i | i.sendCommand(ON) ]
logInfo("Timer01", "Timer01Group members Turned ON RunFor: " + RunFor.toString() + " min")
Thread::sleep(RunFor);
Timer01Group.members.forEach[ i | i.sendCommand(OFF) ]
logInfo("Timer01","Timer01Group members Turned OFF StopFor: " + StopFor.toString() + " min")
Thread::sleep(StopFor);
}
}
end
sitemap
Frame label="Light Timer" icon="light"{
Switch item=Timer01 label="Light Timer"
Setpoint item=Timer01RunFor minValue=1 maxValue=300 step=1
Setpoint item=Timer01StopFor minValue=1 maxValue=600 step=1
}
log
2019-11-19 10:49:26.338 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'Timer01 Switch': An error occurred during the script execution: Could not invoke method: java.lang.Thread.sleep(long) on instance: null
2019-11-19 10:49:26.332 [INFO ] [lipse.smarthome.model.script.Timer01] - Timer01Group members Turned ON RunFor: 5000 min
2019-11-19 10:49:26.343 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'Timer01 Switch': An error occurred during the script execution: Could not invoke method: java.lang.Thread.sleep(long) on instance: null