(
[ qw(c c m bp bc c) ], # pc10
[ qw(f m d t m c c h) ], # pc11
- [ qw(c bm m bp bm p h) ], # pc12
+ [ qw(c bm m bm bm p h) ], # pc12
[ qw(c h) ], #
[ qw(c h) ], #
[ qw(c m h) ], #
my $dxchan;
- if ($_[2] eq '*' || $_[2] eq $main::mycall) {
+ if ((($dxchan = DXChannel->get($_[2])) && $dxchan->is_user) || $_[4] =~ /^[\#\w]+$/){
+ $self->send_chat($line, @_[1..6]);
+ } elsif ($_[2] eq '*' || $_[2] eq $main::mycall) {
+ # ignore something that looks like a chat line coming in with sysop
+ # flag - this is a kludge...
+ if ($_[3] =~ /^\#\d+ / && $_[4] eq '*') {
+ dbg('PCPROT: Probable chat rewrite, dropped') if isdbg('chanerr');
+ return;
+ }
# here's a bit of fun, convert incoming ann with a callsign in the first word
# or one saying 'to <call>' to a talk if we can route to the recipient
# send it
$self->send_announce($line, @_[1..6]);
- } elsif ((($dxchan = DXChannel->get($_[2])) && $dxchan->is_user) || $_[4] =~ /^[\#\w]+$/){
- $self->send_chat($line, @_[1..6]);
} else {
$self->route($_[2], $line);
}
foreach $dxchan (@dxchan) {
next if $dxchan == $main::me;
next if $dxchan == $self && $self->is_node;
+ next unless $dxchan->is_spider || $dxchan->is_ak1a;
next if $target eq 'LOCAL' && $dxchan->is_node;
+
$dxchan->chat($line, $self->{isolate}, $target, $_[1], $text, @_, $self->{call}, $ann_dxcc, $ann_itu, $ann_cq, $org_dxcc, $org_itu, $org_cq);
}
}