我已经使用XMPP iOS Framework和OpenFire服务器实现了聊天应用程序。
幸运的是,应用程序运行成功但我在应用程序中面临一个互联网断开问题。
当用户注销或手动进入离线模式时,它会向他/她的名单发送节。所以他/她的名单知道用户进入离线模式。
现在互联网将断开与用户设备的连接,由于互联网断开连接,应用程序无法向服务器发送在线状态节。因此,他/她的名单不会获得有关该离线用户的信息,用户将仅以在线模式显示。
我认为像OpenFire服务器这样的东西可能能够检查连接的用户,并且当任何用户断开连接时,它应该向他的名单发送具有离线状态的状态节,以便他们知道该用户处于离线模式。
如果我能通过任何方式实现此功能,请有人帮助我。
解决这个问题对我很有帮助。
提前致谢。
答案 0 :(得分:4)
这是核心xmpp功能,Openfire必须代表您向您的联系人发送unavailable
。所以它看起来像一个bug。
但是存在一个不同的问题 - 具有移动互联网的用户可能会经常重新连接,并且XMPP社区开发了Stream Management扩展,允许服务器在快速重新连接并在没有状态更改的情况下恢复它时“休眠”客户端会话。总结: