Maker API issues after latest update

After the update my Maker API which was used to integrate with my home assistant is failing.

looking at the log,

groovy.lang.MissingMethodException: No signature of method: java.lang.String.call() is applicable for argument types: (com.hubitat.hub.domain.Location, java.lang.String) values: [Hubitat, eventHandler]
Possible solutions: wait(), any(), trim(), collect(), size(), split() on line 524 (method setPostURL)

1 Like

Is your hub called Hubitat?

I see that the latest update had Groovy version updated from 2.4.19 to 2.4.21. i think the security updates within the groovy is breaking the maker API url parser. please fix.

2 Likes

Yes, my hub is named hubitat.

It's probably nothing, I was thinking the name may have been throwing it off for some reason, but I'm not so sure now.

I just noticed the same thing this morning. Wasn’t sure that something hadn’t changed in my setup, but your post suggests otherwise.

1 Like

tried restoring the backup but the platform version remains the same. it did restore the previous settings, but the maker API error remains. and I assume the groovy version is still the new one.

1 Like

I see there's another section to roll back the platform itself... trying that now.

1 Like

Restoring backup only restores the database, not the platform.

There is a link on the Backup and Restore page (just above the table of on-hub backups) that permits restore to a prior platform version.

3 Likes

restoring to previous platform worked. i can now process the postURL without receiving an error. until this is patched, makerAPI won't be able to post events.

1 Like

Are you talking about HACS-Hubitat v0.7.1 ? I am just in the process of setting it up and getting that same error and the integration in HA says "Failed to set up - check the logs".

Curiously, the event server in HA is set up and listening because I can curl dummy event posts to it:
curl --data '{"id":"66"}' http:\qnap-nas:8124

and HA complains the id is incorrect:
2022-04-01 06:21:26 WARNING (MainThread) [hubitatmaker.hub] Received invalid event: {'id': '33'}
2022-04-01 06:22:27 WARNING (MainThread) [hubitatmaker.hub] Received invalid event: {'id': '66'}

check your logs on the hubitat side under makerapi. if you have an error groovy, it's probably that.

yes i use the the 0.71 as well HACs

Thanks for your feedback. I cannot replicate the issue, but we are looking into it.

2 Likes

To recap:
Issue on Platform 2.3.132: Maker API cannot parse the postURL for events anymore. You can easily test this by checking the Log or trying to hit the URL from browser.
Example:
http://[hubitatipaddress]/apps/api/5/postURL/[eventServeripadress:port]?access_token=[makerapitoken]

it'll return a java lang exception error

underlying error is "groovy.lang.MissingMethodException: No signature of method: java.lang.String.call() is applicable for argument types: (com.hubitat.hub.domain.Location, java.lang.String) values: [Hubitat, eventHandler]
Possible solutions: wait(), any(), trim(), collect(), size(), split() on line 524 (method setPostURL)"

on platform 2.3.0.124:
http://[hubitatipaddress]/apps/api/5/postURL/[eventServeripadress:port]?access_token=[makerapitoken]
will return the url of the event server and it's port.

@user624 - yes it is - I just wanted to check the version of integration you were referring to.

app:662022-04-01 09:09:17.408 errorgroovy.lang.MissingMethodException: No signature of method: java.lang.String.call() is applicable for argument types: (com.hubitat.hub.domain.Location, java.lang.String) values: [Hubitat-HA, eventHandler]
Possible solutions: wait(), any(), trim(), collect(), size(), split() on line 524 (method setPostURL)

[app:66](2022-04-01 09:09:17.391 debugurl=http:\qnap-nas:8124

app:662022-04-01 09:09:17.388 debugsetPostURL called

I edited the http/host text since it appears links are not allowed in the post.

My hub came with platform 2.2.9.146 installed, it was upgraded twice to 2.3.1.130 and then 2.3.1.132, At least those are the 3 versions visible in diagnostic tool when rolling back.

I can confirm HACS-Hubitat setup worked after restarting HA when HE is running 2.2.9.146 but fails with 2.3.1.xxx.

you need to have an address in the URL to POST device events. Example. h t tp://someIPaddress:2222"

check POST location events ON.

The event posting was working despite the config error. I just edited the log content I posted a) to remove the ip address and b) because this community platform complained about having real links in the content.

Is there a way to download / apply a specific version of the platform. Seems I could upgrade to latest 2.3.0.x and it would still be OK.

Found the bug in 2.3.1, fix coming in the next 2.3.1 iteration.

Yes, you can download it using an endpoint http://hubs.ip.address.here/hub/advanced/downloadPlatform/230

6 Likes