[OpenSIPS-Users] Radius CDR records depend who hangs up first

John Quick John.Quick at smartvox.co.uk
Wed Nov 11 18:22:13 CET 2009


Hi Jeff

Thanks for the information. I am not sure how "billing party" interacts with the other data used by
radius. It is something I can investigate however.

To answer your question, we are not using CDRTool. We will use a bespoke application. In fact the
table of CDR records saved by the Radius server may only be used as a backup in case there is a
dispute - the billing data will normally come from an application that reads events signalled to it by
Opensips, but probably not using radius. At the moment I am using exec_msg to run a small program that
generates the events and sends them to the billing application via a fifo message buffer (done this
way so exec_msg returns immediately and does not block the opensips thread/process).

However, since the Radius CDR's are almost working, it would be nice to get them just right - it will
also mean that the table has fewer records if one call only generates one record.

I think it might be possible to fix the problem by changing the SQL query used by the SQL module of
the Radius server, but this would involve me poking about in things I know too little about! I was
hoping for some feedback from the developers of the AAA modules. Perhaps it will come later.

John Quick

> From: "Jeff Kronlage" <jeff at data102.com>
> Subject: Re: [OpenSIPS-Users] Radius CDR records depend who hangs up
	first
> To: "OpenSIPS users mailling list" <users at lists.opensips.org>
> Message-ID:
	<CE3A4DE6D62E5D459DB2E1C48A2594BF24A41D at Osiris.cos.data102.com>
> Content-Type: text/plain;	charset="us-ascii"
>
> John,
> 
> I'm not the RADIUS expert at our organization, but we do log to RADIUS
> and then use CDRTool to rate calls.  
> 
> With CDRTool, we set an AVP called $avp(s:billing_party) and send it to
> RADIUS, which is then written to MySQL, which is later interpreted by
> CDRTool.  CDRTool uses this variable to determine who the billing party
> is.  You have to be a little clever with your scripting when you set it,
> however.  In your case it sounds like you're logging a BYE packet, which
> could be sent by either party, and then interpreting the sender of that
> packet as the billing party.  In our case, we have numerous 'if'
> statements surrounding BYEs to determine which of the users was the
> billable entity.
> 
> Are you using CDRTool or rating with another technique?  If an
> alternative, what do you use for determining who the billing party is?
> 
> Jeff K




More information about the Users mailing list