2023-06-28 22:32:11 +05:30
|
|
|
from typing import Any, Dict
|
|
|
|
|
2023-05-29 22:28:50 +05:30
|
|
|
from pyhon.appliances.base import ApplianceBase
|
2023-04-23 02:38:24 +05:30
|
|
|
from pyhon.parameter.fixed import HonParameterFixed
|
|
|
|
|
|
|
|
|
2023-05-29 22:28:50 +05:30
|
|
|
class Appliance(ApplianceBase):
|
2023-06-28 22:32:11 +05:30
|
|
|
def attributes(self, data: Dict[str, Any]) -> Dict[str, Any]:
|
2023-06-08 23:20:56 +05:30
|
|
|
data = super().attributes(data)
|
2023-06-21 21:32:07 +05:30
|
|
|
if data.get("lastConnEvent", {}).get("category", "") == "DISCONNECTED":
|
2023-06-13 03:42:29 +05:30
|
|
|
data["parameters"]["machMode"].value = "0"
|
2023-06-08 23:20:56 +05:30
|
|
|
data["active"] = bool(data.get("activity"))
|
|
|
|
data["pause"] = data["parameters"]["machMode"] == "3"
|
2023-04-08 07:36:36 +05:30
|
|
|
return data
|
2023-03-21 12:09:20 +05:30
|
|
|
|
2023-06-28 22:32:11 +05:30
|
|
|
def settings(self, settings: Dict[str, Any]) -> Dict[str, Any]:
|
2023-04-24 08:03:00 +05:30
|
|
|
dry_level = settings.get("startProgram.dryLevel")
|
2023-04-23 02:38:24 +05:30
|
|
|
if isinstance(dry_level, HonParameterFixed) and dry_level.value == "11":
|
|
|
|
settings.pop("startProgram.dryLevel", None)
|
2023-04-08 07:36:36 +05:30
|
|
|
return settings
|