[Serusers] record_route problems

Andrei Pelinescu-Onciul pelinescu-onciul at fokus.fraunhofer.de
Sat Jun 5 09:48:40 CEST 2004


On Jun 04, 2004 at 15:46, Bert Berlin <btberlin at quintum.com> wrote:
> I am trying to get record_route() working in a simple configuration file 
> which I use for lab testing of our UA product.
> After the INVITE  is sent by the UA (our gateway) the call just isn't 
> routed.

It doesn't work because you have a break immediately after
record_route(). break will immediately stop script processing (so your
request is not forwarded anymore).

Commented cfg.:
> 
> # store user location if a REGISTER appears
> if (method=="REGISTER") {
>   save("location");
> };

Add a break after save(). You don't want the REGISTER to be forwarded
somewhere else.

> 
> ############################
> /* grant Route routing if route headers present */
> #       if (loose_route()) { t_relay(); break; };
> 
>        /* record-route INVITEs -- all subsequent requests must visit us */
> #       if (method=="INVITE") {
> #               record_route();
> #       };

Here record_route is commented out.
> 
>        # now check if it really is a PSTN destination which should be 
> handled
>        # by our gateway; if not, and the request is an invitation, drop 
> it --
>        # we cannot terminate it in PSTN; relay non-INVITE requests -- 
> it may
>        # be for example BYEs sent by gateway to call originator
>        if (uri=="sip:17325555555 at 192.168.20.12") {
>                sl_send_reply("678","matched uri for 20.137");
>                if (method=="INVITE")
> #               forward(192.168.20.137, 5060);
>                record_route();
> #               t_relay();
>                break;
>                };

Here you have a break after it and t_relay is commented => the request
will be dropped.

>        if (uri=~"sip:1732922[0-9]*@192.168.20.12") {
>                sl_send_reply("678","matched uri for 20.220");
>                if (method=="INVITE")
> #               forward(192.168.20.220, 5060);
>                 
> record_route();                                               
> #               t_relay();
>                break;
>                };

The same here.


Andrei




More information about the sr-users mailing list