Ok, that put the right things in place. However, here's a twist: Either way, wit switching Sip-Translated-Request-URI and Called-Station-ID around, or not, the CDRs are sent differently depending on who "hands up" the call. For example, notice the User-Name, Calling-Station-ID and Called-Station-ID:
User 1000 calls 15615551212, and user 1000 hangs up: ===================================================== rad_recv: Accounting-Request packet from host 216.82.124.29:39228, id=206, length=306 Acct-Status-Type = Start Service-Type = Sip-Session Acct-Terminate-Cause = 200 Error-Cause = Invite User-Name = "1000@216.82.124.29" Calling-Station-Id = "sip:1000@216.82.124.29" Sip-Translated-Request-URI = "sip:15617220966@216.82.124.29;user=phone" Called-Station-Id = "sip:949449852150#15617220966@216.82.124.30;user=phone" Acct-Session-Id = "000d2890-d47f01f5-6410e8bd-4baf0435@66.232.8.116" Sip-To-Tag = "33C5A3C-76A" Sip-From-Tag = "000d2890d47f24f85e6c0b91-0092ab53" Sip-CSeq = "102" NAS-IP-Address = 216.82.124.29 NAS-Port = 5060 Acct-Delay-Time = 0 rlm_sql (sql): Reserving sql socket id: 15 rlm_sql (sql): Released sql socket id: 15 Sending Accounting-Response of id 206 to 216.82.124.29:39228 rad_recv: Accounting-Request packet from host 216.82.124.29:39228, id=207, length=300 Acct-Status-Type = Stop Service-Type = Sip-Session Acct-Terminate-Cause = 200 Error-Cause = 8 User-Name = "1000@216.82.124.29" Calling-Station-Id = "sip:1000@216.82.124.29" Sip-Translated-Request-URI = "sip:15617220966@216.82.124.29;user=phone" Called-Station-Id = "sip:949449852150#15617220966@216.82.124.30:5060" Acct-Session-Id = "000d2890-d47f01f5-6410e8bd-4baf0435@66.232.8.116" Sip-To-Tag = "33C5A3C-76A" Sip-From-Tag = "000d2890d47f24f85e6c0b91-0092ab53" Sip-CSeq = "103" NAS-IP-Address = 216.82.124.29 NAS-Port = 5060 Acct-Delay-Time = 0
User 1000 calls 15615551212, and user 15615551212 hangs up: ===========================================================
rad_recv: Accounting-Request packet from host 216.82.124.29:39227, id=200, length=306 Acct-Status-Type = Start Service-Type = Sip-Session Acct-Terminate-Cause = 200 Error-Cause = Invite User-Name = "1000@216.82.124.29" Calling-Station-Id = "sip:1000@216.82.124.29" Sip-Translated-Request-URI = "sip:15617220966@216.82.124.29;user=phone" Called-Station-Id = "sip:949449852150#15617220966@216.82.124.30;user=phone" Acct-Session-Id = "000d2890-d47f01f4-372dff4b-793d4acc@66.232.8.116" Sip-To-Tag = "33B37E4-77B" Sip-From-Tag = "000d2890d47f24f639ccef77-4ef08b02" Sip-CSeq = "102" NAS-IP-Address = 216.82.124.29 NAS-Port = 5060 Acct-Delay-Time = 0 rlm_sql (sql): Reserving sql socket id: 1 rlm_sql (sql): Released sql socket id: 1 Sending Accounting-Response of id 200 to 216.82.124.29:39227 rad_recv: Accounting-Request packet from host 216.82.124.29:39227, id=201, length=286 Acct-Status-Type = Stop Service-Type = Sip-Session Acct-Terminate-Cause = 200 Error-Cause = 8 User-Name = "15617220966@216.82.124.29" Calling-Station-Id = "sip:15617220966@216.82.124.29;user=phone" Sip-Translated-Request-URI = "sip:1000@216.82.124.29" Called-Station-Id = "sip:1000@66.232.8.116:5061" Acct-Session-Id = "000d2890-d47f01f4-372dff4b-793d4acc@66.232.8.116" Sip-To-Tag = "000d2890d47f24f639ccef77-4ef08b02" Sip-From-Tag = "33B37E4-77B" Sip-CSeq = "101" NAS-IP-Address = 216.82.124.29 NAS-Port = 5060 Acct-Delay-Time = 0
Shouldn't it always be that the User-Name attribute is the user who initiated the call?
Lenir
-----Original Message----- From: users-bounces@openser.org [mailto:users-bounces@openser.org] On Behalf Of 'Jan Janak' Sent: Wednesday, November 16, 2005 1:53 PM To: lsantiago@globalgatewaycom.com Cc: serdev@iptel.org; serusers@iptel.org; users@openser.org; devel@openser.org Subject: Re: [Users] RE: [Serusers] Re: [Serdev] Inaccurate Radius Accounting
Either reconfigure the billing application to use Sip-Translated-Request-URI (recommended) or change the ID of the attribute in the radiusclient dictionary as suggested by Bogdan.
In this particular example you should set Called-Station-Id to 107.
Jan.
On 16-11-2005 13:09, 'Lenir' wrote:
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@iptel.org] Sent: Wednesday, November 16, 2005 11:29 AM To: Bogdan-Andrei Iancu Cc: Lenir; 'Lenir Santiago'; serdev@iptel.org; serusers@iptel.org; devel@openser.org; users@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@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@iptel.org [mailto:serusers-bounces@iptel.org] On Behalf Of Jan Janak Sent: Wednesday, November 16, 2005 3:15 AM To: Lenir Santiago Cc: serdev@iptel.org; serusers@iptel.org; users@openser.org; devel@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@xx.xx.xx.xx
avp_printf("i:96","<sip:$avp($temp2)@$td>\r\n"); #
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@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@xx.xx.xx.xx,
how can I get acc.so to send the final resulting URI (15615551212@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@xx.xx.xx.xx" Calling-Station-Id = "sip:1000@xx.xx.xx.xx" Called-Station-Id = "sip:30@xx.xx.xx.xx;user=phone" Sip-Translated-Request-URI =
"sip:949449852150#15615551212@gateway;user=phone"
Acct-Session-Id =
"000d2890-d47f01e8-1dcc30bc-7a49c7a4@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@xx.xx.xx.xx" Calling-Station-Id = "sip:1000@xx.xx.xx.xx" Called-Station-Id = "sip:30@xx.xx.xx.xx;user=phone" Sip-Translated-Request-URI =
"sip:949449852150#15615551212@gateway:5060"
Acct-Session-Id =
"000d2890-d47f01e8-1dcc30bc-7a49c7a4@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@openser.org http://openser.org/cgi-bin/mailman/listinfo/users
_______________________________________________ Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users