DEVICES list enhancement request

Posted on
Sun Jul 28, 2013 2:54 am
berkinet offline
User avatar
Posts: 3290
Joined: Nov 18, 2008
Location: Berkeley, CA, USA & Mougins, France

DEVICES list enhancement request

How about... an additional column in the DEVICES window (or maybe all Home WIndow panes) for an optional Icon to be displayed. The Icons might be chosen from a pre-defined set in Indigo, or provided as a bitmap in a plugin, or both. The Icons should be as large as can be supported in the current row height (16x16 would be nice). The column should be "hide-able" and relocatable like the existing columns. The plugin would have to provide a way to clear the Icons (automatic, manual, scripted, etc.).

Use cases...
  • An alarm plugin could set an Icon to indicate a zone had been faulted
  • A flag in a thermostat device to indicate a high, or low, temperature had been reached.
  • An arbitrary Icon that could be set on in a scriptable action (a sprinkler has been on too long, etc.)

For example:
indigo-request.png
indigo-request.png (29.29 KiB) Viewed 6364 times

If this has been requested already, then please ++ it.

Thanks.

Posted on
Sun Jul 28, 2013 8:31 am
durosity offline
User avatar
Posts: 4320
Joined: May 10, 2012
Location: Newcastle Upon Tyne, Ye Ol' England.

Re: DEVICES list enhancement request

+2 (my cat also likes this idea)

Computer says no.

Posted on
Sun Jul 28, 2013 10:10 am
matt (support) offline
Site Admin
User avatar
Posts: 21411
Joined: Jan 27, 2003
Location: Texas

Re: DEVICES list enhancement request

Added -- thanks for the feedback.

Image

Posted on
Sun Jul 28, 2013 10:15 am
berkinet offline
User avatar
Posts: 3290
Joined: Nov 18, 2008
Location: Berkeley, CA, USA & Mougins, France

Re: DEVICES list enhancement request

and special thanks to durosity's cat!

Posted on
Sun Jul 28, 2013 4:00 pm
berkinet offline
User avatar
Posts: 3290
Joined: Nov 18, 2008
Location: Berkeley, CA, USA & Mougins, France

Re: DEVICES list enhancement request

I thought of an interesting addition to the aforementioned feature request: It would be real cool to have the option to click on the icon and have a message display in the status area below the item list window. This would be a good way to do things like have a plugin announce that a new version was available or give a warning that a server was unreachable, etc.

Travis has noted that the log is not necessarily an effective communications channel, especially for transient events. So, being able to attach a stateful message to the device (trigger, schedule, etc) could be quite useful.

Yeah, I know the original request will take a while to get into some release schedule and this upgrade is probably twice as complicated as the initial request. So, whenever.

Thanks.

Posted on
Mon Jul 29, 2013 11:27 am
travisc offline
User avatar
Posts: 346
Joined: Sep 07, 2010
Location: Toronto, Canada

Re: DEVICES list enhancement request

+1. Something like this would be a great help for my DSC Alarm plugin. It'd be nice to be able to visually indicate a zone's status using a small red or green dot rather than having to scan the device's text states. It'd also be useful for notifying the user of things like low zone batteries, trouble states, etc.

Posted on
Mon Jul 29, 2013 12:39 pm
jay (support) offline
Site Admin
User avatar
Posts: 18199
Joined: Mar 19, 2008
Location: Austin, Texas

Re: DEVICES list enhancement request

The GM release of Indigo 6 will have some nice features along these lines (but not exactly). What are the exact state value strings that your security plugins use? Hopefully, they're somewhat consistent between your plugins. Same goes for any other security plugins - specifically if you provide zones. I can't promise anything, but I'll try to see if I can add them to some things we've already added.

The sooner the better... ;)

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Mon Jul 29, 2013 12:55 pm
berkinet offline
User avatar
Posts: 3290
Joined: Nov 18, 2008
Location: Berkeley, CA, USA & Mougins, France

Re: DEVICES list enhancement request

So, I take that as a firm commitment that if you get the time something might appear in some upcoming release, possibly I6-GM ;-)

And, to the point of your question. Some of the "states" that might be visually indicated for alarm zones are: low battery, lost supervision, tamper warning, and faulted since last manual clear (I.e. even though the current state is clear, there was a fault since the last time this zone was "reset."

On the same general topic: for thermostat devices, similar states might be filter needs change, high or low limit was reached, max-on-time exceeded, humidity limit exceeded.

And of course, the general "Message Waiting" flag. I.e. this device has something to tell you (exactly where to get that messages is unclear).

Posted on
Mon Jul 29, 2013 1:25 pm
travisc offline
User avatar
Posts: 346
Joined: Sep 07, 2010
Location: Toronto, Canada

Re: DEVICES list enhancement request

That'd be great if you could squeeze that in!

For my alarm zones, the state value strings are ...
    <Option value="open">Open</Option>
    <Option value="closed">Closed</Option>
    <Option value="tripped">Tripped</Option>

For my alarm keypad ...
    <Option value="disarmed">Disarmed</Option>
    <Option value="exitDelay">Exit Delay</Option>
    <Option value="armed">Armed</Option>
    <Option value="entryDelay">Entry Delay</Option>
    <Option value="tripped">Tripped</Option>

The way I picture it. The notifications like low battery, zone fault, etc., wouldn't be a "state". Those notifications would have to be handled by a separate facility. For example, let's say the front door sensor has a low battery. If we set the state of a zone device to "lowBattery" until the battery gets replaced, that would break any of the user's triggers that fire when the door opens, say to turn on a light. We'll need some other device property or method we could call to draw the user's attention to a particular device without compromising the usual states and events.

That said, just having some little images in the ui for the states above would be a great first step, and do a lot to help make our plugin's devices appear as "first class citizens". If there's only time to add a few of the states, open, closed, armed, disarmed, would be the most important of course. :)

Thanks Jay!

Posted on
Mon Jul 29, 2013 1:56 pm
berkinet offline
User avatar
Posts: 3290
Joined: Nov 18, 2008
Location: Berkeley, CA, USA & Mougins, France

Re: DEVICES list enhancement request

I think I am agreement with Travis. But, to be sure...

The existing Device State column does a fine job of displaying the state of the device's main function. For a light bulb, On or Off, etc. For an alarm it is probably clear or faulted. It gets a little trickier after that. For a thermostat is the "state" the actual temperature, or the current operating mode of the unit (heat, cool, fan, etc.).

So this new column would be for additional information about the device. Today when plugins deliver such information (low battery, timeouts, filter needs change, rain gauge need to be emptied, etc.) it is done through the log. So by adding the option to display one (or possibly more) icons separate from the State column, the plugin developer can convey a lot more information in the context of the device itself.

At some point, as I noted earlier in this thread, it would be really great if the user could click one of these info icons, or possibly mouse-over and get a tool tip.

There is clearly mission overlap between what is being discussed here and the logging system. But, perhaps this is what is needed to reduce pressure on the logging system by providing an additional context based channel.

just my 2¢

Posted on
Mon Jul 29, 2013 6:58 pm
jay (support) offline
Site Admin
User avatar
Posts: 18199
Joined: Mar 19, 2008
Location: Austin, Texas

Re: DEVICES list enhancement request

Thanks Travis, exactly what I was looking for.

Battery status is going to be handled at the device base class level (since just about every class of device could potentially have a battery) and will likely (not in 6.0 but probably a dot release following that) have it's own column in the device table.

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Tue Jul 30, 2013 8:49 am
travisc offline
User avatar
Posts: 346
Joined: Sep 07, 2010
Location: Toronto, Canada

Re: DEVICES list enhancement request

jay (support) wrote:
Battery status is going to be handled at the device base class level (since just about every class of device could potentially have a battery) and will likely (not in 6.0 but probably a dot release following that) have it's own column in the device table.


Nice. If I may... maybe instead of implementing a specific "battery" property or class just for batteries, maybe go a little more generic. Very much like berkinet's original post. Some sort of notification property/class for the device base class. Have a few pre-set icons that we could choose from, as well as a string description. This would allow us to easily notify the user of plugin updates, zone faults, battery low, etc. Just a few icons like a low battery, exclamation mark, caution sign, etc. would be required. When they mouse over it they see the notification message.

We could set a notification in a plugin by passing it the icon we'd like as well as the message...
dev.setNotification('batteryLow', u'This zone's battery is getting low.')
or
dev.setNotification('warning', u'This zone is not responding.')

OR, create a separate notification property in addition to the battery one to accomplish the above. They could probably share the same little column for icons.

Thanks

Posted on
Tue Jul 30, 2013 9:26 am
matt (support) offline
Site Admin
User avatar
Posts: 21411
Joined: Jan 27, 2003
Location: Texas

Re: DEVICES list enhancement request

Battery level is special enough (and useful for lots of devices), that it will eventually get its own column in the table.

Device level notification/erros I'm not sure exactly how we'll handle in the UI. I don't know if they will be in their own column, but we might be add a prefix icon on the main status column. I could see there being different icons based on the severity of the notification (error, warning, notice), and then the user can click on the icon or hover over it to see the detail message ("hardware communication problem", "zone battery is low", etc.).

Note you can already set an error state for a device which will show in red on the status column:

dev.setErrorStateOnServer(u"no ack")

The next time your plugin changes the main UI state via dev.updateStateOnServer() the error is cleared. No fancy icons and the error state needs to be short to fit in the column width, but it is a start.

Image

Posted on
Tue Aug 13, 2013 10:20 am
jay (support) offline
Site Admin
User avatar
Posts: 18199
Joined: Mar 19, 2008
Location: Austin, Texas

Re: DEVICES list enhancement request

Check the v1.11 API Docs for a little surprise for plugin developers with custom plugins and status icons (at the bottom).

We'll consider further requests for built-in logic but the ultimate goal will be to allow you to specify which iconset to use for your status' (and, someday, perhaps even provide your own icon).

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Wed Aug 14, 2013 1:19 am
berkinet offline
User avatar
Posts: 3290
Joined: Nov 18, 2008
Location: Berkeley, CA, USA & Mougins, France

Re: DEVICES list enhancement request

jay (support) wrote:
Check the API Docs for a little surprise for plugin developers ...
...We'll consider further requests...

A) Thanks guys, this is a nice little surprise!

B) Could I make a small request for consideration

Delete the string "closed" from it's existing case:
    if status string contains one of ["inactive", "disabled", "closed", "disconnected", "unavailable"] or if the state value is a boolean and false show a gray dot

And, add it to the last case, to yield:
    if status string contains one of ["tripped", "faulted" or "closed"] show a red dot

Three reasons. First, closed is not really in the same class of state as the other strings it is now associated with; second, at least for alarm systems, closed is usually a synonym for faulted; and finally, closed is the logical opposite of open () and by extension, Red is the logical (and chromatic) opposite of Green.

Who is online

Users browsing this forum: No registered users and 9 guests