mirror of
https://github.com/home-assistant/core.git
synced 2025-07-20 19:57:07 +00:00
Pass None instead of empty dict when registering entity services (#123879)
* Pass None instead of empty dict when registering entity services * Update rainmachine
This commit is contained in:
parent
2c3d97d373
commit
5836f8edb5
@ -274,59 +274,59 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
|
||||
await component.async_setup(config)
|
||||
|
||||
component.async_register_entity_service(
|
||||
SERVICE_TURN_ON, {}, "async_turn_on", [MediaPlayerEntityFeature.TURN_ON]
|
||||
SERVICE_TURN_ON, None, "async_turn_on", [MediaPlayerEntityFeature.TURN_ON]
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_TURN_OFF, {}, "async_turn_off", [MediaPlayerEntityFeature.TURN_OFF]
|
||||
SERVICE_TURN_OFF, None, "async_turn_off", [MediaPlayerEntityFeature.TURN_OFF]
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_TOGGLE,
|
||||
{},
|
||||
None,
|
||||
"async_toggle",
|
||||
[MediaPlayerEntityFeature.TURN_OFF | MediaPlayerEntityFeature.TURN_ON],
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_VOLUME_UP,
|
||||
{},
|
||||
None,
|
||||
"async_volume_up",
|
||||
[MediaPlayerEntityFeature.VOLUME_SET, MediaPlayerEntityFeature.VOLUME_STEP],
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_VOLUME_DOWN,
|
||||
{},
|
||||
None,
|
||||
"async_volume_down",
|
||||
[MediaPlayerEntityFeature.VOLUME_SET, MediaPlayerEntityFeature.VOLUME_STEP],
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_MEDIA_PLAY_PAUSE,
|
||||
{},
|
||||
None,
|
||||
"async_media_play_pause",
|
||||
[MediaPlayerEntityFeature.PLAY | MediaPlayerEntityFeature.PAUSE],
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_MEDIA_PLAY, {}, "async_media_play", [MediaPlayerEntityFeature.PLAY]
|
||||
SERVICE_MEDIA_PLAY, None, "async_media_play", [MediaPlayerEntityFeature.PLAY]
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_MEDIA_PAUSE, {}, "async_media_pause", [MediaPlayerEntityFeature.PAUSE]
|
||||
SERVICE_MEDIA_PAUSE, None, "async_media_pause", [MediaPlayerEntityFeature.PAUSE]
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_MEDIA_STOP, {}, "async_media_stop", [MediaPlayerEntityFeature.STOP]
|
||||
SERVICE_MEDIA_STOP, None, "async_media_stop", [MediaPlayerEntityFeature.STOP]
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_MEDIA_NEXT_TRACK,
|
||||
{},
|
||||
None,
|
||||
"async_media_next_track",
|
||||
[MediaPlayerEntityFeature.NEXT_TRACK],
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_MEDIA_PREVIOUS_TRACK,
|
||||
{},
|
||||
None,
|
||||
"async_media_previous_track",
|
||||
[MediaPlayerEntityFeature.PREVIOUS_TRACK],
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_CLEAR_PLAYLIST,
|
||||
{},
|
||||
None,
|
||||
"async_clear_playlist",
|
||||
[MediaPlayerEntityFeature.CLEAR_PLAYLIST],
|
||||
)
|
||||
@ -423,7 +423,7 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
|
||||
[MediaPlayerEntityFeature.SHUFFLE_SET],
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_UNJOIN, {}, "async_unjoin_player", [MediaPlayerEntityFeature.GROUPING]
|
||||
SERVICE_UNJOIN, None, "async_unjoin_player", [MediaPlayerEntityFeature.GROUPING]
|
||||
)
|
||||
|
||||
component.async_register_entity_service(
|
||||
|
@ -56,7 +56,7 @@ async def async_setup_entry(
|
||||
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_CLEAR_FAN_SLEEP_TIMER,
|
||||
{},
|
||||
None,
|
||||
"async_clear_fan_sleep_timer",
|
||||
)
|
||||
|
||||
|
@ -61,7 +61,7 @@ async def async_setup_entry(
|
||||
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_CLEAR_LIGHT_SLEEP_TIMER,
|
||||
{},
|
||||
None,
|
||||
"async_clear_light_sleep_timer",
|
||||
)
|
||||
|
||||
|
@ -136,7 +136,7 @@ async def async_setup_entry(
|
||||
)
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_SNAPSHOT,
|
||||
{},
|
||||
None,
|
||||
"async_request_snapshot",
|
||||
)
|
||||
|
||||
|
@ -174,7 +174,7 @@ async def async_setup_entry(
|
||||
)
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_CLEAR_TEMPERATURE_SETTING,
|
||||
{},
|
||||
None,
|
||||
"_async_service_clear_temperature_setting",
|
||||
)
|
||||
|
||||
|
@ -31,7 +31,7 @@ async def async_setup_entry(
|
||||
platform = async_get_current_platform()
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_REQUEST_IMAGE,
|
||||
{},
|
||||
None,
|
||||
"async_request_image",
|
||||
)
|
||||
|
||||
|
@ -6,7 +6,7 @@ import asyncio
|
||||
from collections.abc import Awaitable, Callable, Coroutine
|
||||
from dataclasses import dataclass
|
||||
from datetime import datetime
|
||||
from typing import Any, Concatenate, cast
|
||||
from typing import Any, Concatenate
|
||||
|
||||
from regenmaschine.errors import RainMachineError
|
||||
import voluptuous as vol
|
||||
@ -184,8 +184,8 @@ async def async_setup_entry(
|
||||
"""Set up RainMachine switches based on a config entry."""
|
||||
platform = entity_platform.async_get_current_platform()
|
||||
|
||||
for service_name, schema, method in (
|
||||
("start_program", {}, "async_start_program"),
|
||||
services: tuple[tuple[str, VolDictType | None, str], ...] = (
|
||||
("start_program", None, "async_start_program"),
|
||||
(
|
||||
"start_zone",
|
||||
{
|
||||
@ -195,11 +195,11 @@ async def async_setup_entry(
|
||||
},
|
||||
"async_start_zone",
|
||||
),
|
||||
("stop_program", {}, "async_stop_program"),
|
||||
("stop_zone", {}, "async_stop_zone"),
|
||||
):
|
||||
schema_dict = cast(VolDictType, schema)
|
||||
platform.async_register_entity_service(service_name, schema_dict, method)
|
||||
("stop_program", None, "async_stop_program"),
|
||||
("stop_zone", None, "async_stop_zone"),
|
||||
)
|
||||
for service_name, schema, method in services:
|
||||
platform.async_register_entity_service(service_name, schema, method)
|
||||
|
||||
data = entry.runtime_data
|
||||
entities: list[RainMachineBaseSwitch] = []
|
||||
|
@ -69,7 +69,7 @@ async def async_setup_entry(
|
||||
|
||||
platform.async_register_entity_service(
|
||||
GET_MAPS_SERVICE_NAME,
|
||||
{},
|
||||
None,
|
||||
RoborockVacuum.get_maps.__name__,
|
||||
supports_response=SupportsResponse.ONLY,
|
||||
)
|
||||
|
@ -66,13 +66,13 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
|
||||
|
||||
component.async_register_entity_service(
|
||||
SERVICE_SELECT_FIRST,
|
||||
{},
|
||||
None,
|
||||
SelectEntity.async_first.__name__,
|
||||
)
|
||||
|
||||
component.async_register_entity_service(
|
||||
SERVICE_SELECT_LAST,
|
||||
{},
|
||||
None,
|
||||
SelectEntity.async_last.__name__,
|
||||
)
|
||||
|
||||
|
@ -129,11 +129,11 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
|
||||
[SirenEntityFeature.TURN_ON],
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_TURN_OFF, {}, "async_turn_off", [SirenEntityFeature.TURN_OFF]
|
||||
SERVICE_TURN_OFF, None, "async_turn_off", [SirenEntityFeature.TURN_OFF]
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_TOGGLE,
|
||||
{},
|
||||
None,
|
||||
"async_toggle",
|
||||
[SirenEntityFeature.TURN_ON | SirenEntityFeature.TURN_OFF],
|
||||
)
|
||||
|
@ -42,12 +42,12 @@ def register_services():
|
||||
"""Register snapcast services."""
|
||||
platform = entity_platform.async_get_current_platform()
|
||||
|
||||
platform.async_register_entity_service(SERVICE_SNAPSHOT, {}, "snapshot")
|
||||
platform.async_register_entity_service(SERVICE_RESTORE, {}, "async_restore")
|
||||
platform.async_register_entity_service(SERVICE_SNAPSHOT, None, "snapshot")
|
||||
platform.async_register_entity_service(SERVICE_RESTORE, None, "async_restore")
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_JOIN, {vol.Required(ATTR_MASTER): cv.entity_id}, handle_async_join
|
||||
)
|
||||
platform.async_register_entity_service(SERVICE_UNJOIN, {}, handle_async_unjoin)
|
||||
platform.async_register_entity_service(SERVICE_UNJOIN, None, handle_async_unjoin)
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_SET_LATENCY,
|
||||
{vol.Required(ATTR_LATENCY): cv.positive_int},
|
||||
|
@ -162,7 +162,9 @@ async def async_setup_entry(
|
||||
"set_sleep_timer",
|
||||
)
|
||||
|
||||
platform.async_register_entity_service(SERVICE_CLEAR_TIMER, {}, "clear_sleep_timer")
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_CLEAR_TIMER, None, "clear_sleep_timer"
|
||||
)
|
||||
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_UPDATE_ALARM,
|
||||
|
@ -185,7 +185,7 @@ async def async_setup_entry(
|
||||
{vol.Required(ATTR_OTHER_PLAYER): cv.string},
|
||||
"async_sync",
|
||||
)
|
||||
platform.async_register_entity_service(SERVICE_UNSYNC, {}, "async_unsync")
|
||||
platform.async_register_entity_service(SERVICE_UNSYNC, None, "async_unsync")
|
||||
|
||||
# Start server discovery task if not already running
|
||||
entry.async_on_unload(async_at_start(hass, start_server_discovery))
|
||||
|
@ -79,9 +79,9 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
|
||||
)
|
||||
await component.async_setup(config)
|
||||
|
||||
component.async_register_entity_service(SERVICE_TURN_OFF, {}, "async_turn_off")
|
||||
component.async_register_entity_service(SERVICE_TURN_ON, {}, "async_turn_on")
|
||||
component.async_register_entity_service(SERVICE_TOGGLE, {}, "async_toggle")
|
||||
component.async_register_entity_service(SERVICE_TURN_OFF, None, "async_turn_off")
|
||||
component.async_register_entity_service(SERVICE_TURN_ON, None, "async_turn_on")
|
||||
component.async_register_entity_service(SERVICE_TOGGLE, None, "async_toggle")
|
||||
|
||||
return True
|
||||
|
||||
|
@ -159,9 +159,9 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
|
||||
{vol.Optional(ATTR_DURATION, default=DEFAULT_DURATION): cv.time_period},
|
||||
"async_start",
|
||||
)
|
||||
component.async_register_entity_service(SERVICE_PAUSE, {}, "async_pause")
|
||||
component.async_register_entity_service(SERVICE_CANCEL, {}, "async_cancel")
|
||||
component.async_register_entity_service(SERVICE_FINISH, {}, "async_finish")
|
||||
component.async_register_entity_service(SERVICE_PAUSE, None, "async_pause")
|
||||
component.async_register_entity_service(SERVICE_CANCEL, None, "async_cancel")
|
||||
component.async_register_entity_service(SERVICE_FINISH, None, "async_finish")
|
||||
component.async_register_entity_service(
|
||||
SERVICE_CHANGE,
|
||||
{vol.Optional(ATTR_DURATION, default=DEFAULT_DURATION): cv.time_period},
|
||||
|
@ -183,7 +183,7 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
TodoServices.REMOVE_COMPLETED_ITEMS,
|
||||
{},
|
||||
None,
|
||||
_async_remove_completed_items,
|
||||
required_features=[TodoListEntityFeature.DELETE_TODO_ITEM],
|
||||
)
|
||||
|
@ -55,13 +55,13 @@ async def async_setup_entry(
|
||||
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_ALARM_ARM_AWAY_INSTANT,
|
||||
{},
|
||||
None,
|
||||
"async_alarm_arm_away_instant",
|
||||
)
|
||||
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_ALARM_ARM_HOME_INSTANT,
|
||||
{},
|
||||
None,
|
||||
"async_alarm_arm_home_instant",
|
||||
)
|
||||
|
||||
|
@ -42,7 +42,7 @@ async def async_setup_entry(
|
||||
SERVICE_LIGHT_FADE_START, UPB_BRIGHTNESS_RATE_SCHEMA, "async_light_fade_start"
|
||||
)
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_LIGHT_FADE_STOP, {}, "async_light_fade_stop"
|
||||
SERVICE_LIGHT_FADE_STOP, None, "async_light_fade_stop"
|
||||
)
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_LIGHT_BLINK, UPB_BLINK_RATE_SCHEMA, "async_light_blink"
|
||||
|
@ -31,10 +31,10 @@ async def async_setup_entry(
|
||||
platform = entity_platform.async_get_current_platform()
|
||||
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_LINK_DEACTIVATE, {}, "async_link_deactivate"
|
||||
SERVICE_LINK_DEACTIVATE, None, "async_link_deactivate"
|
||||
)
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_LINK_FADE_STOP, {}, "async_link_fade_stop"
|
||||
SERVICE_LINK_FADE_STOP, None, "async_link_fade_stop"
|
||||
)
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_LINK_GOTO, UPB_BRIGHTNESS_RATE_SCHEMA, "async_link_goto"
|
||||
|
@ -95,12 +95,12 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
|
||||
|
||||
component.async_register_entity_service(
|
||||
SERVICE_SKIP,
|
||||
{},
|
||||
None,
|
||||
async_skip,
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
"clear_skipped",
|
||||
{},
|
||||
None,
|
||||
async_clear_skipped,
|
||||
)
|
||||
|
||||
|
@ -116,37 +116,37 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
|
||||
|
||||
component.async_register_entity_service(
|
||||
SERVICE_START,
|
||||
{},
|
||||
None,
|
||||
"async_start",
|
||||
[VacuumEntityFeature.START],
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_PAUSE,
|
||||
{},
|
||||
None,
|
||||
"async_pause",
|
||||
[VacuumEntityFeature.PAUSE],
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_RETURN_TO_BASE,
|
||||
{},
|
||||
None,
|
||||
"async_return_to_base",
|
||||
[VacuumEntityFeature.RETURN_HOME],
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_CLEAN_SPOT,
|
||||
{},
|
||||
None,
|
||||
"async_clean_spot",
|
||||
[VacuumEntityFeature.CLEAN_SPOT],
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_LOCATE,
|
||||
{},
|
||||
None,
|
||||
"async_locate",
|
||||
[VacuumEntityFeature.LOCATE],
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_STOP,
|
||||
{},
|
||||
None,
|
||||
"async_stop",
|
||||
[VacuumEntityFeature.STOP],
|
||||
)
|
||||
|
@ -71,11 +71,14 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
|
||||
await component.async_setup(config)
|
||||
|
||||
component.async_register_entity_service(
|
||||
SERVICE_OPEN_VALVE, {}, "async_handle_open_valve", [ValveEntityFeature.OPEN]
|
||||
SERVICE_OPEN_VALVE, None, "async_handle_open_valve", [ValveEntityFeature.OPEN]
|
||||
)
|
||||
|
||||
component.async_register_entity_service(
|
||||
SERVICE_CLOSE_VALVE, {}, "async_handle_close_valve", [ValveEntityFeature.CLOSE]
|
||||
SERVICE_CLOSE_VALVE,
|
||||
None,
|
||||
"async_handle_close_valve",
|
||||
[ValveEntityFeature.CLOSE],
|
||||
)
|
||||
|
||||
component.async_register_entity_service(
|
||||
@ -90,12 +93,12 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
|
||||
)
|
||||
|
||||
component.async_register_entity_service(
|
||||
SERVICE_STOP_VALVE, {}, "async_stop_valve", [ValveEntityFeature.STOP]
|
||||
SERVICE_STOP_VALVE, None, "async_stop_valve", [ValveEntityFeature.STOP]
|
||||
)
|
||||
|
||||
component.async_register_entity_service(
|
||||
SERVICE_TOGGLE,
|
||||
{},
|
||||
None,
|
||||
"async_toggle",
|
||||
[ValveEntityFeature.OPEN | ValveEntityFeature.CLOSE],
|
||||
)
|
||||
|
@ -33,7 +33,7 @@ async def async_setup_entry(
|
||||
platform = async_get_current_platform()
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_CAPTURE_SMARTCAM,
|
||||
{},
|
||||
None,
|
||||
VerisureSmartcam.capture_smartcam.__name__,
|
||||
)
|
||||
|
||||
|
@ -41,12 +41,12 @@ async def async_setup_entry(
|
||||
platform = async_get_current_platform()
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_DISABLE_AUTOLOCK,
|
||||
{},
|
||||
None,
|
||||
VerisureDoorlock.disable_autolock.__name__,
|
||||
)
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_ENABLE_AUTOLOCK,
|
||||
{},
|
||||
None,
|
||||
VerisureDoorlock.enable_autolock.__name__,
|
||||
)
|
||||
|
||||
|
@ -129,10 +129,10 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
|
||||
await component.async_setup(config)
|
||||
|
||||
component.async_register_entity_service(
|
||||
SERVICE_TURN_ON, {}, "async_turn_on", [WaterHeaterEntityFeature.ON_OFF]
|
||||
SERVICE_TURN_ON, None, "async_turn_on", [WaterHeaterEntityFeature.ON_OFF]
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_TURN_OFF, {}, "async_turn_off", [WaterHeaterEntityFeature.ON_OFF]
|
||||
SERVICE_TURN_OFF, None, "async_turn_off", [WaterHeaterEntityFeature.ON_OFF]
|
||||
)
|
||||
component.async_register_entity_service(
|
||||
SERVICE_SET_AWAY_MODE, SET_AWAY_MODE_SCHEMA, async_service_away_mode
|
||||
|
@ -67,7 +67,7 @@ async def async_setup_entry(
|
||||
|
||||
# This will call WemoHumidifier.reset_filter_life()
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_RESET_FILTER_LIFE, {}, WemoHumidifier.reset_filter_life.__name__
|
||||
SERVICE_RESET_FILTER_LIFE, None, WemoHumidifier.reset_filter_life.__name__
|
||||
)
|
||||
|
||||
|
||||
|
@ -170,12 +170,12 @@ async def async_setup_platform(
|
||||
)
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_SET_REMOTE_LED_ON,
|
||||
{},
|
||||
None,
|
||||
async_service_led_on_handler,
|
||||
)
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_SET_REMOTE_LED_OFF,
|
||||
{},
|
||||
None,
|
||||
async_service_led_off_handler,
|
||||
)
|
||||
|
||||
|
@ -104,13 +104,13 @@ async def async_setup_entry(
|
||||
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_START_REMOTE_CONTROL,
|
||||
{},
|
||||
None,
|
||||
MiroboVacuum.async_remote_control_start.__name__,
|
||||
)
|
||||
|
||||
platform.async_register_entity_service(
|
||||
SERVICE_STOP_REMOTE_CONTROL,
|
||||
{},
|
||||
None,
|
||||
MiroboVacuum.async_remote_control_stop.__name__,
|
||||
)
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user