[RELEASE] Echo Speaks v3 + Actions

This is how I’m doing it today.

I was curious if I could just call it from rule machine though.

If you want to execute routines via Rule Machine just get the automationId from the routines list here:
This is in JSON text format and will not look pretty unless you have a JSON formatter extension installed for your browser.
https://alexa.amazon.com/api/behaviors/automations

Pass the automationId as a parameter with with executeRoutine() command on any ES Device

So is nobody else having issues with the 3.5.0.0 code base? None of my Echos work anymore.

No issues here. Use the Device testing menu with the HE Logs open in another tab. Run through the tests and see what errors show up in the logs.

1 Like

I turned on all the logging in the preferences for one of the echos and ran some test and the command runs but nothing outputs to the echo.

I think I'll delete the Amazon app from Echo Speaks and go through the setup again. Maybe something didn't get setup correctly.

I still get this error when saving the Echo Speaks app and Tonesto7 said he will look into it when he gets some time.

1 Like

Mine seems to be working

1 Like

Is there any way of getting the pre 3.5.0.0 code so that I can go back to a prior version and see if it is just the new code base causing the problem or something else?

Is anyone else getting this error when saving the App?

EchoApp (v3.5.0.0) | receiveEventData Error: groovy.lang.MissingPropertyException: No such property: A3F1S88NTZZXS9 for class: java.lang.String

I redid the Heroku app and nothing works still.

I see messages in the logs for the device test commands I an initiating, but nothing comes out of the Echo. Everything has been working great up until this new version.

I do see that error occasionally but it has not affected my Echos. They work as they always have.

I just updated the code and when I deploy the new Heroku app, Heroku says the app name isn’t available. However, I clock on deploy and the app seems to deploy. Should I be concerned that something isn’t installed?

I cannot get the routine working:

I go https://alexa.amazon.com/api/behaviors/automations get my automationId than looks like: amzn1.alexa.automation.c566f6b5-****-499d-861e-************** and use is in Execute routine id but my Spot device doesn't do anything.

Status Update

I've been working on ES the last couple days and have managed to get things working more smoothly.
I just did some testing and discovered that the queue functionality for speech commands is not working so this is why so many people are seeing too many requests and not getting speech.

I'm going to track down the issue today and get an update out ASAP

3 Likes

Release v3.6.0.0 (March 3rd, 2020)

Main App (v3.6.0.0)

  • UPDATED: Device detection metadata is now embedded into the app code to significantly reduce platform load and web calls (over 1 million requests an hour across the ST platform alone).
  • FIXED: Changes to the getDeviceActivity() logic to make it actually work (since the last update broke it), and should update quicker and more accurately.
  • FIXED: WebSocket Events not updating device info (Hubitat Only).

Action App (v3.6.0.0)

  • ADDED: Support added for new playGoodNews command.
  • FIXED: Bugs fixed and optimizations.

Zone App (v3.6.0.0)

  • FIXED: Bugs fixed and optimizations.

Echo Device (v3.6.0.0)

  • ADDED: Good News command that only plays back good news.
  • FIXED: Issue with Queue not working.
  • FIXED: Issue with Queue getting stuck in rare scenarios.
  • FIXED: Device Activity which was ruined after my last update.
  • FIXED: WebSocket Events not updating device info (Hubitat Only).
  • FIXED: Cleaned up device events filling up device history (ST)
  • FIXED: Reduced the number of Amazon web calls per device.
  • REMOVED: Removing the Alexa notifications attribute for now until I rebuild the Notifications features
  • UPDATED: Log cleanups.

WebSocket Device (v3.3.0.0)

  • FIXED: WebSocket Events not working for Device Activity (Hubitat Only).

Server (v2.4.0)

  • ADDED: The server now validates the cookies received from Hubitat and ST apps and if it's invalid will send the command to HE/ST to clear the cookies from the app and devices. This will stop the app from trying to constantly wakeup the server (causing overage of free Heroku services).

  • FIXED: Minor fixes to the Heroku server wake-up logic.

  • FIXED: Other optimizations and fixes.

    Server Notes:

    • Here is the link to help with the update process: Server - Echo SpeaksDocumentation
    • I have updated the server of any user who has added me as a collaborator.
    • Please make sure your cookies are still valid as I have seen a lot of servers who's authentication shows as invalid.
3 Likes

Just a heads up i'm still seeing some rate-limiting of Speech/Announcement Commands that I need to look into...

1 Like

I’ve just updated. Is it necessary to do the oauth steps?

So I have Server 2.3.0 installed, what is the process to update to v2.4? Why can't I find the docs?

Rick

Lol... The link is literally 2 posts up.

Stupid me, I went to the top and started there, didn't see it above

Thanks

1 Like

I just installed Echo Speaks and works fine for the most part.

However, I have an interesting situation. My wife and I are in an Amazon family and in our home, I have 4 echos while she has 2. Her 2 echos also show up under my account because we're in a family. We set it up this way so that we could have 2 Logitech Harmony hubs synced with different Alexa devices (living room hub is controlled by my echo devices while bedroom hub is controlled by hers).

I initially set up Echo Speaks with my account and all 6 echos (my 4 and her 2) showed up. However, Echo Speaks couldn't control her 2 echos (likely because they're registered to her). I got he following error when trying to control them:
Echo (v3.6.0.0) | speechCmd | Status: (400) | Message: Bad Request | Data: [message:Input failed to validate.]

To fix this, I added a 2nd Echo Speaks instance with her account. However, because her accounts also has my Echo devices, I get the following error every time a refresh of the 2nd Echo Speaks occurs:
EchoApp (v3.6.0.0) | receiveEventData Error: java.lang.IllegalArgumentException: A device with the same device network ID exists, Please use a different DNI

Also, the 2nd instance of Echo Speaks doesn't list any devices. However, it has replicated all my Echo devices so I have 2 of my Echo devices. It didn't replicate her devices because I had disabled her devices from my first Echo Speaks instance.

Please advise on how I can fix these errors and prevent multiple of the same Echo devices.

Thanks

This is definitely not a scenario I have thought of before...

Under Manage Devices > Device Detection Preferences > Don't Use the Devices > Select the devices not to use under both of your instances and see if that helps.