[SR-Users] Parallel call forward

Raúl Alexis Betancor Santana rabs at dimension-virtual.com
Mon Feb 9 13:50:18 CET 2015


I did not use the index to erase pull from the stack I directly set it to null 

$(avp(s:cf_destinations)[0]) = $null; 

If I do this: 

$var(new_ru) = $(avp(s:cf_destinations)[0]); 
... 
append_branch($var(new_ru)); 
... 

I got the same result ... just the LAST $ru I set is the one thats called. 

> De: "Daniel-Constantin Mierla" <miconda at gmail.com>
> Para: "Kamailio (SER) - Users Mailing List" <sr-users at lists.sip-router.org>
> Enviados: Lunes, 9 de Febrero 2015 9:19:23
> Asunto: Re: [SR-Users] Parallel call forward

> Hello,

> you should not use index when setting an avp to null -- remove the [0].

> Then you can print details of branches voa $branch(...) variable to see what are
> the results of your operations.

> A branch can be added also by providing the uri as parameter for append_branch()
> -- see the documentation of the function in the corex module.

> Cheers,
> Daniel

> On 09/02/15 08:18, Raúl Alexis Betancor Santana wrote:

>> Hi all,

>> I'm getting crazy trying to setup a kamailio to do a parallel call forward to
>> multiple destinations based on a query to the DB.

>> I do the db query and get the RURI's of the destinations I could forward the
>> call to in parallel, then when I get the resulset I do:

>> [...]

>> $var(cf_idx) = 0;
>> while(is_avp_set("$(avp(s:cf_destinations)[0])"))
>> {
>> $ru = $(avp(s:cf_destinations)[0]); # Set the new RURI to call to
>> $(avp(s:cf_destinations)[0]) = $null; # Setting it to $null pull the value from
>> the stack
>> $(avp(s:callee_fr_inv_timer)[*]) = $(avp(s:cf_timeouts)[0]) * 1000;
>> t_set_fr("$avp(s:callee_fr_inv_timer)");
>> $(avp(s:cf_timeouts)[0]) = $null;
>> route(ROUTE_ACC_CF); # Do the ACC
>> $(avp(s:acc_state)[*]) = "cfna";
>> $(avp(s:hih_cause)[*]) = "404";
>> $var(cf_idx) = $var(cf_idx) + 1;
>> append_branch();
>> }
>> route(ROUTE_EXECUTE_CF_LOOP); # Some final task and then t_relay

>> [...]

>> But only the last RURI get called

>> How do I do to accomplish this? ... I need to change the $ru of each new branch,
>> so when request get loop-back to the proxy, it do again all the lookup logic.

>> Best regards

>> _______________________________________________
>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>> sr-users at lists.sip-router.org
>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users

> --
> Daniel-Constantin Mierla http://twitter.com/#!/miconda -
> http://www.linkedin.com/in/miconda Kamailio World Conference, May 27-29, 2015
> Berlin, Germany - http://www.kamailioworld.com

> _______________________________________________
> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
> sr-users at lists.sip-router.org
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20150209/31833a72/attachment.html>


More information about the sr-users mailing list