Home Assistant Unofficial Reference 2024.12.1
homeassistant.components.plex.media_player.PlexMediaPlayer Class Reference
Inheritance diagram for homeassistant.components.plex.media_player.PlexMediaPlayer:
[legend]
Collaboration diagram for homeassistant.components.plex.media_player.PlexMediaPlayer:
[legend]

Public Member Functions

def __init__ (self, plex_server, device, player_source, session=None)
 
None async_added_to_hass (self)
 
BrowseMedia async_browse_media (self, MediaType|str|None media_content_type=None, str|None media_content_id=None)
 
def async_refresh_media_player (self, device, session, source)
 
def async_update_from_websocket (self, state)
 
DeviceInfo|None device_info (self)
 
def extra_state_attributes (self)
 
def force_idle (self)
 
def is_volume_muted (self)
 
def media_album_artist (self)
 
def media_album_name (self)
 
def media_artist (self)
 
def media_content_id (self)
 
def media_content_rating (self)
 
def media_content_type (self)
 
def media_duration (self)
 
def media_episode (self)
 
def media_image_url (self)
 
def media_library_title (self)
 
None media_next_track (self)
 
None media_pause (self)
 
None media_play (self)
 
def media_position (self)
 
def media_position_updated_at (self)
 
None media_previous_track (self)
 
def media_season (self)
 
None media_seek (self, float position)
 
def media_series_title (self)
 
None media_stop (self)
 
def media_summary (self)
 
def media_title (self)
 
def media_track (self)
 
None mute_volume (self, bool mute)
 
None play_media (self, MediaType|str media_type, str media_id, **Any kwargs)
 
def session (self)
 
def session (self, session)
 
def session_key (self)
 
None set_volume_level (self, float volume)
 
MediaPlayerEntityFeature supported_features (self)
 
def update (self)
 
def update_state (self, state)
 
def username (self)
 
def volume_level (self)
 
- Public Member Functions inherited from homeassistant.components.media_player.MediaPlayerEntity
str access_token (self)
 
str|None app_id (self)
 
str|None app_name (self)
 
None async_clear_playlist (self)
 
tuple[bytes|None, str|Noneasync_get_browse_image (self, str media_content_type, str media_content_id, str|None media_image_id=None)
 
tuple[bytes|None, str|Noneasync_get_media_image (self)
 
None async_join_players (self, list[str] group_members)
 
None async_media_next_track (self)
 
None async_media_pause (self)
 
None async_media_play (self)
 
None async_media_play_pause (self)
 
None async_media_previous_track (self)
 
None async_media_seek (self, float position)
 
None async_media_stop (self)
 
None async_mute_volume (self, bool mute)
 
None async_play_media (self, MediaType|str media_type, str media_id, **Any kwargs)
 
None async_select_sound_mode (self, str sound_mode)
 
None async_select_source (self, str source)
 
None async_set_repeat (self, RepeatMode repeat)
 
None async_set_shuffle (self, bool shuffle)
 
None async_set_volume_level (self, float volume)
 
None async_toggle (self)
 
None async_turn_off (self)
 
None async_turn_on (self)
 
None async_unjoin_player (self)
 
None async_volume_down (self)
 
None async_volume_up (self)
 
dict[str, Any] capability_attributes (self)
 
None clear_playlist (self)
 
MediaPlayerDeviceClass|None device_class (self)
 
str|None entity_picture (self)
 
str get_browse_image_url (self, str media_content_type, str media_content_id, str|None media_image_id=None)
 
list[str]|None group_members (self)
 
None join_players (self, list[str] group_members)
 
str|None media_channel (self)
 
str|None media_image_hash (self)
 
str|None media_image_local (self)
 
bool media_image_remotely_accessible (self)
 
str|None media_playlist (self)
 
RepeatMode|str|None repeat (self)
 
None select_sound_mode (self, str sound_mode)
 
None select_source (self, str source)
 
None set_repeat (self, RepeatMode repeat)
 
None set_shuffle (self, bool shuffle)
 
bool|None shuffle (self)
 
str|None sound_mode (self)
 
list[str]|None sound_mode_list (self)
 
str|None source (self)
 
list[str]|None source_list (self)
 
MediaPlayerState|None state (self)
 
dict[str, Any] state_attributes (self)
 
bool support_clear_playlist (self)
 
bool support_grouping (self)
 
bool support_next_track (self)
 
bool support_pause (self)
 
bool support_play (self)
 
bool support_play_media (self)
 
bool support_previous_track (self)
 
bool support_seek (self)
 
bool support_select_sound_mode (self)
 
bool support_select_source (self)
 
bool support_shuffle_set (self)
 
bool support_stop (self)
 
bool support_volume_mute (self)
 
bool support_volume_set (self)
 
MediaPlayerEntityFeature supported_features_compat (self)
 
None turn_off (self)
 
None turn_on (self)
 
None unjoin_player (self)
 
float volume_step (self)
 
- Public Member Functions inherited from homeassistant.helpers.entity.Entity
None __init_subclass__ (cls, **Any kwargs)
 
str __repr__ (self)
 
None add_to_platform_abort (self)
 
None add_to_platform_finish (self)
 
None add_to_platform_start (self, HomeAssistant hass, EntityPlatform platform, asyncio.Semaphore|None parallel_updates)
 
bool assumed_state (self)
 
None async_device_update (self, bool warning=True)
 
None async_internal_added_to_hass (self)
 
None async_internal_will_remove_from_hass (self)
 
None async_on_remove (self, CALLBACK_TYPE func)
 
None async_registry_entry_updated (self)
 
None async_remove (self, *bool force_remove=False)
 
None async_removed_from_registry (self)
 
None async_schedule_update_ha_state (self, bool force_refresh=False)
 
None async_set_context (self, Context context)
 
None async_update_ha_state (self, bool force_refresh=False)
 
None async_will_remove_from_hass (self)
 
None async_write_ha_state (self)
 
str|None attribution (self)
 
bool available (self)
 
bool enabled (self)
 
EntityCategory|None entity_category (self)
 
bool entity_registry_enabled_default (self)
 
bool entity_registry_visible_default (self)
 
bool force_update (self)
 
HassJobType get_hassjob_type (self, str function_name)
 
er.EntityOptionsType|None get_initial_entity_options (self)
 
bool has_entity_name (self)
 
str|None icon (self)
 
str|UndefinedType|None name (self)
 
None schedule_update_ha_state (self, bool force_refresh=False)
 
bool should_poll (self)
 
str|None suggested_object_id (self)
 
str|None translation_key (self)
 
Mapping[str, strtranslation_placeholders (self)
 
str|None unique_id (self)
 
str|None unit_of_measurement (self)
 
bool use_device_name (self)
 
- Public Member Functions inherited from homeassistant.helpers.entity.CachedProperties
None __init__ (cls, str name, tuple[type,...] bases, dict[Any, Any] namespace, **Any kwargs)
 
Any __new__ (mcs, str name, tuple[type,...] bases, dict[Any, Any] namespace, set[str]|None cached_properties=None, **Any kwargs)
 

Public Attributes

 device
 
 device_make
 
 device_platform
 
 device_product
 
 device_title
 
 device_version
 
 machine_identifier
 
 media_content_type
 
 player_source
 
 plex_server
 
 session
 
 session_device
 
- Public Attributes inherited from homeassistant.components.media_player.MediaPlayerEntity
 state
 
- Public Attributes inherited from homeassistant.helpers.entity.Entity
 device_entry
 
 entity_id
 
 hass
 
 parallel_updates
 
 platform
 
 registry_entry
 

Private Member Functions

def _active_media_plexapi_type (self)
 
def _is_player_active (self)
 

Private Attributes

 _attr_available
 
 _attr_name
 
 _attr_unique_id
 
 _device_protocol_capabilities
 
 _previous_volume_level
 
 _session
 
 _volume_level
 
 _volume_muted
 

Static Private Attributes

bool _attr_available = False
 
bool _attr_should_poll = False
 
 _attr_state = MediaPlayerState.IDLE
 

Additional Inherited Members

- Static Public Attributes inherited from homeassistant.components.media_player.MediaPlayerEntity
 bool
 
 MediaPlayerEntityFeature
 
 None
 
- Static Public Attributes inherited from homeassistant.helpers.entity.Entity
 bool
 
 EntityPlatform
 
 HomeAssistant
 
 None
 
 StateInfo
 
 StateType
 
 str
 

Detailed Description

Representation of a Plex device.

Definition at line 114 of file media_player.py.

Constructor & Destructor Documentation

◆ __init__()

def homeassistant.components.plex.media_player.PlexMediaPlayer.__init__ (   self,
  plex_server,
  device,
  player_source,
  session = None 
)
Initialize the Plex device.

Definition at line 121 of file media_player.py.

Member Function Documentation

◆ _active_media_plexapi_type()

def homeassistant.components.plex.media_player.PlexMediaPlayer._active_media_plexapi_type (   self)
private
Get the active media type required by PlexAPI commands.

Definition at line 272 of file media_player.py.

◆ _is_player_active()

def homeassistant.components.plex.media_player.PlexMediaPlayer._is_player_active (   self)
private
Report if the client is playing media.

Definition at line 267 of file media_player.py.

◆ async_added_to_hass()

None homeassistant.components.plex.media_player.PlexMediaPlayer.async_added_to_hass (   self)
Run when about to be added to hass.

Reimplemented from homeassistant.helpers.entity.Entity.

Definition at line 147 of file media_player.py.

◆ async_browse_media()

BrowseMedia homeassistant.components.plex.media_player.PlexMediaPlayer.async_browse_media (   self,
MediaType | str | None   media_content_type = None,
str | None   media_content_id = None 
)
Implement the websocket media browsing helper.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 543 of file media_player.py.

◆ async_refresh_media_player()

def homeassistant.components.plex.media_player.PlexMediaPlayer.async_refresh_media_player (   self,
  device,
  session,
  source 
)
Set instance objects and trigger an entity state update.

Definition at line 167 of file media_player.py.

◆ async_update_from_websocket()

def homeassistant.components.plex.media_player.PlexMediaPlayer.async_update_from_websocket (   self,
  state 
)
Update the entity based on new websocket data.

Definition at line 182 of file media_player.py.

◆ device_info()

DeviceInfo | None homeassistant.components.plex.media_player.PlexMediaPlayer.device_info (   self)
Return a device description for device registry.

Reimplemented from homeassistant.helpers.entity.Entity.

Definition at line 517 of file media_player.py.

◆ extra_state_attributes()

def homeassistant.components.plex.media_player.PlexMediaPlayer.extra_state_attributes (   self)
Return the scene state attributes.

Reimplemented from homeassistant.helpers.entity.Entity.

Definition at line 501 of file media_player.py.

◆ force_idle()

def homeassistant.components.plex.media_player.PlexMediaPlayer.force_idle (   self)
Force client to idle.

Definition at line 226 of file media_player.py.

◆ is_volume_muted()

def homeassistant.components.plex.media_player.PlexMediaPlayer.is_volume_muted (   self)
Return boolean if volume is currently muted.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 426 of file media_player.py.

◆ media_album_artist()

def homeassistant.components.plex.media_player.PlexMediaPlayer.media_album_artist (   self)
Return the album artist of current playing media, music only.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 323 of file media_player.py.

◆ media_album_name()

def homeassistant.components.plex.media_player.PlexMediaPlayer.media_album_name (   self)
Return the album name of current playing media, music track only.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 317 of file media_player.py.

◆ media_artist()

def homeassistant.components.plex.media_player.PlexMediaPlayer.media_artist (   self)
Return the artist of current playing media, music track only.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 311 of file media_player.py.

◆ media_content_id()

def homeassistant.components.plex.media_player.PlexMediaPlayer.media_content_id (   self)
Return the content ID of current playing media.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 293 of file media_player.py.

◆ media_content_rating()

def homeassistant.components.plex.media_player.PlexMediaPlayer.media_content_rating (   self)
Return the content rating of current playing media.

Definition at line 305 of file media_player.py.

◆ media_content_type()

def homeassistant.components.plex.media_player.PlexMediaPlayer.media_content_type (   self)
Return the content type of current playing media.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 299 of file media_player.py.

◆ media_duration()

def homeassistant.components.plex.media_player.PlexMediaPlayer.media_duration (   self)
Return the duration of current playing media in seconds.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 335 of file media_player.py.

◆ media_episode()

def homeassistant.components.plex.media_player.PlexMediaPlayer.media_episode (   self)
Return the episode of current playing media (TV Show only).

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 383 of file media_player.py.

◆ media_image_url()

def homeassistant.components.plex.media_player.PlexMediaPlayer.media_image_url (   self)
Return the image URL of current playing media.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 353 of file media_player.py.

◆ media_library_title()

def homeassistant.components.plex.media_player.PlexMediaPlayer.media_library_title (   self)
Return the library name of playing media.

Definition at line 287 of file media_player.py.

◆ media_next_track()

None homeassistant.components.plex.media_player.PlexMediaPlayer.media_next_track (   self)
Send next track command.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 469 of file media_player.py.

◆ media_pause()

None homeassistant.components.plex.media_player.PlexMediaPlayer.media_pause (   self)
Send pause command.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 454 of file media_player.py.

◆ media_play()

None homeassistant.components.plex.media_player.PlexMediaPlayer.media_play (   self)
Send play command.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 449 of file media_player.py.

◆ media_position()

def homeassistant.components.plex.media_player.PlexMediaPlayer.media_position (   self)
Return the duration of current playing media in seconds.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 341 of file media_player.py.

◆ media_position_updated_at()

def homeassistant.components.plex.media_player.PlexMediaPlayer.media_position_updated_at (   self)
When was the position of the current playing media valid.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 347 of file media_player.py.

◆ media_previous_track()

None homeassistant.components.plex.media_player.PlexMediaPlayer.media_previous_track (   self)
Send previous track command.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 474 of file media_player.py.

◆ media_season()

def homeassistant.components.plex.media_player.PlexMediaPlayer.media_season (   self)
Return the season of current playing media (TV Show only).

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 371 of file media_player.py.

◆ media_seek()

None homeassistant.components.plex.media_player.PlexMediaPlayer.media_seek (   self,
float  position 
)
Send the seek command.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 464 of file media_player.py.

◆ media_series_title()

def homeassistant.components.plex.media_player.PlexMediaPlayer.media_series_title (   self)
Return the title of the series of current playing media.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 377 of file media_player.py.

◆ media_stop()

None homeassistant.components.plex.media_player.PlexMediaPlayer.media_stop (   self)
Send stop command.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 459 of file media_player.py.

◆ media_summary()

def homeassistant.components.plex.media_player.PlexMediaPlayer.media_summary (   self)
Return the summary of current playing media.

Definition at line 359 of file media_player.py.

◆ media_title()

def homeassistant.components.plex.media_player.PlexMediaPlayer.media_title (   self)
Return the title of current playing media.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 365 of file media_player.py.

◆ media_track()

def homeassistant.components.plex.media_player.PlexMediaPlayer.media_track (   self)
Return the track number of current playing media, music only.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 329 of file media_player.py.

◆ mute_volume()

None homeassistant.components.plex.media_player.PlexMediaPlayer.mute_volume (   self,
bool  mute 
)
Mute the volume.

Since we can't actually mute, we'll:
- On mute, store volume and set volume to 0
- On unmute, set volume to previously stored volume

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 432 of file media_player.py.

◆ play_media()

None homeassistant.components.plex.media_player.PlexMediaPlayer.play_media (   self,
MediaType | str  media_type,
str  media_id,
**Any   kwargs 
)
Play a piece of media.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 479 of file media_player.py.

◆ session() [1/2]

def homeassistant.components.plex.media_player.PlexMediaPlayer.session (   self)
Return the active session for this player.

Definition at line 235 of file media_player.py.

◆ session() [2/2]

def homeassistant.components.plex.media_player.PlexMediaPlayer.session (   self,
  session 
)

Definition at line 240 of file media_player.py.

◆ session_key()

def homeassistant.components.plex.media_player.PlexMediaPlayer.session_key (   self)
Return current session key.

Definition at line 281 of file media_player.py.

◆ set_volume_level()

None homeassistant.components.plex.media_player.PlexMediaPlayer.set_volume_level (   self,
float  volume 
)
Set volume level, range 0..1.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 408 of file media_player.py.

◆ supported_features()

MediaPlayerEntityFeature homeassistant.components.plex.media_player.PlexMediaPlayer.supported_features (   self)
Flag media player features that are supported.

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 388 of file media_player.py.

◆ update()

def homeassistant.components.plex.media_player.PlexMediaPlayer.update (   self)
Refresh key device data.

Definition at line 192 of file media_player.py.

◆ update_state()

def homeassistant.components.plex.media_player.PlexMediaPlayer.update_state (   self,
  state 
)
Set the state of the device, handle session termination.

Definition at line 254 of file media_player.py.

◆ username()

def homeassistant.components.plex.media_player.PlexMediaPlayer.username (   self)
Return the username of the client owner.

Definition at line 250 of file media_player.py.

◆ volume_level()

def homeassistant.components.plex.media_player.PlexMediaPlayer.volume_level (   self)
Return the volume level of the client (0..1).

Reimplemented from homeassistant.components.media_player.MediaPlayerEntity.

Definition at line 415 of file media_player.py.

Member Data Documentation

◆ _attr_available [1/2]

bool homeassistant.components.plex.media_player.PlexMediaPlayer._attr_available = False
staticprivate

Definition at line 117 of file media_player.py.

◆ _attr_available [2/2]

homeassistant.components.plex.media_player.PlexMediaPlayer._attr_available
private

Definition at line 197 of file media_player.py.

◆ _attr_name

homeassistant.components.plex.media_player.PlexMediaPlayer._attr_name
private

Definition at line 224 of file media_player.py.

◆ _attr_should_poll

bool homeassistant.components.plex.media_player.PlexMediaPlayer._attr_should_poll = False
staticprivate

Definition at line 118 of file media_player.py.

◆ _attr_state

homeassistant.components.plex.media_player.PlexMediaPlayer._attr_state = MediaPlayerState.IDLE
staticprivate

Definition at line 119 of file media_player.py.

◆ _attr_unique_id

homeassistant.components.plex.media_player.PlexMediaPlayer._attr_unique_id
private

Definition at line 140 of file media_player.py.

◆ _device_protocol_capabilities

homeassistant.components.plex.media_player.PlexMediaPlayer._device_protocol_capabilities
private

Definition at line 135 of file media_player.py.

◆ _previous_volume_level

homeassistant.components.plex.media_player.PlexMediaPlayer._previous_volume_level
private

Definition at line 136 of file media_player.py.

◆ _session

homeassistant.components.plex.media_player.PlexMediaPlayer._session
private

Definition at line 241 of file media_player.py.

◆ _volume_level

homeassistant.components.plex.media_player.PlexMediaPlayer._volume_level
private

Definition at line 137 of file media_player.py.

◆ _volume_muted

homeassistant.components.plex.media_player.PlexMediaPlayer._volume_muted
private

Definition at line 138 of file media_player.py.

◆ device

homeassistant.components.plex.media_player.PlexMediaPlayer.device

Definition at line 124 of file media_player.py.

◆ device_make

homeassistant.components.plex.media_player.PlexMediaPlayer.device_make

Definition at line 127 of file media_player.py.

◆ device_platform

homeassistant.components.plex.media_player.PlexMediaPlayer.device_platform

Definition at line 128 of file media_player.py.

◆ device_product

homeassistant.components.plex.media_player.PlexMediaPlayer.device_product

Definition at line 129 of file media_player.py.

◆ device_title

homeassistant.components.plex.media_player.PlexMediaPlayer.device_title

Definition at line 130 of file media_player.py.

◆ device_version

homeassistant.components.plex.media_player.PlexMediaPlayer.device_version

Definition at line 131 of file media_player.py.

◆ machine_identifier

homeassistant.components.plex.media_player.PlexMediaPlayer.machine_identifier

Definition at line 132 of file media_player.py.

◆ media_content_type

homeassistant.components.plex.media_player.PlexMediaPlayer.media_content_type

Definition at line 274 of file media_player.py.

◆ player_source

homeassistant.components.plex.media_player.PlexMediaPlayer.player_source

Definition at line 125 of file media_player.py.

◆ plex_server

homeassistant.components.plex.media_player.PlexMediaPlayer.plex_server

Definition at line 123 of file media_player.py.

◆ session

homeassistant.components.plex.media_player.PlexMediaPlayer.session

Definition at line 145 of file media_player.py.

◆ session_device

homeassistant.components.plex.media_player.PlexMediaPlayer.session_device

Definition at line 133 of file media_player.py.


The documentation for this class was generated from the following file: