ios - XMPP 客户端网络故障和 Openfire 离线消息

标签 ios xmpp openfire

我已经配置了 XMPP 客户端(iOS)和 Openfire ,一切正常,除了我无法处理以下情况。

  • iOS 客户端因网络故障而断开连接。
  • 用户仍登录在服务器上,因为无法断开连接(无网络)。
  • 更多消息不会存储在服务器中,因为服务器认为用户仍处于登录状态。因此消息会丢失。
  • 由于接收者(用户)状态仍处于在线状态(没有网络可发送状态),因此发送者无法发送推送通知。

如何解决这个问题?

最佳答案

我找到了一个解决方案,不确定它是否有效。

在 Openfire 管理门户中,在“客户端连接设置”->“空闲连接策略”下,有一个选项可以在客户端空闲 x 秒后断开连接。默认情况下是 360 秒,我已将其更改为 5 秒,这样消息就不会丢失。

我不确定每 5 秒 ping 一次客户端是否是一个好主意。

关于ios - XMPP 客户端网络故障和 Openfire 离线消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26248729/

相关文章:

android - XMPP Smack - 如何检查连接是否处于 Activity 状态或已断开?

python - 是否有为 Python 实现的 WebSocket 客户端?

使用 Mavericks OS 升级 MAC 后,Openfire 服务器未启动

mysql - 重启后openfire mysql UTF-8编码失败

ios - 为什么点击搜索栏时 UISearchController 上有一条白线?

ios - GoogleMaps Swift 点击标记

java - 如何使用 talk.google.com 执行 OAUTH2.0 Smack XMPP 身份验证

ios - RESTKit POST 请求教程

ios - 编辑 CoreData 对象然后保存上下文

android - 我想在加入群组时禁用检索群组聊天 (MUC) 历史记录 - Android