mirror of
https://github.com/home-assistant/core.git
synced 2025-07-22 20:57:21 +00:00
Use new media player enums in universal (#78112)
This commit is contained in:
parent
0d88567e0e
commit
7eefaa308f
@ -7,12 +7,6 @@ from typing import Any
|
|||||||
import voluptuous as vol
|
import voluptuous as vol
|
||||||
|
|
||||||
from homeassistant.components.media_player import (
|
from homeassistant.components.media_player import (
|
||||||
DEVICE_CLASSES_SCHEMA,
|
|
||||||
PLATFORM_SCHEMA,
|
|
||||||
MediaPlayerEntity,
|
|
||||||
MediaPlayerEntityFeature,
|
|
||||||
)
|
|
||||||
from homeassistant.components.media_player.const import (
|
|
||||||
ATTR_APP_ID,
|
ATTR_APP_ID,
|
||||||
ATTR_APP_NAME,
|
ATTR_APP_NAME,
|
||||||
ATTR_INPUT_SOURCE,
|
ATTR_INPUT_SOURCE,
|
||||||
@ -39,11 +33,16 @@ from homeassistant.components.media_player.const import (
|
|||||||
ATTR_MEDIA_VOLUME_MUTED,
|
ATTR_MEDIA_VOLUME_MUTED,
|
||||||
ATTR_SOUND_MODE,
|
ATTR_SOUND_MODE,
|
||||||
ATTR_SOUND_MODE_LIST,
|
ATTR_SOUND_MODE_LIST,
|
||||||
|
DEVICE_CLASSES_SCHEMA,
|
||||||
DOMAIN,
|
DOMAIN,
|
||||||
|
PLATFORM_SCHEMA,
|
||||||
SERVICE_CLEAR_PLAYLIST,
|
SERVICE_CLEAR_PLAYLIST,
|
||||||
SERVICE_PLAY_MEDIA,
|
SERVICE_PLAY_MEDIA,
|
||||||
SERVICE_SELECT_SOUND_MODE,
|
SERVICE_SELECT_SOUND_MODE,
|
||||||
SERVICE_SELECT_SOURCE,
|
SERVICE_SELECT_SOURCE,
|
||||||
|
MediaPlayerEntity,
|
||||||
|
MediaPlayerEntityFeature,
|
||||||
|
MediaPlayerState,
|
||||||
)
|
)
|
||||||
from homeassistant.const import (
|
from homeassistant.const import (
|
||||||
ATTR_ENTITY_ID,
|
ATTR_ENTITY_ID,
|
||||||
@ -71,13 +70,7 @@ from homeassistant.const import (
|
|||||||
SERVICE_VOLUME_MUTE,
|
SERVICE_VOLUME_MUTE,
|
||||||
SERVICE_VOLUME_SET,
|
SERVICE_VOLUME_SET,
|
||||||
SERVICE_VOLUME_UP,
|
SERVICE_VOLUME_UP,
|
||||||
STATE_BUFFERING,
|
|
||||||
STATE_IDLE,
|
|
||||||
STATE_OFF,
|
|
||||||
STATE_ON,
|
STATE_ON,
|
||||||
STATE_PAUSED,
|
|
||||||
STATE_PLAYING,
|
|
||||||
STATE_STANDBY,
|
|
||||||
STATE_UNAVAILABLE,
|
STATE_UNAVAILABLE,
|
||||||
STATE_UNKNOWN,
|
STATE_UNKNOWN,
|
||||||
)
|
)
|
||||||
@ -103,16 +96,16 @@ CONF_COMMANDS = "commands"
|
|||||||
STATES_ORDER = [
|
STATES_ORDER = [
|
||||||
STATE_UNKNOWN,
|
STATE_UNKNOWN,
|
||||||
STATE_UNAVAILABLE,
|
STATE_UNAVAILABLE,
|
||||||
STATE_OFF,
|
MediaPlayerState.OFF,
|
||||||
STATE_IDLE,
|
MediaPlayerState.IDLE,
|
||||||
STATE_STANDBY,
|
MediaPlayerState.STANDBY,
|
||||||
STATE_ON,
|
MediaPlayerState.ON,
|
||||||
STATE_PAUSED,
|
MediaPlayerState.PAUSED,
|
||||||
STATE_BUFFERING,
|
MediaPlayerState.BUFFERING,
|
||||||
STATE_PLAYING,
|
MediaPlayerState.PLAYING,
|
||||||
]
|
]
|
||||||
STATES_ORDER_LOOKUP = {state: idx for idx, state in enumerate(STATES_ORDER)}
|
STATES_ORDER_LOOKUP = {state: idx for idx, state in enumerate(STATES_ORDER)}
|
||||||
STATES_ORDER_IDLE = STATES_ORDER_LOOKUP[STATE_IDLE]
|
STATES_ORDER_IDLE = STATES_ORDER_LOOKUP[MediaPlayerState.IDLE]
|
||||||
|
|
||||||
ATTRS_SCHEMA = cv.schema_with_slug_keys(cv.string)
|
ATTRS_SCHEMA = cv.schema_with_slug_keys(cv.string)
|
||||||
CMD_SCHEMA = cv.schema_with_slug_keys(cv.SERVICE_SCHEMA)
|
CMD_SCHEMA = cv.schema_with_slug_keys(cv.SERVICE_SCHEMA)
|
||||||
@ -299,7 +292,7 @@ class UniversalMediaPlayer(MediaPlayerEntity):
|
|||||||
master_state = self._entity_lkp(
|
master_state = self._entity_lkp(
|
||||||
self._attrs[CONF_STATE][0], self._attrs[CONF_STATE][1]
|
self._attrs[CONF_STATE][0], self._attrs[CONF_STATE][1]
|
||||||
)
|
)
|
||||||
return master_state if master_state else STATE_OFF
|
return master_state if master_state else MediaPlayerState.OFF
|
||||||
|
|
||||||
return None
|
return None
|
||||||
|
|
||||||
@ -317,13 +310,13 @@ class UniversalMediaPlayer(MediaPlayerEntity):
|
|||||||
else master state or off
|
else master state or off
|
||||||
"""
|
"""
|
||||||
master_state = self.master_state # avoid multiple lookups
|
master_state = self.master_state # avoid multiple lookups
|
||||||
if (master_state == STATE_OFF) or (self._state_template is not None):
|
if (master_state == MediaPlayerState.OFF) or (self._state_template is not None):
|
||||||
return master_state
|
return master_state
|
||||||
|
|
||||||
if active_child := self._child_state:
|
if active_child := self._child_state:
|
||||||
return active_child.state
|
return active_child.state
|
||||||
|
|
||||||
return master_state if master_state else STATE_OFF
|
return master_state if master_state else MediaPlayerState.OFF
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def volume_level(self):
|
def volume_level(self):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user