[Serusers] loose_route() function doesn't work? - ser 2_0_0

tzieleniewski tzieleniewski at o2.pl
Sun Jul 8 23:55:51 CEST 2007


> Your mixing up route with the request uri. The Route headers that SER 
> receive will be processed appropriately through the loose route 
> handling. Adding your own is only for downstream processing. Thus, add 
> an extra Route header for your SER and either rewrite the request uri to 
> the next proxy or use t_forward* commands.
> g-)
And that is what I want to achive. In some particular scenarios I want to include an extra SIP proxy node in the path. But I want to make sure that the massage received by SER will be forwarded in the unchanged form to the extra node so that the initial recipient will be know to the extra node (like in IMS when AS acts as SIP Proxy). So I was wondering if make sense to add this extra Route headers in the SER logic, make loose_route() check again so it will influence the signaling path by adding an extra node. 

Tomasz
> 
> tzieleniewski wrote:
> > Hi,
> >
> > I have the following SIP scenario:
> >
> > UA_A -> SER_A -> other SIP Proxy -> SER_A -> UA_B
> >
> > I want to force SER_A instance to forward the received request to other SIP proxy element and ensure that that request will return to SER_A afterwards.
> > To do that I use an insert_hf() function from textops module inside ser.cfg to insert a double Route header field - first value the sip uri of the 'other SIP proxy' and second one the SER_A sip uri to assure that the forwarded request will return to SER_A.
> >
> > Whenever request enters the ser.cfg script logic my SER code performs the loose_route() check in general. In my situation when request initialy enters the logic it doesn't have any Route headers. When request enters a particular route block responsible for handling this request there is an lookup_user() invocation to check if the user should be serviced by this SER. If lookup_user() returns true and this particular user has a flag set which indicates routing through the extra SIP proxy I add the Route headers and pass the request to the 'FORWARD' route block where I do the t_relay().
> > My problem is that when I do t_relay() after inserting the Route headers into the request it is not forwarded according to the topmost Route header field value??
> >
> > Is it bug in ser??
> > Please point me what do I missed.
> > Thank you in advance.
> > Tomasz
> >
> > _______________________________________________
> > Serusers mailing list
> > Serusers at lists.iptel.org
> > http://lists.iptel.org/mailman/listinfo/serusers
> >
> >
> >   




More information about the sr-users mailing list