[Users] RE: [Serusers] Re: [Serdev] Inaccurate Radius Accounting

Lenir Santiago lsantiago at globalgatewaycom.com
Wed Nov 16 17:59:39 CET 2005


Ok, so how do I tell acc.so to send Sip-Translated-Request-URI as the
Called-Station-ID instead?

Lenir Santiago, Partner
Global Gateway Communications, Inc.
2500 Quantum Lakes Drive, Ste. 203
Boynton Beach, FL 33426
Office: 561-853-2213
Cell: 561-722-0966
Fax: 877-875-0060
http://www.globalgatewaycom.com

-----Original Message-----
From: 'Jan Janak' [mailto:jan at iptel.org] 
Sent: Wednesday, November 16, 2005 11:29 AM
To: Bogdan-Andrei Iancu
Cc: Lenir; 'Lenir Santiago'; serdev at lists.iptel.org; serusers at lists.iptel.org;
devel at openser.org; users at openser.org
Subject: Re: [Users] RE: [Serusers] Re: [Serdev] Inaccurate Radius
Accounting

Why would you do something like this ? All the info that is needed is in
Sip-Translated-Ruquest-ID below. You can see it in the RADIUS dump:

Sip-Translated-Request-URI = "sip:949449852150#15615551212 at gateway:5060"

  Jan.

On 16-11-2005 16:50, Bogdan-Andrei Iancu wrote:
> Hi Lenir,
> 
> you can keep the modified To value into an AVP and use the extra 
> accounting feature to log it. See
>       http://www.openser.org/docs/modules/1.1.x/acc.html#AEN115
> and
>       http://www.openser.org/docs/modules/1.1.x/acc.html#AEN350
> 
> the problem is how to set it as Called-Station-ID attribute in order to 
> avoid overlapping. You can do a trick by playing with the radius 
> dictionary (on proxy side) :
>    changed the Called-Station-ID to a different ID attribute
>    set extra accounting with the original attribute ID of
Called-Station-ID
> in this way the acc will set de default TO as something else and you AVP 
> as Called-Station-ID ;)
> 
> regards,
> bogdan
> 
> 
> Lenir wrote:
> 
> >Well, if userA dials to:30, 30 gets translated to:15615551212 and SER
dials
> >15615551212, how can I make the acc.so module send the modified
> >to:15615551212 as the Called-Station-ID attribute? 
> >
> >This is important for billing, specially if someone forwards to a long
> >distance or international long distance number.
> >
> >-----Original Message-----
> >From: serusers-bounces at iptel.org [mailto:serusers-bounces at lists.iptel.org] On
> >Behalf Of Jan Janak
> >Sent: Wednesday, November 16, 2005 3:15 AM
> >To: Lenir Santiago
> >Cc: serdev at lists.iptel.org; serusers at lists.iptel.org; users at openser.org;
> >devel at openser.org
> >Subject: [Serusers] Re: [Serdev] Inaccurate Radius Accounting
> >
> >Hello,
> >
> >Called-Station-Id attribute always contains the To URI (not
> >Request-URI). You can find the outbound Request-URI in
> >Sip-Translated-Request-URI attribute.
> >
> >Even if you rewrite To header field, it will never be accounted in
> >Called-Station-Id.
> >
> > Jan.
> >
> >On 15-11-2005 21:59, Lenir Santiago wrote:
> > 
> >
> >>Hey guys,
> >>
> >>
> >>
> >>I'm using Radius to do pretty much everything regarding my users, i.e.
> >>registrations, authorization, features and preferences. I implemented my
> >>   
> >>
> >own
> > 
> >
> >>way of doing speeddial by using AVPs provided by radius and AVPOPs
module,
> >>Here is the snippet:
> >>
> >>
> >>
> >>AVP-SIP = speedial:30:15615551212
> >>
> >>
> >>
> >>               avp_subst("s:caller_speedial/i:99", "/(.*):(.*)/\2/");
> >>#15615551212
> >>
> >>               avp_printf("i:98","$rU:*"); #30
> >>
> >>               avp_printf("i:97","sip:$avp($temp2)@$td"); #
> >>sip:15615551212 at xx.xx.xx.xx
> >>
> >>               avp_printf("i:96","<sip:$avp($temp2)@$td>\r\n"); #
> >><sip:15615551212 at xx.xx.xx.xx>.
> >>
> >>               xlog("L_N","    SPEEDIALING: $fU is speed-dialing
> >>$hdr(To)->$avp($temp2)\n");
> >>
> >>               if (avp_check("s:caller_speedial", "fm/$temp1/g")) {
> >>
> >>
> >>
> >>                       #avp_pushto("$To","i:96");
> >>
> >>                       #avp_pushto("$ruri","i:97");
> >>
> >>                       #avp_pushto("$duri","i:97");
> >>
> >>                       #subst('/^To: (.*)@(.*)/To: "$avp($temp2)"
> >><$avp($temp2)@\2/');
> >>
> >>                       #append_hf("To: \"5615551212\"
> >><15615551212 at xx.xx.xx.xx>;user=phone");
> >>
> >>
> >>#subst_uri('/^sip:(.*)@(.*)$/sip:$avp($temp2)@\2/i');
> >>
> >>                       #subst_user('/(.*)/$avp($temp2)/');
> >>
> >>                       #remove_hf("To");
> >>
> >>                       rewriteuser("15615551212");
> >>
> >>                       xlog("L_N","    SPEEDIALING: $fU is dialing
> >>   
> >>
> >$hdr(To)
> > 
> >
> >>$avp($temp2)\n");
> >>
> >>                       avp_delete("$temp1/g");
> >>
> >>                       avp_delete("$temp2/g");
> >>
> >>
> >>
> >>               };
> >>
> >>
> >>
> >>In this scenario, im forcing it instead of getting the value from AVPs
> >>   
> >>
> >just
> > 
> >
> >>for ease of showing my point. The problem that I'm having is that no
> >>   
> >>
> >matter
> > 
> >
> >>what I do to change the To header or change the R-URI, radius ALWAYS
sends
> >>the accounting records with the original R-URI, in my case
30 at xx.xx.xx.xx,
> >>how can I get acc.so to send the final resulting URI
> >>(15615551212 at xx.xx.xx.xx) in the Called-Station-Id AVP?
> >>
> >>
> >>
> >>
> >>
> >>rad_recv: Accounting-Request packet from host xx.xx.xx.xx:39216, id=97,
> >>length=298
> >>
> >>       Acct-Status-Type = Start
> >>
> >>       Service-Type = Sip-Session
> >>
> >>       Acct-Terminate-Cause = 200
> >>
> >>       Error-Cause = Invite
> >>
> >>       User-Name = "1000 at xx.xx.xx.xx"
> >>
> >>       Calling-Station-Id = "sip:1000 at xx.xx.xx.xx"
> >>
> >>       Called-Station-Id = "sip:30 at xx.xx.xx.xx;user=phone"
> >>
> >>       Sip-Translated-Request-URI =
> >>"sip:949449852150#15615551212 at gateway;user=phone"
> >>
> >>       Acct-Session-Id =
> >>   
> >>
> >"000d2890-d47f01e8-1dcc30bc-7a49c7a4 at yy.yy.yy.yy"
> > 
> >
> >>       Sip-To-Tag = "230383F4-2AF"
> >>
> >>       Sip-From-Tag = "000d2890d47f20f54576a906-290bdc33"
> >>
> >>       Sip-CSeq = "102"
> >>
> >>       NAS-IP-Address = xx.xx.xx.xx
> >>
> >>       NAS-Port = 5060
> >>
> >>       Acct-Delay-Time = 0
> >>
> >>rlm_sql (sql): Reserving sql socket id: 12
> >>
> >>rlm_sql (sql): Released sql socket id: 12
> >>
> >>Sending Accounting-Response of id 97 to xx.xx.xx.xx:39216
> >>
> >>rad_recv: Accounting-Request packet from host xx.xx.xx.xx:39216, id=98,
> >>length=292
> >>
> >>       Acct-Status-Type = Stop
> >>
> >>       Service-Type = Sip-Session
> >>
> >>       Acct-Terminate-Cause = 200
> >>
> >>       Error-Cause = 8
> >>
> >>       User-Name = "1000 at xx.xx.xx.xx"
> >>
> >>       Calling-Station-Id = "sip:1000 at xx.xx.xx.xx"
> >>
> >>       Called-Station-Id = "sip:30 at xx.xx.xx.xx;user=phone"
> >>
> >>       Sip-Translated-Request-URI =
> >>"sip:949449852150#15615551212 at gateway:5060"
> >>
> >>       Acct-Session-Id =
> >>   
> >>
> >"000d2890-d47f01e8-1dcc30bc-7a49c7a4 at yy.yy.yy.yy"
> > 
> >
> >>       Sip-To-Tag = "230383F4-2AF"
> >>
> >>       Sip-From-Tag = "000d2890d47f20f54576a906-290bdc33"
> >>
> >>       Sip-CSeq = "103"
> >>
> >>       NAS-IP-Address = xx.xx.xx.xx
> >>
> >>       NAS-Port = 5060
> >>
> >>       Acct-Delay-Time = 0
> >>
> >>
> >>
> >>
> >>
> >>Thanks in advance!
> >>
> >>
> >>
> >>
> >>
> >>Lenir
> >>_______________________________________________
> >>Users mailing list
> >>Users at openser.org
> >>http://openser.org/cgi-bin/mailman/listinfo/users
> >>
> >>   
> >>





More information about the sr-users mailing list