問題タブ [ejabberd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
10733 参照

ldap - ejabberd-LDAP認証

LDAP認証を使用してejabberdインストールを構成しようとしていますが、adminユーザーを使用してもログインできません。これは私のejabberd.cfgファイルの一部です:

私は何が欠けていますか?

OpenFireを使用すると、この資格情報/構成を使用して接続できると言わなければなりません。

クライアントアプリケーションとしてSparkを使用しています。

ありがとう

0 投票する
1 に答える
262 参照

python - ユーザーをpy-transportサーバー側に手動で登録する方法はありますか?

ユーザーを ejabberd に移行するためのスクリプトをいくつか作成しようとしていますが、ユーザーをトランスポートに登録するために提案された唯一の方法は、クライアントを使用してサービスを検出することです。確かに方法はありますよね?

0 投票する
2 に答える
468 参照

erlang - ejabberd コンパイル エラー

私は巨大な erlang 初心者であり、ejabberd のコンパイル中に次のエラーが発生します。

これは何が原因でしょうか?

0 投票する
4 に答える
3845 参照

xmpp - ランダムな名前の Jabber 自動ログイン

JSJaCejabberdを使用してライブチャットを構築しています。すべてのサイト訪問者にアカウント「ゲスト」が与えられることを除いて、すべて機能しています。2 人の訪問者が同時にライブチャットを試みると、応答が混乱するか、最初のユーザーがログアウトされます。

ゲスト名をランダムに設定できますが、その名前が登録されているか自動登録されているかを確認する必要があり、以前に登録されていないことを願っています。各ログインをランダムなリソース名に割り当てようとしましたが、それでも会話がマージされました。

要するに、複数の匿名ログインが livechat アカウントとの個々の会話を開始できるようにする最も簡単な方法を探しています。プライマリ ライブチャット アカウントがチャット中に、ライブチャットが別のユーザーにラウンド ロビンできれば、さらに良い (ただしオプション)。

ソリューションは、Web クライアント ベースまたはサーバー ベースのどちらでもかまいません。私は両方を制御しているので気にしません (また、ejabberd はさまざまなモジュールをサポートしています)。

ところで、登録済みアカウントを自動登録しようとすると、JSJaC simpleclient デモが次のように返します。

これがカスタムクライアントまたはサーバーセットアップで無視またはオーバーライドできるものかどうかはまだ確立していません. このエラーを検出して、自動登録せずに再試行できると思いますが、より良い/より簡単なオプションを聞きたいです。

0 投票する
2 に答える
6091 参照

php - PHP を使用した Ejabberd での XMPP SASL 認証

SASL を使用して XMPP サーバーで認証しようとしています。

ただし、XMPP サーバーは次のように応答します。

これは Ejabberd サーバーに対するものです。XMPP ストリームを開くと、次のようにアドバタイズされます。

したがって、SASL - PLAIN が機能するはずです。OpenFire サーバーで完全に動作する JavaScript バージョンがあります。(現時点では Ejabberd でテストできません)

そのため、PHP バージョンが機能しない理由がわかりません。

0 投票する
2 に答える
692 参照

erlang - 起動時にejabberdノードを同期する

解決できないように見える問題が発生しています。関数mnesia:change_table_copy_type(schema、node()、disc_copies)を渡す必要があります。コマンドラインで、dbがマスターノードから作成されます。erlの開始は次のとおりです。erl-nameNODE1-mnesia extra_db_nodes \ "['MASTER'] \" -s mnesiaシェルを起動してから関数呼び出しに入ると、すべてが正常に機能し、シェルを停止してejabberプロセスを正常に開始できます。 。したがって、必要なのは、DBのセットアップと同期を実行するためのスクリプト化されたメソッドです。

change_table_copy_typeを渡すためにさまざまな方法を試しましたが、成功しませんでした。最終的な目標は、mnesiaを開始するプロセスをスクリプト化し、関数を渡してから、シェルを終了できるようにすることです。誰かがこれを試したことがありますか?次のようなリダイレクトを試しました:erl -name NODE1 -mnesia extra_db_nodes \ "['MASTER'] \" -s mnesia <

関数呼び出しが渡されたときにノードが開始されないため、これは失敗します。「-run」オプションを使用しようとしましたが、関数がundefであるというエラーが発生します。たぶん私は-runセクションを正しく構築していません。

0 投票する
1 に答える
404 参照

module - ejabberd モジュールのフック処理を終了する

私は ejabberd モジュールを書いています。それは、いくつかのメッセージをキューに保存することです。実際には非常にうまく機能します。どのドキュメントにも見つからないことが1つだけあります。特定のユーザーからのメッセージを見つけたら、フック処理を停止する必要があります。

つまり、ユーザー A からユーザー B にメッセージが ejabberd に送信され、私のモジュール (user_send_packet フックにフックされている) がこのメッセージを処理し、ユーザー A が指定されたユーザーであることが判明した場合、それを配信してはなりません。私が理解したことから、フック処理を停止することでこれを達成できます。フック処理を停止するにはどうすればよいですか?

0 投票する
2 に答える
4436 参照

xmpp - Xmpp ejabberd および add-user コマンド

私は 2 つの ejabberd サーバーを持っています。

xmpp pidgin コンソールを使用して、テスト用に iq スタンザを送信できます。

ローカル サーバーのホスト名は eepc です

遠隔サーバー

が表示される理由がわかりません。サーバーにリモートからのコマンドを受け入れるように指示する特定のオプションが表示されませんでした。

0 投票する
1 に答える
117 参照

api - ejabberd: "disco_local_identity" と "disco_sm_identity" の違いは?

「disco_local_identity」と「disco_sm_identity」モジュール API メソッドの違いは何ですか?