Question

Sonos syntax passed from Alexa

  • 5 November 2020
  • 2 replies
  • 218 views

Hi, 

  I’m new to posting so please be patient.  ta.

  We have an extensive Sonos investment, with the iTunes library on a NAS to play whatever we want around the house.  We are also starting to experiment with home automation.

  We have a Sonos One, specifically for a bathroom, the idea being that we can select music, change volume, etc, without needing a screen.  We discovered that the only way to get local music to play was to install Plex on the NAS, so now we can say “Alexa, tell plex to play Witness by Katy Perry”, which works mostly….

  However, the Echo we are trying doesn’t behave the same.  “Alexa, tell plex to play Katy Perry” results in the Echo playing the music.  A small speaker isn’t the same as Sonos.  This is why we have Sonos.

  “Alexa, play Katy Perry in the Master Bedroom” results in the iHeart Radio service playing the Katy Perry “station”, on the correct Sonos speaker.

  So.

  Several years ago this was published on the community.

“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.”

 

I’ve also read (can’t find the quote now) that it’s probably about the default music service listed in (either, I think) Sonos or Alexa.  The Alexa command would need to reflect the music source your desire.  The intent of the thread seemed to be very streaming oriented.

 

  So, is there a syntax that mimics the Sonos ability to find it’s indexed music library?  Maybe I’m not with the times owning 500+ cds that are indexed and immediately available (seriously, the Sonos system is great!!!!), but there are other posts about this, and I’ve looked at MyMediaAlexa which seems to be more an integration to Alexa allowing access to the iTunes library on the PC, but is not available on the WD NAS.

  I’m hoping that starting with the Sonos command structure, as it might come from the controlling app, might allow Alexa to send appropriate commands down to the local Sonos brain.

 

  Any thoughts would be appreciated.

 

  Cheers!

    Geoff….


2 replies

Userlevel 5
Badge +13

Hi @wesilg, welcome to the Sonos Community and I’d be happy to assist you here. I also appreciate all the details and for reaching out here with us. 

Currently, these are the music services working with Sonos and Amazon Alexa voice service: Apple MusicSpotifyPandoraiHeartRadioDeezerAmazon MusicAudibleTuneInSiriusXM

That’s the reason why it’s playing from iHeartRadio instead of playing from Plex as it’s not supported as of the moment.

Please remember, that despite some music services not working with certain voice assistants, you can start playback in the Sonos app and you can control that music service's playback via voice with commands like play, pause, mute, skip, next, stop, resume, etc.

Just let us know if you need anything. We and the community are always here to help.

Hi Krishma, 

Thanks for your reply.  It does raise some more questions...

 

PLEX does seem to be supported on Alexa/Sonos combinations.  Our Alexa account has the PLEX skill, and Alexa can be used to commence playback on the Sonos One, specifically albums stored on the local PLEX server.  This took a while to get going, but works on our Sonos One.

PLEX also seems to be supported on Sonos natively.  We have it listed as an available source, and it appears on both the PC and iPad Sonos applications.  And it plays.

 

The indexed music library appears as the first option in both the PC and iPad applications.  So it’s a valid music source to the Sonos application. The music library existed as an entity before the Sonos One introduced the Alexa/Sonos combination.  So why is it not a selectable music source to the Alexa/Sonos integration?

 

The idea of using two devices to control Sonos is what the Alexa integration is trying to avoid.  We’ve only experimented with the Show 5 so far, but the screened Echos should be a general device for a kitchen, for example; start music, make calls, look up recipes, etc.  But it isn’t, as a device, it can’t load the Sonos application, it relies on the voice integration (as a skill).  Saying use the phone to start Sonos then control it with something else doesn’t make much sense.  The alternative is a tablet with Sonos and Alexa both loaded, which may be a better general solution anyway.  If we use this model, the we don’t need the integration.

 

I’m still unclear as to why would Sonos default to iHeart Radio.  We’ve removed the skill from Alexa (it may never have been there as it has TuneIn), and it’s not a music source for our Sonos configuration.  The whole scenario seems internet stream specific, but iHeart Radio should not have been an option from either side.

But still, our default for Sonos should be the music library, or selectable as the music library (or something else, don’t care as long as we can specify), but it defaults to a service neither application has listed.

 

So what verbal syntax will allow the Sonos source specification, or if this isn’t possible, when will the Sonos configuration provide a default for commands that don’t specify a source?  We’ve long wondered how Sonos actually works, and I’d decided it was a brain distributed between the speakers, as play isn’t interrupted if one speaker is taken offline.  Comments read recently make me think that the music library index, and overall configuration, is held remotely at Sonos, and commands from the application are sent remotely then back to the speakers, and the streaming then happens locally.

 

Hopefully these questions might help determine how to manage our configuration.  We love our Sonos, it just works!  If you can point to the way to approach the integration, it would be much appreciated.

 

Cheers,

Geoff.

 

Reply