[OpenSER-Users] Problems with SIMPLE-XMPP presence

Anca Vamanu anca at voice-system.ro
Thu Apr 17 11:12:41 CEST 2008


Hello,

There is something missing in your configuration file. See econfig 
example from version 1.3 (etc/openser.cfg, line 214). You should add 
something like this on the else branch for in dialog requests:
if (is_method("SUBSCRIBE|NOTIFY") && ($rd == "your.server.ip.address"| 
$rd=="xmpp-gw"))
{
# in-dialog subscribe requests
route(2);
exit;
}

The way you have it now, all in dialog requests are not allowed, that is 
all Notifies and the in dialog Subscribes.

regards,
Anca Vamanu


Pablo Guijarro Enríquez wrote:
> Hi again,
>
> Sorry about the delay and thanks for your support. I did so, but it still
> does not work. The fact is that the subscription to the XMPP user is sent
> from the SIP user and reaches openser, which sends back a notify request
> with no presence information at all. In between there is not exchange of
> information with the XMPP either.
>
> Then openser sends itself the couple of subscribe requests mentioned in my
> later post (now both with sip:10.95.43.31 as contact header), the first of
> which is rejected (due to the to-tag, I suppose), while the second one is
> accepted. As a result of that request, a notify is sent towards itself, but
> it is rejected with a 404 Not Here response. This one do carry some presence
> information, but nothing interesting:
>
> Content-Type: application/watcherinfo+xml
>
> <?xml version="1.0"?>
> <watcherinfo xmlns="urn:ietf:params:xml:ns:watcherinfo" version="0"
> state="full">
>   <watcher-list resource="sip:pge354*xmpp-domain at xmpp-gw"
> package="presence"/>
> </watcherinfo>
>
> Let me know whether that behaviour is the expected one or not, and what the
> reason could be for it not to work (see log attached).
>
> Regards,
> Pablo
>
>
> -----Mensaje original-----
> De: Anca Vamanu [mailto:anca at voice-system.ro] 
> Enviado el: viernes, 11 de abril de 2008 15:51
> Para: Pablo Guijarro Enríquez
> CC: users at lists.openser.org
> Asunto: Re: [OpenSER-Users] Problems with SIMPLE-XMPP presence
>
> Hi,
>
> You need to add a host alias for 'xmpp-gw' on the machine running 
> openser. OpenSER does dns lookup to figure out if the destination is it, 
> and the R-URI has a special meaning in presence so it should be kept 
> with that key.
> As for the contact, please change the parameter to 'sip:10.95.43.31 '
>
> regards,
> Anca
>
> Pablo Guijarro Enríquez wrote:
>   
>> Yes, you were right. Now errors have disappeared, but still there is not
>> exchange of information between servers.
>>
>> In the log there are a couple of things that I find strange. The first one
>> is that at some point openser tries to resolve xmpp-gw, which is only the
>> key to mark users from the xmpp domain.
>>
>> The second is that, upon receiving the subscription from the client,
>>     
> openser
>   
>> first sends itself a subscription request, with the IP address established
>> in the pua_xmpp server_address parameter as Contact header value, which is
>> answered with a 404 response, and then it sends the same request but
>> changing the Contact header to the URI sip:openser.domain:5060, which is
>> accepted with a 200 response (see both below). Is that OK? Or should I
>> change that parameter to the URI, despite the instructions given in the
>> module documentation?
>>
>>
>> SUBSCRIBE sip:pge*xmpp.domain at xmpp-gw SIP/2.0
>> Via: SIP/2.0/UDP 10.95.43.31;branch=z9hG4bKbca.c6e4c5f1.0
>> To: sip:pge*xmpp.domain at xmpp-gw;tag=10.12575.1207664296.3
>> From:
>>     
> sip:pge*xmpp.domain at xmpp-gw;tag=533cb9e91f4b999cf76861cbb9ed54ed-2ab3
>   
>> CSeq: 11 SUBSCRIBE
>> Call-ID: 77e00002-12580 at 10.95.43.31
>> Content-Length: 0
>> User-Agent: OpenSER (1.3.1-notls (i386/linux))
>> Max-Forwards: 70
>> Event: presence.winfo
>> Contact: <10.95.43.31>
>> Expires: 3610
>>
>>
>> SUBSCRIBE sip:pge*xmpp.domain at xmpp-gw SIP/2.0
>> Via: SIP/2.0/UDP 10.95.43.31;branch=z9hG4bKafa2.9020b137.0
>> To: sip:pge*xmpp.domain at xmpp-gw
>> From: sip:
>>     
> pge*xmpp.domain at xmpp-gw;tag=533cb9e91f4b999cf76861cbb9ed54ed-5c38
>   
>> CSeq: 10 SUBSCRIBE
>> Call-ID: 77e00001-12581 at 10.95.43.31
>> Content-Length: 0
>> User-Agent: OpenSER (1.3.1-notls (i386/linux))
>> Max-Forwards: 70
>> Event: presence.winfo
>> Contact: <sip:openser.domain:5060>
>> Expires: 3610
>>
>>
>> Thanks again,
>> Paul
>>
>>
>> -----Mensaje original-----
>> De: Anca Vamanu [mailto:anca at voice-system.ro] 
>> Enviado el: martes, 08 de abril de 2008 16:07
>> Para: Pablo Guijarro Enríquez
>> CC: users at lists.openser.org
>> Asunto: Re: [OpenSER-Users] Problems with SIMPLE-XMPP presence
>>
>> Try compiling the pua_xmpp module; it has some references in pua module 
>> that I guess have been broken.
>>
>> Anca
>>
>> Pablo Guijarro Enríquez wrote:
>>   
>>     
>>> Thanks Anca,
>>>
>>> I tried what you told me. The message about not sending subscribe is no
>>>     
>>>       
>> more
>>   
>>     
>>> shown, but some new errors appear and presence does not work yet.
>>>
>>> Regards,
>>> Paul
>>>
>>> -----Mensaje original-----
>>> De: Anca Vamanu [mailto:anca at voice-system.ro] 
>>> Enviado el: martes, 08 de abril de 2008 14:30
>>> Para: Pablo Guijarro Enríquez
>>> CC: users at lists.openser.org
>>> Asunto: Re: [OpenSER-Users] Problems with SIMPLE-XMPP presence
>>>
>>> Hi Pablo,
>>>
>>> There was an optimization in pua version included in 1.3.1 release that 
>>> sometimes prevented the presence sip-xmpp gateway from working ( related 
>>> to the message "Found previous request for unlimited subscribe- do not 
>>> send subscribe") from the log.
>>> This was removed in the svn version of the branch. I advise you to take 
>>> the pua module from svn 1.3 branch.
>>>
>>> regards,
>>> Anca Vamanu
>>>
>>>
>>> Pablo Guijarro Enríquez wrote:
>>>   
>>>     
>>>       
>>>> Hi everybody,
>>>>
>>>> I have some problems to get presence information exchanged between SIP 
>>>> users and xmpp ones. SIP clients (X-Lite) depend on an openser server 
>>>> v1.3.1, with all necessary modules working within it, and xmpp clients 
>>>> (Psi) rely on an xmpp server (ejabberd) which is in the same machine.
>>>>
>>>> The link between both sip and xmpp servers is established when openser 
>>>> starts, and the exchange of instant messages between sip and xmpp 
>>>> users works fine. So does presence too, as long as there are only sip 
>>>> users or only xmpp users involved, but it does not work between the 
>>>> two “worlds” in any direction. Moreover, I do not see any packet being 
>>>> exchanged between the sip and the xmpp servers when a user from one 
>>>> domain subscribe to one from the other, or when they change their
>>>>         
> status.
>   
>>>> I don’t know what the problem can be. No errors appear in the log and 
>>>> I thought adding xmpp presence to openser would be straightforward 
>>>> once the IM was already working.
>>>>
>>>> Openser config file and part of the log file (the subscription to an 
>>>> xmpp user) are attached. Hope someone can give me some clue.
>>>>
>>>> Thanks in advance!
>>>>
>>>> Paul
>>>>
>>>> ------------------------------------------------------------------------
>>>>
>>>> _______________________________________________
>>>> Users mailing list
>>>> Users at lists.openser.org
>>>> http://lists.openser.org/cgi-bin/mailman/listinfo/users
>>>>   
>>>>     
>>>>       
>>>>         
>>>   
>>>     
>>>       
>>   
>>     
>
>   





More information about the sr-users mailing list