[Serusers] How to use record route to change path of BYE messages

Michal Matyska michal at iptel.org
Fri May 12 12:31:42 CEST 2006


On Fri, May 12, 2006 at 10:38:51AM +0300, İlker Aktuna (Koç.net) wrote:
> Hi everyone,
>  
> I am still trying to find a solution to my problem with BYe messages that are not going through SER.
> Maybe someone with enough knowledge about route recording could help me with the configuration:
>  
> My main problem with BYE messages is that they are not going through SER; the client sends it directly to my rtp proxy. as the RTP is established with it.
> I need them to go through SER. How can I achieve this ?
>  
> I don't know how to use route recording, could you explain what following config block does ? (this is in the default configuration but doesn't make BYE messages to go through SER)
>  

It does (you can check by ethereal, ngrep etc.),

>         if (!method=="REGISTER") {
>                 record_route();
>         }

but as it has another Route header pointing to the RTP proxy it leaves
SER  within the next block which is entered when loose_route() function
has found any reasonable target in the Route headers to forward the
request to ....

>         if (loose_route()) {
>                 # mark routing logic in request
>                 append_hf("P-hint: rr-enforced\r\n");

so you can add your logic either here or into route[1] block, which might be
called from other places as well (be aware)

>                 route(1);
>                 break;
>         };
>  

And you'll get all the subsequent dialog request and target refresh
requests (not only BYE) from both parties, which basically means the To
and From could be swapped (e.g. BYE is sent by the proxy, net the
client).

> thanks,
> ilker
> 
Hope Google will index this to help more people :-)
Michal




More information about the sr-users mailing list