restore talk "<call> not visible on cluster" message
authorDirk Koopman <djk@tobit.co.uk>
Wed, 25 Jul 2007 13:06:07 +0000 (14:06 +0100)
committerDirk Koopman <djk@tobit.co.uk>
Wed, 25 Jul 2007 13:06:07 +0000 (14:06 +0100)
Restore the message if the <call> is not routable. However, instead
of the old behaviour of then just stopping dead, it now sends the
message anyway as a broadcast.

cmd/talk.pl
perl/DXProtHandle.pm
perl/Version.pm

index 2d1fbb9ef27d402c1e441d2731951aa6c9d56a96..57b27e7c4df7bbc63b1aacfba9c253e46f3f5e33 100644 (file)
@@ -40,7 +40,7 @@ $via = uc $via if $via;
 my $call = $via || $to;
 my $clref = Route::get($call);     # try an exact call
 my $dxchan = $clref->dxchan if $clref;
-#return (1, $self->msg('e7', $call)) unless $dxchan;
+push @out, $self->msg('e7', $call) unless $dxchan;
 
 #$DB::single = 1;
 
index 831d8885be1918ef565dcb2a64a28196d13e49c1..10a5fe726c4fad8336505ebee7ee272c1df060f8 100644 (file)
@@ -1770,24 +1770,21 @@ sub handle_93
                }
 
                # convert to PC10 talks where appropriate
-               if ($ref) {
-                       # just go for the "best" one for now (rather than broadcast)
-                       $dxchan = $ref->dxchan;
+               # just go for the "best" one for now (rather than broadcast)
+               $dxchan = $ref->dxchan;
 
-                       # check it...
-                       if (ref $dxchan && $dxchan->isa('DXChannel')) {
-                               if ($dxchan->{do_pc9x}) {
-                                       $dxchan->send($line);
-                               } else {
-                                       $dxchan->talk($from, $to, $via, $text, $onode);
-                               }
+               # check it...
+               if (ref $dxchan && $dxchan->isa('DXChannel')) {
+                       if ($dxchan->{do_pc9x}) {
+                               $dxchan->send($line);
                        } else {
-                               dbg("ERROR: $to -> $dxchan is not a DXChannel! (convert to pc10)");
+                               $dxchan->talk($from, $to, $via, $text, $onode);
                        }
-                       return;
+               } else {
+                       dbg("ERROR: $to -> $dxchan is not a DXChannel! (convert to pc10)");
                }
+               return;
 
-               # otherwise, drop through and allow it to be broadcast
        } elsif ($to eq '*' || $to eq 'SYSOP' || $to eq 'WX') {
                # announces
                my $sysop = $to eq 'SYSOP' ? '*' : ' ';
index ecefc7cabd9ad9a2031245a0413683e99431f211..b2d7b72d672c375b7162e14e681230151373791c 100644 (file)
@@ -11,6 +11,6 @@ use vars qw($version $subversion $build);
 
 $version = '1.54';
 $subversion = '0';
-$build = '128';
+$build = '129';
 
 1;