[ejabberd] How to implement Friend Search function on IM client?

Pablo Polvorin pablo.polvorin at process-one.net
Tue Oct 6 20:12:16 MSD 2009


You are doing the wrong requests, as ejabberd uses data forms* for
user search. See the search form ejabberd gives you, you should see
something like:

<iq ..>
<query xmlns="jabber:iq:search">
<instructions>You need an x:data capable client to search</instructions>
<x xmlns="jabber:x:data" type="form" >
   [...]
</x>
</query>
</iq>


*http://xmpp.org/extensions/xep-0004.html


2009/10/6 wei <tsingmei at gmail.com>:
> Thank you for your quick response. But I send the request stanza to the JUD
> component, but get error 400 from the server... I checked the help and
> internet, can't find any answer...
> [032:563]    <iq type="set" from="alex at abc.com/call"
> to="jud.abc.com" id="12">
> [032:563]      <query xmlns="jabber:iq:search">
> [032:563]        <fn>
> [032:563]          alexfull
> [032:563]        </fn>
> [032:563]      </query>
> [032:563]    </iq>
> [032:594] RECV <<<<<<<<<<<<<<<<<<<<<<<<< : Tue Oct 06 22:34:45 2009
> [032:594]    <iq from='jud.abc.com' to='alex at abc.com/call' type='error '
> xml:lang='*' id='12'>
> [032:594]      <query xmlns='jabber:iq:search'>
> [032:594]        <fn>
> [032:594]          alexfull
> [032:594]        </fn>
> [032:594]      </query>
> [032:594]      <error code='400' type='modify'>
> [032:594]        <bad-request xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/>
> [032:594]      </error>
> [032:594]    </iq>
> On Tue, Oct 6, 2009 at 9:41 PM, Pablo Polvorin
> <pablo.polvorin at process-one.net> wrote:
>>
>> Hi,
>> you need to send it to the appropiate vcard user search (vjud)
>> component in your ejabberd server.
>> that is probably called "vjud.%YOURDOMAIN%" (you can change it in
>> ejabberd.cfg)
>>
>> 2009/10/6 wei <tsingmei at gmail.com>:
>> > Hi all,
>> > I send following stanza to get Friend Search Support info from ejabberd,
>> > but
>> > return error:
>> >            <iq type='get' id='search1'>
>> >                 <query xmlns='jabber:iq:search'/>
>> >            </iq>
>> > error is:
>> > [017:797]    <iq from='alex' to='alex' type='error' xml:lang='*'
>> > id='12'>
>> > [017:797]      <query xmlns='jabber:iq:search'/>
>> > [017:797]      <error code='503' type='cancel'>
>> > [017:797]        <service-unavailable
>> > xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/>
>> > [017:813]      </error>
>> > [017:813]    </iq>
>> > so, how to write the stanza to support user search?
>> > Thanks a million.
>> > alex
>> > _______________________________________________
>> > ejabberd mailing list
>> > ejabberd at jabber.ru
>> > http://lists.jabber.ru/mailman/listinfo/ejabberd
>> >
>> >
>>
>>
>>
>> --
>> Pablo Polvorin
>> ProcessOne
>> _______________________________________________
>> ejabberd mailing list
>> ejabberd at jabber.ru
>> http://lists.jabber.ru/mailman/listinfo/ejabberd
>
>
> _______________________________________________
> ejabberd mailing list
> ejabberd at jabber.ru
> http://lists.jabber.ru/mailman/listinfo/ejabberd
>
>



-- 
Pablo Polvorin
ProcessOne


More information about the ejabberd mailing list