From 783c1007c355d146f95b3b6b91e8563d68c350fa Mon Sep 17 00:00:00 2001 From: j-broo Date: Sun, 24 Sep 2023 13:44:15 +0200 Subject: [PATCH] Update rpi-cpu2mqtt.py Add support for qos and retain variables from config.py. --- src/rpi-cpu2mqtt.py | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/src/rpi-cpu2mqtt.py b/src/rpi-cpu2mqtt.py index 9857451..20dacde 100644 --- a/src/rpi-cpu2mqtt.py +++ b/src/rpi-cpu2mqtt.py @@ -223,73 +223,73 @@ def publish_to_mqtt(cpu_load=0, cpu_temp=0, used_space=0, voltage=0, sys_clock_s if config.cpu_load: if config.discovery_messages: client.publish("homeassistant/sensor/" + config.mqtt_topic_prefix + "/" + hostname + "_cpuload/config", - config_json('cpuload'), qos=0) + config_json('cpuload'), qos=config.qos) time.sleep(config.sleep_time) - client.publish(config.mqtt_topic_prefix + "/" + hostname + "/cpuload", cpu_load, qos=1) + client.publish(config.mqtt_topic_prefix + "/" + hostname + "/cpuload", cpu_load, qos=config.qos, retain=config.retain) time.sleep(config.sleep_time) if config.cpu_temp: if config.discovery_messages: client.publish("homeassistant/sensor/" + config.mqtt_topic_prefix + "/" + hostname + "_cputemp/config", - config_json('cputemp'), qos=0) + config_json('cputemp'), qos=config.qos) time.sleep(config.sleep_time) - client.publish(config.mqtt_topic_prefix + "/" + hostname + "/cputemp", cpu_temp, qos=1) + client.publish(config.mqtt_topic_prefix + "/" + hostname + "/cputemp", cpu_temp, qos=config.qos, retain=config.retain) time.sleep(config.sleep_time) if config.used_space: if config.discovery_messages: client.publish("homeassistant/sensor/" + config.mqtt_topic_prefix + "/" + hostname + "_diskusage/config", - config_json('diskusage'), qos=0) + config_json('diskusage'), qos=config.qos) time.sleep(config.sleep_time) - client.publish(config.mqtt_topic_prefix + "/" + hostname + "/diskusage", used_space, qos=1) + client.publish(config.mqtt_topic_prefix + "/" + hostname + "/diskusage", used_space, qos=config.qos, retain=config.retain) time.sleep(config.sleep_time) if config.voltage: if config.discovery_messages: client.publish("homeassistant/sensor/" + config.mqtt_topic_prefix + "/" + hostname + "_voltage/config", - config_json('voltage'), qos=0) + config_json('voltage'), qos=config.qos) time.sleep(config.sleep_time) - client.publish(config.mqtt_topic_prefix + "/" + hostname + "/voltage", voltage, qos=1) + client.publish(config.mqtt_topic_prefix + "/" + hostname + "/voltage", voltage, qos=config.qos, retain=config.retain) time.sleep(config.sleep_time) if config.swap: if config.discovery_messages: client.publish("homeassistant/sensor/" + config.mqtt_topic_prefix + "/" + hostname + "_swap/config", - config_json('swap'), qos=0) + config_json('swap'), qos=config.qos) time.sleep(config.sleep_time) - client.publish(config.mqtt_topic_prefix + "/" + hostname + "/swap", swap, qos=1) + client.publish(config.mqtt_topic_prefix + "/" + hostname + "/swap", swap, qos=config.qos, retain=config.retain) time.sleep(config.sleep_time) if config.memory: if config.discovery_messages: client.publish("homeassistant/sensor/" + config.mqtt_topic_prefix + "/" + hostname + "_memory/config", - config_json('memory'), qos=0) + config_json('memory'), qos=config.qos) time.sleep(config.sleep_time) - client.publish(config.mqtt_topic_prefix + "/" + hostname + "/memory", memory, qos=1) + client.publish(config.mqtt_topic_prefix + "/" + hostname + "/memory", memory, qos=config.qos, retain=config.retain) time.sleep(config.sleep_time) if config.sys_clock_speed: if config.discovery_messages: client.publish( "homeassistant/sensor/" + config.mqtt_topic_prefix + "/" + hostname + "_sys_clock_speed/config", - config_json('sys_clock_speed'), qos=0) + config_json('sys_clock_speed'), qos=config.qos) time.sleep(config.sleep_time) - client.publish(config.mqtt_topic_prefix + "/" + hostname + "/sys_clock_speed", sys_clock_speed, qos=1) + client.publish(config.mqtt_topic_prefix + "/" + hostname + "/sys_clock_speed", sys_clock_speed, qos=config.qos, retain=config.retain) time.sleep(config.sleep_time) if config.uptime: if config.discovery_messages: client.publish("homeassistant/sensor/" + config.mqtt_topic_prefix + "/" + hostname + "_uptime_days/config", - config_json('uptime_days'), qos=0) + config_json('uptime_days'), qos=config.qos) time.sleep(config.sleep_time) - client.publish(config.mqtt_topic_prefix + "/" + hostname + "/uptime_days", uptime_days, qos=1) + client.publish(config.mqtt_topic_prefix + "/" + hostname + "/uptime_days", uptime_days, qos=config.qos, retain=config.retain) time.sleep(config.sleep_time) if config.wifi_signal: if config.discovery_messages: client.publish("homeassistant/sensor/" + config.mqtt_topic_prefix + "/" + hostname + "_wifi_signal/config", - config_json('wifi_signal'), qos=0) + config_json('wifi_signal'), qos=config.qos) time.sleep(config.sleep_time) - client.publish(config.mqtt_topic_prefix + "/" + hostname + "/wifi_signal", wifi_signal, qos=1) + client.publish(config.mqtt_topic_prefix + "/" + hostname + "/wifi_signal", wifi_signal, qos=config.qos, retain=config.retain) time.sleep(config.sleep_time) if config.wifi_signal_dbm: if config.discovery_messages: client.publish("homeassistant/sensor/" + config.mqtt_topic_prefix + "/" + hostname + "_wifi_signal_dbm/config", - config_json('wifi_signal_dbm'), qos=0) + config_json('wifi_signal_dbm'), qos=config.qos) time.sleep(config.sleep_time) - client.publish(config.mqtt_topic_prefix + "/" + hostname + "/wifi_signal_dbm", wifi_signal_dbm, qos=1) + client.publish(config.mqtt_topic_prefix + "/" + hostname + "/wifi_signal_dbm", wifi_signal_dbm, qos=config.qos, retain=config.retain) time.sleep(config.sleep_time) # disconnect from mqtt server @@ -309,7 +309,7 @@ def bulk_publish_to_mqtt(cpu_load=0, cpu_temp=0, used_space=0, voltage=0, sys_cl client.connect(config.mqtt_host, int(config.mqtt_port)) # publish monitored values to MQTT - client.publish(config.mqtt_topic_prefix + "/" + hostname, values, qos=1) + client.publish(config.mqtt_topic_prefix + "/" + hostname, values, qos=config.qos, retain=config.retain) # disconnect from mqtt server client.disconnect()