为了测试,我创建了一个客户端clean sessin = false
并setWill(WILL_TOPIC, WILL_MSG.getBytes(), 1, true);
运行了该应用程序。后来,我设置setWill(WILL_TOPIC, WILL_MSG.getBytes(), 1, false);
当我运行该应用程序时,我会收到以前的LWT
消息。如何停止接收它们?
1665 次
2 回答
3
您不会收到这样的 LWT 消息,而是保留的消息。要清除保留消息,请将零长度保留消息发送到同一主题。例如,使用 Paho Python 客户端,您可以:
client.publish(WILL_TOPIC, payload=None, retain=True)
于 2014-11-14T16:44:10.807 回答
1
您可以发送一条带有“CleanSession=false”和“Will=true”的 CONNECT 消息,并发送一条空的 WILLTOPIC 消息
检查本节 6.3
于 2014-11-14T16:36:45.477 回答