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

Yea, @kahn-hubitat is correct. Back to back calls in rapid succession can cause Amazon to cause this issue. Try adding a 2-3 second delay after setting the volume. Also, perhaps remove setting the volume after 5 minutes. Odds are low that anyone changed the volume on the echo in those 5 minutes.

2 Likes

Added a 2 sec delay, same warning


10 seconds worked fine
5 seconds didn't give me the warning but I didn't get the announcement either

I personally use an IKEA Symfonisk speaker (made by Sonos) for all of my TTS requirements. It works really well using Hubitat’s built-in Sonos support as well as TTS engine.

2 Likes

Isn't this a WiFi speaker, how are you connecting it to HE?

I use the built-in Sonos integration provided by Hubitat. Works great.

1 Like

As a WiFi device, wasn't aware HE supports WiFi... interesting

Or am I looking at the wrong device on Amazon, only device I see ATM

HE can connect to LAN devices

1 Like

This is the correct device...

While Hubitat does not have a WiFi radio built-in, that does not stop it from communicating with any other device that is connected to your home network via WiFi. Once a device is connected to your home network, either via an Ethernet Cable or WiFi, it becomes part of your home's local area network (LAN). As such, Hubitat can communicate with it.

2 Likes

Good to know, TY

1 Like

Just as an added option, the Ikea Symfonisk is approximately equivalent to the (discontinued) Sonos Play 1. I’ve seen used Play 1 speakers listed on eBay for $50-70.

Is the Sonos Play 1 still supported by Sonos with the new software updates? I was happy that the IKEA Symfonisk speaker was able to be upgraded to Sonos' latest and greatest version that works with their new mobile app.

No - it isn’t Sonos S2 compatible (afaik).

1 Like

It is S2 compatible. See:

2 Likes

I stand corrected. But that is good news!

2 Likes

AFAIK, the Play 1 is not discontinued, I found this on Costco.

Costco is probably selling pre-existing stock/inventory. Sonos has stopped making the Play 1; it's been replaced with the Sonos One SL.

1 Like

Think I found my issue, Kahn's code is available via HPM, I had installed from there, then updated to your code then... you guessed it

I just removed everything and started over, not using HPM

Thanks

2 Likes

Just tried this and I get a 500 server error as soon as I use Speak from within a device. I've removed the app and driver and tried again, the cookie seems to work as I can select my Alexa devices just fine and they are created in Hubitat, but I always get this:

[app:703](http://192.168.0.146/logs#app703)2020-11-18 21:52:30.618 [warn](http://192.168.0.146/installedapp/configure/703)'speakMessage()': Error making Call (getMessage): Internal Server Error

[app:703](http://192.168.0.146/logs#app703)2020-11-18 21:52:30.615 [warn](http://192.168.0.146/installedapp/configure/703)'speakMessage()': Error making Call (Status): 500

[app:703](http://192.168.0.146/logs#app703)2020-11-18 21:52:30.610 [warn](http://192.168.0.146/installedapp/configure/703)'speakMessage()': Error making Call (Data):

HTTP Status 500 – Internal Server Error
Type Exception Report

Message com.amazon.identity.authportal.client.MissingConfigurationException: Could not load required AuthenticationPortal data from Config

Description The server encountered an unexpected condition that prevented it from fulfilling the request.

Exception 

org.jboss.resteasy.spi.UnhandledException: com.amazon.identity.authportal.client.MissingConfigurationException: Could not load required AuthenticationPortal data from Config
	org.jboss.resteasy.core.ExceptionHandler.handleException(ExceptionHandler.java:247)
	org.jboss.resteasy.core.SynchronousDispatcher.writeException(SynchronousDispatcher.java:149)
	org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:372)
	org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:179)
	org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:220)
	org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:56)
	org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:51)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
	com.amazon.arest.metrics.ARestQuerylogFilter.doFilter(ARestQuerylogFilter.java:58)
Root Cause 

com.amazon.identity.authportal.client.MissingConfigurationException: Could not load required AuthenticationPortal data from Config
	com.amazon.identity.authportal.client.AuthenticationPortalClient.generateAuthPortalURL(AuthenticationPortalClient.java:578)
	com.amazon.identity.authportal.client.AuthenticationPortalClient.generateLoginURL(AuthenticationPortalClient.java:143)
	com.amazon.dee.web.coral.auth.AuthTokenCookieServiceImpl.getRedirectURL(AuthTokenCookieServiceImpl.java:240)
	com.amazon.alexa.arest.auth.AlexaWebsiteAuthInterceptor.authenticationFailed(AlexaWebsiteAuthInterceptor.java:169)
	com.amazon.alexa.arest.auth.AlexaWebsiteAuthInterceptor.filter(AlexaWebsiteAuthInterceptor.java:144)
	org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:264)
	org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:250)
	org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:237)
	org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:356)
	org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:179)
	org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:220)
	org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:56)
	org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:51)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
	com.amazon.arest.metrics.ARestQuerylogFilter.doFilter(ARestQuerylogFilter.java:58)
Note The full stack trace of the root cause is available in the server logs.

I just tested it and all seems 'normal' to me.

Is the amazon user account you're using to obtain the cookie the same as the Primary account on the Amazon Echo devices?

It is, yes. I am in the UK and did choose that as the country option as well. Other than that, all seemed to be fine until I tried to use it. Odd.