2023-04-22 23:08:24 +02:00
|
|
|
from pyhon.parameter.fixed import HonParameterFixed
|
|
|
|
|
|
|
|
|
2023-03-21 07:39:20 +01:00
|
|
|
class Appliance:
|
2023-04-23 21:42:44 +02:00
|
|
|
def __init__(self, appliance):
|
|
|
|
self.parent = appliance
|
|
|
|
|
2023-04-08 04:06:36 +02:00
|
|
|
def data(self, data):
|
|
|
|
if data["attributes"]["lastConnEvent"]["category"] == "DISCONNECTED":
|
|
|
|
data["attributes"]["parameters"]["machMode"] = "0"
|
|
|
|
data["active"] = bool(data.get("attributes", {}).get("activity"))
|
|
|
|
data["pause"] = data["attributes"]["parameters"]["machMode"] == "3"
|
2023-04-23 21:42:44 +02:00
|
|
|
program = int(data["attributes"]["parameters"]["prCode"])
|
|
|
|
data["programName"] = self.parent.settings["startProgram.program"].ids[program]
|
2023-04-08 04:06:36 +02:00
|
|
|
return data
|
2023-03-21 07:39:20 +01:00
|
|
|
|
2023-04-08 04:06:36 +02:00
|
|
|
def settings(self, settings):
|
2023-04-22 23:08:24 +02:00
|
|
|
dry_level = settings["startProgram.dryLevel"]
|
|
|
|
if isinstance(dry_level, HonParameterFixed) and dry_level.value == "11":
|
|
|
|
settings.pop("startProgram.dryLevel", None)
|
2023-04-08 04:06:36 +02:00
|
|
|
return settings
|