我正在使用此python脚本实现基本的Paho(MQTT)订户,但在某些情况下它不会调用on_connect。
我尝试了以下代码,所有代码都完全相同:
我通常也会这样做:
还尝试了官方网站上列出的所有设置方法。因此,除非我从树莓派运行它,否则python的paho库似乎不会与我的本地代理相处。但是,如果从终端使用MQTT,则使用相同的代理与c ++的paho库配合使用效果很好。关于会发生什么的任何想法?
import paho.mqtt.client as mqtt
def on_connect(mqtt_client, obj, flags, rc):
mqtt_client.subscribe("test")
print "on_connect"
def on_message(mqtt_client, obj, msg):
print "on_message"
mqtt_client = mqtt.Client()
mqtt_client.on_connect = on_connect
mqtt_client.on_message = on_message
mqtt_client.connect("127.0.0.1",1883)
mqtt_client.loop_forever()
我遇到了同样的问题,在客户端的构造函数中更改MQTT协议的版本可以解决该问题。
mqtt_client = mqtt.Client("", True, None, mqtt.MQTTv31)
由于未指定协议,因此它使用默认协议:MQTTv311。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句