Fix errors, bump pyhon

This commit is contained in:
Andre Basche 2023-05-07 00:52:54 +02:00
parent 8aa8563b9b
commit 2802bcad25
10 changed files with 36 additions and 16 deletions

View file

@ -23,8 +23,8 @@ from homeassistant.core import callback
from pyhon import Hon
from pyhon.appliance import HonAppliance
from custom_components.hon.const import HON_HVAC_MODE, HON_FAN, HON_HVAC_PROGRAM, DOMAIN
from custom_components.hon.hon import HonEntity, HonCoordinator
from .const import HON_HVAC_MODE, HON_FAN, HON_HVAC_PROGRAM, DOMAIN
from .hon import HonEntity, HonCoordinator
_LOGGER = logging.getLogger(__name__)
@ -47,7 +47,7 @@ async def async_setup_entry(hass, entry: ConfigEntry, async_add_entities) -> Non
if descriptions := CLIMATES.get(device.appliance_type):
for description in descriptions:
if not device.settings.get(description.key):
if description.key not in device.available_settings:
continue
appliances.extend(
[HonClimateEntity(hass, coordinator, entry, device, description)]

View file

@ -1,6 +1,10 @@
from homeassistant.components.climate import HVACMode
from custom_components.hon import climate
from homeassistant.components.climate import (
HVACMode,
FAN_LOW,
FAN_MEDIUM,
FAN_HIGH,
FAN_AUTO,
)
DOMAIN = "hon"
@ -33,9 +37,9 @@ HON_HVAC_PROGRAM = {
}
HON_FAN = {
"1": climate.FAN_HIGH,
"2": climate.FAN_MEDIUM,
"3": climate.FAN_LOW,
"4": climate.FAN_AUTO,
"5": climate.FAN_AUTO,
"1": FAN_HIGH,
"2": FAN_MEDIUM,
"3": FAN_LOW,
"4": FAN_AUTO,
"5": FAN_AUTO,
}

View file

@ -6,6 +6,6 @@
"documentation": "https://github.com/Andre0512/hon/",
"iot_class": "cloud_polling",
"issue_tracker": "https://github.com/Andre0512/hon/issues",
"requirements": ["pyhOn==0.9.1"],
"version": "0.7.0-beta.7"
"requirements": ["pyhOn==0.10.3"],
"version": "0.7.0-beta.8"
}

View file

@ -162,7 +162,7 @@ async def async_setup_entry(hass, entry: ConfigEntry, async_add_entities) -> Non
if descriptions := NUMBERS.get(device.appliance_type):
for description in descriptions:
if not device.settings.get(description.key):
if description.key not in device.available_settings:
continue
appliances.extend(
[HonNumberEntity(hass, coordinator, entry, device, description)]

View file

@ -1,6 +1,7 @@
from __future__ import annotations
import logging
import time
from pyhon import Hon
from pyhon.appliance import HonAppliance
@ -128,7 +129,7 @@ async def async_setup_entry(hass, entry: ConfigEntry, async_add_entities) -> Non
if descriptions := SELECTS.get(device.appliance_type):
for description in descriptions:
if not device.settings.get(description.key):
if description.key not in device.available_settings:
continue
appliances.extend(
[HonSelectEntity(hass, coordinator, entry, device, description)]

View file

@ -131,6 +131,15 @@ SENSORS: dict[str, tuple[SensorEntityDescription, ...]] = {
entity_category=EntityCategory.CONFIG,
translation_key="det_dust",
),
SensorEntityDescription(
key="startProgram.remainingTime",
name="Remaining Time",
icon="mdi:timer",
state_class=SensorStateClass.MEASUREMENT,
native_unit_of_measurement=UnitOfTime.MINUTES,
entity_category=EntityCategory.CONFIG,
translation_key="remaining_time",
),
),
"TD": (
SensorEntityDescription(

View file

@ -271,7 +271,7 @@ async def async_setup_entry(hass, entry: ConfigEntry, async_add_entities) -> Non
for description in descriptions:
if (
device.get(description.key) is not None
or device.commands.get(description.key) is not None
or description.key in device.available_settings
):
appliances.extend(
[HonSwitchEntity(hass, coordinator, entry, device, description)]