有没有人用过OpenFire发布的Smack库4.0.1版本?监听不到接收到的消息。

发布于 2021-11-27 08:50:26 字数 57 浏览 773 评论 6

RT,服务器端3.9.3,smack4.0.1,创建的chat无法监听到对方发送过来的消息。有知道的兄弟们告诉下。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

夜血缘 2021-11-30 03:40:47

这种比较新的问题,在官网的论坛里应该有的, 或者可以在那个上面提问

臻嫒无言 2021-11-29 21:33:34

我也是这个问题 我发现chat.sendMessage可以发送Message和String,我怀疑是String要用packetlistener解析,Message要用messagelistener解析

葬花如无物 2021-11-29 20:33:44

换了一种方法解决了,能够接收到对方返回的消息了。但是不知道之前哪里有问题。

conn.addPacketListener(new PacketListener() {

@Override

public void processPacket(Packet packet) throws NotConnectedException {

Message message = (Message)packet;

System.out.println(message.getFrom() + ":"+ message.getBody());

}

}, new PacketTypeFilter(Message.class));

尐偏执 2021-11-29 15:06:03

of的官网啊。

http://www.igniterealtime.org/downloads/index.jsp

混吃等死 2021-11-28 13:59:10

Smack 4.0是在哪里下载的啊?

英雄似剑 2021-11-28 12:20:47

创建chat后,需要添加监听,创建时传入的那个监听不起作用,不知道为什么 static void addChatListener(XMPPConnection conn) { ChatManager manager = ChatManager.getInstanceFor(conn); manager.addChatListener(new ChatManagerListener() { public void chatCreated(Chat chat, boolean arg1) { chat.addMessageListener(new MessageListener() { public void processMessage(Chat arg0, Message message) { //若是聊天窗口已存在,将消息转往目前窗口 //若是窗口不存在,开新的窗口并注册 System.out.println("收到消息:" + message.getBody()); } }); } }); }

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文