2012-04-22 14 views
0

私は現在、Stropheベースのjavascriptスクリプトを作成して、OpenFireサーバで利用可能なユーザのリストを取得しようとしています(ライブリフレッシュが必要です)。私はグループや部屋などを作成する必要があるかどうかは気にしません(とにかく、サーバーは小さなグループのユーザーしか走らず、誰もが互いに接続しています)が、サーバーを作ることができるようにしたいそのようなリストを与える。 どうすればいいですか?私はmuc拡張子を使用する必要があることを読んだが、どこでも見つけることができない。OpenFireサーバからユーザのリストを取得

答えて

3

問題解決済み!私が作業していたユーザをグループに追加しなければならず、ユーザが退室したり部屋に入るたびに、OpenFireは他のユーザに大抵の場合bodyタグの中にラップされた存在スタンザを部屋に通知します。これによりStropheはこれらの存在スタンザを非常にうまく識別できないため、Strophe接続からxmlInput関数を上書きして、サーバーから取得するすべてのxmlスタンザを取得する必要がありました。

conn.xmlInput = onXmlInput; 
function onXmlInput(data) { 
    Strophe.forEachChild(data, "presence", function(child) { 
     var from = child.getAttribute('from'); 
     from = from.substring(0, from.indexOf('@')); 
     //'type' will contain "unavailable" when offline and no attribute 'type' when online 
     if (!child.hasAttribute('type')) { 
      addUser(from); 
     } else {      
      deleteUser(from); 
     } 
    }); 
} 
+0

こんにちは、あなたはグループを作成しているし、それから、あなたは、オンラインのユーザーを取得しているが、この30ユーザーのための制限をしていますか? – Tiger

+0

大量のユーザーで作業していないため制限がありませんでした。これについて別のスレッドに質問を投稿することもできます; – Gonzalo

+0

adduserとdeleteuserメソッドはどのような方法ですか? –

関連する問題