Widgets ETA?

Garrett,
Any ETA on this? Can really use a Widget for MultiSwitch and Variable Container. :slight_smile:

There is none. Simply put I have other priorities to take care of and need to incorporate the other plugins that people have requested. Also the fact that the the widgets would not be up to date because when the app is not running in the foreground, the data is only retrieved (default of 30 minutes) if background refreshing is enabled. So the use of widgets for status information is useless.

To give an idea, 80% of the app development is the UI which can be pretty time consuming. I am already running behind schedule of trying to get updates out to fix bugs and incorporate other things. I want to get the current alpha release out to beta asap.

  • Garrett

I do understand priority. I don’t understand the widget refresh issue you refer to… I have several widgets from multiple apps and they refresh very quickly and none are running in the foreground… email and calendar scrolling lists, XBMC, Time/Date/weather, Wifi, etc

Aaron,

The problem is that the widgets will be dependent on the App’s data of Vera. If background polling is not enabled, the widget will show the status of when it was last updated by the app. This could be very old data if the app was not opened for some time. if background polling is enabled, the data (default is 30 minutes) will be as old as 30 minutes. So what I am getting at is that this may not be reasonable for some who want to know up to date status of the device.

  • Garrett

please note that I’m not saying that Garrett should do this, or that it’s even possible, it’s just how most other apps tend to handle it that require instant data without a lot of polling

This could be possible if Garrett utilized push notifications. This would likely require a plugin for the Vera and a way to hook into every change that happens (I’m not sure this is possible). I’m also not sure if you could really even get the Vera to do proper push notifications, but there are services out that that could do it. Of course this would then incur a cost due to the number of notifications going out and most cap you at a relatively low number of notifications for the “Free” accounts (dev accounts).

So, I don’t really think it’s an easy task, but doable. If course it would require a Vera App and likely a paid service to handle the push notifications to accomplish this at the very least.

It is certainly doable with push notifications like Google Cloud Messaging. It’s the fact that this would require me to support an infrastructure to host the GCM requests and registration which requires money and time. That is the road block of me implementing it into the app.

  • Garrett

Could this piggyback on VeraAlerts?

Looks like this guy figured out a way to use AutoVera and Tasker to create Status Changing Shortcuts. This method is REALLY tedious and would take a ton of time to do several devices.

BUT… it shows a proof of concept that AHHD may be able to leverage simulate. I don’t know what the Vera-side AutoVera APP does but it looks like it may push the status changes. Could we leverage VeraAlerts (beg Richard to allow us to push all device status), then have AHHD watch the VeraAlerts log?

AutoVera uses GCM (Google’s Cloud Messaging) to push the status changes to your phone. The plugin for Vera registers a luup.variable_watch on most of your devices and when a change happens it will push it out to your device an into AutoVera where it will let tasker know of the change. As I mentioned in the past, this requires me supporting push notifications and will require additional resources to provide the push notifications. RichardTSchaefer has provided me the source code for server side that is hosted on Google Apps for VerAlerts that handles the registration and sending the message to the appropriate device. I have not looked at the code yet to see how much I can use, but that stil leaves me with making a Vera Plugin, adding support in AutHomation. Depending on the amount of usage, it will also cost to support the requests as well. In the end, it is not a simple task and will require some work. I have not decided if I will go this route or not as there are still questions to be answered. I also still have a tone of other tasks / feature request to take care of.

I have no problem working with Richard to tie both VerAlerts and AutHomation to achieve this. This would need to be up for discussion with him.

  • Garrett

Totally understand. I think it would make sense to have a single app (like VeraAlerts) to handle all Push from the Vera-side. Reduces complexity, and memory footprint. Hopefully Richard will agree.

GCM shows as a free service? If the cost is based upon the Google App Engine (not sure if it is) he prices look very low and we could likely gain support from the users for this. Probably like $10/year per user. The Free quota limits look pretty high, i think.

Yes, GCM is a free service. What is required is that you need to create the services that handle the device registration, un-registration and pushing the messages to Google. In other words you need to be the middle man. The user registers their device with your server, the server will save the registration information. This information is than used as a lookup and prepare the message to be sent to Google. Google assigns a long key for your device, the server which handles the registration should make it simpler to handle sending the message by allowing the user to use say a unique username, or identification number. The server also contains the keys that Google provides to communicate with GCM. It really is the bandwidth that is the cost issue as all push notifications need to go to your server to be sent to google.

The Google App Engine would be the webserver that contains the services to handle the registration, and so forth. So it would be used as a host provider.

I have already created a personal push notification app that uses GCM for personal use. So I know how to work with GCM. It is also the fact that it will require more time and resources for supporting an additional service.

  • Garrett