Use new media player enums in universal (#78112)

This commit is contained in:
epenet 2022-09-10 22:29:04 +02:00 committed by GitHub
parent 0d88567e0e
commit 7eefaa308f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -7,12 +7,6 @@ from typing import Any
import voluptuous as vol
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_NAME,
ATTR_INPUT_SOURCE,
@ -39,11 +33,16 @@ from homeassistant.components.media_player.const import (
ATTR_MEDIA_VOLUME_MUTED,
ATTR_SOUND_MODE,
ATTR_SOUND_MODE_LIST,
DEVICE_CLASSES_SCHEMA,
DOMAIN,
PLATFORM_SCHEMA,
SERVICE_CLEAR_PLAYLIST,
SERVICE_PLAY_MEDIA,
SERVICE_SELECT_SOUND_MODE,
SERVICE_SELECT_SOURCE,
MediaPlayerEntity,
MediaPlayerEntityFeature,
MediaPlayerState,
)
from homeassistant.const import (
ATTR_ENTITY_ID,
@ -71,13 +70,7 @@ from homeassistant.const import (
SERVICE_VOLUME_MUTE,
SERVICE_VOLUME_SET,
SERVICE_VOLUME_UP,
STATE_BUFFERING,
STATE_IDLE,
STATE_OFF,
STATE_ON,
STATE_PAUSED,
STATE_PLAYING,
STATE_STANDBY,
STATE_UNAVAILABLE,
STATE_UNKNOWN,
)
@ -103,16 +96,16 @@ CONF_COMMANDS = "commands"
STATES_ORDER = [
STATE_UNKNOWN,
STATE_UNAVAILABLE,
STATE_OFF,
STATE_IDLE,
STATE_STANDBY,
STATE_ON,
STATE_PAUSED,
STATE_BUFFERING,
STATE_PLAYING,
MediaPlayerState.OFF,
MediaPlayerState.IDLE,
MediaPlayerState.STANDBY,
MediaPlayerState.ON,
MediaPlayerState.PAUSED,
MediaPlayerState.BUFFERING,
MediaPlayerState.PLAYING,
]
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)
CMD_SCHEMA = cv.schema_with_slug_keys(cv.SERVICE_SCHEMA)
@ -299,7 +292,7 @@ class UniversalMediaPlayer(MediaPlayerEntity):
master_state = self._entity_lkp(
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
@ -317,13 +310,13 @@ class UniversalMediaPlayer(MediaPlayerEntity):
else master state or off
"""
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
if active_child := self._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
def volume_level(self):