1. make spot dups look back 5 mins.
[spider.git] / perl / Spot.pm
index f8925d3d51b33d2bcf63bfe2fffc120c5c7816bd..69a67b9e885668e6ec135db586d3e4085b9ec52f 100644 (file)
@@ -19,6 +19,13 @@ use DXDupe;
 use Data::Dumper;
 
 use strict;
+
+use vars qw($VERSION $BRANCH);
+$VERSION = sprintf( "%d.%03d", q$Revision$ =~ /(\d+)\.(\d+)/ );
+$BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /\d+\.\d+\.(\d+)\.(\d+)/ ) || 0;
+$main::build += $VERSION;
+$main::branch += $BRANCH;
+
 use vars qw($fp $statp $maxspots $defaultspots $maxdays $dirprefix $duplth $dupage $filterdef);
 
 $fp = undef;
@@ -307,9 +314,16 @@ sub dup
        $text = substr($text, 0, $duplth) if length $text > $duplth; 
        unpad($text);
        $text =~ s/[\\\%]\d+//g;
+       $text = pack("C*", map {$_ & 127} unpack("C*", $text));
        $text =~ s/[^a-zA-Z0-9]//g;
+       for (0,60,120,180,240,300) {
+               my $dt = $d - $_;
+               my $dupkey = "X$freq|$call|$dt|\L$text";
+               return 1 if DXDupe::find($dupkey);
+       }
        my $dupkey = "X$freq|$call|$d|\L$text";
-       return DXDupe::check($dupkey, $main::systime+$dupage);
+       DXDupe::add($dupkey, $main::systime+$dupage);
+       return 0;
 }
 
 sub listdups