私はejabberd(16.01)サーバーをUbuntu 16.04上で実行しています。別のNodeJsアプリケーションを別のサーバーで実行しています。 NodeJsアプリケーションを通じて、https://docs.ejabberd.im/developer/ejabberd-api/で与えられたReST APIを使用して、ユーザーを追加したり、ロスターなどを追加したいと考えています。ノードjsアプリケーションからejabberd ReST APIにアクセス
この練習では、https://docs.ejabberd.im/developer/ejabberd-api/simple-configuration/という簡単な設定を行っています。構成はスニペットの下に追加するには、こう述べています。
commands_admin_access:
- allow:
- user: "[email protected]"
commands:
- add_commands: [user, admin, open]
# Tokens are valid for a year as default:
auth_expire: 31536000
oauth_access: all
ここでの問題は、ドキュメントは、これらの設定を追加する必要があるヘッダー何の下に指定していない、のですか?この設定の正確な位置は完全には見当たりません!
ファイルの最後に上記の設定を追加しました。ただし、ejabberdサーバーはこれらのオプションを認識しません。ログは言う:以下
validate_opts:792 unknown option 'auth_expire' will be likely ignored
validate_opts:792 unknown option 'api_permissions' will be likely ignored
validate_opts:784 ignoring option 'commands_admin_access' with invalid value: [[{allow,[[{user,<<"[email protected]">>}]]}]]
は、私がejabberd.ymlファイルに追加した余分な構成です:
commands_admin_access:
- allow:
- user: "[email protected]"
commands:
- add_commands:
- status
- registered_users
- register
- unregister
# Tokens are valid for a year as default:
auth_expire: 31536000
oauth_access: all
api_permissions:
"API used from localhost allows all calls":
- who:
- ip: "168.63.209.95"
- what:
- "*"
- "!stop"
- "!start"
私はドキュメントが非常に明確ではないと思います。誰かが私がここで間違っていることを提案することはできますか?あるいは、私がやろうとしていることを達成するための代替手段がありますか?
私はそれを打ちましょう!ありがとう、@ダルシャン:) –