On Mon, Jan 3, 2011 at 6:13 PM, alex
pappas
<rebel.pappas@gmail.com>
wrote:
Dear all,
I'm trying with the Dispatcher module to terminate a call to
three different gateways serially. For each gw I use the
attribute field to get the attribute and add it as a prefix to
the RU.
The problem is that the $avp(dsattrs) is returning always the
first value of the first gw that is using.
example:
destination sip:100.12.12.12:5060
attrs 111
destination sip:100.12.12.11:5060
attrs 222
destination sip:100.12.12.10:5060
attrs 333
In this example the rU will always be 111+number. I tried also
to initiate the avp in the Failure route by giving null value
but still does not change the result.
In Request route:
if(ds_select_domain("$avp(s:disp_dstgrp)", "4"))
{
$avp(s:term_prefix) = $avp(dsattrs); #
avp for CDR purpose
$rU = $avp(dsattrs) + $rU;
t_on_failure("FAIL_NATIONAL");
t_relay();
exit;
}
In Failure route:
if(!ds_next_domain())
{
t_reply("503", "Service Unavailable");
exit;
} else {
$rU = $avp(dsattrs) + $rU;
t_on_failure("FAIL_THIS");
append_branch();
if(!t_relay()) {
t_reply("503","Service
Unavailable");
exit;
}