$no = 'No'; # ditto for no
$user_interval = 11*60; # the interval between unsolicited prompts if no traffic
-
# make sure that modules are searched in the order local then perl
BEGIN {
umask 002;
eval {
require local::lib;
};
- import local::lib unless ($@);
+ unless ($@) {
+# import local::lib;
+ import local::lib qw(/spider/perl5lib);
+ }
# root of directory tree for this system
$root = "/spider";
$root = $ENV{'DXSPIDER_ROOT'} if $ENV{'DXSPIDER_ROOT'};
+ unshift @INC, "$root/perl5lib" unless grep {$_ eq "$root/perl5lib"} @INC;
unshift @INC, "$root/perl"; # this IS the right way round!
unshift @INC, "$root/local";
our $broadcast_debug; # allow broadcasting of debug info down "enhanced" user connections
our $clssecs; # the amount of cpu time the DXSpider process have consumed
our $cldsecs; # the amount of cpu time any child processes have consumed
+our $allowslashcall; # Allow / in connecting callsigns (ie PA0/G1TLH, or even PA0/G1TLH/2)
# send a message to call on conn and disconnect
$user->long($main::mylongitude);
$user->qra($main::mylocator);
}
- $user->startt($main::systime);
+ $user->startt($main::systime);
$conn->conns($call);
$dxchan = Web->new($call, $conn, $user);
$dxchan->enhanced(1);
# is he locked out ?
$user = DXUser::get_current($call);
+ $conn->conns($call);
my $basecall = $call;
$basecall =~ s/-\d+$//; # remember this for later multiple user processing
my $lock;
UDPMsg::finish();
# end everything else
+ RBN::finish();
DXUser::finish();
DXDupe::finish();
}
STDOUT->autoflush(1);
+ # log our path
+ dbg "Perl path: " . join(':', @INC);
# try to load the database
if (DXSql::init($dsn)) {
dbg("loading user file system ...");
DXUser::init(4); # version 4 == json format
+ Filter::init(); # doesn't do much, but has to be done
+
+
# look for the sysop and the alias user and complain if they aren't there
{
die "\$myalias \& \$mycall are the same ($mycall)!, they must be different (hint: make \$mycall = '${mycall}-2';). Oh and don't forget to rerun create_sysop.pl!" if $mycall eq $myalias;
dbg("reading database descriptors ...");
DXDb::load();
+ dbg("starting RBN ...");
+ RBN::init();
+
# starting local stuff
dbg("doing local initialisation ...");
QSL::init(1);
IsoTime::update($systime);
DXCommandmode::process(); # process ongoing command mode stuff
DXProt::process(); # process ongoing ak1a pcxx stuff
- DXCron::process(); # do cron jobs
DXXml::process();
DXConnect::process();
DXMsg::process();
DXDb::process();
DXUser::process();
DXDupe::process();
- DXCron::process(); # do cron jobs
IsoTime::update($systime);
DXConnect::process();
DXUser::process();
AGWMsg::process();
-
+ DXCron::process(); # do cron jobs
+ RBN::process();
+
Timer::handler();
DXLog::flushall();
}
}
-
sub per_minute
{
-
+ RBN::per_minute();
}
sub per_10_minute
{
-
+ RBN::per_10_minute();
}
sub per_hour
{
-
+ RBN::per_hour();
}
sub per_day