在XMPP中Internet不可用时排队消息

时间:2013-03-11 12:14:35

标签: android xmpp openfire

在我的聊天应用程序中,当我向发件人发送邮件/聊天时,我正在检查互联网连接和XMPP连接。如果两者都可用,则只允许用户发送聊天消息。

E.g -

if(connection.IsConnected){

//code to send the message to the sender
}

我正在使用Openfire Server。

我想实现一种功能,当互联网不可用时以及当用户想要发送消息时,它应该发送(即消息应该添加到队列中)并且应该在互联网上发送到接收者可以再次使用,就像Whats App。

由于

1 个答案:

答案 0 :(得分:1)

如果您没有互联网/ XMPP连接,则此服务器无关紧要。您只想缓冲客户端中的消息,并在重新建立连接后发送它们。

我假设您正在使用Smack或asmack,这意味着您只需要在连接上创建连接侦听器,以便在重新建立连接连接时发送缓冲消息。

connection.addConnectionListener(new ConnectionListener()
{
      :
    public void reconnectionSuccessful()
    {
        resendFromBuffer();
    }
});