3

私はphpベースのウェブサイトを開発しています。Facebookチャットを実装したいです。

私の質問は、BOSHでXMPPをどのように使用できるかということです。XMPPとBOSHの関係は何ですか。

JAXLやstrophe.jsなどのライブラリを使用してFacebookチャットを実装する方法を理解するためのサンプルソースコードはありますか

4

2 に答える 2

3

私の質問は、BOSHでXMPPをどのように使用できるかということです。XMPPとBOSHの関係は何ですか。

BOSHは、httpを介した双方向ストリームの略です。これは、HTTPを介してXMPPを実行するために設計された仕様ですが、httpを介して基盤となるtcpレベルのプロトコルを実行するために使用できます。

BOSHは基本的にブラウザの制限内で再生されます。つまり、特定のドメインに対して一度に2つを超えるリクエストを行うことはできません。そして、これらの制限内で、BOSHはサーバーとクライアント間の本格的な双方向パイプをエミュレートすることができます。ペイロードは、この仮想パイプを使用して送信でき、ユーザーエクスペリエンスに関しては、リアルタイムと同じくらい優れています。

従来、BOSHは、ロングポーリングと呼ばれる手法を使用してエミュレートされます。ただし、jsonpとwebsockets(利用可能な場合)を使用して同じことを正常に実行できました。

JAXLやstrophe.jsなどのライブラリを使用してFacebookチャットを実装する方法を理解するためのサンプルソースコードはありますか

strophe.jsを使用したWebチャットアプリケーションのサンプル例は十分にあると思います。必要なのは、punjabやebosh(私が書いたもの)のようなbosh接続マネージャー任意のxmpp /jabberc2sエンドポイントに接続できます。

JAXLのサンプル例に関する限り、直接使用できるものがいくつかあります。https ://github.com/abhinavsingh/JAXL/tree/master/app具体的にboshchat.php、boshMUCchat.php、preFetchBOSH.phpの例を見てください。これは、JaxlライブラリのBOSH側のサポートを示しています。

これらの例は、中程度のトラフィックが予想される場合に使用できます。トラフィックの多いアプリケーションの場合は、strophe.jsベースのソリューションを使用することを強くお勧めします。

于 2012-07-23T05:48:00.767 に答える
0

BOSHは、HTTPを介してサーバーからクライアントにメッセージを送信するためのテクノロジーです。TCPをエミュレートする方法としてXMPP/Jabberで使用するために開発されましたが、他のテクノロジーでも使用できます。基本的に、BOSHはXMPPメッセージの最も使用されているキャリアです。

この質問は、実際の実装に関連して、さらに役立つ可能性があります。

于 2012-06-05T20:08:41.897 に答える