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