[DEPRECATED] Echo Speaks

I tried the resetQueue() like you did and it didn't make any difference. Still have units that don't respond. And it's erratic. Sometimes one unit sometimes another etc. And usually delayed responses.

I have set up some virtual contacts that I then link to ST which in turn link to Alexa which can then trigger Alexa routine messages direct from there. Since most of my messages are somewhat generic I can get by with that. If HE would get contacts to Alexa directly it would cut out ST being the middle man and that would help.

Even going thru ST the Echo responses are quicker as a rule.

I would like to use Echo Speaks, but just can't make it work reliably. So don't know whether it's something in my setup or what. But kinda tired of trying. Not blaming @tonesto7, it's just what it is I guess. When he gets his new notification app I'll give that a try and see if it makes any difference.

1 Like

Speak Commands are failing across the board periodically.
When it occurs, the following events are found in the log.

dev:33422019-07-14 12:48:58.371 pm errorjava.lang.Exception: No response data exists for async request on line 2521 (asyncSpeechHandler)

dev:33422019-07-14 12:48:58.106 pm tracecheckQueue | Nothing in the Queue... Performing Queue Reset

dev:33422019-07-14 12:48:57.067 pm debugspeakVolumeCmd([cmdDesc:SpeakCommand, message:Doug present, newVolume:null, oldVolume:null, cmdDt:1563126537066])...

Yeah it seems like amazon is just ignoring some commands. It doesn’t even send back a response some times so the device thinks the command failed and leaves it in the queue

I don't allow queuing because it results in repeated messages.
Do you have this problem on ST?

Hopefully the new actions app can help with this. The queue is necessary to be able to send to more than 3 devices.

I'm still in the late design phases of the new app... Hopefully will be at alpha stage by the end of the week :expressionless:

4 Likes

Since I was having some difficulties getting this app to always work correctly, I ended up on some things just using Alexa Routines. I then triggered them using a contact in ST. (HE doesn't have contacts to Alexa yet). In HE I just created a virtual contact which was then linked to ST via the HubConnect. This all worked fine, albeit sometimes a little slow. But that was understandable due to the many steps it had to go thru. I used this method as a stopgap for now.

On that other forum I saw a post by @tonesto7 about routine ID's and using the command in Echo Speaks called 'executeRoutineId()'. I was able to obtain my routine ID's from Alexa via the web access listed by Tony. Did some experimenting and that method works great. Seems to be very fast and doable from RM. The real hard part was manually going thru the dump from Alexa and finding the routine ID's. But I didn't have that many so it wasn't too bad.

Just thought I'd mention this in case anyone else was interested.

2 Likes

As of today, I am now getting this error in the logs when trying to run the Echo Speaks app

groovy.lang.MissingMethodException: No signature of method: com.hubitat.hub.executor.AppExecutor.error() is applicable for argument types: (org.codehaus.groovy.runtime.GStringImpl, java.net.SocketTimeoutException) values: [getWebData(params: [uri:https://raw.githubusercontent.com/tonesto7/echo-speaks/master/resources/appData.json, contentType:application/json], desc: appData, text: false) Exception:, ...]
Possible solutions: render(), getLog(), now(), every(), grep(), iterator() on line 2204 (startPage)

I have been having random issues where my echo's weren't speaking and I discovered that if I turn off the queue for ALL the echo devices I haven't lost 1 message.

It's as if the queue get's stuck or backed up for random reasons.

Oh and to get around the 3 device sending I also use Alexa TTS Manager by @ogiewon so I split my 6 devices between them, seems to work very well.

1 Like

Just got this set up and it seems very powerful! Much better than Alexa's native routine functions with the obvious benefit of HE's automation power! Thank you for your hard work @tonesto7!

Do you have any idea when the ability to enable/disable guard will be available? That is one of my most desired features.

Guard will be available in the next couple weeks

4 Likes

That's awesome! I might actually use Alexa Guard now.

@tonesto7

Hi Tony. Noticed that after I changed a echo name in the alexa app. Echo speaks caught it and changed the name on the hubitat device. Since then I have noticed echo speaks fairly regularly is seeing this name change and trying to change the child device again.

I've noticed the same thing on mine .

Me too. I changed the name of my Echo about a week ago, and now there is a log message EVERY 10 minutes that says "Amazon Device Name Change Detected... Updating Device Name to (Echo - Family Room Echo) | Old Name: (Echo-Family Room)"

Thanks for reporting!
I will add that to long list of items to address before releasing v3

4 Likes

Hi All,

Trying to install this now and once I go into the app after initial install to deploy and confirm server. I get a "No response from hub" when trying to connect to the API.

Am I doing something stupid or is there something else I need to do?
Tnx

I'm a total noob when it comes to HE and I'm trying to get this integration up and running on my hub. However, I seem to only be able to find clear installation instructions for ST. I assume I would copy the code available here and paste it into either a new app or new driver but I'm unsure which so I want to get clarification before I go tinkering with too much.

Any help would be greatly appreciated!

2 Likes

Unexpected Error

An unexpected error has occurred trying to load the app. Check Logs for more information.

Error: No signature of method: com.hubitat.hub.executor.AppExecutor.error() is applicable for argument types: (java.lang.String, java.lang.RuntimeException) values: [getAccessToken Exception, java.lang.RuntimeException: OAuth is not enabled for this App] Possible solutions: render(), getLog(), now(), iterator(), grep(), every()

log: 2019-08-05 10:37:06.687 am errorgroovy.lang.MissingMethodException: No signature of method: com.hubitat.hub.executor.AppExecutor.error() is applicable for argument types: (java.lang.String, java.lang.RuntimeException) values: [getAccessToken Exception, java.lang.RuntimeException: OAuth is not enabled for this App] Possible solutions: render(), getLog(), now(), iterator(), grep(), every() on line 2513 (startPage)

Enable oauth in the app code page.

@mgodwin
The apps code is here app code
The driver code is here device code
You will need both. Once you have added those two, you will need to go to the Apps page and add a User App and select Echo Speaks.

1 Like