私はスカイプのようなメッセンジャーを開発しています。このために、Ejabberd Server をダウンロードしました。Java を使用して独自のクライアントを開発しています。しかし、相互に通信できるようにサーバーを構成する方法がわかりません。その点で私を助けてください。
3 に答える
ejabberd サーバーのセットアップについては、
http://www.process-one.net/en/ejabberd/guide_en
Java でクライアントを作成している場合は、Openfire の Spark または Smack を使用することが有望だと思います。クライアントとサーバー間の通信は XMPP で、できれば暗号化されます。典型的な ejabberd セットアップでは、ポート 5222 にリスナーがあり、ssl が有効になっています。
{聞く、 [ {5222, ejabberd_c2s, [{access, c2s}, {shaper, c2s_shaper}, {max_stanza_size, XYZ}, %% またはこれを完全にスキップ びっくり、 {certfile, "/path/to/pemfile"}]}, ...
Java でクライアントを作成するという決定が、必ずしもサーバー部分に影響するとは思いません。伸ばすこともさほど難しくありません。
ejabberd のインストールは、グラフィカル インストーラーを使用するとそれほど難しくありません: http://www.process-one.net/tutorials/ejabberd_setup_linux_en_viewlet_swf.html
そして、あなたが推測する稼働時間は、プロジェクトの開始時に微調整に費やす時間に見合うだけの価値があります。
自分でサービスを管理するのが本当に怖い場合は、ホストするオプションもあります (hosted.IM を参照)。
私は AR Diederichs の openfire を検討する提案を支持します。組み込みデータベースですばやくセットアップでき、すぐに使用できます。
次に、Spark クライアントを参照実装として使用することをお勧めします。(プロパティ パネルを介して) デバッグ モードをオンにすると、クライアントとサーバー間の完全な xmpp 通信を表示するデバッガーが生成されます。Adhoc xmpp メッセージを送信することもできるため、サーバーの構成が不適切であるか、メッセージの形式が正しくないかどうかが疑わしい場合、これはそれをテストするエレガントな方法です。ejabberd をセットアップする場合でも、Spark クライアントを使用します。それが機能する場合は、(バグのない) カスタム クライアントでも機能するはずです。