summaryrefslogtreecommitdiffstats
path: root/raddb/mods-config/sql/counter/postgresql/weeklycounter.conf
diff options
context:
space:
mode:
Diffstat (limited to 'raddb/mods-config/sql/counter/postgresql/weeklycounter.conf')
-rw-r--r--raddb/mods-config/sql/counter/postgresql/weeklycounter.conf12
1 files changed, 12 insertions, 0 deletions
diff --git a/raddb/mods-config/sql/counter/postgresql/weeklycounter.conf b/raddb/mods-config/sql/counter/postgresql/weeklycounter.conf
new file mode 100644
index 0000000..0d809c1
--- /dev/null
+++ b/raddb/mods-config/sql/counter/postgresql/weeklycounter.conf
@@ -0,0 +1,12 @@
+#
+# 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'"
+