# signal update to the playerqueue
self.mass.player_queues.on_player_update(player, changed_values)
- if changed_values != {"elapsed_time"} or force_update:
+ if changed_values.keys() != {"elapsed_time"} or force_update:
# ignore elapsed_time only changes
self.mass.signal_event(EventType.PLAYER_UPDATED, object_id=player_id, data=player)
@property
def name(self) -> str:
"""Return (custom) friendly name for this provider instance."""
+ if self.config.name:
+ return self.config.name
inst_count = len([x for x in self.mass.music.providers if x.domain == self.domain])
if inst_count > 1:
postfix = self.instance_id[:-8]
stream_metadata = await self._fetch_song_stream_metadata(item_id)
license_url = stream_metadata["hls-key-server-url"]
stream_url, uri = await self._parse_stream_url_and_uri(stream_metadata["assets"])
+ if not stream_url or not uri:
+ raise MediaNotFoundError("No stream URL found for song.")
key_id = base64.b64decode(uri.split(",")[1])
return StreamDetails(
item_id=item_id,