[OpenSIPS-Users] Latest AVP's in the cdr when call fails in branch

Pat Burke pat at voxtelesys.com
Wed Oct 12 21:59:12 CEST 2016


Hello, 


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 
branch 
   setup headers with carrier information used by the SBC
   $avp(test) := "Step 1;";
t_relay


on_failure (for example 480 - timeout)
   setup for the next carrier
   branch
      setup header for next carrier information used by the SBC
      $avp(test) := $avp(test) + "Step 2;";  # avp(test) now equal "Step 1;Step 2;"
t_relay



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 last.


If the call completes successfully, the cdr data is correct.


Thanks,
Pat Burke

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20161012/f9e41ffa/attachment-0001.htm>


More information about the Users mailing list