我正在使用 Mosquitto 和 Paho 的 Python 实现来尝试交流几个程序。当我使用最后一个意志功能时,我遇到了一些麻烦。我的代码是这样的:
订阅者:
import paho.mqtt.client as mqtt
def on_message(client, userdata, msg):
print 'Received: ' + msg.payload
client = mqtt.Client()
client.on_message = on_message
client.connect('localhost', 1883)
client.subscribe('hello/#')
client.loop_forever()
出版商:
import paho.mqtt.client as mqtt
client = mqtt.Client()
client.will_set('hello/will', 'Last will', 0, False)
client.connect('localhost', 1883)
client.publish('hello/world', 'Regular msg', 0, False)
client.disconnect()
输出:
Received: Last will
我应该只收到常规消息,因为我client.disconnect()
用来关闭连接。如果我评论该will_set
行,我会收到常规消息。我也尝试在同一主题上发布两者,但它不起作用。