from services.mqtt_service import MQTTService class MQTTForwarder: client_id : str local_broker : MQTTService central_broker : MQTTService def __init__(self, client_id : str, local_mqtt: MQTTService, central_mqtt: MQTTService): self.client_id = client_id self.local_broker = local_mqtt self.central_broker = central_mqtt def start(self, src_topic: str, dst_topic: str): try: def forward_handler(topic: str, msg: str): self.central_broker.publish(dst_topic, msg) self.local_broker.subscribe(src_topic, forward_handler) except Exception as e: print(f"An error occurred while forwarding from {src_topic} to {dst_topic}: {e}")