Paho MQTT回调未触发

时间:2019-11-30 21:30:16

标签: python paho

我正在使用Paho连接到我的MQTT布鲁克,但是,回调无法按预期方式工作。我已经按照文档进行操作,无法理解为什么函数会被忽略。

./manage.py makemigrations

这是我的代码,我在订阅前声明了on_subscribe方法,但是脚本拒绝工作。有谁知道为什么不触发回调?

1 个答案:

答案 0 :(得分:0)

程序必须一直运行并从服务器接收消息,当它从服务器获得确认后,它将运行on_subscribe

您可以使用ie。

client.loop_forever() 

始终运行它

import paho.mqtt.client as mqtt

def on_subscribe(client, userdata, mid, granted_qos):
    print("Subscribed", client, userdata, mid, granted_qos)

def on_message(client, userdata, message):
    #print('on_message:', client, userdata, message)
    #print(dir(message))
    print('on_message:', message.payload.decode())

host = "mqtt.eclipse.org"

client = mqtt.Client()
client.connect(host, port=1883, keepalive=60, bind_address="")
client.on_message = on_message
client.on_subscribe = on_subscribe
client.subscribe('temp', 1)

client.loop_forever()

文档:paho-mqtt