2016-05-13 3 views
1
implementiert

Ich arbeite an einer Instant Message App mit XMPP. Und ich möchte Benutzer suchen, wenn ich Freunde hinzufüge, um herauszufinden, ob der Benutzer existiert. Ich habe XEP-0055 auf http://xmpp.org/extensions/xep-0055.html gelesen und ich schickte das iq wie Beispiel 1. Anfordern von Suchfeldern. Dann erhielt ich die Antwort, wie folgend:So senden Sie iq zur Suche "Username" angewiesen XEP-0055 von Openfire auf iOS

<iq xmlns="jabber:client" type="result" id="search2" from="search.127.0.0.1" to="[email protected]/iPhone"> 
    <query xmlns="jabber:iq:search"> 
     <instructions> 
      The following fields are available for searching. Wildcard (*) characters are allowed as part of the query. 
     </instructions> 
     <first></first> 
     <last></last> 
     <nick></nick> 
     <email></email> 
     <x xmlns="jabber:x:data" type="form"> 
      <title> 
       Advanced User Search 
      </title> 
      <instructions> 
       The following fields are available for searching. Wildcard (*) characters are allowed as part of the query. 
      </instructions> 
      <field var="FORM_TYPE" type="hidden"> 
       <value>jabber:iq:search</value> 
      </field> 
      <field var="search" type="text-single" label="Search"> 
       <required></required> 
      </field> 
      <field var="Username" type="boolean" label="Username"> 
       <value>1</value> 
      </field> 
      <field var="Name" type="boolean" label="Name"> 
       <value>1</value> 
      </field> 
      <field var="Email" type="boolean" label="Email"> 
       <value>1</value> 
      </field> 
     </x> 
    </query> 
</iq> 

ich das Feld „Benutzername“ gesucht werden soll, und ich schickte die iq

<iq type="set" to="search.127.0.0.1" id="search2" from="[email protected]" xml:lang="en"><query xmlns="jabber:iq:search"><Username>gq</Username></query></iq> 

aber ich erhalte die Fehlerreaktion

<iq xmlns="jabber:client" type="error" id="search2" from="search.127.0.0.1" to="[email protected]/iPhone"><error code="400" type="modify"><bad-request xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"></bad-request></error></iq> 

Und Ich weiß, dass es mit dem Format des iq falsch sein muss. Aber ich weiß wirklich nicht, welches Format es sein sollte. Kann es jemand herausfinden?

+0

haben Sie http://stackoverflow.com/questions/26800596/xep-0055-with-ios-and-ejabberd –

+0

überprüfen Sie mehr mit diesem Link https://github.com/dbsGen/XEP-0055 –

Antwort