From d0817bc504147bf2c27688acb32dc43a01e210bf Mon Sep 17 00:00:00 2001 From: Dirk Alders Date: Wed, 24 Aug 2022 14:37:48 +0100 Subject: [PATCH] Exception handling for MQTT --- ambient_info.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/ambient_info.py b/ambient_info.py index 28a0b11..f6a6d5e 100644 --- a/ambient_info.py +++ b/ambient_info.py @@ -1,6 +1,7 @@ import config import logging import paho.mqtt.client as paho +import socket import report import time @@ -17,11 +18,14 @@ logger = logging.getLogger(ROOT_LOGGER_NAME).getChild('main') def send_data_to_mqtt(data): client= paho.Client("temp_sens") client.username_pw_set(config.MQTT_USER, config.MQTT_PASS) - client.connect(config.MQTT_SERVER, 1883) - for key in data: - topic = config.MQTT_TOPIC + "/" + key - logger.info("Sending Ambient Information to mqtt %s=%s", topic, str(data[key])) - client.publish(topic, data[key]) + try: + client.connect(config.MQTT_SERVER, 1883) + for key in data: + topic = config.MQTT_TOPIC + "/" + key + logger.info("Sending Ambient Information to mqtt %s=%s", topic, str(data[key])) + client.publish(topic, data[key]) + except (socket.timeout, OSError) as e: + logger.warning("Erro while sending ambient information") def dht_callback(**data):