問題タブ [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.
erlang - ejabberd:「ejabberd」とは異なる「cookie」を設定する方法はありますか?
ejabberdモジュールを構築しています。同じLAN(sname)上の別のノードへのRPC呼び出しを実行するには、このモジュールが必要です。私が理解していることから、ejabberdは「cookie」を所有するように構成します。これはもちろん、他のノードに使用するcookieとは異なります。
ejabberdに別のCookieを使用させる方法はありますか?
編集:ejabberdは「ejabberd」ユーザー名でデーモンを起動します。
編集:適切なCookieを使用して/home/ejabberd/.erlang.cookie(ユーザー名:ejabberd、グループ:ejabberd)を作成しても、機能しません。
編集:問題を回避する1つの方法(これはあまり良くありません)は、目的の.erlang.cookieファイルを/ var / lib / ejabberdに(適切な権限で)コピーすることです。
erlang - ejabberd: ユーザーが管理者かどうかを判断する方法はありますか?
モジュール開発ドキュメントを参照しましたが、「ユーザー」(つまり、JID によって識別される) に管理アクセスが許可されているかどうかを判断するのに役立つ API が見つかりません。
有望に見えるモジュール「acl」(またはおそらく完全に答え)があることは理解していますが、公開APIは文書化されていません。
モジュール「acl」がユーザー資格情報にアクセスするための適切な方法であると想定する必要がありますか?
erlang - Mochiwebポート80
ポート80でMochiwebを介してBeepBeepを実行しようとしています。sudo./start_server.shと入力すると機能します。このようにMochiwebを実行することでセキュリティ上のリスクはありますか?もしそうなら、どのように治療するのですか?
ありがとう!
erlang - Mochiweb 記憶喪失リクエスト
Mochiweb を ejabberd mnesia データベースにリンクしようとしていますが、コントローラーで mnesia トランザクションを実行できません。mnesia トランザクションを使用せずにコントローラーをテストしたところ、正常に動作しました。start 関数内で application:start(mnesia) を使用しています。
ブラウザには「Internal server error」が表示され、Mochiweb のログには「=ERROR REPORT=== function_clause」が表示されます。1.) mnesia を Mochiweb で動作させる方法、または 2.) ejabberd の Web サーバーにプラグインできる優れたフレームワークの方法を知りたいです。
ありがとう!
php - PHP から ejabberd ユーザーを作成する
PHP スクリプトから ejabberd ユーザーを作成する必要があります。また、事前定義された共有名簿に新しいユーザーを追加できるようにする必要もあります。
ejabberdctl
使用して電話するだけexec()
ですか、それとももっと良い方法がありますか?
erlang - ノード間のErlangEtsテーブル
大量のカスタムモジュールが実行されているejabberdサーバーがあります。私はいくつかのmnesiaテーブルを持っており、コードをまったく変更することなく、これらをノード間で簡単にコピーできることを知っています。etsテーブルで同様の方法があるかどうか疑問に思いましたか?
理想的には、etsテーブルをmnesiaテーブルに変換しなくても、まったく同じmnesiaおよびetsデータで複数のマシンを実行できると便利です。(したがって、かなりの量のコードを書き直します。)
1つは、各ノードのetsテーブルでrpc:callを実行していましたが、これがパフォーマンスに与える影響については確信が持てませんでした。
誰か答えがあれば教えてください。
erlang - ejabberd IPアドレス
ejabberd にログインしているユーザーに IP アドレスをマップする直接的な方法があるかどうかは誰にもわかりませんか? ejabberd_receiver.erl を変更し、ここから inet:peername(Socket) を呼び出す間接的な方法を見つけました: Determining IP address and port of an incoming TCP/IP connection in Erlang
しかし、認証に成功した後にソケットをユーザーにリンクする方法はないようです。誰か方法を知っている人がいたら教えてください!ありがとう。
erlang - Mochiwebデバッグ(ejabberdデバッグなど)
/ sbin / ejabberdctl debugを実行するときにejabberdのようにMochiwebにアクセスする方法を誰かが知っているかどうか疑問に思いましたか?
frameworks - Erlangフロントエンド管理パネル
複数の役割を異なるユーザーに割り当て、それらのユーザーが(役割に基づいて)特定のデータを順番に操作できるようにするフレームワークを探しています。ejabberdバックエンドとMochiweb(BeepBeepフレームワーク)フロントエンドがあり、ノードが接続されているため、Mochiwebはejabberdのmnesiaテーブルを操作できます。
直接的な解決策はありますか?そうでなければ、Ruby on Railsをお勧めする人はいますか?(そして、使用する必要があるRailsアプリがある場合はどのRailsアプリを使用する必要がありますか?)
最後に、存在しない場合、この仕事に雇うための堅実なErlangプログラマーを見つけるのに適した場所はどこですか?
前もって感謝します。
erlang - Ejabberdメモリ消費(またはリーク?)
サーバーでejabberd+mochiwebを使用しています。ejabberdとmochiwebを実行し続ける時間が長いほど、より多くのメモリが消費されます(昨夜は、メモリの35%を消費していました。現在、50%を少し上回っています)。これは単なるmnesiaガベージコレクションの問題だと思ったので、Erlang R13B3をインストールして、ejabberdを再起動しました。しかし、これはそれを修正しませんでした。
そのため、フルメモリ消費量の50%を少し超えると、ejabberdがメモリを「解放」し始めて約50%にとどまっているように見えることに気づきました。これは正常ですか?ejabberdのしきい値は約50%なので、それに達すると「実際にメモリを解放する時間です...」と表示され、残りの部分をすばやくアクセスできるようにします(キャッシュ記憶容量など)。
ご意見をいただければ幸いです。ありがとう!