From: Marcel van der Veldt Date: Fri, 18 Sep 2020 06:28:50 +0000 (+0200) Subject: add back PlayerState.Off X-Git-Url: https://git.kitaultman.com/?a=commitdiff_plain;h=6fe4902a3d93282d38e90c3b9005cc9ecf41b900;p=music-assistant-server.git add back PlayerState.Off --- diff --git a/music_assistant/models/player.py b/music_assistant/models/player.py index f2891775..65438cc9 100755 --- a/music_assistant/models/player.py +++ b/music_assistant/models/player.py @@ -17,6 +17,7 @@ class PlayerState(Enum): Stopped = "stopped" Paused = "paused" Playing = "playing" + Off = "off" @dataclass diff --git a/music_assistant/player_manager.py b/music_assistant/player_manager.py index 3efc524b..ca57140f 100755 --- a/music_assistant/player_manager.py +++ b/music_assistant/player_manager.py @@ -558,7 +558,9 @@ class PlayerManager: else: player_state.elapsed_time = int(player.elapsed_time) player_state.current_uri = player.current_uri - player_state.state = self.__get_player_state(player, active_queue) + player_state.state = self.__get_player_state( + player, active_queue, player_state.powered + ) player_state.available = False if not player_enabled else player.available player_state.volume_level = self.__get_player_volume_level(player) player_state.muted = self.__get_player_mute_state(player) @@ -617,11 +619,13 @@ class PlayerManager: return player.volume_level @callback - def __get_player_state(self, player: Player, active_parent: str): + def __get_player_state(self, player: Player, active_parent: str, powered: bool): """Get final/calculated player's state.""" - if active_parent != player.player_id: + if powered and active_parent != player.player_id: # use group state return self._players[active_parent].state + if player.state == PlayerState.Stopped and not powered: + return PlayerState.Off return player.state @callback