简而言之,我有一个Paho/MQTT示例集,它工作得很好,但是我在检测错误时遇到了问题。具体地说,我没有得到on-connect回调,当给出无效的UserID/Pswd组合时,它会自动失败。
事实上,从各种迹象来看,一切都很顺利!
我做错什么了?(snip)
def on_connect(client, userdata, flags, rc):
print("Connected with flags [%s] rtn code [%d]"% (flags, rc) )
def on_disconnect(client, userdata, rc):
print("disconnected with rtn code [%d]"% (rc) )
def on_publish(client, userdata, msgID):
print("Published with MsgID [%d]"% (msgID) )
mqttc = mqtt.Client()
mqttc.on_connect = on_connect
mqttc.on_disconnect = on_disconnect
mqttc.on_publish = on_publish
mqttc.username_pw_set(Q_USER, Q_PSWD)
rc=mqttc.connect(Q_BROKER, Q_PORT)
print "Return="+str(rc)
mqttc.loop_start()
rc=mqttc.publish(Q_TOPIC, "Hello, World!")
print "Return="+str(rc)
mqttc.disconnect()
mqttc.loop_stop()
当用户id或Pswd故意错误时输出:Return=0
Published with MsgID [1]
Return=(0, 1)
disconnected with rtn code [0]