[OpenSER-Users] PARALLEL FORKING

Iñaki Baz Castillo ibc at in.ilimit.es
Fri Dec 14 10:08:33 CET 2007


El Friday 14 December 2007 07:27:03 Gomtesh Jain escribió:
>               # native SIP destinations are handled using our USRLOC DB
>                 if (!lookup("location")) {
>                         sl_send_reply("404", "Not Found");
>                          exit;
>                         }
>                  else  {
>                          append_branch();
>                          append_hf("P-hint: usrloc applied\r\n");
>                          t_relay();

Why exactly are you doing that?

Imaging you have two contacts registered with AOR 200 at domain.org:
  sip:200 at 192.168.1.50
  sip:200 at 192.168.1.51

And now you receive a call for that user.

Your script does "lookup(location)" that generates 2 branches:
  sip:200 at 192.168.1.50
  sip:200 at 192.168.1.51

But terrebily you later do "append_branch" so you are creating a copy of a 
branch (the first one!!!!!!), si you get those branchs:
  sip:200 at 192.168.1.50
  sip:200 at 192.168.1.50
  sip:200 at 192.168.1.51

So t_relay will send these 3 branchs. It's logical your issue.


Quit that unuseful "append_branch", you don't need it for paralell ofrking of 
registered users. And read the doc about "append_branch" and how/where to use 
it.


Regads.




-- 
Iñaki Baz Castillo
ibc at in.ilimit.es


More information about the Users mailing list