This commit is contained in:
@ -1,7 +1,7 @@
|
|||||||
from loguru import logger
|
from loguru import logger
|
||||||
import json
|
import json
|
||||||
from converters import CONVERTERS
|
from converters import CONVERTERS
|
||||||
from dataclasses import dataclass, field
|
from dataclasses import dataclass, field, asdict
|
||||||
|
|
||||||
@dataclass(init=True, kw_only=True)
|
@dataclass(init=True, kw_only=True)
|
||||||
class Context:
|
class Context:
|
||||||
@ -13,6 +13,9 @@ class Context:
|
|||||||
mode: str = field(default='off')
|
mode: str = field(default='off')
|
||||||
output_temperature: str = field(default='0')
|
output_temperature: str = field(default='0')
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return json.dumps(asdict(self))
|
||||||
|
|
||||||
class Box:
|
class Box:
|
||||||
def __init__(self, box_id, box_config, config):
|
def __init__(self, box_id, box_config, config):
|
||||||
logger.info(f"[Box {box_id}] Instantiating")
|
logger.info(f"[Box {box_id}] Instantiating")
|
||||||
@ -99,6 +102,6 @@ class Box:
|
|||||||
logger.info(f"[Box {self.id}] Result published on '{publish_topic}': {result_message}")
|
logger.info(f"[Box {self.id}] Result published on '{publish_topic}': {result_message}")
|
||||||
|
|
||||||
context_topic = f"{self.config.CONTEXT_TOPIC_PREFIX}{self.id}"
|
context_topic = f"{self.config.CONTEXT_TOPIC_PREFIX}{self.id}"
|
||||||
self.mqtt_client.publish(context_topic, repr(self.context))
|
self.mqtt_client.publish(context_topic, str(self.context))
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error(f"[Box {self.id}] Error processing '{topic_key}': {e}")
|
logger.error(f"[Box {self.id}] Error processing '{topic_key}': {e}")
|
||||||
|
Reference in New Issue
Block a user