Sonos - Support to browse connected Music Services in Media Browser

I use Navidrome as Music Server, which supports the Subsonic API (https://www.navidrome.org/).
To easily browse and play my music, I use bonob (GitHub - simojenki/bonob: sonos SMAPI implementation allowing integrating different music sources with sonos.) which allows you to integrate a Subsonic compatible Server (like Navidrome) as a Music Service into your Sonos System.

In the official Sonos Apps, this “custom Music Service”, appears next the Sonos Library and can be browsed. The Search functionality includes results from this Service.

But if I open the Media Browser in Home Assistant for a Sonos Speaker, this Music Service is not visible and can not be browsed.

No idea if this is a limitation on the Sonos API.
There is another similar but not identical Feature Request which is about a Subsonic Integration in Home Assistant. This would probably allow the functionality that I am looking for.

For now the only way I know, to start playing music from my Navidrom Server through Home Assistant is by adding a Playlist or Song to the Sonos Favorites. The “media_player.select_source” Service allows you to select a Favorite as source and start playing it.

Ditto. I found the Sonos integration a bit of a cool novelty, since I couldn’t use it to select music on my sonos system that was connected to my plex server.

So, I just continued playing via the sonos app, and occasionally homeassistant automations to pause/play.

However… I just dug out my old Play:5 (gen 1) which irritatingly is only compatible with the S1 app. So having created a new account and a new sonos system purely to make the Play:5 usable, I was delighted that I could add it to my Home Assistant alongside all the other speakers!

Home Assistant for the win! It’s un-fecked the stupid mess that Sonos created… but then… ah… I can’t actually chose music from the connected plex library.

Oh well. Back to 2 apps.
Maybe one day.

What seems to be the problem?

I have a sonos media player in HA, and using the ordinary media-player Lovelace card I can select music as well as playlists from my Plex (as well as many other sources):thinking:

The answer is a bit tricky here. The media sources available to Sonos are currently limited to “local” files shared with Sonos and compatible external integrations within HA like Plex and Spotify. Those external integrations browse via non-Sonos APIs and use specially crafted IDs to initiate playback.

Sonos also has a (very undocumented) music service API which is what the native Sonos app uses (like for Bonob). Some support was added to the underlying library after media browser support was added to the HA Sonos integration. However no work has yet been attempted to make use of it.

Any updates on this?
My sonos is setup with many music sources, like Amazon Music, Deezer, SiriusXM, and more. Is there no way I can select these services via the sonos implementation in HA?

1 Like

Has anyone solved the issue? Not being able tu use as source (for a HA controlled Sonos array) some of the main music market players is frustrating

There’s two aspects here. The first is the ability to browse (for example siriusxm stations), the second is the ability to play a specific channel (from an automation)

Be good to get some specific use cases.