mirror of
https://github.com/home-assistant/core.git
synced 2025-07-27 15:17:35 +00:00
Use EntityFeature enum in components (y**) (#69470)
This commit is contained in:
parent
190ef4ee35
commit
3aeb53ec98
@ -9,10 +9,9 @@ from yalesmartalarmclient.const import (
|
|||||||
YALE_STATE_DISARM,
|
YALE_STATE_DISARM,
|
||||||
)
|
)
|
||||||
|
|
||||||
from homeassistant.components.alarm_control_panel import AlarmControlPanelEntity
|
from homeassistant.components.alarm_control_panel import (
|
||||||
from homeassistant.components.alarm_control_panel.const import (
|
AlarmControlPanelEntity,
|
||||||
SUPPORT_ALARM_ARM_AWAY,
|
AlarmControlPanelEntityFeature,
|
||||||
SUPPORT_ALARM_ARM_HOME,
|
|
||||||
)
|
)
|
||||||
from homeassistant.config_entries import ConfigEntry
|
from homeassistant.config_entries import ConfigEntry
|
||||||
from homeassistant.const import CONF_NAME
|
from homeassistant.const import CONF_NAME
|
||||||
@ -40,7 +39,10 @@ class YaleAlarmDevice(YaleAlarmEntity, AlarmControlPanelEntity):
|
|||||||
"""Represent a Yale Smart Alarm."""
|
"""Represent a Yale Smart Alarm."""
|
||||||
|
|
||||||
_attr_code_arm_required = False
|
_attr_code_arm_required = False
|
||||||
_attr_supported_features = SUPPORT_ALARM_ARM_HOME | SUPPORT_ALARM_ARM_AWAY
|
_attr_supported_features = (
|
||||||
|
AlarmControlPanelEntityFeature.ARM_HOME
|
||||||
|
| AlarmControlPanelEntityFeature.ARM_AWAY
|
||||||
|
)
|
||||||
|
|
||||||
def __init__(self, coordinator: YaleDataUpdateCoordinator) -> None:
|
def __init__(self, coordinator: YaleDataUpdateCoordinator) -> None:
|
||||||
"""Initialize the Yale Alarm Device."""
|
"""Initialize the Yale Alarm Device."""
|
||||||
|
@ -7,22 +7,12 @@ import requests
|
|||||||
import rxv
|
import rxv
|
||||||
import voluptuous as vol
|
import voluptuous as vol
|
||||||
|
|
||||||
from homeassistant.components.media_player import PLATFORM_SCHEMA, MediaPlayerEntity
|
from homeassistant.components.media_player import (
|
||||||
from homeassistant.components.media_player.const import (
|
PLATFORM_SCHEMA,
|
||||||
MEDIA_TYPE_MUSIC,
|
MediaPlayerEntity,
|
||||||
SUPPORT_NEXT_TRACK,
|
MediaPlayerEntityFeature,
|
||||||
SUPPORT_PAUSE,
|
|
||||||
SUPPORT_PLAY,
|
|
||||||
SUPPORT_PLAY_MEDIA,
|
|
||||||
SUPPORT_PREVIOUS_TRACK,
|
|
||||||
SUPPORT_SELECT_SOUND_MODE,
|
|
||||||
SUPPORT_SELECT_SOURCE,
|
|
||||||
SUPPORT_STOP,
|
|
||||||
SUPPORT_TURN_OFF,
|
|
||||||
SUPPORT_TURN_ON,
|
|
||||||
SUPPORT_VOLUME_MUTE,
|
|
||||||
SUPPORT_VOLUME_SET,
|
|
||||||
)
|
)
|
||||||
|
from homeassistant.components.media_player.const import MEDIA_TYPE_MUSIC
|
||||||
from homeassistant.const import (
|
from homeassistant.const import (
|
||||||
CONF_HOST,
|
CONF_HOST,
|
||||||
CONF_NAME,
|
CONF_NAME,
|
||||||
@ -73,13 +63,13 @@ DATA_YAMAHA = "yamaha_known_receivers"
|
|||||||
DEFAULT_NAME = "Yamaha Receiver"
|
DEFAULT_NAME = "Yamaha Receiver"
|
||||||
|
|
||||||
SUPPORT_YAMAHA = (
|
SUPPORT_YAMAHA = (
|
||||||
SUPPORT_VOLUME_SET
|
MediaPlayerEntityFeature.VOLUME_SET
|
||||||
| SUPPORT_VOLUME_MUTE
|
| MediaPlayerEntityFeature.VOLUME_MUTE
|
||||||
| SUPPORT_TURN_ON
|
| MediaPlayerEntityFeature.TURN_ON
|
||||||
| SUPPORT_TURN_OFF
|
| MediaPlayerEntityFeature.TURN_OFF
|
||||||
| SUPPORT_SELECT_SOURCE
|
| MediaPlayerEntityFeature.SELECT_SOURCE
|
||||||
| SUPPORT_PLAY
|
| MediaPlayerEntityFeature.PLAY
|
||||||
| SUPPORT_SELECT_SOUND_MODE
|
| MediaPlayerEntityFeature.SELECT_SOUND_MODE
|
||||||
)
|
)
|
||||||
|
|
||||||
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
|
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
|
||||||
@ -332,11 +322,13 @@ class YamahaDevice(MediaPlayerEntity):
|
|||||||
|
|
||||||
supports = self._playback_support
|
supports = self._playback_support
|
||||||
mapping = {
|
mapping = {
|
||||||
"play": (SUPPORT_PLAY | SUPPORT_PLAY_MEDIA),
|
"play": (
|
||||||
"pause": SUPPORT_PAUSE,
|
MediaPlayerEntityFeature.PLAY | MediaPlayerEntityFeature.PLAY_MEDIA
|
||||||
"stop": SUPPORT_STOP,
|
),
|
||||||
"skip_f": SUPPORT_NEXT_TRACK,
|
"pause": MediaPlayerEntityFeature.PAUSE,
|
||||||
"skip_r": SUPPORT_PREVIOUS_TRACK,
|
"stop": MediaPlayerEntityFeature.STOP,
|
||||||
|
"skip_f": MediaPlayerEntityFeature.NEXT_TRACK,
|
||||||
|
"skip_r": MediaPlayerEntityFeature.PREVIOUS_TRACK,
|
||||||
}
|
}
|
||||||
for attr, feature in mapping.items():
|
for attr, feature in mapping.items():
|
||||||
if getattr(supports, attr, False):
|
if getattr(supports, attr, False):
|
||||||
|
@ -8,7 +8,11 @@ from aiomusiccast import MusicCastGroupException, MusicCastMediaContent
|
|||||||
from aiomusiccast.features import ZoneFeature
|
from aiomusiccast.features import ZoneFeature
|
||||||
|
|
||||||
from homeassistant.components import media_source
|
from homeassistant.components import media_source
|
||||||
from homeassistant.components.media_player import BrowseMedia, MediaPlayerEntity
|
from homeassistant.components.media_player import (
|
||||||
|
BrowseMedia,
|
||||||
|
MediaPlayerEntity,
|
||||||
|
MediaPlayerEntityFeature,
|
||||||
|
)
|
||||||
from homeassistant.components.media_player.browse_media import (
|
from homeassistant.components.media_player.browse_media import (
|
||||||
async_process_play_media_url,
|
async_process_play_media_url,
|
||||||
)
|
)
|
||||||
@ -17,23 +21,6 @@ from homeassistant.components.media_player.const import (
|
|||||||
MEDIA_CLASS_TRACK,
|
MEDIA_CLASS_TRACK,
|
||||||
MEDIA_TYPE_MUSIC,
|
MEDIA_TYPE_MUSIC,
|
||||||
REPEAT_MODE_OFF,
|
REPEAT_MODE_OFF,
|
||||||
SUPPORT_BROWSE_MEDIA,
|
|
||||||
SUPPORT_GROUPING,
|
|
||||||
SUPPORT_NEXT_TRACK,
|
|
||||||
SUPPORT_PAUSE,
|
|
||||||
SUPPORT_PLAY,
|
|
||||||
SUPPORT_PLAY_MEDIA,
|
|
||||||
SUPPORT_PREVIOUS_TRACK,
|
|
||||||
SUPPORT_REPEAT_SET,
|
|
||||||
SUPPORT_SELECT_SOUND_MODE,
|
|
||||||
SUPPORT_SELECT_SOURCE,
|
|
||||||
SUPPORT_SHUFFLE_SET,
|
|
||||||
SUPPORT_STOP,
|
|
||||||
SUPPORT_TURN_OFF,
|
|
||||||
SUPPORT_TURN_ON,
|
|
||||||
SUPPORT_VOLUME_MUTE,
|
|
||||||
SUPPORT_VOLUME_SET,
|
|
||||||
SUPPORT_VOLUME_STEP,
|
|
||||||
)
|
)
|
||||||
from homeassistant.config_entries import ConfigEntry
|
from homeassistant.config_entries import ConfigEntry
|
||||||
from homeassistant.const import STATE_IDLE, STATE_OFF, STATE_PAUSED, STATE_PLAYING
|
from homeassistant.const import STATE_IDLE, STATE_OFF, STATE_PAUSED, STATE_PLAYING
|
||||||
@ -58,12 +45,12 @@ from .const import (
|
|||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
|
|
||||||
MUSIC_PLAYER_BASE_SUPPORT = (
|
MUSIC_PLAYER_BASE_SUPPORT = (
|
||||||
SUPPORT_SHUFFLE_SET
|
MediaPlayerEntityFeature.SHUFFLE_SET
|
||||||
| SUPPORT_REPEAT_SET
|
| MediaPlayerEntityFeature.REPEAT_SET
|
||||||
| SUPPORT_SELECT_SOUND_MODE
|
| MediaPlayerEntityFeature.SELECT_SOUND_MODE
|
||||||
| SUPPORT_SELECT_SOURCE
|
| MediaPlayerEntityFeature.SELECT_SOURCE
|
||||||
| SUPPORT_GROUPING
|
| MediaPlayerEntityFeature.GROUPING
|
||||||
| SUPPORT_PLAY_MEDIA
|
| MediaPlayerEntityFeature.PLAY_MEDIA
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@ -449,23 +436,28 @@ class MusicCastMediaPlayer(MusicCastDeviceEntity, MediaPlayerEntity):
|
|||||||
zone = self.coordinator.data.zones[self._zone_id]
|
zone = self.coordinator.data.zones[self._zone_id]
|
||||||
|
|
||||||
if ZoneFeature.POWER in zone.features:
|
if ZoneFeature.POWER in zone.features:
|
||||||
supported_features |= SUPPORT_TURN_ON | SUPPORT_TURN_OFF
|
supported_features |= (
|
||||||
|
MediaPlayerEntityFeature.TURN_ON | MediaPlayerEntityFeature.TURN_OFF
|
||||||
|
)
|
||||||
if ZoneFeature.VOLUME in zone.features:
|
if ZoneFeature.VOLUME in zone.features:
|
||||||
supported_features |= SUPPORT_VOLUME_SET | SUPPORT_VOLUME_STEP
|
supported_features |= (
|
||||||
|
MediaPlayerEntityFeature.VOLUME_SET
|
||||||
|
| MediaPlayerEntityFeature.VOLUME_STEP
|
||||||
|
)
|
||||||
if ZoneFeature.MUTE in zone.features:
|
if ZoneFeature.MUTE in zone.features:
|
||||||
supported_features |= SUPPORT_VOLUME_MUTE
|
supported_features |= MediaPlayerEntityFeature.VOLUME_MUTE
|
||||||
|
|
||||||
if self._is_netusb or self._is_tuner:
|
if self._is_netusb or self._is_tuner:
|
||||||
supported_features |= SUPPORT_PREVIOUS_TRACK
|
supported_features |= MediaPlayerEntityFeature.PREVIOUS_TRACK
|
||||||
supported_features |= SUPPORT_NEXT_TRACK
|
supported_features |= MediaPlayerEntityFeature.NEXT_TRACK
|
||||||
|
|
||||||
if self._is_netusb:
|
if self._is_netusb:
|
||||||
supported_features |= SUPPORT_PAUSE
|
supported_features |= MediaPlayerEntityFeature.PAUSE
|
||||||
supported_features |= SUPPORT_PLAY
|
supported_features |= MediaPlayerEntityFeature.PLAY
|
||||||
supported_features |= SUPPORT_STOP
|
supported_features |= MediaPlayerEntityFeature.STOP
|
||||||
|
|
||||||
if self.state != STATE_OFF:
|
if self.state != STATE_OFF:
|
||||||
supported_features |= SUPPORT_BROWSE_MEDIA
|
supported_features |= MediaPlayerEntityFeature.BROWSE_MEDIA
|
||||||
|
|
||||||
return supported_features
|
return supported_features
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user