<head><title></title></head>
<body><div class="iw_mail" dir="ltr"><div class="signature">
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;">Hello,</div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;"><br></div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;">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.</div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;"><br></div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;"><br></div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;"><br></div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;">initial call setup logic</div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;">set the t_on_failure</div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;"><br></div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;">setup for first carrier </div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;">branch </div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;"> setup headers with carrier information used by the SBC</div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;"> $avp(test) := "Step 1;";</div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;">t_relay</div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;"><br></div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;">on_failure (for example 480 - timeout)</div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;"> setup for the next carrier</div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;"> branch</div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;"> setup header for next carrier information used by the SBC</div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;"> $avp(test) := $avp(test) + "Step 2;"; # avp(test) now equal "Step 1;Step 2;"</div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;">t_relay</div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;"><br></div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;">
<div>on_failure (for example 408 - timeout)</div>
<div> no more carriers, end the call</div>
<div><br></div>
<div><br></div>
<div><br></div>
<div>What gets put into the cdr is "Step 1;" not "Step 1;Step 2;"</div>
<div><br></div>
<div>Also, the sip_code is set to the first failure received from the SBC, not the last.</div>
</div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;"><br></div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;">If the call completes successfully, the cdr data is correct.</div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;"><br></div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;">Thanks,</div>
<div style="font-family: arial, helvetica, sans-serif; font-size: 16px;">Pat Burke</div>
</div></div></body>