在客户端重新连接到mqtt代理后获取所有消息

时间:2018-09-21 08:47:43

标签: chat mqtt instant-messaging

我正在尝试使用MQTT构建即时消息应用程序。但是我遇到了一个障碍,因为当客户端离线一段时间后重新连接时,我无法接收发布者发送的所有消息。客户端通过以下设置连接到代理:

  1. 客户ID
  2. 干净会话-错误
  3. 使用QoS 2接收

发布者使用以下设置发送邮件时:

  1. QoS 2
  2. 将保留标志设置为true

问题是当客户端重新连接时,它只接收发布者发送的最新(离线)消息,而所有前面的消息都丢失了。

我正在阅读一些文章,其中提到持久连接意味着代理保留主题订阅以及所有QoS 1和2消息。以下是其中一些:HiveMQ persistent connectionsanother article

是否存在一种变通方法,可以在客户端离线或我做错事情时获取有关某个主题的所有消息?

PS 。我已经浏览了此Receive offline messages mqtt链接,并且所做的操作与回答相同,但不能解决我的问题。

0 个答案:

没有答案