订阅回调不与connect_async一起使用paho-mqtt python
我一直在尝试使用 paho-mqtt 客户端类的 connect_async() 方法。 on_connect() 回调工作正常,但 on_subscribe() 回调不起作用。我怎样才能让它发挥作用?
import paho.mqtt.client as paho
from paho import mqtt
import time
def on_connect(client, userdata, flags, rc, properties=None):
print("On connect called!!")
def callback(client, userdata, message):
print(str(message.payload.decode("utf-8")))
def on_subscribe(client, userdata, mid, granted_ops, properties=None):
print("On subscribe called!!")
client_get = paho.Client(client_id='my_client', protocol=paho.MQTTv5)
client_get.tls_set(tls_version=mqtt.client.ssl.PROTOCOL_TLS)
client_get.on_connect = on_connect
client_get.username_pw_set("USERNAME", "PASSWORD")
client_get.connect_async('HOST_URL', 8883)
client_get.on_message = callback
client_get.on_subscribe = on_subscribe
client_get.loop_start()
client_get.subscribe("test/#", qos=1)
while True:
print("1")
time.sleep(10)
I've been trying to use the connect_async() method of paho-mqtt Client class. The on_connect() callback is working fine but the on_subscribe() callback is not working. How could I make it work?
import paho.mqtt.client as paho
from paho import mqtt
import time
def on_connect(client, userdata, flags, rc, properties=None):
print("On connect called!!")
def callback(client, userdata, message):
print(str(message.payload.decode("utf-8")))
def on_subscribe(client, userdata, mid, granted_ops, properties=None):
print("On subscribe called!!")
client_get = paho.Client(client_id='my_client', protocol=paho.MQTTv5)
client_get.tls_set(tls_version=mqtt.client.ssl.PROTOCOL_TLS)
client_get.on_connect = on_connect
client_get.username_pw_set("USERNAME", "PASSWORD")
client_get.connect_async('HOST_URL', 8883)
client_get.on_message = callback
client_get.on_subscribe = on_subscribe
client_get.loop_start()
client_get.subscribe("test/#", qos=1)
while True:
print("1")
time.sleep(10)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论