3

ejabberd サーバーの管理者アカウントからユーザーの名簿を取得しようとしています。

これは私がやろうとしていることです:

    <iq 
    id='get-user-roster-2'
    to='localhost'
    type='set'
    xml:lang='en'>
  <command xmlns='http://jabber.org/protocol/commands' 
           node='http://jabber.org/protocol/admin#get-user-roster'
           sessionid='2012-12-04T12:44:27.123921Z'>
    <x xmlns='jabber:x:data' type='submit'>
      <field type='hidden' var='FORM_TYPE'>
        <value>http://jabber.org/protocol/admin</value>
      </field>
      <field var='accountjids'>
        <value>myuser@localhost</value>
      </field>
    </x>
  </command>
</iq>

これは以下を返します:

    <iq from='server@localhost' to='server@localhost/server@localhost/' type='error' id='purple64033b0f'>
<ping xmlns='urn:xmpp:ping'/>
<error code='503' type='cancel'>
<service-unavailable xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/>
</error>
</iq>

これが何を意味し、どうすれば修正できますか?XMPPは初めてです。

任意のポインタをいただければ幸いです。

ありがとう。

4

1 に答える 1

1

XEP -0133 はじめに:
管理者が Jabber/XMPP サーバーに関して頻繁に実行する必要がある一般的なサービス レベル タスクのセットが存在します........特殊なプロトコルを定義するのではなく、コマンドおよび関連するデータ フォーム フィールド。
XEP-0133 要件:
適切な権限を持つユーザーが、Jabber/XMPP サーバーおよびコンポーネントに関する一般的な管理タスクを実行できるようにします。
可能な限り、既存の XMPP および Jabber プロトコルを再利用します。


したがって、アドホック コマンドまたはデータ フォーム サービスを使用していないと思います。これは、サービス検出 XEP-0030で確認できます。

于 2012-12-06T13:30:56.947 に答える