关于MQTT中遗嘱和遗嘱信息的用法

时间:2015-04-22 02:21:00

标签: mqtt

在我的情况下,我使用 MQTT 的最后一条消息来通知某些客户端意外断开连接,例如监听主题是" 状态&# 34。

我的问题是当一个客户端连接到brokerA时,然后意外断开与brokerA的连接,但它再次重新连接到brokerA,那时,可能有一个"最后一条消息"发送到"状态"主题?

另一个问题是:当一个客户端意外地从代理断开连接后,可以发送最后一条消息。

1 个答案:

答案 0 :(得分:0)

这里有一个非常好的LWT(遗嘱和证词)描述:

http://www.hivemq.com/mqtt-essentials-part-9-last-will-and-testament/

但简单版本如下:

经纪人只会在满足以下条件的情况下发送LWT消息:

  • 服务器检测到I / O错误或网络故障。
  • 客户端无法在Keep Alive时间内进行通信。
  • 客户端关闭网络连接而不发送DISCONNECT 数据包优先。
  • 由于协议错误,服务器会关闭网络连接。