Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Множественная публикация MQTT не работает

Автор вопроса: SpinnaayОтветов: 1

У меня запущено несколько сценариев Python, которые публикуются на разных каналах/темах MQTT Mosquitto. Все сценарии начинаются со следующего кода.

import paho.mqtt.client as mqtt

client = mqtt.Client("python_pub")
client.connect("localhost", 1883)

Затем каждый скрипт имеет другую команду публикации, например

client.publish("TA/temp", temp)

or

client.publish("timer/time", time)

Что происходит, так это то, что если я запускаю один скрипт, он будет успешно опубликован, и я могу подписаться на другой скрипт.

Однако, если я запущу второй скрипт, будет опубликован только новый. Другой отваливается.

Нужно ли использовать разные порты или имена клиентов между разными сценариями Python?

Спасибо!

pythonmqttmosquitto

Ответы

Ответ 1 · рейтинг 1 · hardillb

Проблема во второй строке:

client = mqtt.Client("python_pub")

"python_pub" - это идентификатор клиента, который должен быть уникальным для каждого клиента, подключающегося к брокеру.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы