Chore: use prov_item_id instead of item_id in on_played callback
authorMarcel van der Veldt <m.vanderveldt@outlook.com>
Tue, 25 Feb 2025 08:53:56 +0000 (09:53 +0100)
committerMarcel van der Veldt <m.vanderveldt@outlook.com>
Tue, 25 Feb 2025 08:53:56 +0000 (09:53 +0100)
Make it extra clear that we're providing the provider item id

music_assistant/controllers/music.py
music_assistant/models/music_provider.py
music_assistant/providers/_template_music_provider/__init__.py
music_assistant/providers/audible/__init__.py
music_assistant/providers/audiobookshelf/__init__.py
music_assistant/providers/opensubsonic/sonic_provider.py

index 7fa5763799c65e9482c04a04f49cb737fc181293..8bf9ca9754929b1b853c19f78856e87c9ef21172 100644 (file)
@@ -862,11 +862,11 @@ class MusicController(CoreController):
                 self.mass.create_task(
                     music_prov.on_played(
                         media_type=media_item.media_type,
-                        item_id=prov_mapping.item_id,
+                        prov_item_id=prov_mapping.item_id,
                         fully_played=fully_played,
                         position=seconds_played,
-                        is_playing=is_playing,
                         media_item=media_item,
+                        is_playing=is_playing,
                     )
                 )
 
@@ -913,7 +913,7 @@ class MusicController(CoreController):
                 self.mass.create_task(
                     music_prov.on_played(
                         media_type=media_item.media_type,
-                        item_id=prov_mapping.item_id,
+                        prov_item_id=prov_mapping.item_id,
                         fully_played=False,
                         position=0,
                         media_item=media_item,
index e18713902688dc91abf5403be25334dd1cc4add6..d0ebcfb5b73e69581db8fc55dffdcdba8ca7f514 100644 (file)
@@ -356,11 +356,11 @@ class MusicProvider(Provider):
     async def on_played(
         self,
         media_type: MediaType,
-        item_id: str,
+        prov_item_id: str,
         fully_played: bool,
         position: int,
+        media_item: MediaItemType,
         is_playing: bool = False,
-        media_item: MediaItemType | None = None,
     ) -> None:
         """
         Handle callback when a (playable) media item has been played.
@@ -376,9 +376,9 @@ class MusicProvider(Provider):
         When fully_played is set to false and position is 0,
         the user marked the item as unplayed in the UI.
 
-        is_playing is True when the track is currently playing.
-
         media_item is the full media item details of the played/playing track.
+
+        is_playing is True when the track is currently playing.
         """
 
     async def resolve_image(self, path: str) -> str | bytes:
index 5a8f2e23ac930ec686cfed885ddb7de438bfa702..9ea6436fa8e7b46700b0f39f4744abdd61714631 100644 (file)
@@ -448,11 +448,11 @@ class MyDemoMusicprovider(MusicProvider):
     async def on_played(
         self,
         media_type: MediaType,
-        item_id: str,
+        prov_item_id: str,
         fully_played: bool,
         position: int,
+        media_item: MediaItemType,
         is_playing: bool = False,
-        media_item: MediaItemType | None = None,
     ) -> None:
         """
         Handle callback when a (playable) media item has been played.
index a5e8a72a1675df9197b7fbb55a474736634623c9..03f3a2b58d80d6d37576a15e2e562d22e5a7f086 100644 (file)
@@ -282,11 +282,11 @@ class Audibleprovider(MusicProvider):
     async def on_played(
         self,
         media_type: MediaType,
-        item_id: str,
+        prov_item_id: str,
         fully_played: bool,
         position: int,
+        media_item: MediaItemType,
         is_playing: bool = False,
-        media_item: MediaItemType | None = None,
     ) -> None:
         """
         Handle callback when a (playable) media item has been played.
@@ -306,7 +306,7 @@ class Audibleprovider(MusicProvider):
 
         media_item is the full media item details of the played/playing track.
         """
-        await self.helper.set_last_position(item_id, position)
+        await self.helper.set_last_position(prov_item_id, position)
 
     async def unload(self, is_removed: bool = False) -> None:
         """
index 285480ab184e457dede0ca73429f51aff84dc25d..6d6dcdf1e42780104b2687dc1877cd0ed9ed70de 100644 (file)
@@ -545,11 +545,11 @@ class Audiobookshelf(MusicProvider):
     async def on_played(
         self,
         media_type: MediaType,
-        item_id: str,
+        prov_item_id: str,
         fully_played: bool,
         position: int,
+        media_item: MediaItemType,
         is_playing: bool = False,
-        media_item: MediaItemType | None = None,
     ) -> None:
         """Update progress in Audiobookshelf.
 
@@ -561,8 +561,8 @@ class Audiobookshelf(MusicProvider):
 
         """
         if media_type == MediaType.PODCAST_EPISODE:
-            abs_podcast_id, abs_episode_id = item_id.split(" ")
-            mass_podcast_episode = await self.get_podcast_episode(item_id)
+            abs_podcast_id, abs_episode_id = prov_item_id.split(" ")
+            mass_podcast_episode = await self.get_podcast_episode(prov_item_id)
             duration = mass_podcast_episode.duration
             self.logger.debug(
                 f"Updating media progress of {media_type.value}, title {mass_podcast_episode.name}."
@@ -575,11 +575,11 @@ class Audiobookshelf(MusicProvider):
                 is_finished=fully_played,
             )
         if media_type == MediaType.AUDIOBOOK:
-            mass_audiobook = await self.get_audiobook(item_id)
+            mass_audiobook = await self.get_audiobook(prov_item_id)
             duration = mass_audiobook.duration
             self.logger.debug(f"Updating {media_type.value} named {mass_audiobook.name} progress")
             await self._client.update_my_media_progress(
-                item_id=item_id,
+                item_id=prov_item_id,
                 duration_seconds=duration,
                 progress_seconds=position,
                 is_finished=fully_played,
index ac0e01e74d50b25a51ef774e4dc55e439163e3e9..ddfe8e7c02d21e89628b469d8f2a79f76f14a029 100644 (file)
@@ -795,11 +795,11 @@ class OpenSonicProvider(MusicProvider):
     async def on_played(
         self,
         media_type: MediaType,
-        item_id: str,
+        prov_item_id: str,
         fully_played: bool,
         position: int,
+        media_item: MediaItemType,
         is_playing: bool = False,
-        media_item: MediaItemType | None = None,
     ) -> None:
         """
         Handle callback when a (playable) media item has been played.