[Deprecated] Amazon Alexa Text to Speech (TTS) v0.6.2 - Direct Integration (USA, Canada, UK, Italy, Australia, & Brazil)

This doesn't just affect us (Alexa TTS/Echo Speaks) It's actually doing it with Alexa Routines with speech as well

1 Like

And I haven't heard it one time in the last 24 hours.... odd

Hi Smart Folks

I was an ES user since the beginning, but the last update now locks my hub up consistently/repeatedly between 6-8 minutes from a reboot. Disabling ES fixes the issue.

As a result, I have installed /configured the latest of this TTS solution. No issue encountered during the setup etc., however, it only kinda works for me!

Note: I am on the "manual cookie" configure option, but lets get this out of the way - it is NOT the issue.

An "AlexaTTS xxxx" device was created in Hubitat for each physical device I have.
On all of my Echo Dots, from within the device itself, when I do a speak command, the silence is deafening!
Doing the same from my Echo Show it works just fine!
And now for the real puzzler, from the "AlexaTTS All Echos" device, it works for every single device!!! Shows, Dots, you name it.
But individually, the Dots are silent.

There doesn't appear to be anything useful from a log perspective; at least no errors being generated.

Anybody got any ideas?

I have the exact opposite problem. All of my individual devices work but 'All Echos' has never worked.

not to be a total noob but i would like to setup a nodejs sever but dont really know where to start what videos or websites would you recommend ?

Have you read through This

1 Like

I'm looking into transitioning from Echo Speaks v3 to this. Issue I have is Echo Speaks causes slowdowns on my hub.

I have an interesting situation. I have about 6 echos in my house. 4 are registered to my account and 2 are registered to my wife's account. I did this because I need separate accounts to properly integrate with the Logitech Harmony skill.

In Echo Speaks, I was able to register 2 different servers and instances of the app to create all 6 devices in Hubitat. It was a bit weird because my account has access to my wife's echos (we're in a family) but her devices gave errors when I tried to send any speech to them. I got the same errors using this app so also had to create 2 instances on Nodejs and the apps.

I have 2 questions please:

  1. Is it possible to edit the devices added to the "All Echos"? I get an error when I try to send a command to "All Echos" ((Data): {"message":"Input failed to validate."}) presumably because my wife's echoes are included. I'd love to use All Echos because I get the "too many requests" if I try to broadcast a message to all 6 echo devices at once (that's my primary use of this app).

  2. I was able to use Nodejs for my instance but not for my wife's instance of the app. In fairness, it was also a hassle getting it to work for my instance (I kept getting a 200 error) but it eventually did. I now get the same 200 error for her instance even though I'm using a different port number and AlexaCookie2.js. I see others complained about the same issue earlier but I don't see a fix. Any idea how to fix this? I can use Chrome to get her cookie working but Nodejs is not working.

Thanks

Could the issue be that I can't use the same RaspberryPi for 2 different cookies:

Unfortunately, this is not possible. This integration simply sends a single command to Amazon to ask it to send the TTS to all of the echo devices on your account.

I am not an expert on the NodeJS side of things. This was an awesome addition by @gabriele. Perhaps he might be able to comment on this?

Good to know! Thanks for your response and for this app!

1 Like

So looks like this started working this morning. I didn't do anything different but it worked this time so not complaining.

@ogiewon Interestingly, "All Echos" for my wife's account works fine for sending messages to both her devices. I now wonder if the reason why I get an error on my account is that I have 2 Echos I never set up. I get the below error. Please any idea why I might be getting this error. Thanks@

app:5772020-03-17 07:01:04.936 am error'speakMessage()': Error making Call (getMessage): Bad Request

app:5772020-03-17 07:01:04.927 am error'speakMessage()': Error making Call (Status): 400

app:5772020-03-17 07:01:04.921 am error'speakMessage()': Error making Call (Data): {"message":"Input failed to validate."}

I really don’t know why Amazon is returning that error, especially if sending TTS to a single echo device works. Sounds like something specific to your Amazon account, as you’ve already hypothesized.

They seem to be heavily rate-limiting the endpoints now, but only at random time :roll_eyes:

3 Likes

Figured out why sending a message to "All Echos" always fails for my account. I have a family account with 4 echos under my name and 2 under my wife's name. In the speakMessage() function of your code, for the "All Echos", it uses the first device in the list to determine the owner ID. Unfortunately, the first device always shows up as my wife's device (vs mine). As such, when the announce message is sent, it's sent with the wrong owner ID and thus fails.

Is there a way I can get it to only use the list of devices I have enabled instead? There might be a better solution but currently, I imagine others with family accounts (with echos under each account) would run into this issue.

Thanks!

2 Likes

I'll take a look and see if there is a way to use the info from one of the selected devices instead of the JSON returned from Amazon...

1 Like

I added an optional text input to enter the owner ID and my All Echos now works fine. Interestingly, it also announces to my wife's echos which is perfect.

Thanks

1 Like

How do i get the cookie

Please read the ReadMe, linked in the first post of this thread. The detailed instructions are in the ReadMe.

3 Likes

FYI - I didn't see this exact problem posted elsewhere, but I ran into the following error when sending a test message to one of several of our Echo devices. The resolution is also included below.

Scenario

Attempted to send a test message to an Echo device that was created via the Alexa TTS app. Sending messages to our other 3 Echo devices was working fine.

app:1312020-03-22 09:27:16.372 error'speakMessage()': Error making Call (getMessage): Bad Request
app:1312020-03-22 09:27:16.368 error'speakMessage()': Error making Call (Status): 400
app:1312020-03-22 09:27:16.363 error'speakMessage()': Error making Call (Data): {"message":"Input failed to validate."}
app:1312020-03-22 09:27:15.616 debugSending 'hello' to 'Chris' Office Echo Dot'
dev:4172020-03-22 09:27:15.513 debugSpeaking message = 'hello'

Analysis

In the Alexa app, I dug further into the configuration for this particular Echo and found that it had been registered to my Amazon account while the working Echos were registered to my wife's account.

Since I had set up the automated cookie support via AlexaCookieNodeJs with her account, it made sense that the error was occurring only when I attempted to send a message to the device registered to my Amazon account.

Resolution

I deregistered the Echo from my Amazon account , waited a few minutes, and then responded to the automated prompt in the Alexa app to register the Echo again. This time with my wife's Amazon account. Then opened the Alexa TTS app and refreshed the set of Echo devices and successfully sent a test message.

2 Likes

Good Evening
I have been trying to add Echo Auto in HE without success. Any idea? I can see Echo Auto listed as device in HE. But TTS is not working. Other Echo, All other Alexa devices are working well. But this new item is not.