Hello there,
I'm using dispatcher to serial fork a call through many gateways. For a call to number 2XXXXXXXXX , first a try to connect through gateways A,B,C after that D,F , after that E,R , after that M,N and finally after those K,L.
When the call is trying gateway N then I'm getting the ERROR:tm:add_uac: maximum number of branches exceeded.
I found on internet that I'm exceeding the MAX_BRANCHES:
branch=t->nr_of_outgoings; if (branch==MAX_BRANCHES) { LOG(L_ERR, "ERROR:tm:add_uac: maximum number of branches exceeded\n"); ret=E_CFG; goto error; }
From a trace I got , I see that kamailio is sending to each
destination IP 8 INVITES and if there is no answer to that is continuing with next destination gateway sending also there 8 INVITES. When the number of INVITES is 52 then I get this error.
Does anyone can suggest a way to change the MAX_BRANCHES MAX number ? Is is important to keep open the INVITEs from the first gateways because is an LCR scenario and if I get an answer from these gateways is important to complete through them.
Any help is apreciated
Thanks
Alexandros
Hi again,
By changing the parameters T1 and T2 in the TM module I managed to have almost the half branches than before BUT still I get the same Error and I try to send the call on gateway N.
modparam("tm", "T2_timer", 2000) modparam("tm", "T1_timer", 1000)
Thanks
Alex
On Wed, Dec 2, 2009 at 6:10 PM, alex pappas rebel.pappas@gmail.com wrote:
Hello,
what version of kamailio are you running?
Cheers, Daniel
On 12/2/09 5:27 PM, alex pappas wrote:
Hi Daniel,
these are the data:
Server:: Kamailio (*1.5.3-notls* (x86_64/linux)) Build:: mi/mi_core.c compiled on 20:05:04 Nov 15 2009 with gcc 4.3.2 Flags:: STATISTICS, USE_IPV6, USE_TCP, DISABLE_NAGLE, USE_MCAST, SHM_MMAP, PKG_MALLOC, F_MALLOC, FAST_LOCK-ADAPTIVE_WAIT SVN:: 2:5954M Now:: Wed Dec 2 18:41:37 2009 Up since:: Wed Dec 2 18:32:13 2009 Up time:: 564 [sec]
Alex
On Wed, Dec 2, 2009 at 6:36 PM, Daniel-Constantin Mierla miconda@gmail.comwrote:
Hello,
On 12/2/09 5:42 PM, alex pappas wrote:
ok, this is stable.
So, you get one INVITE in and then you get 8 of them out? From your explanation, you have fewer gateways in dispatcher groups.
Try to set ds_append_branch parameter to 0: http://kamailio.org/docs/modules/1.5.x/dispatcher.html#id2468051
Cheers, Daniel
That was the SOLUTION,
I had configure in my FAILURE route *append_branch();* (in the configuration that Panagiotis gave me ;-) ) and also the *ds_append_branch* had the default value *1*. When I changed the *ds_append_branch=0 *i had NO errors.
I got also a trace to be sure and everything looks good now! In the trace i see again many INVITEs but this time I don't get any error. I understand that in the failure route with my original settings I was appending actually 2 new branches , but that was the problem or something else? Can you explain why that happen ?
thank you
Alex
On Wed, Dec 2, 2009 at 6:49 PM, Daniel-Constantin Mierla miconda@gmail.comwrote:
On 12/2/09 6:15 PM, alex pappas wrote:
yes, same destination was added more than once. You can trace the number of branches created by tm looking at top Via header in forwarded INVITE, branch parameter, last number (after dot).
Cheers, Daniel