X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXCommandmode.pm;h=18367bdfa76982c2b207cdc27b77b5bf1f75ba83;hb=72568e838d146250a78fea19bd4bbafc760e6a49;hp=5e6c722646867868d7eb47171fc0fbdab6ab9fb5;hpb=765add8acca099e69f2b2cde2bb58a48a00852d3;p=spider.git diff --git a/perl/DXCommandmode.pm b/perl/DXCommandmode.pm index 5e6c7226..18367bdf 100644 --- a/perl/DXCommandmode.pm +++ b/perl/DXCommandmode.pm @@ -32,7 +32,7 @@ use Sun; use Internet; use strict; -use vars qw(%Cache %cmd_cache $errstr %aliases $scriptbase $maxerrors %nothereslug); +use vars qw(%Cache %cmd_cache $errstr %aliases $scriptbase $maxerrors %nothereslug $suppress_ann_to_talk); %Cache = (); # cache of dynamically loaded routine's mod times %cmd_cache = (); # cache of short names @@ -40,6 +40,8 @@ $errstr = (); # error string from eval %aliases = (); # aliases for (parts of) commands $scriptbase = "$main::root/scripts"; # the place where all users start scripts go $maxerrors = 20; # the maximum number of concurrent errors allowed before disconnection +$suppress_ann_to_talk = 1; # don't announce 'to ' or ' ' type announcements + use vars qw($VERSION $BRANCH); $VERSION = sprintf( "%d.%03d", q$Revision$ =~ /(\d+)\.(\d+)/ ); @@ -703,6 +705,11 @@ sub announce my $text = shift; my ($filter, $hops); + if ($suppress_ann_to_talk) { + my ($to, $call) = $text =~ /^\s*([\w-]+)[\s:]+([\w-]+)/; + return if ($to && $call && ((uc $to eq 'TO' && is_callsign(uc $call)) || is_callsign($call = uc $to))); + } + if ($self->{annfilter}) { ($filter, $hops) = $self->{annfilter}->it(@_ ); return unless $filter;