Skip to main content
Contributor I
October 5, 2017

Sonos, Alexa and local NAS stored music

  • October 5, 2017
  • 77 replies
  • 20270 views
I am impressed with the Alexa / Sonos release yesterday and am pleased to see that it will develop. I know two other people with SONOS systems, and we all play music from a local NAS. Is this possible using Alexa voice control?
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.

77 replies

Lyricist I
October 5, 2017
As far as I can see from what's been said in previous threads the Alexa App can't access your local files only stream online content. This may change but for me right now Sonos APP is disabled, useless as I don't stream anything.
jgatie
October 5, 2017
You cannot initialize play from the Alexa interface, but if you start playing from the Sonos app, you can use Alexa commands to stop/start/play/pause/skip/control volume and ask "Alexa, what's playing (on xxxxx)?"
Contributor I
October 5, 2017
Is this a limitation that we can expect to be overcome at some point, or is it more or less how things will be for the foreseeable future?
Local Superstar
October 5, 2017
There is a thread elsewhere ( https://en.community.sonos.com/amazon-alexa-and-sonos-229102/playing-local-music-library-on-sonos-through-alexa-6791360/index1.html#post16150671 ) where the question was explicitly asked "Will alexa skill be able to play from my music library?" and, although Ryan (from Sonos) at no point answers this (instead essentially talking about what it can currently do), it is marked as 'Answered'.
I don't know why the question wasn't actually addressed but find it interesting why it can't play music from a local source but appears to be able to identify what is actually playing.
I think its all a bit if a disaster tbh.
melvimbe
October 5, 2017
I'm just guessing, kind of trying to reverse engineer the process, but I think it's going to be rather difficult. There are several different hints to suggest that Amazon/Alexa is completely in charge of determine what music will play when you make a voice command. I think it goes something like this.

1 - echo hears you
2- echo sends voice to Alexa servers
3 - Alexa servers translate voice to text
4 - Alexa servers process the request, determining what music to play on what speakers
5 - Alexa sends request to Sonos cloud.
6 - Sonos cloud sends request to your speakers.

I think step 4 is the key. Alexa has to know what music you want to play BEFORE it sends the request to the sonos cloud. It never sends an 'unknown' music request to the sonos cloud. So you may have a favorites playlist on Sonos, that Sonos knows what to do with, but since Alexa doesn't know what that is, it won't process it.

So for this to change, either Alexa needs to change to send unknown request to sonos, Alexa needs to know more about your sonos setup, or the two need to have a deeper back and forth exchange/communication so that Sonos can tell Alexa that it knows what that is.

Personally, I think changing this is a long way off. It requires Amazon/Alexa to change, and I don't think they are too motivated to do so.

BTW, some of the hints I see...
- You can't request any music on Sonos that you couldn't do on Amazon speakers.
- You can't give any commands (play, pause, volume control) on Sonos speakers that you couldn't do on Echos (like group, ungroup, line in source, etc)
- Alexa tracks what music you requested on it's 'cards' and in the history for that speaker. It could not do that if it didn't understand exactly what you requested.
- There are features from Sonos existing API that are not present with the interface with Alexa.

I would hazard to guess that Sonos is doing just about everything that it can do on it's side of the fence, and Amazon is the bottleneck. I wouldn't expect to see too many new features come across unless Amazon wants to do add the features. That could be because it benefits them, or because competition forces them to do something they don't exactly want to do.

So I think we will see echo's linked to specific sonos zones soon, because Amazon would want to build that feature, they would do the same for lights so users don't have to say the specific name of a light when they are in the same room. I think we will see playing form NAS or something like that if Sonos builds an interface with Google that allows that. Amazon may be pushed to do the same to stay competitive.
Danny
jgatie
October 5, 2017
Can't argue with anything you've stated melvimbe. Good analysis.
Enthusiast II
October 5, 2017
As there have already been homebrew apps that can do all of the above (address local libraries, group/ungroup etc), that have been running using amazon alexa, then I would say it absolutely is technically possible without too much involvement from either side.

https://github.com/rgraciano/echo-sonos
https://github.com/jishi/node-sonos-http-api

The setup above uses a personal amazon app (not published), and works using a pc in the home which just gives http get commands to the sonos cloud. It really wouldnt take much at all for that to run on amazon or sonos backend, so there must be some other reason these features were not made available. Either Amazon wants to try and force people down the Amazon prime music route, or they got so hung up on what they wanted to produce, that they never bothered to ask or look what the consumer actually wanted.
jgatie
October 5, 2017
^^^^ And there it is!!!
Renowned Enthusiast I
October 5, 2017
As there have already been homebrew apps that can do all of the above (address local libraries, group/ungroup etc), that have been running using amazon alexa, then I would say it absolutely is technically possible without too much involvement from either side.

https://github.com/rgraciano/echo-sonos
https://github.com/jishi/node-sonos-http-api

The setup above uses a personal amazon app (not published), and works using a pc in the home which just gives http get commands to the sonos cloud. It really wouldnt take much at all for that to run on amazon or sonos backend, so there must be some other reason these features were not made available. Either Amazon wants to try and force people down the Amazon prime music route, or they got so hung up on what they wanted to produce, that they never bothered to ask or look what the consumer actually wanted.


Really is pathetic that sonos released a version that in now way matches the amatuer code. I do not want to be forced into renting music.
jgatie
October 5, 2017

Really is pathetic that sonos released a version that in now way matches the amatuer code. I do not want to be forced into renting music.


The "amatuer" (sic) code requires a server running full time on your PC or some other computer on your network. It also requires you to state "tell Sonos" in every command. I'm quite glad Sonos decided not to "match" that particular implementation, as well as it works for some.