当我的用户登录并加入聊天室时,xmpp
是否有任何方式让我收到 MultiUserChat 的离线消息。
我想实现群聊,比如WhatsApp
,有没有其他实现方式请建议
提前致谢
最佳答案
至少在 ejjaberd
中,当您进入聊天组时,您必须输入您的最后一个时间戳,因为您将从那一刻起收到消息。
保存上一条消息的时间戳,以及您进入房间的时间,如下所示:
MultiUserChat muc = new MultiUserChat(mConnection, room_name);
Log.d(TAG, "JOINING => " + room_name);
DiscussionHistory history = new DiscussionHistory();
if (mLastMessageDate == null)
history.setMaxStanzas(300);
else
history.setSince(mLastMessageDate); //timestamp from your last message
muc.join(mNickName, null, history,
SmackConfiguration.getDefaultPacketReplyTimeout());
希望对你有帮助
关于android - 如何从Openfire获取群聊的离线消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25947985/