[RELEASE] Echo Speaks V4

@jtp10181 & @nh.schottfam Thank you both for steering me in the right direction. All is working now. I had an incorrect IP in a firewall rule that I use to allow my hub to speak to the ES Server. Must have fat fingered a key when I setup the rule initially. Until now, it never phased me to go back and check it.

Many thanks to you both!!

2 Likes

I realize I'm late to the party - I just fought an issue where Hubitat DNS was hosed. So the hostname I was using actually was failing. I proved it by replacing it with the hard IP and it worked, but with a hostname it didn't. Once I forced hubitat to use a local DNS that includes all my local machine names, the problem stopped. Crap..I wanted to take a screen cap of the DNS entries in HE I put to override and my hub was crashed. again. 6th time in the last 9 days. This is getting old.

They are on the same network so that shouldn't be an issue. Thanks for the advice.

I have confirmed the fw is disabled on rpi.

I have changed DNS settings and Heroku and I still get the same issue.

That particular error is normal at the moment. It is something Amazon has changed and the dev has not had a chance to look into it and fix it.

If you comment out line 999 in the Echo Device code it will hide the error. Myself I actually commented out the entire function from running, which is two other lines.

Commenting out these two lines will prevent the getPlaylists function from running, instead of just suppressing the error.

image

image

14 Likes

Thanks! Trying it now.

Please forgive my newbie question and ignorance but what exactly do you do to “comment out” the lines of code in these drivers? Can you please show an example of what the driver looks like before the line is “commented out” and what it looks like afterwards? TIA for your help to a non-tech guy.

He did, notice the two "//" in front of the line he highlighted that remarks out the line.

2 Likes

Thanks (again, I apologize for my ignorance)! I saw other lines of code as well that had the “//“ which were not highlighted and so was not sure if that was what commented out the lines. Thank you again.

Edit: “doh”, lol. :man_facepalming:

2023-04-26 02:54:23.527 PMerrorEcho (v4.2.2.0) | getPlaylists Response Exception | Status: (404) | Msg: status code: 404, reason phrase: Not Found

dev:2912023-04-26 02:54:13.730 PMerrorEcho (v4.2.2.0) | getPlaylists Response Exception | Status: (404) | Msg: status code: 404, reason phrase: Not Found

Anyone know what this is about?

Yep, and solution from upthread:

It’s harmless, Amazon changed the API, this stops the errors until Anthony Santilli has time to fix.

2 Likes

I'm told that this requires a linux server or charges from Heroku. That really should be mentioned in the first post.

Not exactly. The cookie refresh server can also run in a Docker container, so it’s possible to use a Windows PC for this purpose by installing Docker Desktop. Many NAS devices can run Docker too. There are a few step-by-step setup guides for various installation scenarios created by some very helpful users.

Heroku started charging for usage several months ago. The OP of this thread is just over two years old. Can it be updated? Yes. But it is possible the community developer, who has done a lot of really great work for free, has a life outside of Hubitat and just hasn’t gotten around to it yet.

8 Likes

It can also run on a minimal Raspberry Pi without Docker or Portainer. Instructions are copied in my post about 25 posts upthread.

2 Likes

I'm running mine on Ubuntu in a headless vbox VM on Win10.

Technically it's a "Linux server", but certainly not dedicated.

I have been using this app for a while and all the time when my 6 echo dots speak they do it one by one, is there a way to have them all speak at the same time ?? I have tried to do groups but does not look to work

If you use PlayAnnouncementAll then it plays a announcement on all devices.

1 Like

You can try parallelSpeak or parallelPlayAnnouncement. My experience has been that it's better than Speak or playAnnouncement, but still not truly at the same time. Probably internet lag. I don't use playAnnouncementAll because I have 11 echo devices, but it's worth a try.

I am using the "send, speak or log a message, send http request" function and from there next step I use is the "send/speak a message" and then the "on these Text-to-Speech devices". So in here I do not see the option you suggested, where can I find it?