私は別のプロジェクトに取り組んでおり、ユーザーがチャットする簡単な方法を提供するために、全員のチャット (Myspace、Facebook、Yahoo、AOL、Google など) を 1 つに結合するオンライン インスタント メッセンジャーを作成できる必要があります。何もダウンロードする必要はありません。PHPでこれをやろうと思っていましたが、どうすればいいのかよくわかりません。これをグーグルで検索しましたが、答えを見つけることができませんでした。
3 に答える
Phurpleプロジェクトは多少不完全ですが、Pidgin / libpurple コア上に構築されているため、ほとんどの要件 / メッセージング プラットフォームは既にサポートされており、選択したパッケージ マネージャーを使用して libpurple を更新するだけで、プロトコルを最新の状態に保つことができます。ユーザーのログイン状態を維持するには、デーモン スクリプトを作成する必要があります。Web サーバーのプロセスで接続を維持しようとすることはお勧めできません。フローは単純に次のようになります。
- ユーザーのログイン
- ユーザー アカウントにログインする Deamon プロセスが生成されます。
- ページ接続からデーモンプロセスへのさらなる ajax リクエスト
- カスタム セッション ハンドラを使用すると、セッションのタイムアウト時にデーモン プロセスを簡単に破棄できます。
余談ですが、ユーザーアカウントのログインとパスワードを保持する責任は負いたくありません。これらが常に安全であることをあなたの中心的な関心事にしてください
ここから調べ始めるべきことがたくさんあります。
- XMPP は、これらのシステムのほとんどが使用するプロトコルです。これは XML Presence Protocol の略で、メッセージが送信される形式です。
Jabber は、多くのチャット クライアントが構築されているオープン ソース システムです。
JWChat はオープン ソースの Web ベースのシステムであり、おおまかに探している機能を備えているようです。http://blog.jwchat.org/jwchat/-
そこにはたくさんの情報があるので、XMPP の Google 検索から始めて、プロジェクトを開始するための豊富な情報を見つけることができると思います。
おそらく、既存の IM ライブラリを使用したいと思うでしょう。Telepathyと libpurple をチェックしてください。
残念なことに (またはおそらく幸いなことに!)、どちらも直接 PHP で動作しません (ただし、Telepathy との通信に使用できる PHP DBUS ライブラリがあるようです)。ただし、Telepathy には事前に作成された Python API があります。Django または Pylons を使用してアプリを作成することを検討してください。