Control the lock. You can add any location-related, including Wait tasks in there. The “Control SHM, etc.” is just a placeholder to allow those actions without having to control any device.
@ady624 - do you actually expose all debug information eg scheduling timers, removal of timer due to trigger/condition being met while timer expires, re-adding of new timer as well as cancellations by triggers/conditions? in a way this can be tracked? or is this even possible? so it can be fully traced in the event you want to debug what the issue is? eg giving jobs associated pointers or anything like that?
Not sure I get what you mean, but if you enable debug and allow debug messages too, your logs will be flooded with info… it will be so flooded it will skip lines…
You enabled the “execute on piston change only”. Nothing wrong with that, but look down for Task Cancellation Policy and enable that one… cancel on piston state change. That will ensure that if the door is opened within those 3 minutes, the lock is cancelled. You don’t want the door locking while open…
OK thanks. And disable the “execute on piston change only”? Whats the difference between the two?
The “Execute on piston change only” is useful when you have more conditions, all working towards the piston state being true or false. If you have three conditions with OR between them, if anyone is true, your piston is true. The difference is that if you enable that, you’ll only execute the action once, when the piston changes from false to true. Any subsequent evaluation that keeps the piston true won’t run the action. In your case, you’re okay, there are only two cases, open and closed, and the piston follows them.
OK thanks. One more question please (thanks for all your replies). I only want the lock to lock when the 3 minutes is up if the door is closed at that moment. Does the way I have it work for that? I think so, because if the door were to open during the 3 minutes the timer would stop, and wont reset until it closes again?
That’s why I asked you to enable that “Cancel on piston state change” option. Once your door opens, the piston state changes to false, causing the Lock task to be cancelled. No more locking. When door closes again, a new Lock task will be scheduled for 3 minutes later.
Awesome. Thanks. Will test it out tonight.
ha forget that … wrong interpretation … let me try again
Idx is for sorting purposes only. Resets to 0 whenever the task queue is empty. Task id is action specific. It starts with 1 (if you have a wait task that won’t make it to the task queue as it is executed immediately, causing the time field to change, but it still gets a task id - hence the missing 1)
Whats the difference between the ‘Send notification’ and ‘Send Push notification’ tasks?
The push sends it to your phone, the other one just saves it in the Notifications page of your ST app
ok I think thats what I mean so its difficult to track … basically what I want to try to establish is the relationships between scheduled tasks, them executing over being overwritten by others same for timers … I cant seem to do that?
Reason why, see below - this is whats happening, I have motion activity, the rule fires and turns the light on, however a tasks ran to turn the bulb off - resulting in on - shortly after - off - though the timer/scheduled job should have been been removed by the motion trigger - I would think?
24a94cc1-14be-43c1-a1fa-cf180e1c5ebf 6:42:15 PM: info final result = [name:power, value:761, type:power]
24a94cc1-14be-43c1-a1fa-cf180e1c5ebf 6:42:15 PM: debug description is read attr - raw: B375010B040A0B0529F902, dni: B375, endpoint: 01, cluster: 0B04, size: 0A, attrId: 050b, encoding: 29, value: 02f9
de3bcf8b-4cdd-4f64-ac3a-ae1b0515b5d8 6:42:11 PM: debug [name:switch, value:off]
de3bcf8b-4cdd-4f64-ac3a-ae1b0515b5d8 6:42:11 PM: debug description is catchall: 0104 0006 03 01 0040 00 8BE9 00 00 0000 0B 01 0000
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:11 PM: debug ╔═══ Done in 288ms
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:11 PM: trace ║╔══ Task processing took 287ms
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:11 PM: trace ║║░░ Removing any existing ST safety nets
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:11 PM: info ║║░░ Executing command: [Office - Bulb].off() (28ms)
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:11 PM: debug ║║░░ Processing command task [taskId:2, time:1464802930840, idx:64063, created:1464802840844, ownerId:4, type:cmd, deviceId:de3bcf8b-4cdd-4f64-ac3a-ae1b0515b5d8]
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:11 PM: debug ║║░░ Found 1 task due at this time
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:11 PM: trace ║║░░ Installing ST safety net
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:11 PM: info ║║░░ Scheduling ST to run in 13669s, at Wed, Jun 1 2016 @ 10:30 PM BST
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:11 PM: trace ║║░░ Rescheduling time triggers
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:11 PM: trace ║╚══ Processing tasks
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:11 PM: debug ╚═══ Received a time event
9b9cd51e-4efd-4c67-95c1-64356054d851 6:42:11 PM: info final result = [name:power, value:2, type:power]
9b9cd51e-4efd-4c67-95c1-64356054d851 6:42:11 PM: debug description is read attr - raw: DA4A010B040A0B05290200, dni: DA4A, endpoint: 01, cluster: 0B04, size: 0A, attrId: 050b, encoding: 29, value: 0002
ffec4cc2-ef2f-4b35-a200-ab42a120b46e 6:42:09 PM: debug === Parsed 'zw device: 02, command: 5601, payload: 31 05 03 0A 00 05 57 34 ’ to [[‘displayed’:true, ‘name’:‘illuminance’, ‘value’:‘5’, ‘unit’:‘lux’, ‘isStateChange’:false, ‘linkText’:‘Livingroom - Fibaro Motion Sensor’, ‘descriptionText’:Livingroom - Fibaro Motion Sensor illuminance is 5 lux]]
ffec4cc2-ef2f-4b35-a200-ab42a120b46e 6:42:09 PM: debug %%%% Multi Sensor Report
ffec4cc2-ef2f-4b35-a200-ab42a120b46e 6:42:09 PM: debug ==> New Zwave Event: zw device: 02, command: 5601, payload: 31 05 03 0A 00 05 57 34 , Battery: 1464737840992
de3bcf8b-4cdd-4f64-ac3a-ae1b0515b5d8 6:42:08 PM: debug [name:switch, value:on]
de3bcf8b-4cdd-4f64-ac3a-ae1b0515b5d8 6:42:08 PM: debug description is catchall: 0104 0006 03 01 0040 00 8BE9 00 00 0000 0B 01 0100
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:08 PM: debug ╔═══ Done in 1055ms
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ║║░░ Function eval_cond_is for Office - Fibaro Motion Sensor’s motion [active] is ‘active’ returned true
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ║║░░ Scheduling actions for condition #31. State did NOT change.
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ║║░░ Function eval_cond_is for vSwitch - It Is Dark’s switch [on] is ‘on’ returned true
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ║║░░ Scheduling actions for condition #45. State did NOT change.
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ║║░░ Function eval_cond_is for Office - Fibaro Motion Sensor’s motion [active] is ‘inactive’ returned false
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ║║░░ Function eval_cond_is_less_than_or_equal_to for Office - Monitor Outlet’s power [76.6] is less than or equal to ‘50.0’ returned false
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ║║░░ Scheduling actions for condition #1. State did NOT change.
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ║║░░ Function eval_cond_is for Office - Fibaro Motion Sensor’s motion [active] is ‘inactive’ returned false
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ║║░░ Scheduling actions for condition #6. State did NOT change.
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ║║░░ Scheduling actions for condition #4. State did NOT change.
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ║║░░ Function eval_cond_is_greater_than_or_equal_to for Office - Monitor Outlet’s power [76.6] is greater than or equal to ‘50.0’ returned true
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ║║░░ Scheduling actions for condition #5. State did NOT change.
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ║║░░ Function eval_cond_is for Office - Fibaro Motion Sensor’s motion [active] is ‘active’ returned true
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ║║░░ Function eval_cond_is for vSwitch - It Is Dark’s switch [on] is ‘on’ returned true
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ║║░░ Scheduling actions for condition #3. State did NOT change.
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ║║░░ Scheduling actions for condition #2. State did NOT change.
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ║║░░ Event eligibility for the primary IF block is 1 - ELIGIBLE (triggers not required, event is a condition)
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: trace ║╚══ Processing event motion for device Office - Fibaro Motion Sensor with id 09397cd3-bdd3-424f-a08f-ece2a0fedb9c, value active, generated on Wed Jun 01 17:42:07 UTC 2016, about 215ms ago
1e463d21-93e9-4d00-91e8-7629f165fbfe 6:42:07 PM: debug ╚═══ Received a primary block device event
de3bcf8b-4cdd-4f64-ac3a-ae1b0515b5d8 6:42:08 PM: info DID NOT PARSE MESSAGE for description : catchall: 0104 0008 03 01 0040 00 8BE9 00 00 0000 0B 01 0400
de3bcf8b-4cdd-4f64-ac3a-ae1b0515b5d8 6:42:08 PM: trace zigbeeMap : [raw:0104 0008 03 01 0040 00 8BE9 00 00 0000 0B 01 0400, profileId:0104, clusterId:0008, clusterInt:8, sourceEndpoint:03, destinationEndpoint:01, options:0040, messageType:00, dni:8BE9, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:0B, direction:01, data:[04, 00]]
de3bcf8b-4cdd-4f64-ac3a-ae1b0515b5d8 6:42:08 PM: debug level updated successfully
de3bcf8b-4cdd-4f64-ac3a-ae1b0515b5d8 6:42:08 PM: debug description is catchall: 0104 0008 03 01 0040 00 8BE9 00 00 0000 0B 01 0400
de3bcf8b-4cdd-4f64-ac3a-ae1b0515b5d8 6:42:08 PM: trace zigbeeMap : [raw:0104 0300 03 01 0040 00 8BE9 00 00 0000 0B 01 0300, profileId:0104, clusterId:0300, clusterInt:768, sourceEndpoint:03, destinationEndpoint:01, options:0040, messageType:00, dni:8BE9, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:0B, direction:01, data:[03, 00]]
de3bcf8b-4cdd-4f64-ac3a-ae1b0515b5d8 6:42:08 PM: debug color cluster updated successfully
de3bcf8b-4cdd-4f64-ac3a-ae1b0515b5d8 6:42:08 PM: debug description is catchall: 0104 0300 03 01 0040 00 8BE9 00 00 0000 0B 01 0300
de3bcf8b-4cdd-4f64-ac3a-ae1b0515b5d8 6:42:08 PM: debug [name:switch, value:on]
de3bcf8b-4cdd-4f64-ac3a-ae1b0515b5d8 6:42:08 PM: debug description is catchall: 0104 0006 03 01 0040 00 8BE9 00 00 0000 0B 01 0100
b76fb65e-9aea-4fe2-bf96-15690f0bccf2 6:42:07 PM: info SHM isActiveSensor(motion:active, app: off, location: off) = false, locationId: 2ba43b9d-9652-4d72-a669-0bd94eab1163, ISA: b76fb65e-9aea-4fe2-bf96-15690f0bccf2
b76fb65e-9aea-4fe2-bf96-15690f0bccf2 6:42:07 PM: debug motionOrContactHandler(Office - Fibaro Motion Sensor motion:active)
Got it thanks
Did u enable the cancel on piston change under the task cancellation policy? Is your piston designed to change states with motion? Alternatively, the turn on action should have a task override scope of “Local” to automatically cancel that turn off. This is the default behavior if u created the piston with v0.0.055 or later.
I dont have it enabled, I would even think the piston never changes as - remember I use simple pistons with sub actions so any of the conditions will actually be true and so will be the piston?
makes me think I might need to look at other pistons and re-create all of them to make it more robust …
Then you definitely need to set that override scope to Local on al actions. This way any new task on a device cancels all existing ones for the same device.
I will try that - basically all my IFs are unlimited OR_IF conditions with an associated actions …
edit> just checked my rules they are all set to local already … so this doesnt seem to help then … SCRAP that … seems not all but some …