From eb9d48a97b5457d14c318b1e11dcfe344758068c Mon Sep 17 00:00:00 2001 From: "Papezhuk, Roman" Date: Mon, 16 Jun 2025 11:01:30 +0000 Subject: [PATCH 1/3] correct usage of async_forward_entry_setups instead of the deprecated async_forward_entry_setup --- custom_components/hon/__init__.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/custom_components/hon/__init__.py b/custom_components/hon/__init__.py index 1e38a2d5..feac1d1c 100644 --- a/custom_components/hon/__init__.py +++ b/custom_components/hon/__init__.py @@ -53,10 +53,8 @@ async def async_setup_entry(hass: HomeAssistantType, entry: ConfigEntry) -> bool hass.data.setdefault(DOMAIN, {}) hass.data[DOMAIN][entry.unique_id] = {"hon": hon, "coordinator": coordinator} - for platform in PLATFORMS: - hass.async_create_task( - hass.config_entries.async_forward_entry_setup(entry, platform) - ) + await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS) + return True @@ -66,8 +64,9 @@ async def async_unload_entry(hass: HomeAssistantType, entry: ConfigEntry) -> boo hass.config_entries.async_update_entry( entry, data={**entry.data, CONF_REFRESH_TOKEN: refresh_token} ) - unload = await hass.config_entries.async_unload_platforms(entry, PLATFORMS) + unload = await hass.config_entries.async_unload_entry_platforms(entry, PLATFORMS) if unload: + hass.data[DOMAIN].pop(entry.unique_id) if not hass.data[DOMAIN]: hass.data.pop(DOMAIN, None) return unload From 67fc6745069567c0734f0d332f9b539b3e41d0b5 Mon Sep 17 00:00:00 2001 From: "Papezhuk, Roman" Date: Mon, 16 Jun 2025 11:15:30 +0000 Subject: [PATCH 2/3] update HA type --- custom_components/hon/__init__.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/custom_components/hon/__init__.py b/custom_components/hon/__init__.py index feac1d1c..ea1647e6 100644 --- a/custom_components/hon/__init__.py +++ b/custom_components/hon/__init__.py @@ -6,7 +6,7 @@ from homeassistant.config_entries import ConfigEntry from homeassistant.const import CONF_EMAIL, CONF_PASSWORD from homeassistant.helpers import config_validation as cv, aiohttp_client -from homeassistant.helpers.typing import HomeAssistantType +from homeassistant.core import HomeAssistant from homeassistant.helpers.update_coordinator import DataUpdateCoordinator from pyhon import Hon @@ -27,7 +27,7 @@ ) -async def async_setup_entry(hass: HomeAssistantType, entry: ConfigEntry) -> bool: +async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: # Updated type session = aiohttp_client.async_get_clientsession(hass) if (config_dir := hass.config.config_dir) is None: raise ValueError("Missing Config Dir") @@ -58,7 +58,7 @@ async def async_setup_entry(hass: HomeAssistantType, entry: ConfigEntry) -> bool return True -async def async_unload_entry(hass: HomeAssistantType, entry: ConfigEntry) -> bool: +async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: refresh_token = hass.data[DOMAIN][entry.unique_id]["hon"].api.auth.refresh_token hass.config_entries.async_update_entry( From 640e68951911a6579bc5d7438209c315f8722f6f Mon Sep 17 00:00:00 2001 From: "Papezhuk, Roman" Date: Tue, 1 Jul 2025 11:34:34 +0000 Subject: [PATCH 3/3] update OnOff status set --- custom_components/hon/climate.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/custom_components/hon/climate.py b/custom_components/hon/climate.py index f3ce937c..f7c1933a 100644 --- a/custom_components/hon/climate.py +++ b/custom_components/hon/climate.py @@ -199,7 +199,7 @@ async def async_set_hvac_mode(self, hvac_mode: HVACMode) -> None: self._attr_hvac_mode = hvac_mode if hvac_mode == HVACMode.OFF: await self._device.commands["stopProgram"].send() - self._device.sync_command("stopProgram", "settings") + self._device.settings["settings.onOffStatus"].value = "0" else: self._device.settings["settings.onOffStatus"].value = "1" setting = self._device.settings["settings.machMode"]