Get Stop in accounting do some action
Mehdi Ravanbakhsh
babakco at gmail.com
Thu Mar 7 00:35:10 CET 2013
Dear Arran i see in log file that first executing preacct section and
then UPDATE radacct by AcctStopTime .. if i need to change that record
i need to Executing my perl script or uunlang script after database updated
with AcctStopTime so do i need chnage the location of this :
preacct {
if (Acct-Status-Type == 'Stop') {
<read some radacct fild of that session to do some
calculate and do some query in database in radcheck and radreplay>
}
}
LOG file :
[<thread>] # Executing section preacct from file
/usr/local/etc/raddb/sites-enabled/default
# Executing section accounting from file
/usr/local/etc/raddb/sites-enabled/default
rlm_sql (sql): Reserving sql socket id: 0
rlm_sql_postgresql: query: START TRANSACTION
rlm_sql_postgresql: Status: PGRES_COMMAND_OK
rlm_sql_postgresql: query affected rows = 0
rlm_sql_postgresql: query: UPDATE radippool SET nasipaddress = '',
pool_key = 0, callingstationid = '', expiry_time = 'now'::timestamp(0) -
'1 second'::interval WHERE nasipaddress = '78.39.54.132' AND pool_key =
'32' AND username = 'test1' AND callingstationid = '188.245.240.75'
AND framedipaddress = '192.168.90.100'
rlm_sql_postgresql: Status: PGRES_COMMAND_OK
rlm_sql_postgresql: query affected rows = 1
rlm_sql_postgresql: query: COMMIT
rlm_sql_postgresql: Status: PGRES_COMMAND_OK
rlm_sql_postgresql: query affected rows = 0
Released IP 192.168.90.100 (did 78.39.54.132 cli 188.245.240.75 user test1)
rlm_sql (sql): Released sql socket id: 0
rlm_sql (sql): Reserving sql socket id: 4
rlm_sql_postgresql: query: UPDATE radacct SET AcctStopTime = ('2013-03-07
07:31:04'::timestamp - '0'::interval), AcctSessionTime = CASE WHEN '176'
= '' THEN (EXTRACT(EPOCH FROM ('2013-03-07 07:31:04'::TIMESTAMP WITH TIME
ZONE - AcctStartTime::TIMESTAMP WITH TIME ZONE - '0'::INTERVAL)))::BIGINT
ELSE NULLIF('176','')::BIGINT END, AcctInputOctets = (('0'::bigint <<
32) + '28689'::bigint), AcctOutputOctets = (('0'::bigint << 32) +
'80'::bigint), AcctTerminateCause = 'NAS-Request', AcctStopDelay = 0,
FramedIPAddress = NULLIF('192.168.90.100', '')::inet, ConnectInfo_stop =
'' WHERE AcctSessionId = '81000016' AND UserName = 'test1' AND
NASIPAddress = '78.39.54.132' AND AcctStopTime IS NULL
rlm_sql_postgresql: Status: PGRES_COMMAND_OK
rlm_sql_postgresql: query affected rows = 1
rlm_sql (sql): Released sql socket id: 4
Ready to process requests.
On Sun, Mar 3, 2013 at 8:30 PM, Arran Cudbard-Bell <
a.cudbardb at freeradius.org> wrote:
>
> On 3 Mar 2013, at 11:32, Mehdi Ravanbakhsh <babakco at gmail.com> wrote:
>
> > Hello everyone
> >
> > I need to update some check and replay attribute in database when get
> stop in accounting and the session is finish
> >
> > i need to know in which section of virtual server file (
> sites-enabled/default) i need to put unlang script (and/or perl script) ?
> >
> > and
> >
> > how i can check in script if accounting get stop packet , .
>
> preacct {
> if (Acct-Status-Type == 'Stop') {
> <read some radacct fild of that session to do some
> calculate and do some query in database in radcheck and radreplay>
> }
> }
>
> -
> List info/subscribe/unsubscribe? See
> http://www.freeradius.org/list/users.html
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freeradius.org/pipermail/freeradius-users/attachments/20130307/038b6544/attachment-0001.html>
More information about the Freeradius-Users
mailing list