Index: dojo-release-1.3.2-src/dojox/xmpp/xmppSession.js =================================================================== --- dojo-release-1.3.2-src.orig/dojox/xmpp/xmppSession.js 2009-09-04 11:22:42.000000000 -0700 +++ dojo-release-1.3.2-src/dojox/xmpp/xmppSession.js 2009-09-04 11:22:46.000000000 -0700 @@ -64,6 +64,7 @@ roster: [], chatRegister: [], _iqId: Math.round(Math.random() * 1000000000), + services: [], open: function(user, password, resource){ @@ -569,6 +570,21 @@ return re; }, + createUserEntry: function(elem){ + //console.log("xmppService::createUserEntry()"); + var u = {jid: elem.getAttribute('jid')}; + for(var i=0; i"); + var def = this.dispatchPacket(request.toString(),"iq",req.id); + def.addCallback(this, "_onDiscoverServices"); + }, + + _onDiscoverServices: function(items) { + if ((items.getAttribute('type')=='result')&&(items.hasChildNodes())){ + var query = items.getElementsByTagName('query')[0]; + if (query.getAttribute('xmlns')=="http://jabber.org/protocol/disco#items"){ + for (var i=0;i"); + var def = this.dispatchPacket(request.toString(),"iq",req.id); + def.addCallback(this, function(info) { + if ((info.getAttribute('type')=='result')&&(info.hasChildNodes())){ + var query = info.getElementsByTagName('query')[0]; + if (query.getAttribute('xmlns')=="http://jabber.org/protocol/disco#info"){ + for (var i=0;i"); request.append(""); - var def = this.dispatchPacket(request.toString,"iq",req.id); + var def = this.dispatchPacket(request.toString(),"iq",req.id); def.addCallback(this, "_onSearchResults"); }, _onSearchResults: function(msg){ + var result = []; if ((msg.getAttribute('type')=='result')&&(msg.hasChildNodes())){ //console.log("xmppSession::_onSearchResults(): ", msg.firstChild); - + var query = msg.getElementsByTagName('query')[0]; + if (query.getAttribute('xmlns')=="jabber:iq:search"){ + for (var i=0;i