webCoRE Update v0.3.110.20191009 - Load devices in multiple batches to avoid timeout errors, FontAwesome always at latest version


#1

Loading devices in batches

This release introduces significant changes to how device data is loaded into the dashboard. Devices have been completely removed from the requests that load account data and individual piston data. A separate request is responsible for loading devices and that separate request gets its own separate timeout in the platform (more on that in the Background section below).

In this update, devices are loaded in batches; all of your devices may be loaded in one request or it may take several requests to collect them all. The batching is not done by any set number of devices or size of metadata but rather by the amount of time it takes to load. The SmartApp will respond with as many devices as it can load in 10 seconds. This should provide resilience both for changes in your devices and for excess latency in the platform.

Background

The webCoRE smart apps are responsible for providing the dashboard with information about your account and devices, but people with a large number of devices have encountered debilitating errors that can prevent loading the dashboard. This is caused by a timeout enforced in the SmartThings platform; a SmartApp can only run for a certain length of time before it is terminated and these errors are caused by that termination. For more detail on the problem, see

The problem has existed for over a year now and it seems likely that the platform will just continue to get more congested. This workaround is an attempt to squeeze more life out of webCoRE for SmartThings users, and with the help of @E_Sch it also provides some foundation for improvements for users running webCoRE locally on Hubitat Evolution hubs.

If you were experiencing this issue and have been locked out of the dashboard or had to remove devices from webCoRE, this update should allow you to return to normal operations.

Backwards compatibility

The new dashboard is backwards compatible with older versions of the SmartApps. The dashboard will continue to work if you are unable to upgrade to the new SmartApps, but the dashboard update alone does not affect the timeout issues described above.

The new SmartApps are not backwards compatible with older versions of the dashboard. If you run a custom dashboard rather than using dashboard.webcore.co, an upgrade will be required to support the new SmartApps.

FontAwesome always at latest version

The dashboard now loads icons from FontAwesome Kits rather than the FontAwesome CDN, which allows us to automatically load the latest version of FontAwesome. It will no longer be necessary to push code updates for the dashboard in order to support the latest icons.

This update includes hundreds of new icons and a new Duotone icon style. See the changelog for all updates since the last version used by webCoRE, 5.7.2


pinned globally #2

#3

After update to new version, Webcore will not recognize newly added device in pistons, even though it sees it when added to available devices to existing pistons. Tried to create new piston and no devices show up at all. Also get the error "Problem loading devices, data may not be updated.

log
script_app_908e17c1c94762689f934918d2ea00c67a346a381aa028345917036569125dd3.listAvailableDevices() is applicable for argument types: (java.lang.Boolean, java.lang.Integer) values: [false, 0]
Possible solutions: listAvailableDevices(), listAvailableDevices(java.lang.Object) @line 1735 (listAvailableDevices)

0558fb66-df51-4d7b-b03a-4db1b87fd520 8:58:41 AM: error groovy.lang.MissingMethodException: No signature of method:

I have tired many suggested fixes. Password changes, device reduction, etc. @ipaterson @webCoRE_Minions

Any suggestions?
Thank you Eric


#4

Is your webCoRE Storage smart app up to date, v0.3.110.20191009?


#5

Yes, all 4 apps updated to the new version. Didn’t notice any issue until I recently added two virtual devices and noticed they wouldn’t show up. Then when I logged out earlier this week and logged back in, starting getting the error not finding devices.


#6

I have exactly the same problem since the update. I can’t see my new devices in the dashboard even if they are in the available devices list.


I tried few browsers, rebuild data cache, change the dashboard password but no success.


#7

Have you both published the changes in the webCoRE Storage smart app? account.smartthings.com > SmartApps needs to show Published in the status column.


#8

Yes, All four apps including storage, published.


#9

At account.smartthings.com > My Locations > smartapps you will see webCoRE at the top level with your pistons nested below it. Among the pistons, do you also see webCoRE and webCoRE (dashboard)? Is there more than one copy of either of those?


#10

There is only one copy of each under the newest version. However Several updates ago left an older version of webCore with that remained active in my account. The two instances have run fine together up until this point and the old version still runs without issue.

webcore


#12

Do you have any update on this case ? I don’t know if it can help but when I try to update webcore from my location -> smartapps I have this error on the top of the page



#13

Can you take a screenshot of the four Smartapps listed in the Smartapps section, not from the location section which is your current screenshot.


#14

Problem solved for me. Removed webcore and restored my pistons. I don’t know what was the problem.


#15

Still no luck for me. I deleted the older version of Webcore. Here is the error code I get with a piston not finding devices. Most of the pistons still work but 2 that I recently edited stopped.

I am exhausting all other alternatives for deleting and reinstalling as I have a large amount of pistons. Thanks


#16

You mentioned earlier that there was an older version on your account at one point. Do you happen to have any webCoRE smart apps at account.smartthings.com > My SmartApps that are colored purple? If so, try this:

12%20PM

  1. Click the magnifying glass icon on the purple smart app
  2. Click Overwrite local changes button above the right column (this will save the new code but not publish the new version)
  3. Click the smart app name to open the code editor
  4. Click Publish to finalize the changes

Please repeat those steps for any webCoRE smart apps that are showing up in purple. The GitHub integration could have gotten messed up on your account in the past, we’ve seen people end up with multiple copies in the past but I don’t think there is a known cause.