Has anyone got an official answer from SONOS about AMAZON ECHO Integration?



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.

101 replies

I want to buy a full Sonos system for my house, but won't until there is an official integration with Alexa/Echo. @Sonos - My $ are waiting here for you...

So you think they're going to rush it out the door for you? ROFL.
Userlevel 2
Badge +1
I want to buy a full Sonos system for my house, but won't until there is an official integration with Alexa/Echo. @Sonos - My $ are waiting here for you...

So you think they're going to rush it out the door for you? ROFL.


Well they're obviously working on it, since it is a feature in high demand by consumers. I personally don't like the Echo, it only supports limited music streaming options and I find it does a poor job understanding and responding to commands. But hey they've sold millions of them so what do I know :8.
I personally don't like the Echo, it only supports limited music streaming options...

And that's exactly why Sonos and Amazon Echo are "better together". 🙂 In case you haven't seen their promotional Video yet: https://www.youtube.com/watch?v=bARbx4I3xZY
Why would Amazon want to integrate their wireless streaming speaker with a competing wireless streaming speaker?
Looks like they have at least played with it for fun : http://mattwel.ch/voice-control-for-the-sonos-with-an-echo/
Looks like they have at least played with it for fun : http://mattwel.ch/voice-control-for-the-sonos-with-an-echo/

What do you mean by "they"? That link is to a independent programmer's page, not anything to do with Sonos, nor Amazon.
Matt actually works for Sonos now. 😉 Guess they liked all his Sonos mashups.

Seriously? I didn't know.
Badge
I actually got it to work with this: https://github.com/rgraciano/echo-sonos

Pretty freakin amazing every time!!!


I've been hammering away at this for several days now and can't get past this head scratching point. All commands work via the API (browser) and certain voice commands like favorites, pause, what's playing. Unfortunately volume control and play commands don't work. Then things like next/skip are strange - next doesn't work but skip does. Again, API works great but voice commands is weird.

Really want to get this to work because the wife would use Sonos if it meant telling Alexa what to do, otherwise, forget it (go figure).
To the folks hacking on it, if you have something that works could you set up a new GitHub repo for it?
Badge
boykster: "The key is understanding the connection between the syntax in the intent schema section, the utterances section (both on alexa skills), and the code in the index.js file that gets loaded to Lambda."

And this is where I'm struggling. I found a helpful 38 min video on the AWS website but being new to this, I think I'm going to have to watch it several times before I really grasp the concepts. Since the Echo/Sonos thing seems to be so cutting edge, there isn't a whole lot out there so searching for real world intent schemas, sample utterances, and index.js files is a challenge (reference material).

Thank you for the input and I'll keep grinding away.
Badge
To the folks hacking on it, if you have something that works could you set up a new GitHub repo for it?

I don't have a github setup for my modifications, but I'm happy to share my code.
Would really like to get this solution working, but I'm totally at a loss when trying to follow the directions. Any chance someone could come up with a tutorial or help a newbie out?

I worked things through and got it working, then dug in and got it to do even more. The key is understanding the connection between the syntax in the intent schema section, the utterances section (both on alexa skills), and the code in the index.js file that gets loaded to Lambda.

If you want to do something new, you will need to define a new intent, new utterances, and make sure the code in the intents.js file does what you need. I've added:

custom slot type for "play " - favorite needs to be all lower case and one word in sonos faves and in the custom slot type value

whats playing (similar to original author)
what's next (same as above, but next song)
play favorite - see above
list favorites - reads off what valid favorites there are
shuffle on/off
repeat on/off
Jwctech,

I've followed your instructions and seem to have most of it working. I can control my sonos from inside my network as well as from outside using the http commands, but when I test in Lambda I get the following error. I don't have the Sonos controller app running on the machine that is hosting internally and as I've said everything works from the outside. Any ideas?

Thanks,
Dave



START RequestId: 00d65d9e-a422-11e5-92c1-6b12cc78cc9e Version: $LATEST
2015-12-16T18:22:45.541Z 00d65d9e-a422-11e5-92c1-6b12cc78cc9e session applicationId: amzn1.echo-sdk-ams.app.xxxxxxxxxxx
2015-12-16T18:22:45.541Z 00d65d9e-a422-11e5-92c1-6b12cc78cc9e dispatch intent = playIntent
2015-12-16T18:22:45.541Z 00d65d9e-a422-11e5-92c1-6b12cc78cc9e playIntent: checking zone
2015-12-16T18:22:45.541Z 00d65d9e-a422-11e5-92c1-6b12cc78cc9e checkZones: zoneSlot set to:kitchen
2015-12-16T18:22:45.541Z 00d65d9e-a422-11e5-92c1-6b12cc78cc9e checkZones: calling Sonos at: myFQDN:5005/zones
2015-12-16T18:22:47.044Z 00d65d9e-a422-11e5-92c1-6b12cc78cc9e checkZones: Error connecting to Sonos API: socket hang up
2015-12-16T18:22:47.044Z 00d65d9e-a422-11e5-92c1-6b12cc78cc9e getZonesCallback: Error received
END RequestId: 00d65d9e-a422-11e5-92c1-6b12cc78cc9e
REPORT RequestId: 00d65d9e-a422-11e5-92c1-6b12cc78cc9e Duration: 1521.62 ms Billed Duration: 1600 ms Memory Size: 128 MB Max Memory Used: 10 MB
Hi all,

I have read through this and unfortunately if the system does not work flawlessly my wife will despise it. It took me enough just to talk her into getting the system to begin with, I was about to dive into Sonos further and add to the ecosystem but as mentioned above I think the Echo is so good that if Sonos is not planning an elegant solution I will need to look at a new home system....

Sonos, either work with Amazon or develop your own interface that is as strong as Amazon's (but that is a tall order)
Badge
Very cool - I have added a listFavorites function and added error checking to the playFavorite function to ensure that the fave is valid. I'm happy to share my code
Userlevel 1
Badge
Would this eventually be released as an app?
Userlevel 1
@boykster - great! Feel free to submit a PR or send me a patch.

@andrew77uk - something has to sit behind your firewall & communicate with your Sonos system. I could publish my code as an app, but I'd still need you to install software on a server behind your firewall to talk to your Sonos, and I doubt Amazon would publish Skills that require that level of DIY effort. So, practically speaking, only Sonos (& Amazon themselves) have the capability to publish an end-to-end Sonos app, as they're both guaranteed to have a device sitting in the right place already.
Userlevel 1
Badge
Well you could release desktop app and one for the mobile.
Userlevel 1
Why would Amazon want to integrate their wireless streaming speaker with a competing wireless streaming speaker?

this is why:

I have a Sonos Play3 in my kitchen and the Sonos Connect in my living room hooked up to my main stereo/speaker system. I also have an Echo in each room. The two Echos are linked to my one Amazon Prime account, but I can't control the two to play music together like you can with Sonos. Of if you're streaming Amazon music from one, you can't stream from both at the same time.

If Echo could output to Sonos, I could then have better sound for Echo but then ALSO have my Amazon Prime music pumped through my home stereo and no just through the smaller Echo speakers.

Evenf Echo simply had an output jack, I could plug that into the Connect's 'audio input' and that would get me halfway there (I could only control it from the living room Echo, not the kitchen Echo). But ideally, Sonos and Echo should connect via wifi and talk to each other, that would be awesome.
You've answered why you would like it, but that wasn't the question. Amazon wants to sell Echoes. Why would it waste all the intellectual property it has invested in Echo by allowing it to be used to sell Sonos speakers instead of Echoes?
I personally don't think there is that much of a difference between the two and too much overlap in functionality; both are internet streamers, both sell self-contained speakers, both do alarms, radio, etc., for there to be this type of partnership. But I could be wrong.
Userlevel 1
Cross-posting from another thread as I see this one has Sonos staff listening:

I created an account simply to upvote and comment here: this is a huge miss on Sonos' part that a full year after Echo is GA and has dozens of other partnerships that Sonos remains out of the ecosystem. It's great someone has done some creative hackery on github to link the two, but this needs to be officially supported by Sonos.

I own an Echo. I don't own Sonos today, but I'd very much like to own Sonos. It looks like a great system and leaps and bounds ahead of your competition in this space (for now). However, a Sonos that doesn't communicate with my Echo is useless to me. Smartphone apps are nice and all - but I just TALK to my Echo and it plays music I like. Investing in a pricey Sonos system that can't tie into this feature is a step backwards.

Short story: Integrate with Echo, earn an eager customer. Don't integrate with Echo, or come out instead with some standalone lock-in Sonos-only Echo competitor, and my money will go to your first competitor that offers Echo integration.

--
and ps. to rmgraci: nice work! Tempted to buy a Sonos based on your awesome work, but they really need to integrate this into the core product. I'd be fine if they paid you some money and officially supported your work, but I won't invest an an expensive Sonos system where they might make a change that breaks your "user-supported customization" and breaks Echo support. Been burned by that too many times by other companies.

Sonos, here's your chance to partner with Amazon and add the ever-growing Echo customer base as your loyal customers too. If you don't do it, someone else will. Let's see what you can do!
There are similar dramas running with APPLE, GOOGLE, SPOTIFY, etc. Each of these major platforms has a following that demands an instant response to any developments by the major. The smaller companies must be careful not to attach their wagons too tightly to a major, else the minor will spend all of its development effort responding to a major, not innovating their own product. This is a method used by the majors to control minor competition, but it also minimizes the major's development costs. (otherwise the major would need to respond to all of the minors' developments)

SONOS publishes an API that any music service is free to support. While this API does not support every little exclusive feature (an obvious "must have" for some users) for every service, it gives SONOS users easy and consistent access to dozens of services. In my opinion this is a win for everyone.

---

Overall, there are there are too many 'silos' vying to become the data format, the database protocol, the communication protocol, and the user interface standard in the consumer electronics/automation arena. Some are newer and more capable than others, some are attempting to be "lightweight" (cheaper to implement), while most are trying to become the intellectual property standard so that its owner can charge everyone else royalties. Unfortunately, I think that the consumer is too low on the priority list.