openfire+smack获取离线消息
2013-04-26 14:27
393 查看
ConnectionConfiguration connConfig = new ConnectionConfiguration("127.0.0.1");
//登录前先设置不发送在线状态,因offlineManager调用必须在用户状态为离线状态下获取,具体参照smack javadoc中的offlineManager类英文说明
connConfig.setSendPresence(false);
connection = new XMPPConnection(connConfig);
connection.connect();
OfflineMessageManager offlineManager = new OfflineMessageManager(sample.getConnection());
sample.login("test", "test");
//System.out.println(offlineManager.supportsFlexibleRetrieval()); //获取支持灵活的检索状态,正常应该是为true,个人理解为服务器的离线消息功能支持开关
System.out.println("离线消息数?: " + offlineManager.getMessageCount());
Iterator<Message> it = offlineManager.getMessages();
while (it.hasNext()) {
Message message = it.next();
System.out.println(message.getBody());
}
offlineManager.deleteMessages(); //上报服务器已获取,需删除服务器备份,不然下次登录会重新获取
Presence presence = new Presence(Presence.Type.available);//此时再上报用户状态
sample.getConnection().sendPacket(presence);
//登录前先设置不发送在线状态,因offlineManager调用必须在用户状态为离线状态下获取,具体参照smack javadoc中的offlineManager类英文说明
connConfig.setSendPresence(false);
connection = new XMPPConnection(connConfig);
connection.connect();
OfflineMessageManager offlineManager = new OfflineMessageManager(sample.getConnection());
sample.login("test", "test");
//System.out.println(offlineManager.supportsFlexibleRetrieval()); //获取支持灵活的检索状态,正常应该是为true,个人理解为服务器的离线消息功能支持开关
System.out.println("离线消息数?: " + offlineManager.getMessageCount());
Iterator<Message> it = offlineManager.getMessages();
while (it.hasNext()) {
Message message = it.next();
System.out.println(message.getBody());
}
offlineManager.deleteMessages(); //上报服务器已获取,需删除服务器备份,不然下次登录会重新获取
Presence presence = new Presence(Presence.Type.available);//此时再上报用户状态
sample.getConnection().sendPacket(presence);
相关文章推荐
- openfire+spark+smack 即时通讯(问题篇一)离线消息获取不到
- openfire+spark+smack 即时通讯(问题篇一)离线消息获取不到
- Android基于XMPP Smack Openfire下学习开发IM(四)单人聊天和多人聊天(发送消息、接收消息)
- Android xmpp开发 asmack获取离线在线添加好友消息 及 好友上线下线通知
- XMPP——Smack[5]文件传输及离线消息的获取
- smack+openfire插件实现广播。向所有在线用户发送消息。
- Android基于XMPP Smack Openfire下学习开发IM(四)单人聊天和多人聊天(发送消息、接收消息)
- openfire+smack收发消息
- 基于openfire+smack的Android、消息推送服务
- openfire+smack 简单的 发送消息 demo及各种错误解决方案。
- Java 通过smack + openfire + spark实现简单的登录与发送消息
- XMPP——Smack[5]文件传输及离线消息的获取(转)
- XMPP——Smack[5]文件传输及离线消息的获取
- openfire asmack+android 发送消息 501错误
- asmack xmpp 获取离线消息
- Android之基于xmpp openfire smack开发之Android消息推送技术原理分析和实践[4]
- Android基于XMPP Smack Openfire开发IM(5)发送消息
- openfire+smack聊天气泡效果ListView完成收发消息
- XMPP——Smack[5]文件传输及离线消息的获取
- Android基于XMPP Smack Openfire开发IM【三】客户端接收服务器发送的消息