my $line;
my $from = $self->call;
my @out;
-return (1, $self->msg('e5')) if $self->remotecmd;
+return (1, $self->msg('e5')) if $self->remotecmd || $self->inscript;
# analyse the line there are four situations...
# 1) talk call
my $clref = Route::get($call); # try an exact call
my $dxchan = $clref->dxchan if $clref;
return (1, $self->msg('e7', $call)) unless $dxchan;
+return (1, $self->msg('e28')) unless $self->registered || $to eq $main::myalias;
# if there is a line send it, otherwise add this call to the talk list
# and set talk mode for command mode
if ($line) {
my @bad;
if (@bad = BadWords::check($line)) {
- return (1, $self->msg('e17', @bad));
+ $self->badcount(($self->badcount||0) + @bad);
+ Log('DXCommand', "$self->{call} swore: $line");
+ } else {
+ $dxchan->talk($self->call, $to, $via, $line) if $dxchan;
}
- $dxchan->talk($self->call, $to, $via, $line) if $dxchan;
} else {
my $s = $to;
$s .= ">$via" if $via;