I am in process of migrating from 1.11 to 2.2. We have a situation where we
have a routing opensips that can make multiple attempts to complete a call.
The information specific to each attempt is passed to the SBC opensips through
headers. In order to not double up on headers, I moved the code that calls
append_hf to a branch. As the call progresses, I update various AVP's and
print them into the log (so I can see that they are being updated correctly).
Below is an example scenario of what I am doing.
initial call setup logic
set the t_on_failure
setup for first carrier
setup headers with carrier information used by the SBC
$avp(test) := "Step 1;";
on_failure (for example 480 - timeout)
setup for the next carrier
setup header for next carrier information used by the SBC
$avp(test) := $avp(test) + "Step 2;"; # avp(test) now equal "Step 1;Step
on_failure (for example 408 - timeout)
no more carriers, end the call
What gets put into the cdr is "Step 1;" not "Step 1;Step 2;"
Also, the sip_code is set to the first failure received from the SBC, not the
If the call completes successfully, the cdr data is correct.
Users mailing list