Alexa + Sonos: How it Works



Show first post
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

Ryan? Also your response to the question of sound quality. Is Sonos One identical to play 1 running on 8.0?
Generally speaking, the Sonos One has just about the same quality as the PLAY:1. I've heard from plenty of people that the Sonos One has a bit more bass to it, but I think that's going to have come down to personal testing. They both sound great.

Thanks for that update.
My other question:
Amazon will launch Alexa in India and sell echo etc via the Indian website from October 31.
Thereafter will it directly work with my Sonos kit, or is there some Sonos action also needed? If so, how long will it take Sonos to do what it will take to work with Alexa?
Userlevel 2
Badge +5
Works great for me so far.

Wish list -
1 be able to set a particular dot(etc) to default to a sonos group so you can skip the location command (not sure if possible)
2 be able to play from local library
+1 On the list of people disappointed by the lack of local music support. That's a huge hole that I hope Sonos can plug soon. I already maintain two sets of my music - flac on a NAS for highest quality and a second version for my Apple devices via iTunes match. Now I'd need to upload yet another set to Amazon (or wherever) in order for the Alexa skill to work? ?☹️
Userlevel 7
Badge +26
Ryan? Also your response to the question of sound quality. Is Sonos One identical to play 1 running on 8.0?
Generally speaking, the Sonos One has just about the same quality as the PLAY:1. I've heard from plenty of people that the Sonos One has a bit more bass to it, but I think that's going to have come down to personal testing. They both sound great.
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.
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?
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
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
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.
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 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"
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 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
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 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
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 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?
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.
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.
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
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?
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.
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?
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!