Instant send settings
This commit is contained in:
parent
17d4d14ead
commit
845adc75c9
3 changed files with 12 additions and 4 deletions
|
@ -206,7 +206,9 @@ class HonNumberEntity(HonEntity, NumberEntity):
|
||||||
isinstance(setting, HonParameter) or isinstance(setting, HonParameterFixed)
|
isinstance(setting, HonParameter) or isinstance(setting, HonParameterFixed)
|
||||||
):
|
):
|
||||||
setting.value = value
|
setting.value = value
|
||||||
if self._device.appliance_type in ["AC"]:
|
if "settings." in self.entity_description:
|
||||||
|
self._device.commands["settings"].send()
|
||||||
|
elif self._device.appliance_type in ["AC"]:
|
||||||
self._device.commands["startProgram"].send()
|
self._device.commands["startProgram"].send()
|
||||||
await self.coordinator.async_refresh()
|
await self.coordinator.async_refresh()
|
||||||
|
|
||||||
|
|
|
@ -163,7 +163,9 @@ class HonSelectEntity(HonEntity, SelectEntity):
|
||||||
|
|
||||||
async def async_select_option(self, option: str) -> None:
|
async def async_select_option(self, option: str) -> None:
|
||||||
self._device.settings[self.entity_description.key].value = option
|
self._device.settings[self.entity_description.key].value = option
|
||||||
if self._device.appliance_type in ["AC"]:
|
if "settings." in self.entity_description:
|
||||||
|
self._device.commands["settings"].send()
|
||||||
|
elif self._device.appliance_type in ["AC"]:
|
||||||
self._device.commands["startProgram"].send()
|
self._device.commands["startProgram"].send()
|
||||||
await self.coordinator.async_refresh()
|
await self.coordinator.async_refresh()
|
||||||
|
|
||||||
|
|
|
@ -385,7 +385,9 @@ class HonSwitchEntity(HonEntity, SwitchEntity):
|
||||||
setting.max if isinstance(setting, HonParameterRange) else "1"
|
setting.max if isinstance(setting, HonParameterRange) else "1"
|
||||||
)
|
)
|
||||||
self.async_write_ha_state()
|
self.async_write_ha_state()
|
||||||
if self._device.appliance_type in ["AC"]:
|
if "settings." in self.entity_description:
|
||||||
|
self._device.commands["settings"].send()
|
||||||
|
elif self._device.appliance_type in ["AC"]:
|
||||||
self._device.commands["startProgram"].send()
|
self._device.commands["startProgram"].send()
|
||||||
await self.coordinator.async_refresh()
|
await self.coordinator.async_refresh()
|
||||||
else:
|
else:
|
||||||
|
@ -398,7 +400,9 @@ class HonSwitchEntity(HonEntity, SwitchEntity):
|
||||||
setting.min if isinstance(setting, HonParameterRange) else "0"
|
setting.min if isinstance(setting, HonParameterRange) else "0"
|
||||||
)
|
)
|
||||||
self.async_write_ha_state()
|
self.async_write_ha_state()
|
||||||
if self._device.appliance_type in ["AC"]:
|
if "settings." in self.entity_description:
|
||||||
|
self._device.commands["settings"].send()
|
||||||
|
elif self._device.appliance_type in ["AC"]:
|
||||||
self._device.commands["startProgram"].send()
|
self._device.commands["startProgram"].send()
|
||||||
await self.coordinator.async_refresh()
|
await self.coordinator.async_refresh()
|
||||||
else:
|
else:
|
||||||
|
|
Loading…
Reference in a new issue