如何在xmpp服务器中创建新组

Raj*_*ran 4 javascript jquery xmpp openfire strophe

我使用Strophe.js库在我的应用程序与XMPP(Openfire)服务器之间进行通信.

我想添加用户组,如何创建新组?如何通过添加伙伴查询提及组名?

这是我添加新用户的代码

var str1=$pres({'xmlns':'jabber:client','from':xxx@example.com,'to':yyy@example.com,'type':'subscribe'}).c('nick',{'xmlns':'http://jabber.org/protocol/nick'}).t(userName);
 connection.send(str1.tree());
Run Code Online (Sandbox Code Playgroud)

我在一天之内推荐XMPP扩展,但我找不到合适的结果

Joe*_*and 5

您需要发送名册更新. 有关详细信息,请阅读RFC 6121第2节.你将发送这个协议:

<iq from='juliet@example.com/balcony'
    id='rs1'
    type='set'>
   <query xmlns='jabber:iq:roster'>
     <item jid='yyy@example.com' name='nick'>
        <group>My Group</group>
     </item>         
   </query>
</iq>
Run Code Online (Sandbox Code Playgroud)

使用类似的代码:

$iq({'type':'set'}).c('query',{'xmlns':Strophe.NS.ROSTER}) 
   .c('item', {'jid':'yyy@example.com','name':'nick'})
       .c('group').t('My Group')
Run Code Online (Sandbox Code Playgroud)

  • 基础XMPP中没有空组.你可以单独存储一个空组列表,可能使用PEP(XEP-0163:http://xmpp.org/extensions/xep-0163.html),或者没有私有存储(XEP-0049:http://) xmpp.org/extensions/xep-0049.html).对于其中任何一个,请使用您控制的新命名空间,但不要指望其他客户端能够看到空组.如果你对此感到强烈,请写一个新的XEP,并将其提交给XSF:http://xmpp.org/xmpp-protocols/xmpp-extensions/submitting-a-xep/ (2认同)