mirror of
https://github.com/esphome/aioesphomeapi.git
synced 2024-09-27 04:22:46 +02:00
Simplify similar code for building entity commands
This commit is contained in:
parent
681fec9db9
commit
563c9b9d0f
@ -920,8 +920,7 @@ class APIClient:
|
||||
tilt: float | None = None,
|
||||
stop: bool = False,
|
||||
) -> None:
|
||||
req = CoverCommandRequest()
|
||||
req.key = key
|
||||
req = CoverCommandRequest(key=key)
|
||||
apiv = cast(APIVersion, self.api_version)
|
||||
if apiv >= APIVersion(1, 1):
|
||||
if position is not None:
|
||||
@ -954,8 +953,7 @@ class APIClient:
|
||||
oscillating: bool | None = None,
|
||||
direction: FanDirection | None = None,
|
||||
) -> None:
|
||||
req = FanCommandRequest()
|
||||
req.key = key
|
||||
req = FanCommandRequest(key=key)
|
||||
if state is not None:
|
||||
req.has_state = True
|
||||
req.state = state
|
||||
@ -990,8 +988,7 @@ class APIClient:
|
||||
flash_length: float | None = None,
|
||||
effect: str | None = None,
|
||||
) -> None:
|
||||
req = LightCommandRequest()
|
||||
req.key = key
|
||||
req = LightCommandRequest(key=key)
|
||||
if state is not None:
|
||||
req.has_state = True
|
||||
req.state = state
|
||||
@ -1034,11 +1031,7 @@ class APIClient:
|
||||
self._get_connection().send_message(req)
|
||||
|
||||
async def switch_command(self, key: int, state: bool) -> None:
|
||||
req = SwitchCommandRequest()
|
||||
req.key = key
|
||||
req.state = state
|
||||
|
||||
self._get_connection().send_message(req)
|
||||
self._get_connection().send_message(SwitchCommandRequest(key=key, state=state))
|
||||
|
||||
async def climate_command(
|
||||
self,
|
||||
@ -1053,8 +1046,7 @@ class APIClient:
|
||||
preset: ClimatePreset | None = None,
|
||||
custom_preset: str | None = None,
|
||||
) -> None:
|
||||
req = ClimateCommandRequest()
|
||||
req.key = key
|
||||
req = ClimateCommandRequest(key=key)
|
||||
if mode is not None:
|
||||
req.has_mode = True
|
||||
req.mode = mode
|
||||
@ -1091,18 +1083,10 @@ class APIClient:
|
||||
self._get_connection().send_message(req)
|
||||
|
||||
async def number_command(self, key: int, state: float) -> None:
|
||||
req = NumberCommandRequest()
|
||||
req.key = key
|
||||
req.state = state
|
||||
|
||||
self._get_connection().send_message(req)
|
||||
self._get_connection().send_message(NumberCommandRequest(key=key, state=state))
|
||||
|
||||
async def select_command(self, key: int, state: str) -> None:
|
||||
req = SelectCommandRequest()
|
||||
req.key = key
|
||||
req.state = state
|
||||
|
||||
self._get_connection().send_message(req)
|
||||
self._get_connection().send_message(SelectCommandRequest(key=key, state=state))
|
||||
|
||||
async def siren_command(
|
||||
self,
|
||||
@ -1112,8 +1096,7 @@ class APIClient:
|
||||
volume: float | None = None,
|
||||
duration: int | None = None,
|
||||
) -> None:
|
||||
req = SirenCommandRequest()
|
||||
req.key = key
|
||||
req = SirenCommandRequest(key=key)
|
||||
if state is not None:
|
||||
req.state = state
|
||||
req.has_state = True
|
||||
@ -1130,10 +1113,7 @@ class APIClient:
|
||||
self._get_connection().send_message(req)
|
||||
|
||||
async def button_command(self, key: int) -> None:
|
||||
req = ButtonCommandRequest()
|
||||
req.key = key
|
||||
|
||||
self._get_connection().send_message(req)
|
||||
self._get_connection().send_message(ButtonCommandRequest(key=key))
|
||||
|
||||
async def lock_command(
|
||||
self,
|
||||
@ -1141,12 +1121,9 @@ class APIClient:
|
||||
command: LockCommand,
|
||||
code: str | None = None,
|
||||
) -> None:
|
||||
req = LockCommandRequest()
|
||||
req.key = key
|
||||
req.command = command
|
||||
req = LockCommandRequest(key=key, command=command)
|
||||
if code is not None:
|
||||
req.code = code
|
||||
|
||||
self._get_connection().send_message(req)
|
||||
|
||||
async def media_player_command(
|
||||
@ -1157,8 +1134,7 @@ class APIClient:
|
||||
volume: float | None = None,
|
||||
media_url: str | None = None,
|
||||
) -> None:
|
||||
req = MediaPlayerCommandRequest()
|
||||
req.key = key
|
||||
req = MediaPlayerCommandRequest(key=key)
|
||||
if command is not None:
|
||||
req.command = command
|
||||
req.has_command = True
|
||||
@ -1172,17 +1148,12 @@ class APIClient:
|
||||
self._get_connection().send_message(req)
|
||||
|
||||
async def text_command(self, key: int, state: str) -> None:
|
||||
req = TextCommandRequest()
|
||||
req.key = key
|
||||
req.state = state
|
||||
|
||||
self._get_connection().send_message(req)
|
||||
self._get_connection().send_message(TextCommandRequest(key=key, state=state))
|
||||
|
||||
async def execute_service(
|
||||
self, service: UserService, data: ExecuteServiceDataType
|
||||
) -> None:
|
||||
req = ExecuteServiceRequest()
|
||||
req.key = service.key
|
||||
req = ExecuteServiceRequest(key=service.key)
|
||||
args = []
|
||||
for arg_desc in service.args:
|
||||
arg = ExecuteServiceArgument()
|
||||
@ -1217,11 +1188,9 @@ class APIClient:
|
||||
async def _request_image(
|
||||
self, *, single: bool = False, stream: bool = False
|
||||
) -> None:
|
||||
req = CameraImageRequest()
|
||||
req.single = single
|
||||
req.stream = stream
|
||||
|
||||
self._get_connection().send_message(req)
|
||||
self._get_connection().send_message(
|
||||
CameraImageRequest(single=single, stream=stream)
|
||||
)
|
||||
|
||||
async def request_single_image(self) -> None:
|
||||
await self._request_image(single=True)
|
||||
@ -1323,10 +1292,7 @@ class APIClient:
|
||||
command: AlarmControlPanelCommand,
|
||||
code: str | None = None,
|
||||
) -> None:
|
||||
req = AlarmControlPanelCommandRequest()
|
||||
req.key = key
|
||||
req.command = command
|
||||
req = AlarmControlPanelCommandRequest(key=key, command=command)
|
||||
if code is not None:
|
||||
req.code = code
|
||||
|
||||
self._get_connection().send_message(req)
|
||||
|
Loading…
Reference in New Issue
Block a user