pyhOn/pyhon/appliances/ov.py

25 lines
948 B
Python
Raw Normal View History

2023-06-28 17:02:11 +00:00
from typing import Any, Dict
2023-05-29 16:58:50 +00:00
from pyhon.appliances.base import ApplianceBase
2023-06-28 17:02:11 +00:00
from pyhon.parameter.program import HonParameterProgram
2023-04-23 19:42:44 +00:00
2023-05-29 16:58:50 +00:00
class Appliance(ApplianceBase):
2023-06-28 17:02:11 +00:00
def attributes(self, data: Dict[str, Any]) -> Dict[str, Any]:
2023-06-08 17:50:56 +00:00
data = super().attributes(data)
2023-06-21 16:02:07 +00:00
if data.get("lastConnEvent", {}).get("category", "") == "DISCONNECTED":
2023-06-12 22:12:29 +00:00
data["parameters"]["temp"].value = "0"
data["parameters"]["onOffStatus"].value = "0"
data["parameters"]["remoteCtrValid"].value = "0"
data["parameters"]["remainingTimeMM"].value = "0"
2023-06-08 17:50:56 +00:00
data["active"] = data["parameters"]["onOffStatus"] == "1"
2023-06-08 17:50:56 +00:00
if program := int(data["parameters"]["prCode"]):
2023-06-28 17:02:11 +00:00
if (setting := self.parent.settings["startProgram.program"]) and isinstance(
setting, HonParameterProgram
):
data["programName"] = setting.ids.get(program, "")
2023-05-28 15:34:32 +00:00
2023-04-08 02:06:36 +00:00
return data