some more small fixes
authorMarcel van der Veldt <m.vanderveldt@outlook.com>
Sun, 26 May 2019 08:00:06 +0000 (10:00 +0200)
committerMarcel van der Veldt <m.vanderveldt@outlook.com>
Sun, 26 May 2019 08:00:06 +0000 (10:00 +0200)
music_assistant/modules/player.py
music_assistant/modules/playerproviders/chromecast.py

index 1324780d5b2e771ede30ca5379cd5d715f9a047b..6b7c0b2a0d712dc943dfd4d1440d358deba0fb68 100755 (executable)
@@ -58,18 +58,19 @@ class Player():
             return await self.player_command(player.group_parent, cmd, cmd_args)
         # handle hass integration
         await self.__player_command_hass_integration(player, cmd, cmd_args)
+        # handle group volume/power for group players
+        await self.__player_group_commands(player, cmd, cmd_args)
         # handle mute as power
         if cmd == 'power' and player.settings['mute_as_power']:
-            args = 'on' if cmd_args == 'off' else 'off' # invert logic (power ON is mute OFF)
-            await prov.player_command(player_id, 'mute', args)
+            cmd = 'mute'
+            cmd_args = 'on' if cmd_args == 'off' else 'off' # invert logic (power ON is mute OFF)
         # handle play on power on
         if cmd == 'power' and cmd_args == 'on' and player.settings['play_power_on']:
             cmd = 'play'
             cmd_args = None
         # normal execution of command on player
         await prov.player_command(player_id, cmd, cmd_args)
-        # handle group volume/power for group players
-        await self.__player_group_commands(player, cmd, cmd_args)
+        
 
     async def __player_command_hass_integration(self, player, cmd, cmd_args):
         ''' handle hass integration in player command '''
index 817b882ec359e07a910500907d3ada4f3cba9a2d..94701c4bf89ee71062db26fe88a3dd7827c8612a 100644 (file)
@@ -90,7 +90,7 @@ class ChromecastProvider(PlayerProvider):
             self._chromecasts[player_id].set_volume_muted(False)
         elif cmd == 'mute':
             self._chromecasts[player_id].set_volume_muted(True)
-        #self._chromecasts[player_id].wait()
+        self._chromecasts[player_id].wait()
 
     async def player_queue(self, player_id, offset=0, limit=50):
         ''' return the current items in the player's queue '''
@@ -238,7 +238,7 @@ class ChromecastProvider(PlayerProvider):
                 """Plays media after chromecast has switched to requested app."""
                 queuedata['mediaSessionId'] = media_controller.status.media_session_id
                 media_controller.send_message(queuedata, inc_session_id=False)
-                #castplayer.wait()
+                castplayer.wait()
         receiver_ctrl.launch_app(media_controller.app_id,
                                 callback_function=app_launched_callback)
 
@@ -311,7 +311,7 @@ class ChromecastProvider(PlayerProvider):
                     self.mass.event_loop.create_task(self.mass.player.update_player(self._players[member]))
 
     async def __chromecast_discovered(self, chromecast):
-        LOGGER.info("discovered chromecast: %s" % chromecast)
+        LOGGER.debug("discovered chromecast: %s" % chromecast)
         player_id = str(chromecast.uuid)
         ip_change = False
         if player_id in self._chromecasts and chromecast.uri != self._chromecasts[player_id].uri:
@@ -344,7 +344,7 @@ class ChromecastProvider(PlayerProvider):
                 self._player_queue[player_id] = []
             chromecast.wait()
 
-    @run_periodic(600)
+    @run_periodic(3600)
     async def __discover_chromecasts(self):
         ''' discover chromecasts on the network '''
         LOGGER.info('Running Chromecast discovery...')