1) Give a description of the problem
I have a nested condition that reads:
if door lock was not (unknown, unlocked) for at least 5 minutes
and
previousAge(motion sensor) > 30s is true
that doesn’t seem to be evaluated even though it has subscribed to the door lock event.
For further context, if it is needed I have a motion sensor in my garage and an August door lock leading to the backyard.
time is not* between sunset-30 and nextSunrise+30
if rear door is unlocked
then turn on garage rear light, garage light, riser lights
Else if garage motion is active
Then turn on garage lights, riser lights
else
/* PROBLEM AREA */
if rear door was not (unknown, unlocked) for at least 5 minutes
and
previous age motion > 30000
/* END PROBLEM AREA */
then
if all/any other outdoor lights are on,
then turn off garage light, riser light (keep outdoor light on)
else
turn off garage, riser and back door light
else
If garage motion is active
then turn on garage lights, riser lights
else wait 5 minutes and turn off
(*in the image, I have the time reversed just because I want to test this during the day)
2) What is the expected behavior?
I expect that the condition will be evaluated at 5 minutes after the lock is locked for 5 minutes.
3) What is happening/not happening?
The rest of the condition runs when motion/locks change. However, if nothing happens with either of these the piston doesn’t seem to be evaluated. I waited ~15 minutes after the condition should be evaluated but nothing appeared in the logs.
**4) Post a Green Snapshot of the piston
**5) Attach any logs
Piston successfully ran at 8:39. It had one more event at 8:43. Then nothing happened for 15 minutes.
12/7/2018, 8:43:30 AM +102ms
+0ms ╔Received event [Home Hub].time = 1544201011944 with a delay of -1843ms
+190ms ║RunTime Analysis CS > 18ms > PS > 109ms > PE > 64ms > CE
+193ms ║Runtime (48257 bytes) successfully initialized in 109ms (v0.3.108.20180906) (192ms)
+194ms ║╔Execution stage started
+195ms ║╚Execution stage complete. (1ms)
+197ms ╚Event processed successfully (196ms)
12/7/2018, 8:39:07 AM +187ms
+1ms ╔Received event [Garage Motion Sensor].motion = inactive with a delay of 104ms
+184ms ║RunTime Analysis CS > 21ms > PS > 101ms > PE > 62ms > CE
+187ms ║Runtime (48260 bytes) successfully initialized in 101ms (v0.3.108.20180906) (185ms)
+188ms ║╔Execution stage started
+251ms ║║Calculating (decimal) 0.0 - (decimal) 30.0 >> (decimal) -30.0
+265ms ║║Comparison (datetime) 1544200747382 is_not_between (datetime) 1544228400000 .. (datetime) 1544283480000 = true (4ms)
+267ms ║║Condition #47 evaluated true (73ms)
+268ms ║║Condition group #13 evaluated true (state did not change) (75ms)
+282ms ║║Comparison (enum) locked is_any_of (string) unknown,unlocked,unlocked with timeout = false (4ms)
+284ms ║║Condition #21 evaluated false (13ms)
+285ms ║║Condition group #30 evaluated false (state did not change) (15ms)
+293ms ║║Comparison (enum) inactive is (string) active = false (2ms)
+295ms ║║Cancelling condition #53's schedules...
+296ms ║║Condition #53 evaluated false (8ms)
+297ms ║║Cancelling condition #51's schedules...
+298ms ║║Condition group #51 evaluated false (state changed) (12ms)
+447ms ║║Duration 261349ms for was_not_any_of >= 300000ms threshold = false
+448ms ║║Comparison (enum) locked was_not_any_of (string) unknown,unlocked,unlocked with timeout = false (141ms)
+450ms ║║Condition #56 evaluated false (150ms)
+451ms ║║Condition group #52 evaluated false (state did not change) (152ms)
+454ms ║╚Execution stage complete. (266ms)
+455ms ╚Event processed successfully (455ms)