From 30d4a9f12c31924ab0995086b052ff7f19447a03 Mon Sep 17 00:00:00 2001 From: jjlawren Date: Thu, 21 Mar 2019 21:41:41 -0500 Subject: [PATCH] Plex: Avoid refreshing by both device and session methods (#22266) * Avoid refreshing by both device and session methods * Fix indentation --- homeassistant/components/plex/media_player.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/homeassistant/components/plex/media_player.py b/homeassistant/components/plex/media_player.py index 35000fa35c3..f3dd9dfc1a7 100644 --- a/homeassistant/components/plex/media_player.py +++ b/homeassistant/components/plex/media_player.py @@ -170,21 +170,31 @@ def setup_plexserver( config, device, None, plex_sessions, update_devices, update_sessions) plex_clients[device.machineIdentifier] = new_client + _LOGGER.debug("New device: %s", device.machineIdentifier) new_plex_clients.append(new_client) else: + _LOGGER.debug("Refreshing device: %s", + device.machineIdentifier) plex_clients[device.machineIdentifier].refresh(device, None) # add devices with a session and no client (ex. PlexConnect Apple TV's) if config.get(CONF_INCLUDE_NON_CLIENTS): for machine_identifier, (session, player) in plex_sessions.items(): + if machine_identifier in available_client_ids: + # Avoid using session if already added as a device. + _LOGGER.debug("Skipping session, device exists: %s", + machine_identifier) + continue if (machine_identifier not in plex_clients and machine_identifier is not None): new_client = PlexClient( config, player, session, plex_sessions, update_devices, update_sessions) plex_clients[machine_identifier] = new_client + _LOGGER.debug("New session: %s", machine_identifier) new_plex_clients.append(new_client) else: + _LOGGER.debug("Refreshing session: %s", machine_identifier) plex_clients[machine_identifier].refresh(None, session) clients_to_remove = []