MQTT-сервер не отвечает даже на одном компьютере - PullRequest
0 голосов
/ 03 июля 2019

Использование одного ноутбука с 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).

...