云巴的离线消息

功能介绍

云巴的消息通道目前基于 IP 连接,由于网络的不完全可靠性及用户自身的使用习惯,通过云巴发消息时,常常会遇到客户端不在线的情形。

云巴提供了离线消息机制:只要在发消息时,将 QoS 参数设置为 1 或 2,就能够保证消息的送达。(建议设置为 QoS 1)

最佳实践:近期,云巴 QoS 2 的逻辑正在优化中,建议使用 QoS 1,可以考虑在客户端层面进行去重处理。

这意味着,如果接收方的客户端当前不在线的话,消息会暂存在云巴的服务器(多达 50 条,长达 15 天),等到客户端连网时会收到云巴服务器发来的离线消息,客户端收到后,服务器才会删除之前保存的消息。

:云巴的离线消息不保证消息的顺序送达。

通过设置 time_to_live 参数,可以控制离线消息在云巴的服务器上保留多久。 另外,每个 Topic 的离线消息数量最多不超过 50 条。

参数说明

  • qos:用来设置服务质量等级。有三种取值:0 表示最多送达一次;1 表示最少送达一次;2 表示保证送达且仅送达一次。默认为 1。 详见 官方文档

  • time_to_live:用来设置离线消息保留多久。单位为秒(例如,3600 代表 1 小时),默认值为 5 天,最大不超过 15 天。