Alexa + Sonos: How it Works


Userlevel 7
Badge +26
  • Retired Sonos Staff
  • 12372 replies
So you’ve read all about Amazon Alexa working with Sonos and you want to know more. Here’s a rundown of how the integration works.

Your Amazon Alexa devices are listening for you to say the wake word, “Alexa”. When they hear that word, the microphones record what you say and send the audio to the Amazon Alexa cloud to be translated.

That voice line turns into a string of text. The Amazon protocols determine if it’s meant for Amazon Alexa or for a Sonos player. If it’s for Sonos, that text is then sent directly, and securely, over to the Sonos cloud to be turned into a command using our own codes.

Finally, the Sonos intended command goes down to the system.

Want to try it out?

Here are some fun commands to try. I like starting with:

“Alexa, play some salsa in the kitchen.”

This topic has been closed for further comments. You can use the search bar to find a similar topic, or create a new one by clicking Create Topic at the top of the page.

179 replies

If I ask Alexa to start playing music in the bedroom all the Sonos speakers will play. Should it be possible to just start playing on one speaker or do I need to group/ungroup in the app before giving the play command?

Ditto. Is it possible to get Alexa to play in multiple rooms at once?
If I ask Alexa to start playing music in the bedroom all the Sonos speakers will play. Should it be possible to just start playing on one speaker or do I need to group/ungroup in the app before giving the play command?

Ditto. Is it possible to get Alexa to play in multiple rooms at once?


Not via voice. But if you group via the app, you can tell Alexa to play to any of the grouped speakers and all in the group will play. You can also group after issuing the voice command.

Voice grouping is said to be in the works for a future release.
After the app update, my Lutron PICO remote no longer allows me to Play/Pause music, Volume up/down and toggle favorites work, I unpaired, and repaired the remote with no luck, anyone else with a remote able to confirm if this is the case for them?
After waiting over a year i have to say this is a letdown. I dont understand how Sonos can spend a over a year and they have NOTHING for local libraries. A quick simple search shows others have done it in much less time, without breaking anything else and without being affiliated with Sonos.

https://github.com/rgraciano/echo-sonos

https://emby.media/community/index.php?/forum/174-amazon-alexa/

I'll put this down on my list as a FAIL.
Pardon me for asking a question that may have been answered.

I notice the with Dot, Sonos will only work in the few countries where Amazon has released Alexa.

Does this limitation apply to Sonos One as well?

And seeing how alike the One is to the play 1, are the heard of music sound quality improvements carried over to installed play 1 units?

And Bruce, many thanks for the PM heads up!
Badge +2
I listen to music via RadioTunes, which is not a music service listed by Sonos as is Pandora, etc. My RadioTunes stations were added via the "Manage" + "Add radio station." These stations wind up in the "My Radio Stations" menu. Will the Dot be able to call up these added stations, or do commands work only with the built-in music sources provided by Sonos?
Kumar, you're welcome :)

And yes, I'd assume since it depends on the operation of the Amazon cloud to interpret the requests, it would be only working in the countries that have Alexa supported.
I listen to music via RadioTunes, which is not a music service listed by Sonos as is Pandora, etc. My RadioTunes stations were added via the "Manage" + "Add radio station." These stations wind up in the "My Radio Stations" menu. Will the Dot be able to call up these added stations, or do commands work only with the built-in music sources provided by Sonos?

No, play cannot be initiated via voice control for unsupported services. However, once you initiate playback via the Sonos app, basic play/pause/skip/volume controls work via voice for any service and or source.
Kumar, you're welcome :)

And yes, I'd assume since it depends on the operation of the Amazon cloud to interpret the requests, it would be only working in the countries that have Alexa supported.

Amazon has just announced in India that echo and dot will be available in India starting October 31 on the Indian site.

Hopefully Sonos will work with Alexa in India automatically then and I won't have to wait for 8.1.

Ryan? Also your response to the question of sound quality. Is Sonos One identical to play 1 running on 8.0?
Alexa only seems to work with my Play 1’s and not Play 3 or Connects! It will play and pause but when I ask for specific music on those speakers it just plays whatever was last playing through the sonos app. I noted that only the Play 1 speakers are listed as devices under settings in the Alexa app
Badge
What's really needed now more than ever is the ability to add Sonos speakers to more than one room, or create permanent addressable groups.

For example I should be able to have a stereo pair in my Living Room, a single speaker in my kitchen and another in my bedroom. I should be able to say Alexa play music in entire house (or something similar) and have all 4 speakers play.
When I ask Alexa to change the speakers volume it seems to be that the „steps“ are to large and the command „set to Volume x (1-10)“ doesn‘t work either.
Userlevel 5
Badge +3
What's really needed now more than ever is the ability to add Sonos speakers to more than one room, or create permanent addressable groups.

For example I should be able to have a stereo pair in my Living Room, a single speaker in my kitchen and another in my bedroom. I should be able to say Alexa play music in entire house (or something similar) and have all 4 speakers play.


If you want to group ungroup rooms etc, then you will need to follow the guides that have been published in the past by these two people:
https://github.com/rgraciano/echo-sonos
https://github.com/jishi/node-sonos-http-api

Requires some work to set up, but once done you will have all the functionality you want. Grouping, ungrouping, spotify etc.

I am quite astounded that the multi million dollar companies Amazon and Sonos spent a year in development and announced with much fanfare, a system that has only half the functionality of the one above which was put together by amateur programmers and released over a year ago.

This isnt some form of "entitlement" either, its just that with amateur programming able to deliver the functionality of grouping and ungrouping, accessing local music and spotify, I was obviously expecting the release from in house professionals to match the existing amateur functionality in a slicker more straight forward setup. How very wrong I was.

Ill be back to setting up the systems above again, because they offer MUCH more functionality than this official release.

Heck, Amazon and Sonos could have just bought this setup off the amateur programmer, wrapped it in their own systems to avoid the need for people to set it up themselves, delivered lots more functionality and released it six months ago. Did they even bother to look what people were currently doing?
With the new Sonos skill, can I include a Sonos speaker in an Alexa multi room group along with echo devices and play music across them all I.e. does the Sonos speaker appear as an emulated echo speaker? Thx
Userlevel 2
Badge +3
With the new Sonos skill, can I include a Sonos speaker in an Alexa multi room group along with echo devices and play music across them all I.e. does the Sonos speaker appear as an emulated echo speaker? Thx

From what I saw from my alexa app, the Sonos doesn't appear on the Alexa multiroom group, though the Sonos system(room name), appeers on the Alexa Devices.
So I assume initially, it cannot be group to an alexa multiroom group along side with the echo devices.

hope this helps
Userlevel 4
Badge +3
What's really needed now more than ever is the ability to add Sonos speakers to more than one room, or create permanent addressable groups.

For example I should be able to have a stereo pair in my Living Room, a single speaker in my kitchen and another in my bedroom. I should be able to say Alexa play music in entire house (or something similar) and have all 4 speakers play.


If you want to group ungroup rooms etc, then you will need to follow the guides that have been published in the past by these two people:
https://github.com/rgraciano/echo-sonos
https://github.com/jishi/node-sonos-http-api

Requires some work to set up, but once done you will have all the functionality you want. Grouping, ungrouping, spotify etc.

I am quite astounded that the multi million dollar companies Amazon and Sonos spent a year in development and announced with much fanfare, a system that has only half the functionality of the one above which was put together by amateur programmers and released over a year ago.

This isnt some form of "entitlement" either, its just that with amateur programming able to deliver the functionality of grouping and ungrouping, accessing local music and spotify, I was obviously expecting the release from in house professionals to match the existing amateur functionality in a slicker more straight forward setup. How very wrong I was.

Ill be back to setting up the systems above again, because they offer MUCH more functionality than this official release.

Heck, Amazon and Sonos could have just bought this setup off the amateur programmer, wrapped it in their own systems to avoid the need for people to set it up themselves, delivered lots more functionality and released it six months ago. Did they even bother to look what people were currently doing?



Did this amateur code also allow Alexa to work with users music libraries as well? Currently that is a pathetic deal breaker for me with the new Alexa feature
Userlevel 4
Badge +3
I start play of a playlist from the controller app, and then use the voice controls for everything else. Louder, softer, pause, resume, skip, repeat all work.

Wow amazing. Whole point to me was to be able to ask Alexa to play music from my artists. If you have to use an app to start the music why would I bother to it use the app and use my voice to control it?
Userlevel 4
Badge +3
I listen to music via RadioTunes, which is not a music service listed by Sonos as is Pandora, etc. My RadioTunes stations were added via the "Manage" + "Add radio station." These stations wind up in the "My Radio Stations" menu. Will the Dot be able to call up these added stations, or do commands work only with the built-in music sources provided by Sonos?

No, play cannot be initiated via voice control for unsupported services. However, once you initiate playback via the Sonos app, basic play/pause/skip/volume controls work via voice for any service and or source.
Userlevel 5
Badge +3

Did this amateur code also allow Alexa to work with users music libraries as well? Currently that is a pathetic deal breaker for me with the new Alexa feature


Yes it does.

Full current list of abilities from this github code is below.

(read and then wonder as I do why giants like Amazon and Sonos couldn't have this in their official release after working on it for a year - when anyone who follows this code can have it working in about an hour or so).

List of features below taken from here: https://github.com/rgraciano/echo-sonos


Music Services

echo-sonos supports Apple Music, Spotify, Deezer, Deezer Elite, Sonos playlists, Sonos favorites, SiriusXM, the local Sonos music library, and configurable node-sonos-http-api presets.

Sonos Playlists: "Alexa, ask sonos to start playlist MY PLAYLIST in the ROOM"

Sonos Favorites: "Alexa, ask sonos to play favorite MY FAVORITE in the ROOM"

Music services: "Alexa, ask sonos to change music to SERVICE" (SERVICE = Presets, Library, Apple, Spotify, Deezer, or Elite)

SiriusXM: "Alexa, play SiriusXM channel CHANNEL in the ROOM"

SiriusXM: "Alexa, play SiriusXM station STATION in the ROOM"

node-sonos-http-api Presets: "Alexa, ask sonos to play Rock" (queues a node-sonos-http-api macro that sets up speaker/volume/service configuration)

Sonos Rooms and Groups

echo-sonos can default to controlling a specific room, to save you some talking. It will also remember the last room that was used in a normal command, and use that room in future commands.

Change room: "Alexa, ask sonos to change room to ROOM"
Change room and service: "Alexa, ask sonos to change room to ROOM and music to SERVICE"
Add room to the group: "Alexa, ask sonos to join NEW_ROOM to the ROOM"
Remove room from the group: "Alexa, ask sonos to ungroup ROOM"

Playing Music

Play songs from an artist: "Alexa, ask sonos to play ARTIST NAME in the ROOM"
Play songs from an album: "Alexa, ask sonos to play album ALBUM NAME in the ROOM"
Play a song: "Alexa, ask sonos to play the song SONG NAME in the ROOM"
Play "radio" songs like this artist: "Alexa, ask sonos to play ARTIST NAME radio in the ROOM"
Play more "radio" songs like this song: "Alexa, play more songs by this artist in the ROOM"
Play more "radio" songs like this track: "Alexa, play more songs like this in the ROOM"
Next: "Alexa, ask sonos go to the next track in the ROOM"
Previous: "Alexa, ask sonos to go back in the ROOM"
Clear queue: "Alexa, ask sonos to clear the queue in the ROOM"
What's playing: "Alexa, ask sonos what's playing in the ROOM"

Controlling Music

Pause: "Alexa, ask sonos to pause in the ROOM"
Pause all: "Alexa, ask sonos to pause all"
Resume: "Alexa, ask sonos to resume in the ROOM"
Resume all: "Alexa, ask sonos to resume all"
Mute: "Alexa, ask sonos to mute in the ROOM"
Unmute: "Alexa, ask sonos to unmute in the ROOM"
Repeat: "Alexa, ask sonos to turn repeat [on,off] in the ROOM"
Shuffle: "Alexa, ask sonos to turn shuffle [on,off] in the ROOM"
Crossfade: "Alexa, ask sonos to turn crossfade [on,off] in the ROOM"
Volume up or down (single room): "Alexa, ask sonos to turn it [up,down] in the ROOM"
Volume up or down (all in group): "Alexa, ask sonos to turn it [up,down] in the ROOM group"
Set volume (single room): "Alexa, ask sonos to change the volume to 22 in the ROOM"
Set volume (all in group): "Alexa, ask sonos to change the volume to 22 in the ROOM group"
With the new Sonos skill, can I include a Sonos speaker in an Alexa multi room group along with echo devices and play music across them all I.e. does the Sonos speaker appear as an emulated echo speaker? Thx

From what I saw from my alexa app, the Sonos doesn't appear on the Alexa multiroom group, though the Sonos system(room name), appeers on the Alexa Devices.
So I assume initially, it cannot be group to an alexa multiroom group along side with the echo devices.

hope this helps


Yeah, it seems that way. Strange in one way to not have implemented it as an emulated "echo speaker" and allow mix and match. Conversely, I can see why they've maybe treated Sonos as a smart home entertainment device and not just speakers, although the current beta skill has a very heavy flavour of the latter

Thanks
Userlevel 3
Badge +2
I'd like to see grouping added, but also the ability to ask alexa to switch back to tv(for people with playbar) when you're finished listening to music. At the minute I can ask alexa to play music in my living room but then when I want to watch the tv again, I still have to open the app to switch the audio back to tv, which means I still end up using the app.
Userlevel 4
Badge +3

Did this amateur code also allow Alexa to work with users music libraries as well? Currently that is a pathetic deal breaker for me with the new Alexa feature


Yes it does.

Full current list of abilities from this github code is below.

(read and then wonder as I do why giants like Amazon and Sonos couldn't have this in their official release after working on it for a year - when anyone who follows this code can have it working in about an hour or so).

List of features below taken from here: https://github.com/rgraciano/echo-sonos


Music Services

echo-sonos supports Apple Music, Spotify, Deezer, Deezer Elite, Sonos playlists, Sonos favorites, SiriusXM, the local Sonos music library, and configurable node-sonos-http-api presets.

Sonos Playlists: "Alexa, ask sonos to start playlist MY PLAYLIST in the ROOM"

Sonos Favorites: "Alexa, ask sonos to play favorite MY FAVORITE in the ROOM"

Music services: "Alexa, ask sonos to change music to SERVICE" (SERVICE = Presets, Library, Apple, Spotify, Deezer, or Elite)

SiriusXM: "Alexa, play SiriusXM channel CHANNEL in the ROOM"

SiriusXM: "Alexa, play SiriusXM station STATION in the ROOM"

node-sonos-http-api Presets: "Alexa, ask sonos to play Rock" (queues a node-sonos-http-api macro that sets up speaker/volume/service configuration)

Sonos Rooms and Groups

echo-sonos can default to controlling a specific room, to save you some talking. It will also remember the last room that was used in a normal command, and use that room in future commands.

Change room: "Alexa, ask sonos to change room to ROOM"
Change room and service: "Alexa, ask sonos to change room to ROOM and music to SERVICE"
Add room to the group: "Alexa, ask sonos to join NEW_ROOM to the ROOM"
Remove room from the group: "Alexa, ask sonos to ungroup ROOM"

Playing Music

Play songs from an artist: "Alexa, ask sonos to play ARTIST NAME in the ROOM"
Play songs from an album: "Alexa, ask sonos to play album ALBUM NAME in the ROOM"
Play a song: "Alexa, ask sonos to play the song SONG NAME in the ROOM"
Play "radio" songs like this artist: "Alexa, ask sonos to play ARTIST NAME radio in the ROOM"
Play more "radio" songs like this song: "Alexa, play more songs by this artist in the ROOM"
Play more "radio" songs like this track: "Alexa, play more songs like this in the ROOM"
Next: "Alexa, ask sonos go to the next track in the ROOM"
Previous: "Alexa, ask sonos to go back in the ROOM"
Clear queue: "Alexa, ask sonos to clear the queue in the ROOM"
What's playing: "Alexa, ask sonos what's playing in the ROOM"

Controlling Music

Pause: "Alexa, ask sonos to pause in the ROOM"
Pause all: "Alexa, ask sonos to pause all"
Resume: "Alexa, ask sonos to resume in the ROOM"
Resume all: "Alexa, ask sonos to resume all"
Mute: "Alexa, ask sonos to mute in the ROOM"
Unmute: "Alexa, ask sonos to unmute in the ROOM"
Repeat: "Alexa, ask sonos to turn repeat [on,off] in the ROOM"
Shuffle: "Alexa, ask sonos to turn shuffle [on,off] in the ROOM"
Crossfade: "Alexa, ask sonos to turn crossfade [on,off] in the ROOM"
Volume up or down (single room): "Alexa, ask sonos to turn it [up,down] in the ROOM"
Volume up or down (all in group): "Alexa, ask sonos to turn it [up,down] in the ROOM group"
Set volume (single room): "Alexa, ask sonos to change the volume to 22 in the ROOM"
Set volume (all in group): "Alexa, ask sonos to change the volume to 22 in the ROOM group"


Wow, that's ridiculous that sonos can't even match that feature set after 18 months of trying. Maybe amazon have deliberately crippled the feature set to make it less compelling than their devices
Badge
I'm confused. I have the newer play5s. Both grouped as Living Room. I updated my app. I updated my Sonos system. I even scanned devices in Alexa app (but not sure if Sonos should show up there or not (it does not). I say things like "Alexa, play jazz in the living room" and she says things like "I cannot do that in the living room" and other versions of "no".

I have Hue bulbs that are grouped as Living Room too. Any ideas what I should be saying? How I should be saying it? Or why I am having problems?


See my post here: https://en.community.sonos.com/amazon-alexa-and-sonos-229102/using-sonos-alexa-and-smart-bulbs-in-a-room-all-with-the-same-name-6791525
As I mentioned on another post:

I had been waiting for this for so long and it really would had made my day.
But I asked Alexa to play Wonderwall on Main Room or Play AeroSmith in Main Room and all it does is play whatever was playing on my Deezer. Then I made sure to make Amazon Music my default on the Echo app.
I asked the same commands and now it just plays whatever song was playing or had been playing on Amazon Music.
Serious Blue Balls.
And this had been in beta out on Reddit all this time and it works like this?
Seriously?
As I mentioned on another post:

I had been waiting for this for so long and it really would had made my day.
But I asked Alexa to play Wonderwall on Main Room or Play AeroSmith in Main Room and all it does is play whatever was playing on my Deezer. Then I made sure to make Amazon Music my default on the Echo app.
I asked the same commands and now it just plays whatever song was playing or had been playing on Amazon Music.
Serious Blue Balls.
And this had been in beta out on Reddit all this time and it works like this?
Seriously WTF?


That is not how it is supposed to work, obviously. So how about instead of blasting out a vulgar tirade, perhaps you could submit a diagnostic and then list the reference number here so a Sonos tech can sort it out. That would be far more helpful to both you and everyone else.