如何停止接收LWT保留的消息?

时间:2014-11-14 16:19:53

标签: mqtt messagebroker broker paho android-open-accessory

为了进行测试,我创建了一个clean sessin = falsesetWill(WILL_TOPIC, WILL_MSG.getBytes(), 1, true);的客户端并运行了应用程序。之后,我在运行应用程序时设置了setWill(WILL_TOPIC, WILL_MSG.getBytes(), 1, false);,我收到了以前重新发送的LWT消息。如何停止接收它们?

2 个答案:

答案 0 :(得分:2)

您不是这样接收LWT消息,而是保留消息。要清除保留的消息,请将保留零长度的消息发送到同一主题。例如,使用Paho Python客户端,您可以:

client.publish(WILL_TOPIC, payload=None, retain=True)

答案 1 :(得分:1)

您可以使用“CleanSession = false”和“Will = true”发送CONNECT消息,并发送空的WILLTOPIC消息

检查this第6.3节