[RELEASE] Echo Speaks v3 + Actions

What are you using to send the command?
Enable debug on the specific device and look at the values sent in the command

On this speech device
On this Music Device --- This sets the volume ?

We should only select one of these correct ? Not both

You can send setVolume and a occasionally setRestoreVolumes with almost all commands so they don't have to be separate.
https://tonesto7.github.io/echo-speaks-docs/devicesupport/commands/speech_commands/#setvolumespeakandrestorevolume_message

Pay close attention to the option parameters

Still having my same problem detailed in posting above. Whenever you have some time to dialogue about this, that would be great. Thanks

This is almost always because you are using a shared family account which doesn't work with the API

Thanks for your reply. I had checked with Amazon last week when you asked if I was using that. They told me I was not but also couldn't point me to a page that clearly states what kind of plan I am on. I am going to reach out to them again and try to get a better/clearer answer.

I'll let you know. Thanks

I'm trying to do:

Set volume
Search Amazon music

I was doing it as two separate calls when I got the error. I changed it to use sendSequenceCommand(), do you think that will help?

Also, do you have any way to play the music on loop?

Got any idea why half my routines are missing in that API link?
I can't seem to work out a pattern for which ones are there and which ones aren't.

https://alexa.amazon.com/api/behaviors/automations

Echo Speaks Execute Routine Id works perfectly, wonderful. Its just the Alexa API that is being odd.
Sorry if already answered.

I highly recommend sequence commands. They are sent to amazon as one command and they process the actions on their end...

I wish i had an answer... There API is a mess...

Thanks. What about playing music on a loop? Any support for that?

That's really difficult to add. It's not officially supported by amazon so trying to determine when a song ends is impossible.

I worked it out!

  1. I am in UK, so I need to use .co.uk, rather than .com (but I already knew that much).
  2. There is a limit on the amount of returned results, but this can be overridden with a GET parameter: limit.

So the updated link for me is:
https://alexa.amazon.co.uk/api/behaviors/automations?limit=2000

EDIT: I made some bookmarklets that do this for you.

Also, if it helps anybody, a quick way to search the routine IDs link:

  1. Open the url: https://alexa.amazon.com/api/behaviors/automations?limit=2000
  2. F12 to open developer tools.
  3. Click on Console.
  4. Paste this and press enter:
JSON.parse(document.body.textContent).map(({automationId, name, triggers}) => ({automationId, name, utterance: triggers[0].payload.utterance}))

Or you can filter the results:

JSON.parse(document.body.textContent).map(({automationId, name, triggers}) => ({automationId, name, utterance: triggers[0].payload.utterance})).filter(d => d.name?.match(/text to search for/))

Just use name or utterance at the end there and replace /text to search for/ with whatever you want to find

For just one song? Just yell at Alexa "Loop this" while song is playing. :grinning:

For some reason, Fly Me to the Moon by Frank Sinatra would calm my infant son and put him to sleep so we would get stuck listening to the song 15-20 times. UGH!

1 Like

Update... I just got off the phone with Amazon and we confirmed that I am NOT on a shared family account. Also, since we were on the call we confirmed I have 4 echo dot devices that do show up in my account.

@tonesto7, Given that it's not the 'shared family account' issue, do you have any thoughts on what I can check next?

Much appreciated....

login to https://alexa.amazon.com/ on your computer and then browse to this url https://alexa.amazon.com/api/devices/v2

It will contain all of the device data on your account in a JSON format. If the echos are listed there they shoudl be discovered by the ES

Doesn't work when I'm trying to write a smart alarm clock...

I know. I am frustrated that there is not a way to send a command to Alexa using RM, or in my case Node Red, to make her do something. For example, I want an automation that will open up one of my dashboards on Alexa's Silk browser but you can't send the equivalent of voice commands.

Thanks for the tip to check this. I did as you requested and You've received an Alexa Link does indeed show all the echo Flex's and the Echo Dot in its device section.

I just checked again to make sure nothing looks different in my ES app and it still looks the same:

ES Version and Installed devices

image

Device Detection Preferences

Looking forward to getting this working. What should I check for or verify next?
Thanks...