X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXChannel.pm;h=ceaaf551907c0b8aaee3e19a55737c58bf92df6f;hb=a13f69ce9f26ea2b95be1e6de1f14f50ab7065d8;hp=dcd7b909bf25af8983044ace748da460efb896eb;hpb=8e14149148baba63ce5ae2b95aacda8ab6dd0d87;p=spider.git diff --git a/perl/DXChannel.pm b/perl/DXChannel.pm index dcd7b909..ceaaf551 100644 --- a/perl/DXChannel.pm +++ b/perl/DXChannel.pm @@ -33,6 +33,8 @@ use DXDebug; use Filter; use Prefix; use Route; +use DXLog; + use strict; use vars qw(%channels %valid @ISA $count $maxerrors); @@ -50,6 +52,8 @@ $count = 0; beep => '0,Want Beeps,yesno', build => '1,Node Build', call => '0,Callsign', + cmdcount => '5,Cmds in cmdinterval', + cmdintstart => '5,Cmd int start,atime', cluster => '5,Cluster data', conf => '0,In Conference?,yesno', conn => '9,Msg Conn ref', @@ -64,7 +68,7 @@ $count = 0; enhanced => '5,Enhanced Client,yesno', errors => '9,Errors', func => '5,Function', - group => '0,Access Group,parray', # used to create a group of users/nodes for some purpose or other. + group => '0,Access Group,parray',# used to create a group of users/nodes for some purpose or other. gtk => '5,Using GTK,yesno', handle_xml => '9,Handles XML,yesno', here => '0,Here?,yesno', @@ -124,6 +128,7 @@ $count = 0; talk => '0,Want Talk,yesno', talklist => '0,Talk List,parray', user => '9,DXUser ref', + user_interval => '0,Prompt Idle Time', ve7cc => '0,VE7CC program special,yesno', verified => '9,Verified?,yesno', version => '1,Node Version', @@ -135,7 +140,7 @@ $count = 0; wx => '0,Want WX,yesno', ); -$maxerrors = 20; # the maximum number of concurrent errors allowed before disconnection +$maxerrors = 10; # the maximum number of concurrent errors allowed before disconnection # object destruction sub DESTROY @@ -204,12 +209,13 @@ sub _error_out { my $self = shift; my $e = shift; - if (++$self->{errors} > $maxerrors) { + if ($self != $main::me && ++$self->{errors} > $maxerrors) { $self->send($self->msg('e26')); + LogDbg('err', "DXChannel $self->{call}: too many errors ($self->{errors} > $maxerrors), disconnecting"); $self->disconnect; return (); } else { - return ($self->msg($e)); + return ($e ? $self->msg($e) : ''); } }