mirror of
https://github.com/home-assistant/core.git
synced 2025-08-04 21:25:13 +02:00
Moved media Type to new method
This commit is contained in:
@@ -273,7 +273,7 @@ class PlexClient(MediaPlayerDevice):
|
|||||||
self.plex_sessions = plex_sessions
|
self.plex_sessions = plex_sessions
|
||||||
self.update_devices = update_devices
|
self.update_devices = update_devices
|
||||||
self.update_sessions = update_sessions
|
self.update_sessions = update_sessions
|
||||||
####
|
# General
|
||||||
self._media_content_id = None
|
self._media_content_id = None
|
||||||
self._media_content_rating = None
|
self._media_content_rating = None
|
||||||
self._media_content_type = None
|
self._media_content_type = None
|
||||||
@@ -313,7 +313,6 @@ class PlexClient(MediaPlayerDevice):
|
|||||||
|
|
||||||
def _clear_media(self):
|
def _clear_media(self):
|
||||||
"""Set all Media Items to None."""
|
"""Set all Media Items to None."""
|
||||||
# General
|
|
||||||
for media_var in filter(lambda x: x.startswith('_media_'), dir(self)):
|
for media_var in filter(lambda x: x.startswith('_media_'), dir(self)):
|
||||||
setattr(self, media_var, None)
|
setattr(self, media_var, None)
|
||||||
|
|
||||||
@@ -356,18 +355,7 @@ class PlexClient(MediaPlayerDevice):
|
|||||||
self._media_content_id = self._session.ratingKey
|
self._media_content_id = self._session.ratingKey
|
||||||
self._media_content_rating = self._session.contentRating
|
self._media_content_rating = self._session.contentRating
|
||||||
|
|
||||||
if self._player_state == 'playing':
|
self._set_player_state()
|
||||||
self._is_player_active = True
|
|
||||||
self._state = STATE_PLAYING
|
|
||||||
elif self._player_state == 'paused':
|
|
||||||
self._is_player_active = True
|
|
||||||
self._state = STATE_PAUSED
|
|
||||||
elif self.device:
|
|
||||||
self._is_player_active = False
|
|
||||||
self._state = STATE_IDLE
|
|
||||||
else:
|
|
||||||
self._is_player_active = False
|
|
||||||
self._state = STATE_OFF
|
|
||||||
|
|
||||||
if self._is_player_active and self._session is not None:
|
if self._is_player_active and self._session is not None:
|
||||||
self._session_type = self._session.type
|
self._session_type = self._session.type
|
||||||
@@ -376,16 +364,7 @@ class PlexClient(MediaPlayerDevice):
|
|||||||
self._session_type = None
|
self._session_type = None
|
||||||
|
|
||||||
# media type
|
# media type
|
||||||
if self._session_type == 'clip':
|
self._set_media_type()
|
||||||
_LOGGER.debug("Clip content type detected, compatibility may "
|
|
||||||
"vary: %s", self.entity_id)
|
|
||||||
self._media_content_type = MEDIA_TYPE_TVSHOW
|
|
||||||
elif self._session_type == 'episode':
|
|
||||||
self._media_content_type = MEDIA_TYPE_TVSHOW
|
|
||||||
elif self._session_type == 'movie':
|
|
||||||
self._media_content_type = MEDIA_TYPE_VIDEO
|
|
||||||
elif self._session_type == 'track':
|
|
||||||
self._media_content_type = MEDIA_TYPE_MUSIC
|
|
||||||
|
|
||||||
# title (movie name, tv episode name, music song name)
|
# title (movie name, tv episode name, music song name)
|
||||||
if self._session and self._is_player_active:
|
if self._session and self._is_player_active:
|
||||||
@@ -445,6 +424,32 @@ class PlexClient(MediaPlayerDevice):
|
|||||||
|
|
||||||
self._media_image_url = thumb_url
|
self._media_image_url = thumb_url
|
||||||
|
|
||||||
|
def _set_player_state(self):
|
||||||
|
if self._player_state == 'playing':
|
||||||
|
self._is_player_active = True
|
||||||
|
self._state = STATE_PLAYING
|
||||||
|
elif self._player_state == 'paused':
|
||||||
|
self._is_player_active = True
|
||||||
|
self._state = STATE_PAUSED
|
||||||
|
elif self.device:
|
||||||
|
self._is_player_active = False
|
||||||
|
self._state = STATE_IDLE
|
||||||
|
else:
|
||||||
|
self._is_player_active = False
|
||||||
|
self._state = STATE_OFF
|
||||||
|
|
||||||
|
def _set_media_type(self):
|
||||||
|
if self._session_type == 'clip':
|
||||||
|
_LOGGER.debug("Clip content type detected, compatibility may "
|
||||||
|
"vary: %s", self.entity_id)
|
||||||
|
self._media_content_type = MEDIA_TYPE_TVSHOW
|
||||||
|
elif self._session_type == 'episode':
|
||||||
|
self._media_content_type = MEDIA_TYPE_TVSHOW
|
||||||
|
elif self._session_type == 'movie':
|
||||||
|
self._media_content_type = MEDIA_TYPE_VIDEO
|
||||||
|
elif self._session_type == 'track':
|
||||||
|
self._media_content_type = MEDIA_TYPE_MUSIC
|
||||||
|
|
||||||
def force_idle(self):
|
def force_idle(self):
|
||||||
"""Force client to idle."""
|
"""Force client to idle."""
|
||||||
self._state = STATE_IDLE
|
self._state = STATE_IDLE
|
||||||
|
Reference in New Issue
Block a user