Merge remote-tracking branch 'origin/main'

# Conflicts:
#	pyhon/appliance.py
This commit is contained in:
Miguel Ángel 2023-04-16 16:37:11 +02:00
commit a68dcac379
3 changed files with 10 additions and 7 deletions

View file

@ -13,7 +13,7 @@ if TYPE_CHECKING:
class HonAppliance:
def __init__(
self, api: Optional["HonAPI"], info: Dict[str, Any], zone: int = 0
self, api: Optional["HonAPI"], info: Dict[str, Any], zone: int = 0
) -> None:
if attributes := info.get("attributes"):
info["attributes"] = {v["parName"]: v["parValue"] for v in attributes}
@ -129,8 +129,8 @@ class HonAppliance:
command = self.commands[name]
for key, data in command.settings.items():
if (
not isinstance(data, HonParameterFixed)
and parameters.get(key) is not None
not isinstance(data, HonParameterFixed)
and parameters.get(key) is not None
):
with suppress(ValueError):
data.value = parameters.get(key)
@ -175,7 +175,9 @@ class HonAppliance:
def parameters(self):
result = {}
for name, command in self._commands.items():
for key, parameter in (command.parameters | command.ancillary_parameters).items():
for key, parameter in (
command.parameters | command.ancillary_parameters
).items():
result.setdefault(name, {})[key] = parameter.value
return result

View file

@ -61,8 +61,9 @@ class Hon:
async def setup(self) -> None:
appliance: Dict
for appliance in (await self.api.load_appliances())["payload"]["appliances"]:
for zone in range(int(appliance.get("zone", "0"))):
await self._create_appliance(appliance.copy(), zone=zone + 1)
if (zones := int(appliance.get("zone", "0"))) > 1:
for zone in range(zones):
await self._create_appliance(appliance.copy(), zone=zone + 1)
await self._create_appliance(appliance)
async def close(self) -> None:

View file

@ -7,7 +7,7 @@ with open("README.md", "r") as f:
setup(
name="pyhOn",
version="0.8.0b4",
version="0.8.0b5",
author="Andre Basche",
description="Control hOn devices with python",
long_description=long_description,