From eaec3136da5900f26ae8ef76075ed38780183ae2 Mon Sep 17 00:00:00 2001 From: OzGav Date: Thu, 27 Nov 2025 09:42:46 +1000 Subject: [PATCH] Add extra info to scrobble data (#2669) --- music_assistant/controllers/player_queues.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/music_assistant/controllers/player_queues.py b/music_assistant/controllers/player_queues.py index 8bb82156..fa147ea6 100644 --- a/music_assistant/controllers/player_queues.py +++ b/music_assistant/controllers/player_queues.py @@ -2296,6 +2296,8 @@ class PlayerQueuesController(CoreController): album = getattr(item_to_report.media_item, "album", None) # signal 'media item played' event, # which is useful for plugins that want to do scrobbling + artists = getattr(item_to_report.media_item, "artists", None) + artists_list = [a.name for a in artists] if artists else None self.mass.signal_event( EventType.MEDIA_ITEM_PLAYED, object_id=item_to_report.media_item.uri, @@ -2303,14 +2305,14 @@ class PlayerQueuesController(CoreController): uri=item_to_report.media_item.uri, media_type=item_to_report.media_item.media_type, name=item_to_report.media_item.name, + version=getattr(item_to_report.media_item, "version", None), artist=getattr(item_to_report.media_item, "artist_str", None), - artist_mbids=( - [a.mbid for a in artists if a.mbid] - if (artists := getattr(item_to_report.media_item, "artists", None)) - else None - ), + artists=artists_list, + artist_mbids=[a.mbid for a in artists if a.mbid] if artists else None, album=(album.name if album else None), album_mbid=(album.mbid if album else None), + album_artist=(album.artist_str if album else None), + album_artist_mbids=([a.mbid for a in album.artists if a.mbid] if album else None), image_url=( self.mass.metadata.get_image_url(item_to_report.media_item.image, size=512) if item_to_report.media_item.image -- 2.34.1