2011-07-28 129 views
5

我在客戶端上使用OpenFire服務器實現即時消息傳遞和JSJaC JavaScript庫。我是XMPP技術的新成員。
我想要的是負載我想發送一個用戶列表並接收每個用戶的狀態。類似於openfire獲取在線用戶

$(function(){ 
    var UserList = ["Isis", "Jackob", "Oybek"]; 
    con.send(UserList, OnComplete); 
}); 


function OnComplete(myList){ 
    for (el in myList) 
     if (el.IsOnline) { 
      // Do DOM Stuff 
     } 
} 

這可能嗎?
我一直在尋找文檔,例子和其他類似的迴應,但沒有找到任何。

回答

3

您不能查詢的存在。您可以訂閱到場。如果您發送自己的名片,服務器會向您發送您已訂閱的每個人的當前狀態,以及他們從那裏進行的所有更改。沒有辦法告訴您何時「完成」得到的存在,因爲你從來沒有完成。只需設置一個回叫,當你得到一個存在改變從你訂閱的人,你會很好:

con.registerHandler('presence_in', function(p) { 
    var from = p.getFromJID() 
    // do something interesting with p, from, etc. 
});