From d8eb2dfacae9625f57a30dd4c8a78387a4fd7202 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Sat, 15 Nov 2025 16:42:12 +0100 Subject: [PATCH] Refactor MQTT client initialization https://github.com/alexbelgium/hassio-addons/issues/2199#issuecomment-3536598328 --- birdnet-pi/rootfs/helpers/birdnet_to_mqtt.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/birdnet-pi/rootfs/helpers/birdnet_to_mqtt.py b/birdnet-pi/rootfs/helpers/birdnet_to_mqtt.py index 47a5e8283..b075e0e23 100644 --- a/birdnet-pi/rootfs/helpers/birdnet_to_mqtt.py +++ b/birdnet-pi/rootfs/helpers/birdnet_to_mqtt.py @@ -112,15 +112,17 @@ def automatic_mqtt_publish(file, detection, path): mqttc.publish(mqtt_topic, json_bird, 1) log.info("Posted to MQTT: ok") - # Create MQTT client using legacy callback API when available for # compatibility with paho-mqtt >= 2.0 callback_api = getattr(mqtt, "CallbackAPIVersion", None) if callback_api is not None: - mqttc = mqtt.Client("birdnet_mqtt", callback_api_version=callback_api.VERSION1) + # paho-mqtt >= 2.0: first argument is callback_api_version + mqttc = mqtt.Client(callback_api.VERSION1, client_id="birdnet_mqtt") else: - mqttc = mqtt.Client("birdnet_mqtt") + # paho-mqtt < 2.0: old signature, first argument is client_id + mqttc = mqtt.Client(client_id="birdnet_mqtt") + mqttc.username_pw_set(mqtt_user, mqtt_pass) mqttc.on_connect = on_connect