2012-04-09 15 views
1

私はXMPPの初心者です。現在、私はopenfireとxmppを使ってチャットアプリケーションを開発しています。 ユーザーがサーバーにログインすると、サーバーはユーザーが使用したWebブラウザーの情報を取得する必要があります。XMPPアプリケーションでWebブラウザの名前を取得する方法は?

どのような方法がありますか?私はdisco#infoとdisco#itemを使ってそれを行うことを考えていますが、やり方はわかりません...

ありがとう。

答えて

0

XMPPでソフトウェアとバージョンを通信する方法は複数あります。どの方法を使用するかを決定する1つの方法は、情報を求めたいものを自分自身に尋ねることです。

アプリケーションで機能を検出するためにソフトウェアバージョンを使用している場合は、disco#info and disco#featuresを実際に使用するXEP-0115: Entity Capabilitiesを調べる必要があります。

ソフトウェアの名前とバージョンを報告と表示のための文字列にしたいのであれば、XEP-0092: Software Versionを使用できます。私はそれがStrophe.jsを使用して書いたアプリケーションでは、私はBrowserDetectと、次のコードを使用:

function version_handler(stanza) 
{ 
    conn.send($iq({to: stanza.getAttribute("from"), type: "result", id: stanza.getAttribute("id") }) 
     .c('query', { xmlns: "jabber:iq:version" }) 
     .c('name').t(BrowserDetect.browser).up() 
     .c('version').t(BrowserDetect.version.toString()).up() 
     .c('os').t(BrowserDetect.OS).tree()); 
     return true; 
} 

と:

conn.addHandler(version_handler, "jabber:iq:version", "iq", "get", null, null); 
関連する問題