[RELEASE] Echo Speaks V4

Playing Sounds

I'm sure folks have even more information, but here are some basics I have found:

Amazon has an extensive set of sounds available for Alexa.

[Alexa Skills Kit Sound Library | Alexa Skills Kit]

This can be played easily with the proper string into a speak() command

 <audio src="soundbank://soundlibrary/sports/crowds/crowds_12"/>

can be sent to a speak command, to play the crowds_12 sound

Note: ES devices have a command playSoundByName(), that has a more limited set of sounds to choose from. You will have a larger set of sounds by using speak() commands with strings like above and should have access to the full Alexa library listed above.

2 Likes

Is there a command to get the selected echo device (streaming music from Amazon) to go to the next song?

nextTrack() would be the one I’d try

1 Like

I've been using the text as a voice do some actions. For example shuffle mode, outside of the built in music services doesn't work right. So I created two commands:

  • turn on shuffle mode
  • turn off shuffle mode

I have done the same for playlists from my home nas:

  • Ask Audio Station to play playlist 1990 to 94

What is great now is that I have a dashboard per echo to play music, I have a few more presets to work on but no more voice commands need to disturb my confernece calls.

1 Like

How do I get multiple Echo's to announce at the same time in webcore?

If the message is short

use parallelSpeak(message) on each device (close together in time)

after you issue the last device, issue noOp() once to any of the devices (does not need to be all of them)

2 Likes

One of my echo dots is used in a basic dashboard implementation as just a music player tile. The tile does not update with the currently playing song, or the "status" that it is playing (pause button appears) or stopped (play button appears). I have only noticed this for about 2 weeks. Volume changes do seem to sync.

On the same dashboard is a tile for one of the other echo dots in the house, which updates fine. Trying to figure out how to troubleshoot (is there a device property I should look for), or resolve?

I suggest turn on logs for the device in question, and for the ES main app.

You can post them via PM so you don't share private information too much.

@nh.schottfam
Thank you. I figure those logs will be most useful with me trying to test playing music, so they'll reflect what is happening at the time. I won't be able to try that until this evening.

Worked perfectly. Thanks.

Is there a tag that can be used in the speech text that tells an Echo Show device to DISPLAY the text rather than speaking it? Something like the tag that tells it to but instead displays the text on the screen with speaking sound?

The only way to display text is to send as an announcement

Yes, announcements display the text but they also speak. I'm asking if there is a way to display text without speaking. I tried setting the volume to 0, but something forces announcements to speak at 10% if volume was set to 0.

I'd like to be able to display text without any sound.

@tonesto7

2 Questions:

  1. Attempting to play a sound via Speak. When I put "audio src="soundbank://soundlibrary/alarms/beeps_and_bloops/bell_03"/" (replace quotes with <> as appropriate) in the speak field for my Echo Show or my 4th gen Echo Dot, I just get a announcement beep.

  2. Attempting to play a sound stored on one of my hubs. When I put in the URI c-5a/local/Computer_Magic-Microsift-1901299923.mp3, (changing to ip address) it states it can't find the file.

Any help is appreciated.
Alan

I noticed this morning that my actions controlling pistons is broken. I am attempting to recreate them but get this error...

Can you get me the line number under the logs?

Greetings,

I have been using Echo Speaks to let me know if the temperature or humidity is too high or low respectively. I have the temperature set at ABOVE 74 and the humidity set at BELOW 64. I see that there is also a BETWEEN option, but what I really need is a NOT BETWEEN option. I would like to be notified if the humidity is NOT BETWEEN 64-70 or the temperature is NOT BETWEEN 66-74.

Thank you,

~Jerry

Good suggestion.

Will need @tonesto7 to comment.

Just installed and so far it works great!

I have some code that runs on an RPI that deals with legacy (X10) devices and pool automation. I found a script on the web that lets the code send TTS messages to echos, but it's been a real headache keeping cookies valid and/or using two stage authentication. If works for a while, then doesn't. Seems Amazon decides to throw up a CAPTCHA occasionally that requires a human to do the authentication.

Does Echo Speaks V4 avoid this issue?

Is there an interface available that can be accessed to interface to Echo devices for TTS from other places (eg, code running on an rpi)?

I've seen this a few times (twice within 26 hours) in my logs. the test functions from Echo Speaks all seem to work. Could this just be my crummy internet connection? ( I'm using ATT twisted pair, like DSL)

app:3022021-06-01 06:54:31.084 am errorEchoApp (v4.1.7.0) | DnDResp Exception: java.lang.Exception: No response data exists for async request

app:3022021-06-01 06:54:31.037 am errorEchoApp (v4.1.7.0) | getBluetoothResp Exception: java.lang.Exception: No response data exists for async request

app:3022021-06-01 06:54:31.032 am errorEchoApp (v4.1.7.0) | getBluetoothResp | Stack Trace: java.lang.Exception: No response data exists for async request at user_app_tonesto7_Echo_Speaks_212.getBluetoothResp(user_app_tonesto7_Echo_Speaks_212.groovy:2625)

app:3022021-06-01 06:54:31.017 am errorEchoApp (v4.1.7.0) | DnDResp | Stack Trace: java.lang.Exception: No response data exists for async request at user_app_tonesto7_Echo_Speaks_212.DnDResp(user_app_tonesto7_Echo_Speaks_212.groovy:2779)

app:3022021-06-01 06:54:30.929 am warn EchoApp (v4.1.7.0) | 408 getBluetoothResp

app:3022021-06-01 06:54:30.928 am warn EchoApp (v4.1.7.0) | 408 DnDResp

app:3022021-05-31 04:59:33.609 am info EchoApp (v4.1.7.0) | running initialize...

app:3022021-05-31 04:59:33.604 am info EchoApp (v4.1.7.0) | sendMsg: Message Skipped Notification not configured or During Quiet Time (Echo Speaks Data Refresh Issue: The Echo Speaks app has NOT received any device data from Amazon in the last (13840) seconds. There maybe an issue network access.)

app:3022021-05-31 04:59:33.537 am warn EchoApp (v4.1.7.0) | The Echo Speaks app has NOT received any device data from Amazon in the last (13840) seconds. There maybe an issue network access.

app:3022021-05-31 04:09:11.748 am errorEchoApp (v4.1.7.0) | echoDevicesResponse Exception: java.lang.IllegalArgumentException: No json exists for response

app:3022021-05-31 04:09:11.739 am errorEchoApp (v4.1.7.0) | echoDevicesResponse | Stack Trace: java.lang.IllegalArgumentException: No json exists for response at user_app_tonesto7_Echo_Speaks_212.echoDevicesResponse(user_app_tonesto7_Echo_Speaks_212.groovy:3276)

app:3022021-05-31 04:09:11.616 am warn EchoApp (v4.1.7.0) | 408 [execDt:1622459331173]

app:3022021-05-30 10:35:58.258 pm info EchoApp (v4.1.7.0) | running initialize...

app:3022021-05-30 10:35:48.086 pm info EchoApp (v4.1.7.0) | Cookie data was updated | Reinitializing App... | in 10 seconds...

app:3022021-05-30 10:35:47.521 pm info EchoApp (v4.1.7.0) | Amazon Cookie Refresh Completed | Process Time: (1611ms)

--- Loading Past Logs... ---

It seems to finally settle down.
2021-06-01 07:00:25.272 am infoBulb 6 was turned off [digital]

dev:3802021-06-01 06:55:10.353 am info Socket (v4.1.7.0) | WebSocket Connection Established...

dev:3802021-06-01 06:55:03.839 am info Socket (v4.1.7.0) | Alexa WS Connection is Open

dev:3802021-06-01 06:55:01.042 am info Socket (v4.1.7.0) | close() called

dev:3802021-06-01 06:55:00.007 am info Socket (v4.1.7.0) | initialize() called

dev:3802021-06-01 06:54:57.916 am info Socket (v4.1.7.0) | reconnectWebSocket() called delay: 2

dev:3802021-06-01 06:54:57.805 am warn Socket (v4.1.7.0) | Websocket Failure Message: failure: Failed to connect to dp-gw-na-js.amazon.com/10.0.0.1:443

dev:3802021-06-01 06:54:55.679 am info Socket (v4.1.7.0) | close() called

dev:3802021-06-01 06:54:54.660 am info Socket (v4.1.7.0) | initialize() called

dev:3802021-06-01 06:54:52.641 am info Socket (v4.1.7.0) | reconnectWebSocket() called delay: 2

dev:3802021-06-01 06:54:52.530 am warn Socket (v4.1.7.0) | Websocket Failure Message: failure: Failed to connect to dp-gw-na-js.amazon.com/10.0.0.1:443

dev:3802021-06-01 06:54:50.379 am info Socket (v4.1.7.0) | close() called

dev:3802021-06-01 06:54:49.357 am info Socket (v4.1.7.0) | initialize() called

dev:3802021-06-01 06:54:47.325 am info Socket (v4.1.7.0) | reconnectWebSocket() called delay: 2

dev:3802021-06-01 06:54:47.221 am warn Socket (v4.1.7.0) | Websocket Failure Message: failure: Failed to connect to dp-gw-na-js.amazon.com/10.0.0.1:443

dev:3802021-06-01 06:54:45.065 am info Socket (v4.1.7.0) | close() called

dev:3802021-06-01 06:54:44.033 am info Socket (v4.1.7.0) | initialize() called

dev:3802021-06-01 06:54:42.002 am info Socket (v4.1.7.0) | reconnectWebSocket() called delay: 2

dev:3802021-06-01 06:54:41.905 am warn Socket (v4.1.7.0) | Websocket Failure Message: failure: Failed to connect to dp-gw-na-js.amazon.com/10.0.0.1:443

dev:3802021-06-01 06:54:39.766 am info Socket (v4.1.7.0) | close() called

dev:3802021-06-01 06:54:38.748 am info Socket (v4.1.7.0) | initialize() called

dev:3802021-06-01 06:54:36.714 am info Socket (v4.1.7.0) | reconnectWebSocket() called delay: 2

dev:3802021-06-01 06:54:36.614 am warn Socket (v4.1.7.0) | Websocket Failure Message: failure: Failed to connect to dp-gw-na-js.amazon.com/10.0.0.1:443

dev:3802021-06-01 06:54:34.437 am info Socket (v4.1.7.0) | close() called

dev:3802021-06-01 06:54:33.404 am info Socket (v4.1.7.0) | initialize() called

dev:3802021-06-01 06:54:31.364 am info Socket (v4.1.7.0) | reconnectWebSocket() called delay: 2

dev:3802021-06-01 06:54:31.260 am warn Socket (v4.1.7.0) | Websocket Failure Message: failure: Failed to connect to dp-gw-na-js.amazon.com/10.0.0.1:443

app:3022021-06-01 06:54:31.084 am errorEchoApp (v4.1.7.0) | DnDResp Exception: java.lang.Exception: No response data exists for async request

app:3022021-06-01 06:54:31.037 am errorEchoApp (v4.1.7.0) | getBluetoothResp Exception: java.lang.Exception: No response data exists for async request

app:3022021-06-01 06:54:31.032 am errorEchoApp (v4.1.7.0) | getBluetoothResp | Stack Trace: java.lang.Exception: No response data exists for async request at user_app_tonesto7_Echo_Speaks_212.getBluetoothResp(user_app_tonesto7_Echo_Speaks_212.groovy:2625)

app:3022021-06-01 06:54:31.017 am errorEchoApp (v4.1.7.0) | DnDResp | Stack Trace: java.lang.Exception: No response data exists for async request at user_app_tonesto7_Echo_Speaks_212.DnDResp(user_app_tonesto7_Echo_Speaks_212.groovy:2779)

app:3022021-06-01 06:54:30.929 am warn EchoApp (v4.1.7.0) | 408 getBluetoothResp

app:3022021-06-01 06:54:30.928 am warn EchoApp (v4.1.7.0) | 408 DnDResp

dev:3802021-06-01 06:54:29.122 am info Socket (v4.1.7.0) | close() called

dev:3802021-06-01 06:54:28.100 am info Socket (v4.1.7.0) | initialize() called

dev:3802021-06-01 06:54:26.042 am info Socket (v4.1.7.0) | reconnectWebSocket() called delay: 2

dev:3802021-06-01 06:54:25.891 am warn Socket (v4.1.7.0) | Websocket Failure Message: failure: dp-gw-na-js.amazon.com

dev:3802021-06-01 06:54:23.760 am info Socket (v4.1.7.0) | close() called

dev:3802021-06-01 06:54:22.730 am info Socket (v4.1.7.0) | initialize() called

dev:3802021-06-01 06:54:20.680 am info Socket (v4.1.7.0) | reconnectWebSocket() called delay: 2

dev:3802021-06-01 06:54:20.644 am info Socket (v4.1.7.0) | reconnectWebSocket() called delay: 2

dev:3802021-06-01 06:54:20.465 am warn Socket (v4.1.7.0) | Websocket Failure Message: failure: dp-gw-na-js.amazon.com

dev:3802021-06-01 06:54:20.465 am warn Socket (v4.1.7.0) | Websocket Failure Message: failure: dp-gw-na-js.amazon.com: Name or service not known

app:3032021-06-01 06:54:18.792 am errorError making Call to Alexa message gateway: null

dev:3802021-06-01 06:54:12.721 am info Socket (v4.1.7.0) | close() called

dev:3802021-06-01 06:54:11.697 am info Socket (v4.1.7.0) | initialize() called

dev:3802021-06-01 06:54:11.678 am info Socket (v4.1.7.0) | updated() called

dev:3962021-06-01 06:53:58.261 am infoBulb 6 was turned on [digital]

dev:3802021-06-01 06:53:58.226 am info Socket (v4.1.7.0) | close() called

dev:3802021-06-01 06:53:57.191 am info Socket (v4.1.7.0) | initialize() called

dev:3802021-06-01 06:53:55.087 am info Socket (v4.1.7.0) | reconnectWebSocket() called delay: 2

dev:3802021-06-01 06:53:54.781 am warn Socket (v4.1.7.0) | Websocket Failure Message: failure: sent ping but didn't receive pong within 45000ms (after 2070 successful ping/pongs)