This commit was manufactured by cvs2svn to create branch
[freeside.git] / FS / bin / freeside-sqlradius-radacctd
index d66c875..e98eaa0 100644 (file)
@@ -4,7 +4,7 @@ use strict;
 use vars qw( @part_export );
 use subs qw(myshutdown);
 use POSIX qw(:sys_wait_h);
-use IO::File;
+#use IO::File;
 use FS::Daemon qw(daemonize1 drop_root logfile daemonize2 sigint sigterm);
 use FS::UID qw(adminsuidsetup); #forksuidsetup driver_name dbh myconnect);
 use FS::Record qw(qsearch); # qsearchs);
@@ -29,14 +29,20 @@ daemonize2();
 
 #--
 
+#don't just look for ->can('usage_sessions'), we're sqlradius-specific
+# (radiator is supposed to be setup with a radacct table)
+
 @part_export =
   qsearch('part_export', { 'exporttype' => 'sqlradius' } );
 push @part_export,
   qsearch('part_export', { 'exporttype' => 'sqlradius_withdomain' } );
+push @part_export,
+  qsearch('part_export', { 'exporttype' => 'radiator' } );
 
 @part_export = grep { ! $_->option('ignore_accounting') } @part_export;
 
-die "no sqlradius or sqlradius_withdomain exports without ignore_accounting"
+die "no sqlradius, sqlradius_withdomain or radiator exports without".
+    " ignore_accounting"
   unless @part_export;
 
 while (1) {
@@ -121,10 +127,10 @@ freeside-sqlradius-radacctd - Real-time radacct import daemon
 
 =head1 DESCRIPTION
 
-Imports records from an the SQL radacct tables of all sqlradius and
-sqlradius_withdomain exports (except those with the ignore_accounting flag) and
-updates the svc_acct.seconds for each account.  Runs as a daemon and updates
-the database in real-time.
+Imports records from an the SQL radacct tables of all sqlradius
+sqlradius_withdomain and radiator exports (except those with the
+ignore_accounting flag) and updates the svc_acct.seconds for each account.
+Runs as a daemon and updates the database in real-time.
 
 B<username> is a username added by freeside-adduser.
 
@@ -134,7 +140,7 @@ ALTER TABLE radacct ADD COLUMN FreesideStatus varchar(32) NULL;
 
 If you want to ignore the existing accountg records, also do:
 
-UPDATE TABLE radacct SET FreesideStatus = 'done' WHERE FreesideStatus IS NULL;
+UPDATE radacct SET FreesideStatus = 'done' WHERE FreesideStatus IS NULL;
 
 =head1 SEE ALSO