UI implies actions are ordered and delays are cumulative

Posted on
Thu Jan 18, 2018 4:09 pm
ZachBenz offline
Posts: 163
Joined: Feb 08, 2014

UI implies actions are ordered and delays are cumulative

Having used Indigo for many, many years now, I only just now discovered this important bit of information hidden in the documentation - which explains years of me getting seemingly strange results on the timing of my actions :-)

"While you can order the actions in any order you like, Indigo will attempt to execute all actions in parallel. It's not always possible for various reasons, but that's the intent. If you want to order the execution, then you'll need to add delays which will delay the action's execution from the time of the event. So, if you have 3 actions and you want the first to execute immediately, the second to execute a minute after the event, and the third to execute two minutes after the event, then add a one minute delay to the second and a two minute delay after the third."

(in http://wiki.indigodomo.com/doku.php?id= ... n:overview under Managing Multiple Actions)

I had always assumed action order mattered and that delays were cumulative, which the UI seems to imply, since it allows you to 'order' actions (move them up and down in a list). Really the order is nothing more than a convenience for grouping actions visually, but this is not at all obvious.

Would it be possible to edit the Actions tab of triggers/schedules/action groups edit windows to include the above very important text in some form? Perhaps just a simple note: "Actions are executed in parallel and delays are specific to an action, not cumulative; the order the actions are listed in is merely for your visual organizational convenience, and has no bearing on when one action is executed relative to another action. Only delays you specify per action impact when the action is executed after this trigger/schedule/action group is triggered."

Also, would be helpful if the "Show All" list of actions in trigger/schedule/action group editing panes had a column that listed how long after the initiation of the trigger/schedule/action group each action was going to fire (based on the delay setting).

Thanks!

ZachBenz's Plugins: RingForIndigo

Posted on
Thu Jan 18, 2018 8:28 pm
matt (support) offline
Site Admin
User avatar
Posts: 21411
Joined: Jan 27, 2003
Location: Texas

Re: UI implies actions are ordered and delays are cumulative

Yeah, that area (entire actions UI really) is the source of lots of confusion. It really needs some usability attention (you aren't the first one that assumed delays were cumulative). Thanks for the feedback.

Image

Posted on
Thu Jan 18, 2018 9:48 pm
ZachBenz offline
Posts: 163
Joined: Feb 08, 2014

Re: UI implies actions are ordered and delays are cumulative

Thanks!

ZachBenz's Plugins: RingForIndigo

Posted on
Fri Jan 19, 2018 10:50 am
virgahyatt offline
Posts: 132
Joined: Jan 11, 2014

Re: UI implies actions are ordered and delays are cumulative

So, then what is the Override previous delay checkbox do exactly then?

Posted on
Fri Jan 19, 2018 12:35 pm
ZachBenz offline
Posts: 163
Joined: Feb 08, 2014

Re: UI implies actions are ordered and delays are cumulative

virgahyatt wrote:
So, then what is the Override previous delay checkbox do exactly then?


Yeah, I really don't understand that either. I just leave it checked. :-)

ZachBenz's Plugins: RingForIndigo

Posted on
Fri Jan 19, 2018 12:40 pm
ZachBenz offline
Posts: 163
Joined: Feb 08, 2014

Re: UI implies actions are ordered and delays are cumulative

matt (support) wrote:
Yeah, that area (entire actions UI really) is the source of lots of confusion. It really needs some usability attention (you aren't the first one that assumed delays were cumulative). Thanks for the feedback.


A thought on a possible (albeit highly nontrivial) UI redesign: rather than have a seemingly ordered list, have action 'bins', where each bin has an optional user configurable delay associated with it. By default, all actions go in a single bin with zero delay. The UI states that all actions in a bin are executed simultaneously, fired after the optional delay.

As a user I can add as many bins as I like to organize things visually (they could all have zero delay if I'm just trying to group things visually, say). I can also specifically have bins that have delays associated with them.

Taking this one step further, these bins could be arranged visually on a timeline - either an x or a y axis which is the delay in HH:MM:SS - allowing me to visually see which bins will fire approximately when.

ZachBenz's Plugins: RingForIndigo

Posted on
Sun Jan 21, 2018 12:22 pm
matt (support) offline
Site Admin
User avatar
Posts: 21411
Joined: Jan 27, 2003
Location: Texas

Re: UI implies actions are ordered and delays are cumulative

virgahyatt wrote:
So, then what is the Override previous delay checkbox do exactly then?

If the exact same Trigger is executed again and the delayed action from a previous call has not yet fired, then it is replaced with the new one. That is, the delay is extended out further in time. If you have it unchecked and the Trigger is tripped multiple times then each delayed action will fire.

Example where this would be useful: a motion sensor that just sends an ON command you could have a Trigger that turns on a light and has a delayed off with the override option checked. Then, if the motion sensor trips again before the OFF has been sent the OFF is just pushed further out in time.

Image

Posted on
Sun Jan 21, 2018 12:43 pm
virgahyatt offline
Posts: 132
Joined: Jan 11, 2014

Re: UI implies actions are ordered and delays are cumulative

Ah. If there are multiple delayed actions does it cancel all of them or just the corresponding action. Say you have a 2min delay and a 30 min delay but only override the 2min delay?

Posted on
Sun Jan 21, 2018 12:54 pm
matt (support) offline
Site Admin
User avatar
Posts: 21411
Joined: Jan 27, 2003
Location: Texas

Re: UI implies actions are ordered and delays are cumulative

Just the corresponding action – each action is tracked independently.

Image

Posted on
Mon Jan 22, 2018 11:32 am
jay (support) offline
Site Admin
User avatar
Posts: 18200
Joined: Mar 19, 2008
Location: Austin, Texas

Re: UI implies actions are ordered and delays are cumulative

ZachBenz wrote:
The UI states that all actions in a bin are executed simultaneously, fired after the optional delay.


Therein lies the rub: they may not be. For instance, actions to multiple Insteon devices will necessarily be executed in sequence. Same for Z-Wave. And likely same for multiple actions to the same plugin. This has always been an area where we took the optimize performance over control path because in most cases this is what users want: execute actions as fast and as close to simultaneously as possible.

Making it even more difficult is the fact that we don't always know when an action is complete. This is problematic because the only way to make it super obvious would be to make all action executions sequential and asynchronous. But we can't do that and honestly nobody would be very happy with the result.

Anyway, as Matt says, this is definitely an area where we'd like to make some improvements - but exactly what those improvements would be is quite difficult given the end-goals.

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Page 1 of 1

Who is online

Users browsing this forum: No registered users and 2 guests

cron