blob: cdaf83a58cff690423620c76949de5a42337cb47 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
# This query properly handles calls that span from the
# previous reset period into the current period but
# involves more work for the SQL server than those
# below
query = "\
SELECT SUM(AcctSessionTime - GREATEST((%%b - EXTRACT(epoch FROM AcctStartTime)), 0)) \
FROM radacct \
WHERE UserName='%{${key}}' \
AND EXTRACT(epoch FROM AcctStartTime) + AcctSessionTime > '%%b'"
#
# This query ignores calls that started in a previous
# reset period and continue into into this one. But it
# is a little easier on the SQL server
#
#query = "\
# SELECT SUM(AcctSessionTime) \
# FROM radacct \
# WHERE UserName='%{${key}}' \
# AND EXTRACT(epoch FROM AcctStartTime) > '%%b'"
#
# This query is the same as above, but demonstrates an
# additional counter parameter '%%e' which is the
# timestamp for the end of the period
#
#query = "\
# SELECT SUM(AcctSessionTime) \
# FROM radacct \
# WHERE UserName='%{${key}}' \
# AND EXTRACT(epoch FROM AcctStartTime) BETWEEN '%%b' AND '%%e'"
|