webCoRE for Hubitat Updates

Ever since updating to v0.3.113.20210703_HE I have been having sporadic problems with timed events, specifically with "every" statements where a piston fires at time intervals. Since updating there is a condition (not yet known) that causes pistons to fall out of their time loop and they never restart unless manually kicked.

Whatever this problem is, webCoRE's recovery is not catching it either. Perhaps it is suffering from the same condition that cause pistons to fail. I detect no errors that would indicate there is a problem, however I am now getting occasional "Timeout Error httpRequest" errors on calls made to a local http server that I know is operating properly and has so for many years. I don't know if it's related, but just putting that out there. At this point I have nothing to go on other than returning to a known good version of webCoRE

Please do a HPM repair, and then test again.

thx

Installed. Will let you know if it corrects the issue(s). Thanks much.

HPM notified me of a fix update so I ran the install but I never seem to get any new version numbers. Are the fixes there but the ver not being changed?

My update still shows v0.3.113.20210703_HE but the update code reflects changes. In the header of the code it has July 11, 2021 for the date

Ah yes, I see now, July 9 and July 11 in the fine print. Thanks

It has been a day and everything appears to be back to normal. Timed pistons remain firing on their schedule and I am no longer getting http timeouts. Another day or so and I will know for certain if the problem has resolved, but so far, so good.

1 Like

Hi,I have a question, I would like to install webcore locally on Raspberry, how I install on hubitat to work with my Raspberry instead of cloud?.

Thanks.

First, it should be noted that the only part of webCoRE that depends on the cloud is the piston editor. Once created, all pistons run locally on Hubitat. So, the outcome is the same either way, and hosting the editor locally might be more work to both set up and maintain than it is worth--your choice, of course.

If you wanted to try, I'm not aware of any newer guides than the ones in a previous thread on this subject:

Towards the bottom of that first post, you will find guides for setting up the editor on either a "bare" Linux server like Raspberry Pi or inside Docker on any supported OS/hardware combination. As noted in these instructions, you will need to point your Hubitat webCoRE installation to use custom URLs when you're done. Otherwise, there is nothing else to do on the Hubitat side, as Hubitat itself is not capable of hosting the editor on its own (which is why you need some external server--whether it's the cloud editor or one you host locally). But again, execution is ultimately local either way.

4 Likes

Yes with what Bert said.

Please do read note 2 in this thread also

2 Likes

Thanks a lot ,I will try to know how it works.

How do I resolve this error message... I cant delete the piston or view it or disable it

fixed by signing out and back in...thx

I assume this is the fault of the driver author and not WC?
All my virtual monetaries have created log entries.

dev:2852021-07-16 10:04:13.811 errororg.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: user_driver_bloodtick_Virtual_Momentary_Switch_463.refresh() is applicable for argument types: () values: [] Possible solutions: every(), parse(java.lang.String), every(groovy.lang.Closure), push(), grep() (refresh)

dev:2842021-07-16 10:04:13.737 errororg.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: user_driver_bloodtick_Virtual_Momentary_Switch_463.refresh() is applicable for argument types: () values: [] Possible solutions: every(), parse(java.lang.String), every(groovy.lang.Closure), push(), grep() (refresh)

dev:2832021-07-16 10:04:13.661 errororg.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: user_driver_bloodtick_Virtual_Momentary_Switch_463.refresh() is applicable for argument types: () values: [] Possible solutions: every(), parse(java.lang.String), every(groovy.lang.Closure), push(), grep() (refresh)

dev:2822021-07-16 10:04:13.580 errororg.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: user_driver_bloodtick_Virtual_Momentary_Switch_463.refresh() is applicable for argument types: () values: [] Possible solutions: every(), parse(java.lang.String), every(groovy.lang.Closure), push(), grep() (refresh)

what are those devices?

Those do not look like webcore items.

That looks like a DTH posted here and was a quick rewrite from SmartThings that just ignored the method.

You could comment out capability "Refresh", but probably safer adding the following if some application is expecting the refresh() method:

def refresh() {
    log.debug "${device.displayName} called refresh"
}

The Virtual momentary switch thread is updated with the change and curious enough refresh() is discussed here.

Hey, thanks for the quick fix.

@nh.schottfam

I just found another two bugs:

  1. UI bug - devices with apostrophes have the apostrophes HTML-encoded in the piston display. For example, a device named "Someone's" will show up as "Someone& #39;s" (without the extra space after the &). I don't know if this affects other special characters.

  2. It appears that Webcore identifies devices by their label but not their name. If the label changes, those devices can no longer be referenced by their old labels. It's nice to allow addressing by label, but we should also be able to reference devices by their names.

Apostrophes in JSON can also be similarly problematic.
See JSON request

adding @ipaterson for his thoughts