I would like to get some feedback on whether what I have below is the correct approach or should I use some other methods. Basically the code is called (as if in a loop) each time with a new “somedevice.value” and might look similar to this:\
def myvalue=somedevice.value
if (myvalue < thePrefsMinimumValue) {
if (state.jobScheduled== false) {
runIn(90, myHandlerMethod)
state.jobScheduled=true
}
}
else { // myvalue > thePrefsMinimumValue therefore cancel any scheduled (runIn()) jobs previously set
unschedule()
state.jobScheduled=false
}
my questions is:
Will unschedule terminate any previously submitted runIn()??
The whole idea is to call a function if the somedevice.value remains below a set value for an extended time. If the value rises above this set value before this time period expires cancel the scheduled job.
Feedback apprreciated