Echo Speaks error getDeviceActivity

same here every 7 minutes..

anybody in the new when it gets fixed will it clear itself or do we need to do something.

doesnt seem to have adversly affected talking.. wonder what is actually broken

ok i put some debugging in to try and see what url it is trying to hit during the getdeviceactivity call and getting the 404 thinking maybe it doesnt resolve. but it goes to this page...

1 Like

It is back for me too. Seems like every 10 minutes now.

It is something with Amazon's api site/s. This gives the same page as posted above - https://api.amazonalexa.com

You can add me to the list, coming in about every 10 mins.

Still erroring out today

1 Like

It won't solve the issue with Amazon, but if you comment out line 2800

respExceptionHandler(ex, "getDeviceActivity")

the error message should stop being generated.

5 Likes

Ya thinking of adding an option to disable thst feature so can easily turn iy back on when/if it us fixed.

You just run a repair in HPM and it will restore the code back to the original.

2 Likes

I've been getting these errors since this evening. It seems similar to what everyone else was seeing last week.

Did everyone else's just suddenly start working or did you all do something?

No.

Yes, ignore it.

1 Like

I have rem'ed out five lines (2783 through 2787) in the Echo Speaks app and i am no longer seeing any errors in my logs and I can still send voice announcements.
I am not using any other functionality in Echo Speaks, so i don't know if this has effected any other functionality ... but evidently it's not working anyway, so i don't think you will loose anything.

Was that just blind luck you removed that and things are okay?
Btw Iā€™m noticing these errors today.

Ha. No. The errors indicated a call function so I searched for that. It took me two or three attempts. Someone in the other thread commented that you can just rem out line 2800. I was trying to be a little more surgical and trimming as little as possible.

1 Like

i changed it this way.. less invasive.. and still have one error message so when it stops i know it has been fixed (if ever).

2 Likes

Thank you for this. Since I couldn't copy the lines from the image, I've included the changes I made below.

New line added at 2796, in Apps Code > Echo Speaks

    } catch (ex) {
        log.debug "error still exists: getDeviceActivity | Response Exception | Status: (404) | Msg: status code: 404, reason phrase: Not Found"
        //jocko: line above added; line below commented
        //respExceptionHandler(ex, "getDeviceActivity")
        // log.error "getDeviceActivity error: ${ex.message}"
    }

This still logs the error since without it, over time, it will be lost from the logs.

1 Like

@jeremyleestewart and @kahn-hubitat .... Thanks for the work on this. Any thoughts on what the cause is and if @tonesto7 is aware and looking into this?

I think I got this correctly placed in my Echo Speaks App and now get the Log Attached.

Does this look as expected.

1 Like

I don't have an idea at this time, but I haven't looked into it either.
I can't say the original author (@tonesto7) is looking into a fix as well.
The 'debug' message looks correct and should cut down on the 'error' items in the logs.
Note: the changes will have to be made each time there's an update to the app unless the underlying issue is resolved.

The error is a result of Echo Speaks used Alexa's unofficial API https://alexa.amazon.com/api/activities, it was removed since sometime Oct 2023. Actually, there are many integrations including IFTTT and HA were impacted too. HA implemented another hack by scrapping a webpage, which may break again at any time.

Commenting out the line that writes the error to log does not prevent the HE from doing the meaningless work and wasting CPU time (handling exception is expensive). To stop the meaningless call, you can modify line 1054 of the driver code in Echo Speaks Device to below:

    Map actData = null //parent?.getDeviceActivity((String)state.serialNumber)
4 Likes

I don't see the line above in the version of Echo Speak that I have..
does the getDeviceActivity not work and I can just return null right away or does that function still work... this is what I did but not too sure

still getting

Are you looking at the App code or Driver code? I looked at the app code first myself and realized I was not looking at the driver.