Getting Alexa to send sounds using Node Red

I am using appelstrudel version of node-red-contrib-alexa-remote2 Alexa Remote and it mostly works fine - I’ve been transitioning over some flows from HomeAssistant and Alexa Media Player and overall I’ve managed to eliminate that

I have some Halloween routines which use sounds from the Alexa Skills Kit Sound Library
and some of these exist as dropdown options in the palette

e.g. Creepy Door

[{"id":"ce0194ebdc515f9c","type":"alexa-remote-routine","z":"820a07600cb5dbdf","name":"Creepy Door","account":"c494972916da5668","routineNode":{"type":"sound","payload":{"sound":{"type":"str","value":"horror_10"},"devices":["G0922H0730250AMX"]}},"x":990,"y":180,"wires":[[]]},{"id":"c494972916da5668","type":"alexa-remote-account","name":"Alexa Account","authMethod":"proxy","proxyOwnIp":"192.168.1.125","proxyPort":"3456","cookieFile":"/homeassistant/node-red/alexa-auth.txt","refreshInterval":"3","alexaServiceHost":"alexa.amazon.co.uk","pushDispatchHost":"","amazonPage":"amazon.co.uk","acceptLanguage":"en-UK","onKeywordInLanguage":"on","userAgent":"","usePushConnection":"on","autoInit":"on","autoQueryActivityOnTrigger":"on"}]

Some however don’t exist.
I’ve tried every version I can of getting them to work - copying the naming from if i change the field on an existing one, speaking SSML from the Amazon docs

<speak>
  This is Alexa's regular speech, followed by the sound effect named Bear Groan Roar (1).
  <audio src='soundbank://soundlibrary/animals/amzn_sfx_bear_groan_roar_01'/>
</speak>

etc.

The SSML works, EXCEPT the sound effects that I want - only the standard speech comes across

Does anyone know how to make this work?!

Do you want speech with the sound? Chime tts combines sounds with speech. That maybe a work around.

Actually I’m just looking for the sounds on their own - I think that would need Alexa Media Player tho, which I’ve been trying to eliminate following recent issues

It looks like it can be done using the notify action instead of tts.

https://community.home-assistant.io/t/alexa-media-play-sounds-more-sounds/216914/22

I’m sorry I know you’re trying to help, but you’re missing the key point of the post - I was using that way previously but do not wish to use Alexa Media Player which the route you are directing to is using

Per the bits quoted below - I’m trying to use the nodered route now to avoid this integration

I am using appelstrudel version of node-red-contrib-alexa-remote2 Alexa Remote and it mostly works fine - I’ve been transitioning over some flows from HomeAssistant and Alexa Media Player and overall I’ve managed to eliminate that

I think that would need Alexa Media Player tho, which I’ve been trying to eliminate following recent issues

Sorry, I did not get the impression that you wanted to completely remove alexa from HA and only use NR. If you look through the issues of applestrudle you will see this closed thread.

https://github.com/bbindreiter/node-red-contrib-alexa-remote2-applestrudel/issues/18#issuecomment-945947648

Which refers back to an open issue from the non applestruddle version of the node. This issue has been open since 2019.

https://github.com/586837r/node-red-contrib-alexa-remote2/issues/17

Edit. you could likely find similar downloadable ringtones, store them locally and play them back. They would need to be stored in www so they can be accessed through an http address.

1 Like

GENIUS!
By digging around from that github link I managed to find the solution…

Turns out the SSML dropdown doesn’t work, or at least not as expected. Dropping it in Regular works tho :slight_smile:

image

[{"id":"59ba513a343af47a","type":"inject","z":"820a07600cb5dbdf","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":1280,"y":300,"wires":[["eb435b50e218bc14"]]},{"id":"eb435b50e218bc14","type":"alexa-remote-routine","z":"820a07600cb5dbdf","name":"Study Test Thunder","account":"c494972916da5668","routineNode":{"type":"speak","payload":{"type":"regular","text":{"type":"str","value":"<speak>\t<audio src=\"soundbank://soundlibrary/weather/thunder/thunder_10\"/></speak>"},"devices":["G090XG0894221VHG"]}},"x":1470,"y":300,"wires":[[]]},{"id":"c494972916da5668","type":"alexa-remote-account","name":"Alexa Account","authMethod":"proxy","proxyOwnIp":"192.168.1.125","proxyPort":"3456","cookieFile":"/homeassistant/node-red/alexa-auth.txt","refreshInterval":"3","alexaServiceHost":"alexa.amazon.co.uk","pushDispatchHost":"","amazonPage":"amazon.co.uk","acceptLanguage":"en-UK","onKeywordInLanguage":"on","userAgent":"","usePushConnection":"on","autoInit":"on","autoQueryActivityOnTrigger":"on"}]