Allow playing Spotify URLs with Sonos (#41366)

This commit is contained in:
Anders Melchiorsen 2020-10-07 00:15:09 +02:00 committed by GitHub
parent ee914366a8
commit a65dcbf204
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 13 additions and 5 deletions

View File

@ -3,7 +3,7 @@
"name": "Sonos", "name": "Sonos",
"config_flow": true, "config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/sonos", "documentation": "https://www.home-assistant.io/integrations/sonos",
"requirements": ["pysonos==0.0.34"], "requirements": ["pysonos==0.0.35"],
"ssdp": [ "ssdp": [
{ {
"st": "urn:schemas-upnp-org:device:ZonePlayer:1" "st": "urn:schemas-upnp-org:device:ZonePlayer:1"

View File

@ -1152,7 +1152,10 @@ class SonosEntity(MediaPlayerEntity):
if media_type in (MEDIA_TYPE_MUSIC, MEDIA_TYPE_TRACK): if media_type in (MEDIA_TYPE_MUSIC, MEDIA_TYPE_TRACK):
if kwargs.get(ATTR_MEDIA_ENQUEUE): if kwargs.get(ATTR_MEDIA_ENQUEUE):
try: try:
self.soco.add_uri_to_queue(media_id) if self.soco.is_spotify_uri(media_id):
self.soco.add_spotify_uri_to_queue(media_id)
else:
self.soco.add_uri_to_queue(media_id)
except SoCoUPnPException: except SoCoUPnPException:
_LOGGER.error( _LOGGER.error(
'Error parsing media uri "%s", ' 'Error parsing media uri "%s", '
@ -1161,7 +1164,12 @@ class SonosEntity(MediaPlayerEntity):
media_id, media_id,
) )
else: else:
self.soco.play_uri(media_id) if self.soco.is_spotify_uri(media_id):
self.soco.clear_queue()
self.soco.add_spotify_uri_to_queue(media_id)
self.soco.play_from_queue(0)
else:
self.soco.play_uri(media_id)
elif media_type == MEDIA_TYPE_PLAYLIST: elif media_type == MEDIA_TYPE_PLAYLIST:
if media_id.startswith("S:"): if media_id.startswith("S:"):
item = get_media(self._media_library, media_id, media_type) item = get_media(self._media_library, media_id, media_type)

View File

@ -1674,7 +1674,7 @@ pysnmp==4.4.12
pysoma==0.0.10 pysoma==0.0.10
# homeassistant.components.sonos # homeassistant.components.sonos
pysonos==0.0.34 pysonos==0.0.35
# homeassistant.components.spc # homeassistant.components.spc
pyspcwebgw==0.4.0 pyspcwebgw==0.4.0

View File

@ -812,7 +812,7 @@ pysmartthings==0.7.4
pysoma==0.0.10 pysoma==0.0.10
# homeassistant.components.sonos # homeassistant.components.sonos
pysonos==0.0.34 pysonos==0.0.35
# homeassistant.components.spc # homeassistant.components.spc
pyspcwebgw==0.4.0 pyspcwebgw==0.4.0