diff --git a/pyproject.toml b/pyproject.toml index ab41ace..035ecdb 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "pyvesync" -version = "3.4.0" +version = "3.4.1" description = "pyvesync is a library to manage Etekcity Devices, Cosori Air Fryers, and Levoit Air Purifiers run on the VeSync app." readme = "README.md" requires-python = ">=3.11" diff --git a/src/pyvesync/base_devices/fan_base.py b/src/pyvesync/base_devices/fan_base.py index e6e28a7..43ae110 100644 --- a/src/pyvesync/base_devices/fan_base.py +++ b/src/pyvesync/base_devices/fan_base.py @@ -90,7 +90,7 @@ def __init__( self.mode: str | None = None self.fan_level: int | None = None self.fan_set_level: int | None = None - self.child_lock: str | None = None + self.child_lock: bool | None = None self.humidity: float | None = None self.temperature: float | None = None self.thermal_comfort: int | None = None diff --git a/src/pyvesync/base_devices/humidifier_base.py b/src/pyvesync/base_devices/humidifier_base.py index 5f4e303..7b4e5d2 100644 --- a/src/pyvesync/base_devices/humidifier_base.py +++ b/src/pyvesync/base_devices/humidifier_base.py @@ -261,9 +261,9 @@ def __init__( self._reverse_mist_modes: dict[str, str] = {} for k, v in self.mist_modes.items(): self._reverse_mist_modes[v] = k - self.mist_levels: list[str | int] = feature_map.mist_levels + self.mist_levels: list[int] = feature_map.mist_levels self.features: list[str] = feature_map.features - self.warm_mist_levels: list[int | str] = feature_map.warm_mist_levels + self.warm_mist_levels: list[int] = feature_map.warm_mist_levels self.target_minmax: tuple[int, int] = feature_map.target_minmax @property diff --git a/src/pyvesync/device_map.py b/src/pyvesync/device_map.py index 88aa919..d467eb1 100644 --- a/src/pyvesync/device_map.py +++ b/src/pyvesync/device_map.py @@ -273,11 +273,11 @@ class HumidifierMap(DeviceMapTemplate): product_line: str = ProductLines.WIFI_AIR mist_modes: dict[str, str] = field(default_factory=dict) - mist_levels: list[int | str] = field(default_factory=list) + mist_levels: list[int] = field(default_factory=list) product_type: str = ProductTypes.HUMIDIFIER module: ModuleType = vesynchumidifier target_minmax: tuple[int, int] = (30, 80) - warm_mist_levels: list[int | str] = field(default_factory=list) + warm_mist_levels: list[int] = field(default_factory=list) @dataclass(kw_only=True) @@ -750,7 +750,7 @@ class ThermostatMap(DeviceMapTemplate): ), HumidifierMap( class_name='VeSyncSuperior6000S', - dev_types=['LEH-S601S-WUS', 'LEH-S601S-WUSR', 'LEH-S601S-WEUR'], + dev_types=['LEH-S601S-WUS', 'LEH-S601S-WUSR', 'LEH-S601S-WEUR', 'LEH-S602S-WUS'], features=[HumidifierFeatures.DRYING_MODE, HumidifierFeatures.AUTO_STOP], mist_modes={ HumidifierModes.AUTO: 'autoPro', diff --git a/src/pyvesync/devices/vesyncfan.py b/src/pyvesync/devices/vesyncfan.py index 51a99da..25c117f 100644 --- a/src/pyvesync/devices/vesyncfan.py +++ b/src/pyvesync/devices/vesyncfan.py @@ -259,7 +259,7 @@ def _set_fan_state(self, res: PedestalFanResult) -> None: self.state.horizontal_oscillation_status = DeviceStatus.from_int( res.horizontalOscillationState ) - self.state.child_lock = DeviceStatus.from_int(res.childLock) + self.state.child_lock = bool(res.childLock) if res.sleepPreference is not None: self.state.sleep_change_fan_level = DeviceStatus.from_int( res.sleepPreference.initFanSpeedLevel