使用aSmack,(XMPP)

时间:2018-09-22 10:14:53

标签: android xmpp ejabberd asmack

我正在通过XMPP使用一个实时聊天应用程序,将aSmack用作客户端,并为服务器端配置了ejabberd。我正在实现一对一的聊天,并且效果很好。现在我正尝试将广播消息集成到多个用户。

我正在学习XEP-0033协议,因为我知道该协议负责消息广播,并且在同一协议上也获得了完全的理论上的明确性。

  1. 我没有获得将此协议集成到我的代码中的任何适当参考。
  2. aSmack是否已为此协议提供了预定义的节,或者我可能需要对自定义节进行集成以集成该协议。如果可以,请为它建议任何参考链接。这对我有很大帮助
  3. 我也在检查MultiUserChatLightManager,但是该课程用于群聊,但是我需要先集成消息广播。
  4. 在ejabberd服务器端是否需要更改以实施此协议?

我不是XMPP的专家,但是如果有人能提供解决方案,请帮助我。我将全力以赴地实现这一目标。

1 个答案:

答案 0 :(得分:1)

我有类似的问题,并使用此问题解决了

将广播插件上传到您的openfire服务器。链接为here 以及插件here

的自述链接

用于广播消息,请按照模式设置为“收件人ID” all @ [serviceName]。[serverName] 其中serviceNamebroadcastserverName是我们的服务器名称 像这样

从您的android客户端发送您的xmpp消息
  Message msg = new Message();
  msg.setBody(yourmessage);
  msg.setFrom(yourJid);
  msg.setTo("all@broadcast.yourservername");
  yourXmppConnection.sendStanza(msg)

对于广播消息中的其他替代方法和高度自定义,您可以使用XEP-0060: Publish-Subscribe herehere是一击,例如