From 4999079bbe9ddf3bcf3f4fefbdaf20ea55fa4ce2 Mon Sep 17 00:00:00 2001 From: Marcel van der Veldt Date: Wed, 26 Feb 2025 10:36:12 +0100 Subject: [PATCH] Enhancement: Don't use lookup_key for player providers A player's provider is always instance id and never domain so avoid the use of lookup_key --- music_assistant/controllers/players.py | 6 +++--- .../providers/_template_player_provider/__init__.py | 2 +- music_assistant/providers/fully_kiosk/__init__.py | 2 +- music_assistant/providers/hass/__init__.py | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/music_assistant/controllers/players.py b/music_assistant/controllers/players.py index d03016ab..9fb74880 100644 --- a/music_assistant/controllers/players.py +++ b/music_assistant/controllers/players.py @@ -729,7 +729,7 @@ class PlayerController(CoreController): player.active_source = None player.current_media = None # check if source is a pluginsource - # in that case the source id is the lookup_key of the plugin provider + # in that case the source id is the instance_id of the plugin provider if plugin_prov := self.mass.get_provider(source): await self._handle_select_plugin_source(player, plugin_prov) return @@ -1157,9 +1157,9 @@ class PlayerController(CoreController): msg = f"PlayerControl {control_id} is already registered" raise AlreadyRegisteredError(msg) - # make sure that the playercontrol's provider is set to the lookup_key + # make sure that the playercontrol's provider is set to the instance_id prov = self.mass.get_provider(player_control.provider) - if not prov or prov.lookup_key != player_control.provider: + if not prov or prov.instance_id != player_control.provider: raise RuntimeError(f"Invalid provider ID given: {player_control.provider}") self._controls[control_id] = player_control diff --git a/music_assistant/providers/_template_player_provider/__init__.py b/music_assistant/providers/_template_player_provider/__init__.py index 33ff6dea..33ddfd60 100644 --- a/music_assistant/providers/_template_player_provider/__init__.py +++ b/music_assistant/providers/_template_player_provider/__init__.py @@ -210,7 +210,7 @@ class MyDemoPlayerprovider(PlayerProvider): # Instantiate the MA Player object and register it with the player manager mass_player = Player( player_id=player_id, - provider=self.lookup_key, + provider=self.instance_id, type=PlayerType.PLAYER, name=name, available=True, diff --git a/music_assistant/providers/fully_kiosk/__init__.py b/music_assistant/providers/fully_kiosk/__init__.py index 33e09cdd..da24693c 100644 --- a/music_assistant/providers/fully_kiosk/__init__.py +++ b/music_assistant/providers/fully_kiosk/__init__.py @@ -116,7 +116,7 @@ class FullyKioskProvider(PlayerProvider): if not player: player = Player( player_id=player_id, - provider=self.lookup_key, + provider=self.instance_id, type=PlayerType.PLAYER, name=self._fully.deviceInfo["deviceName"], available=True, diff --git a/music_assistant/providers/hass/__init__.py b/music_assistant/providers/hass/__init__.py index 9a9f84fc..f4494c5c 100644 --- a/music_assistant/providers/hass/__init__.py +++ b/music_assistant/providers/hass/__init__.py @@ -378,7 +378,7 @@ class HomeAssistantProvider(PluginProvider): name = entity_id control = PlayerControl( id=entity_id, - provider=self.lookup_key, + provider=self.instance_id, name=name, ) if entity_id in power_controls: -- 2.34.1