<div dir="ltr">Hi Jon,<br><br>To start with, we'll try just touching kamailio.cfg in custom templates...<br><br>Would this modified "ROUTE_ACC_CALLER" route be valid?<div><br></div><div>Code:<br><br><font face="courier new, monospace">route[ROUTE_ACC_CALLER]<br>
{<br>        if($avp(s:caller_ext_subscriber_id) == $null)<br>                $avp(s:caller_ext_subscriber_id) = '';<br>        if($avp(s:caller_ext_contract_id) == $null)<br>                $avp(s:caller_ext_contract_id) = '';<br>
        if($avp(s:caller_peer_auth_user) != $null)<br>                $(avp(s:acc_caller_pau)[*]) = $avp(s:caller_peer_auth_user);<br>        else<br>                $(avp(s:acc_caller_pau)[*]) = '';<br>        if($avp(s:caller_peer_auth_realm) != $null)<br>
                $(avp(s:acc_caller_par)[*]) = $avp(s:caller_peer_auth_realm);<br>        else<br>                $(avp(s:acc_caller_par)[*]) = '';</font><div><font face="courier new, monospace"><br></font></div><div>
<font face="courier new, monospace" color="#ff0000">        if(is_present_hf("P-Charge-Info")) {</font></div><div><font face="courier new, monospace" color="#ff0000">                $avp(s:acc_caller_user) = $(hdr(P-Charge-Info){uri.user});</font></div>
<div><font face="courier new, monospace" color="#ff0000">                xlog("L_INFO","Found P-Charge-Info header, setting source-user to: '$avp(s:acc_caller_user)' - R=$ru ID=$ci\n");</font></div>
<div><font face="courier new, monospace"><font color="#ff0000">        }<br></font><br>        xlog("L_INFO", "Setting acc source-leg for uuid '$avp(s:caller_uuid)': '$avp(s:caller_uuid)|$avp(s:acc_caller_user)|$avp(s:acc_caller_domain)|$avp(s:caller_cli_userprov)|$avp(s:caller_ext_subscriber<br>
_id)|$avp(s:caller_ext_contract_id)|$avp(s:caller_account_id)|$avp(s:acc_caller_pau)|$avp(s:acc_caller_par)|$avp(s:caller_clir)|$avp(s:acc_state)|$TV(Sn)' - R=$ru ID=$ci\n");<br>        $avp(i:901) =  $avp(s:caller_uuid) + "|" + $avp(s:acc_caller_user) + "|" + $avp(s:acc_caller_domain) + "|" + $avp(s:caller_cli_userprov) + "|" + $avp(s:caller_ext_subscriber_id) + "|" + $avp(s:calle<br>
r_ext_contract_id) + "|" + $avp(s:caller_account_id) + "|" + $avp(s:acc_caller_pau) + "|" + $avp(s:acc_caller_par) + "|" + $avp(s:caller_clir) + "|" + $avp(s:acc_state) + "|" + $TV(Sn);<br>
}<br></font><div><br></div></div></div><div style>Thanks for your help :)<br></div><div style><br></div><div style>Best regards.</div></div><div class="gmail_extra"><br clear="all"><div>--<div><div>Joel Smith</div><div><div>
<div><div>Cell: +34 639 03 13 53</div><div>E-Mail: <a href="mailto:joel@vozelia.com" target="_blank">joel@vozelia.com</a></div><div><a href="mailto:joel@vozelia.com" target="_blank"></a><br><div><a href="http://www.vozelia.com" target="_blank"><img src="http://images.joelserrano.com/social/vozelia.gif" width="96" height="27"></a>  <a href="http://twitter.com/vozelia" target="_blank"><img src="http://images.joelserrano.com/social/twitter.png"></a> <a href="http://www.facebook.com/pages/Vozelia-Operador-de-telefonia-IP-para-empresas/165574849908?v=info" target="_blank"><img src="http://images.joelserrano.com/social/facebook.png"></a> </div>
</div></div></div></div></div></div>


<br><br><div class="gmail_quote">On Tue, Feb 12, 2013 at 1:10 PM, Jon Bonilla <span dir="ltr"><<a href="mailto:jbonilla@sipwise.com" target="_blank">jbonilla@sipwise.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
El Mon, 11 Feb 2013 11:33:08 +0100<br>
"Joel Smith | VOZELIA" <<a href="mailto:joel@vozelia.com">joel@vozelia.com</a>> escribió:<br>
<div class="im"><br>
<br>
><br>
> On our case, it is PSTN and the call comes in to SPCE with an<br>
> additional header like:<br>
><br>
> P-Charge-Info: <<a href="mailto:sip%3A602225522@192.168.80.23">sip:602225522@192.168.80.23</a>>;npi=UNKNOWN;noa=3<br>
><br>
> What I need to do, is something like:<br>
><br>
> if "header P-Charge-Info" exists, then SRC in CDR = "the src from the<br>
> P-Charge-Info header".<br>
<br>
</div>This is quite easy. You can check the presence of that header<br>
and do the change in ROUTE_ACC_CALLER for example.<br>
<div class="im"><br>
<br>
<br>
<br>
><br>
> Or, add a new field in the exported CDRs (touching as you said,<br>
> cdr-exporter, mediator and kamailio-proxy) with this info<br>
><br>
<br>
</div>This is more complicated. Yes, you can add a new field in kamailio-config and<br>
later on change mediator and rate-o-mat and cdrexporter to match the new<br>
format. This would be a better solution for external rating engines but more<br>
difficult for you to mantain during upgrades.<br>
<div class="im"><br>
<br>
> What solution do you recommend we use to focus on it? I think I prefer<br>
> adding a new field in CDR (for later auditing purposes), but I'm not<br>
> sure how complicated that can be.<br>
><br>
<br>
</div>Not that complicated.<br>
<br>
We might include a new "userfield" into the cdrs for next version allowing<br>
people to add to the cdrs all the information they need without changing<br>
mediator, rateomat and cdrexport.<br>
<br>
<br>_______________________________________________<br>
Spce-user mailing list<br>
<a href="mailto:Spce-user@lists.sipwise.com">Spce-user@lists.sipwise.com</a><br>
<a href="http://lists.sipwise.com/listinfo/spce-user" target="_blank">http://lists.sipwise.com/listinfo/spce-user</a><br>
<br></blockquote></div><br></div>