projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
add chat/wx/announce handling to PC93
[spider.git]
/
perl
/
DXProt.pm
diff --git
a/perl/DXProt.pm
b/perl/DXProt.pm
index 220c689c2ed2333f9ad7f155b01fe7358f441841..9a0b2121ff17fc9e0d5f3cc6b11e3c25a8fdc97f 100644
(file)
--- a/
perl/DXProt.pm
+++ b/
perl/DXProt.pm
@@
-585,10
+585,11
@@
sub wcy
sub send_announce
{
my $self = shift;
sub send_announce
{
my $self = shift;
+ my $from_pc9x = shift;
my $line = shift;
my @dxchan = DXChannel::get_all();
my $dxchan;
my $line = shift;
my @dxchan = DXChannel::get_all();
my $dxchan;
- my $target;
+ my $target
= $_[6]
;
my $to = 'To ';
my $text = unpad($_[2]);
my $to = 'To ';
my $text = unpad($_[2]);
@@
-597,7
+598,7
@@
sub send_announce
} elsif ($_[3] gt ' ') { # speciality list handling
my ($name) = split /\./, $_[3];
$target = "$name"; # put the rest in later (if bothered)
} elsif ($_[3] gt ' ') { # speciality list handling
my ($name) = split /\./, $_[3];
$target = "$name"; # put the rest in later (if bothered)
- }
+ }
if ($_[5] eq '1') {
$target = "WX";
if ($_[5] eq '1') {
$target = "WX";
@@
-632,6
+633,8
@@
sub send_announce
foreach $dxchan (@dxchan) {
next if $dxchan == $main::me;
next if $dxchan == $self && $self->is_node;
foreach $dxchan (@dxchan) {
next if $dxchan == $main::me;
next if $dxchan == $self && $self->is_node;
+ next if $from_pc9x && $dxchan->{do_pc9x};
+ next if $target eq 'LOCAL' && $dxchan->is_node;
$dxchan->announce($line, $self->{isolate}, $to, $target, $text, @_, $self->{call},
@a[0..2], @b[0..2]);
}
$dxchan->announce($line, $self->{isolate}, $to, $target, $text, @_, $self->{call},
@a[0..2], @b[0..2]);
}
@@
-650,6
+653,7
@@
sub nextchatmsgid
sub send_chat
{
my $self = shift;
sub send_chat
{
my $self = shift;
+ my $from_pc9x = shift;
my $line = shift;
my @dxchan = DXChannel::get_all();
my $dxchan;
my $line = shift;
my @dxchan = DXChannel::get_all();
my $dxchan;
@@
-692,10
+696,11
@@
sub send_chat
if ($dxchan->is_node) {
next if $dxchan == $main::me;
next if $dxchan == $self;
if ($dxchan->is_node) {
next if $dxchan == $main::me;
next if $dxchan == $self;
+ next if $from_pc9x && $dxchan->{do_pc9x};
next unless $dxchan->is_spider || $is_ak1a;
next if $target eq 'LOCAL';
if (!$ak1a_line && $is_ak1a) {
next unless $dxchan->is_spider || $is_ak1a;
next if $target eq 'LOCAL';
if (!$ak1a_line && $is_ak1a) {
- $ak1a_line =
DXProt::
pc12($_[0], $text, $_[1], "$target.LST");
+ $ak1a_line = pc12($_[0], $text, $_[1], "$target.LST");
}
}
}
}