Использование одного ноутбука с Ubuntu 18.04 LTS, другого с Ubuntu 16.04 LTS.
Python 2.
Установлен paho.mqtt с pip.
Я пытаюсь отправить переменную через MQTT на сервер. У меня есть собственный код, который работал раньше, но сейчас он не работает.
Теперь я попробовал пример кода из
https://github.com/pradeesi/Paho-MQTT-with-Python
Я не получаю сообщение об ошибке, и сообщение не будет получено на стороне сервера.
Вот код:
mqtt_subscribe.py
# Import package
import paho.mqtt.client as mqtt
# Define Variables
#MQTT_HOST = "iot.eclipse.org"
MQTT_HOST = "192.168.1.127"
MQTT_PORT = 1883
MQTT_KEEPALIVE_INTERVAL = 45
MQTT_TOPIC = "helloTopic"
MQTT_MSG = "hello MQTT"
# Define on connect event function
# We shall subscribe to our Topic in this function
def on_connect(mosq, obj, rc):
mqttc.subscribe(MQTT_TOPIC, 0)
# Define on_message event function.
# This function will be invoked every time,
# a new message arrives for the subscribed topic
def on_message(mosq, obj, msg):
print "Topic: " + str(msg.topic)
print "QoS: " + str(msg.qos)
print "Payload: " + str(msg.payload)
def on_subscribe(mosq, obj, mid, granted_qos):
print("Subscribed to Topic: " +
MQTT_MSG + " with QoS: " + str(granted_qos))
# Initiate MQTT Client
mqttc = mqtt.Client()
# Assign event callbacks
mqttc.on_message = on_message
mqttc.on_connect = on_connect
mqttc.on_subscribe = on_subscribe
# Connect with MQTT Broker
mqttc.connect(MQTT_HOST, MQTT_PORT, MQTT_KEEPALIVE_INTERVAL)
# Continue monitoring the incoming messages for subscribed topic
mqttc.loop_forever()
и mqtt_publish.py
# Import package
import paho.mqtt.client as mqtt
# Define Variables
#MQTT_HOST = "iot.eclipse.org"
MQTT_HOST = "192.168.1.127"
MQTT_PORT = 1883
MQTT_KEEPALIVE_INTERVAL = 45
MQTT_TOPIC = "helloTopic"
MQTT_MSG = "hello MQTT"
# Define on_publish event function
def on_publish(client, userdata, mid):
print "Message Published..."
# Initiate MQTT Client
mqttc = mqtt.Client()
# Register publish callback function
mqttc.on_publish = on_publish
# Connect with MQTT Broker
mqttc.connect(MQTT_HOST, MQTT_PORT, MQTT_KEEPALIVE_INTERVAL)
# Publish message to MQTT Broker
mqttc.publish(MQTT_TOPIC,MQTT_MSG)
# Disconnect from MQTT_Broker
mqttc.disconnect()
Я думаю, что некоторые настройки сети не подходят для моего ноутбука. Может кто-нибудь, пожалуйста, укажите мне, как идти об устранении этой проблемы? Что здесь может быть не так?
Пробовал с указанием и без указания порта при подключении через broker.mqttdashboard.com и локально (192.168.x.x).