XMPP:检索BOSH会话ID和RID

时间:2013-08-26 06:47:27

标签: xmpp strophe

请告诉我如何检索SID和JID。我正在使用Strophe JS。

<body rid='489923353' xmlns='http://jabber.org/protocol/httpbind' sid='ab7f5957' to='127.0.0.1' xml:lang='en' xmpp:restart='true' xmlns:xmpp='urn:xmpp:xbosh'/>

var conn = new Strophe.Connection(bosh_service); 

但是, conn.sid conn.rid 不会返回相同的数字。

2 个答案:

答案 0 :(得分:2)

在此之后,我想我找到了答案!

else if(status === Strophe.Status.CONNECTED){

        //get roster
        var iq = $iq({type: 'get'}).c('query', {xmlns: 'jabber:iq:roster'});
        Chat.connection.sendIQ(iq, Chat.on_roster);  
        //on chat
        Chat.connection.addHandler(Chat.on_message,null, "message", "chat");

        $("#presence").html("Connection SID" + Chat.connection.sid + "Connection RID" +  Chat.connection.rid);
    }

答案 1 :(得分:1)

  1. 对于SID,请使用Chat.connection.id的Chat.connection._proto.sid。
  2. 对于RID,使用Chat.connection._proto.rid instaed Chat.connection.rid
  3. 对于JID,请使用Chat.connection.jid。
  4. 这里SID和RID是BOSH对象的属性,其中JID是Strophie对象的属性。 这对我很好。我希望它也适合你。