現在、ユーザー/アカウントに既に付属しているアプリに MongooseIM を使用したチャット機能を追加しようとしています。
アイデアは、mongooseIM チャット サーバーを追加し、すべての既存 (および将来) のユーザーを mongooseIM のユーザー ID に登録することでした。
設定
私はmongooseIM docker コンテナーを使用しており、カスタム構成をロードする docker compose をセットアップしました。
カスタム構成では、管理者 REST APIを追加し、すべての登録済みユーザーの一覧表示や使用可能なコマンドなどの要求を実行できます。
問題
API を介して新しいユーザーを登録する必要があるときはいつでも、応答を受け取ります:
Can't register user at node: not_allowed
と 500 ステータス コード。
mongooseimctl
返品を通じてユーザーを登録しようとしていますError: account_unprivileged
。
私が試したこと
ドキュメントと Google の結果を 6 時間ほど読んでいると思います。
標準の docker コンテナー (および追加の構成なし) を使用したテストはコマンド ラインから機能しますが、API にアクセスする方法がわからないため (または API がまったく有効になっているかどうか)、API のテストに失敗しました。多分誰かが私のためにこれについてのヒントを持っていますか?
アクションは実際には許可されていませんが、管理インターフェイスの /commands ルートには結果に register_user アクションが含まれているため、有効/許可されていると思います。
%{
"action" => "create",
"category" => "users",
"desc" => "Register a user",
"name" => "register_user"
},
デフォルトの docker コンテナーを使用して、存在しないドメインにユーザーを登録しようとすると、「not_allowed」という結果になるため、これは構成の問題である可能性があります。mongooseim.toml 構成ファイルで構成されたホスト名があります。
[general]
loglevel = "warning"
hosts = ["myhost"]
default_server_domain = "myhost"
language = "en"
どこかで構成/セットアップが欠落していると確信しており、ヒント/ヘルプをいただければ幸いです。
編集 1
構成ファイルにダミーの承認 (== 承認なし) を追加しました。
[auth]
methods = ["dummy"]
これで、「not_allowed」エラーは発生しなくなりました。
代わりに、応答は常にユーザーが既に存在することを示しますが、ユーザー リストを要求すると常に空のリストが返されます。
作成されたユーザーjid間でメッセージを送信しようとしましたが、エラーは発生しませんが、どのユーザーにもメッセージが返されません。