[RELEASE] Echo Speaks v3 + Actions

OK, I will be a bit cheeky and also try to get some of your help for another issue that I have that may or may not be 'Echo Speaks' related. [it may be my poor logic-writing skills].

Here it is: Rule Machine & Alexa

Hmm, I reran the whole thing with the new code and still the same.

But now I'm thinking -- should I actually update the modified piece of code, i.e. ""A3RMGO6LYLH7YN": [ caps: [ "a", "t" ], image: "echo_gen2", name: "Echo (Gen4)" ],"

to include my device's Type, so A2U21SRK4QGSE1 instead of A3RMGO6LYLH7YN?

EDIT: Never mind -- I answered my own question and it's working -- thanks!

Hey yall, checking in again as its been a few months since this broke for me. My login to amazon expired and i have to re-log in. but when i go through the steps it shows a screen saying i have to enable cookies. Cookies are enabled, i can browse the alexa webpage and amazon just fine in this browser. but that link that generates in app doesn't work. anyone have a fix?

Can anyone help me with my cookie issue?

I have been on HE for almost two years now but just recently installed ES. Previously i have just relied on VCs triggering Alexa Routines.

I have read through this thread a (yes all of it) more than once and the some of the linked docs and i still have a couple questions.

Since I am a late adopter, i'm not really interested on moving any RMs into ES Actions at this time.

I have eight echo's but am happy with general announcements using:
1 x Echo show 8 (kitchen)
2 x Echo 3rd gen (livingroom & bedroom)
1 x Echo 2gn get (basement)

From reading in this thread, people seem to be able to send Speak commands to up to three echos at the same time without getting a throttling message . I have found even two devices is not 100% guaranteed, so i have defaulted to the playAnnouncementAll command.

Q1. Is there a SpeakAll command? I don't think so but it would be nice to get rid of the Echo chime.

Q2. Is there a a way to play sounds on more than one device or is playSoundByName(sound_name) the only way to do this?

Q3. It appears from the docs that using Echo Actions would make it way easier instead of sequencing RM custom actions (i still haven't figured out how to use SetVolumeAndSpeak) but I haven't found a way to feed ES actions a string. I know RM variable can not be 'seen' from other apps , so I was hoping that ES actions could read a string attribute from a device, but I believe this capability is limited to the %value% of the triggering device. Am I correct?

Again, just getting my feet wet.

@tonesto7 - thank you for the app.


We wanted to get this release out there for you guys to test.


I've changed the file structure some so I recommend you use Hubitat Package Manager and select the new entry for Echo Speaks (Beta) to install the code.

I want to give a big thanks to his @nh.schottfam for all his work on this release.

  • [UPDATE] Reduced overhead and resource usage

  • [UPDATE] Add new echo devices

Echo Speaks App

  • [UPDATE] Optimizations

  • [UPDATE] Reduced accesses to AWS Alexa APIs by caching results for re-use

  • [UPDATE] Removed a lot of state and atomicState accesses

  • [UPDATE] Many JVM optimizations to reduce memory use in HE

  • [UPDATE] More use of async HTTP calls

  • [UPDATE] UI improvements

  • [UPDATE] Improved status reporting and descriptions

  • [UPDATE] Cleanup of use of local server deployments

  • [UPDATE] Improved cookie refresh operations (in conjunction with server updates)

  • [UPDATE] Fixes for conditions, restrictions handling, time-based conditions, and restrictions

  • [UPDATE] Updates for operation with HSM,

  • [ADDED] Restored Zone and Action duplications.

  • [UPDATE] Added support for new Echo devices

Echo Speaks Actions

  • [UPDATE] Integration with lock codes and security keypads, humidity sensors

  • [UPDATE] Ability to filter actions on specific security code usage

  • [UPDATE] Updates for operation with HSM

  • [UPDATE] Integration with webCoRE

  • [UPDATE] Ability to execute pistons

  • [UPDATE] Ability to trigger based on piston executions

  • [UPDATE] UI improvements

  • [UPDATE] Improved status reporting and descriptions

  • [UPDATE] Fixes for conditions, restrictions handling, time-based conditions, and restrictions

  • [UPDATE] Optimizations

  • [UPDATE] Removed a lot of state and atomicState accesses

  • [UPDATE] Many JVM optimizations to reduce memory use in HE

Echo Speaks Zones

  • [UPDATE] Optimizations

  • [UPDATE] Improved time handling and transitioning

  • [UPDATE] Improved UI

Echo Speaks Device

  • [UPDATE] Improved labeling for command inputs

  • [UPDATE] Less overhead

  • [NEW] Added new voiceCmdAsText() command to execute commands as if they are spoken to the device

Echo Speaks WebSocket

  • [UPDATE] Less overhead

  • [UPDATE] Improved operations with WebSockets


I have been following the changes/improvements on your develop branch and must say it is working great. I have nine of my echos in use with this app and haven’t had any issues with it since switching back to it on HE from the ST version around late summer/early fall. This is a great app!

1 Like

This is a game-changer. Thanks for this.


I’ve pulled it down via HPM, but before I install a quick question (maybe two :sunglasses:). Do I uninstall the previous version first (thinking I should), and if so do I need to re-setup the server interface or is it inherited somehow?

Thanks for your work on this BTW.


It should work in place for update (as far as source files).

Tony will need to comment in HPM, and do you re-install HPM and have it re-match.

Reason I ask is that it pulled it down as a new package (which I was expecting):

1 Like

Same here I think I will wait for a bit of clarification on what to do next before I continue.


Yeah sorry about the confusion. You will need to remove and re-add HPM to rematch as Echo Speaks beta without having to reinstall.
Maybe @dman2306 can add a clever way to change a match for scenarios like this where I want to allow changing from Production to Beta release.

Oh boy.

50/50 on which one to remove ...

Been a while since I've set this up so probably doing something wrong, but the Heruko server deploy is not cooperating:

No app.json located in the repo URL provided.

OK, I'm still confused. I'm reading that as you need to remove HPM, not Echo Speaks. To remove it from HPM you would have to uninstall the app first, no? :thinking:

I’m seeing the same.


I followed these instructions and removed and re-added HPM. Matched Echo Speaks to the new beta and it's updated and up and running.

Thanks @tonesto7 and @nh.schottfam for your efforts on this.


Go under app and driver code pages and delete the file with the newest date...
Then remove HPM and reinstall then when it tries to match it will show both echo speaks and echo speaks beta.
select echo speaks beta.


Download the Hubitat app