我有一个每分钟运行一次的服务来检查全局XMPPConnection对象是否已连接并进行身份验证。我发现在一小时左右的空闲模式后,连接对象显示它已连接并经过身份验证,但它没有收到任何消息。
如果没有Connection对象知道它,连接似乎就会被破坏。请让我知道我可以实现什么来检查XMPPConnection对象是否真正连接,并且即使在长时间不活动后也可以接收消息。
感谢您的帮助。
答案 0 :(得分:0)
hi如果您使用的是openfire,请转到服务器设置,然后转到客户端连接并将设置更改为Do not disconnect clients that are idle
。
这有助于您随时使用。
如果您没有使用任何服务使用户在线,则可以解决您的问题。然后做那件事。
这里我举了一对一的聊天示例,可以在github上找到。
感谢希望这对你有所帮助。
答案 1 :(得分:-1)
取决于您的XMPP服务器实施,您只需向自己发送消息并检查是否收到它。
另一种方法是执行XMPP服务发现,简短地获取您的名单等等 - 做一些需要客户端 - 服务器通信的事情。