2017-07-31 1 views
0

ejabberdを使用しているユーザーを削除しようとしていますが、まだ400件を受け取っています。 Smackから送られてきたスタンザは、私が知る限り仕様書によるものです。 OpenFireでもうまく動作します。ejabberdはユーザーを削除しようとしたときに不正なリクエスト/変更を報告します

Ejabberdはromeemhild/docker-ejabberdドッカーコンテナバージョン17.03-1(最新のものが入手できますが、理由はprocessoneコンテナ[2]を参照してください。 [3]) hosts: - "xmppserver.com" auth_method: - internal acl: admin: user: - "admin": "xmppserver.com" - "adminaccount": "xmppserver.com" local: user_regexp: "" access: (nothing of interest here) modules: mod_adhoc: {} host_config: "xmppserver.com": domain_certfile: "/opt/ejabberd/ssl/xmppserver.com.pem" の完全なコピー(私はそれが私のために動作することを確認後、はい、私は適切にSSLを設定します)

まず、私は、ユーザーが管理コマンドを発行することを許可されていることを確認:SENT

あなたが削除-userコマンドが利用可能と表示されている見ることができるよう

<iq xml:lang='en' to='[email protected]/39058022031067483561501494598609310' from='xmppserver.com' type='result' id='Ghtu9-15'> <query node='http://jabber.org/protocol/commands' xmlns='http://jabber.org/protocol/disco#items'> ... <item node='http://jabber.org/protocol/admin#add-user' name='Add User' jid='xmppserver.com'/> <item node='http://jabber.org/protocol/admin#delete-user' name='Delete User' jid='xmppserver.com'/> ... </query> </iq>

を受けました。それから私は、ユーザーを削除するに進みます <iq to='xmppserver.com' id='2vM3f-17' type='set'> <command xmlns='http://jabber.org/protocol/commands' action='execute' node='http://jabber.org/protocol/admin#delete-user'></command> </iq>

SENT

は私が<アクション... >タグが何であるかわからないんだけどここで <iq xml:lang='en' to='[email protected]/163923254889085958281501260654263394' from='xmppserver.com' type='result' id='2vM3f-17'> <command status='executing' sessionid='2017-07-28T16:51:12.784282Z' node='http://jabber.org/protocol/admin#delete-user' xmlns='http://jabber.org/protocol/commands'> <actions execute='complete'> <complete/> </actions> <x type='form' xmlns='jabber:x:data'> <title>Delete User</title> <field var='FORM_TYPE' type='hidden'> <value>http://jabber.org/protocol/admin</value> </field> <field var='accountjids' type='jid-multi' label='Jabber ID'> <required/> </field> </x> </command> </iq>

を受けました。それはXEP-133で言及されていません。それ以外はフォームがよさそうだ。 <iq to='xmppserver.com' id='2vM3f-19' type='set'> <command xmlns='http://jabber.org/protocol/commands' sessionid='2017-07-28T16:51:12.784282Z' node='http://jabber.org/protocol/admin#delete-user'> <x xmlns='jabber:x:data' type='submit'> <field var='FORM_TYPE' type='hidden'> <value>http://jabber.org/protocol/admin</value> </field> <field var='accountjids' type='jid-multi'> <value>[email protected]</value> </field> </x> </command> </iq>

SENT

<iq xml:lang='en' to='[email protected]/163923254889085958281501260654263394' from='xmppserver.com' type='error' id='2vM3f-19'> <command sessionid='2017-07-28T16:51:12.784282Z' node='http://jabber.org/protocol/admin#delete-user' xmlns='http://jabber.org/protocol/commands'> <x type='submit' xmlns='jabber:x:data'> <field var='FORM_TYPE' type='hidden'> <value>http://jabber.org/protocol/admin</value> </field> <field var='accountjids' type='jid-multi'> <value>[email protected]</value> </field> </x> </command> <error code='400' type='modify'> <bad-request xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/> </error> </iq> を受けたIは、(ホスト名部分なしすなわち)裸たJIDを送信しようとしたが、結果は同じです。

これは特に有用なエラーメッセージではありません。

私は間違っていますか?

[1] https://xmpp.org/extensions/xep-0133.html#delete-user

[2] https://github.com/processone/ejabberd/issues/1890

[3] https://pastebin.com/5D0rEbFR

答えて

0

明らか<エラーコード= '400' TYPE = >がユーザをしない「と言っのeJabberDの方法である '変更'見つけたもの、削除するものはありません。

関連する問題