6

我可以在 XMPP Asmack 中实现像 WhatsApp 或 BBM 这样的群聊吗?我正在使用 Openfire 服务器。我已经在 XMPP ( http://xmpp.org/extensions/xep-0045.html ) 中实现了基本的多用户聊天,但它并不包含我需要的所有功能。

我需要群聊的全部功能,例如:

  • 无论用户是否在线,组都可以持久化用户。
  • 将离线消息传递给组成员(当他上线时)。

我应该自定义服务器吗?或者有关于这个组功能的任何标准?我真的需要帮助解决这个问题。

谢谢你。

4

1 回答 1

-1

您应该为群聊消息使用数据包侦听器。在服务中运行此数据包侦听器,以便即使应用程序未在前台运行,群聊也会更新。然后检查数据包中的发件人 ID并相应地更新您的数据库。检查下面的代码。

PacketFilter filter = new MessageTypeFilter(Message.Type.groupchat);
            yourXmppConnection.addPacketListener(new PacketListener() {

                @Override
                public void processPacket(Packet packet) {
                    Message message = (Message) packet;
                    String received_message=message.getBody();
                    String from_user=message.getFrom();

                        // Add incoming message to the list view or similar
                    }
                }
            }, filter);
于 2014-11-06T05:39:01.613 回答