2010-04-13 4 views

ответ

1

Только что завершил групповой чат, используя XMPP с muckl 4.4 и OpenFire. Ключевая проблема заключается в том, чтобы запустить Reverse Proxy. Поскольку во многих случаях JSJac использует http-bind, вам необходимо связаться с сервером http-bind. Эти серверы обычно находятся в другом порту, чем ваш веб-сервер, предоставляющий ваши файлы javascript.

Это приводит к нарушениям между доменами, и это не сработает. Вот хорошая ссылка, которая говорит об этом: http://www.enavigo.com/2008/10/14/setting-up-jsjac-with-openfire-352/

1

Предполагая, что у вас уже есть соединение с jabber (con), приведено краткое описание того, как подключиться к групповому чату.

//Set the JID with resource 
//Example: [email protected]_domain/my_chat_client 
var u_jid = "[email protected]_domain/my_chat_client" 

//Set the Full Room ID with your username as the resource 
//Example: [email protected]_domain/my_username 
var full_room_id = "[email protected]_domain/my_username"; 

var joinPacket = new JSJaCPresence(); 
joinPacket.setTo(full_room_id); 

//Build item affiliation element 
var inode = joinPacket.buildNode("item"); 
inode.setAttribute("affiliation","none"); 
inode.setAttribute("jid",u_jid); 
inode.setAttribute("role","participant"); 

//Build X Element (with item affiliation child) 
var xnode = joinPacket.buildNode("x", [inode]); 
xnode.setAttribute("xmlns", "http://jabber.org/protocol/muc#user"); 

//Append new nodes to join packet 
joinPacket.appendNode(xnode); 

//Set status in room 
joinPacket.setStatus('available'); 

var success = con.send(joinPacket, function(data) { console.log(data.getDoc()); }); 
Смежные вопросы