+06Nov00=======================================================================
+1. Added sh/qrz to the list of callbook services
05Nov00=======================================================================
1. 75% speed up on sh/dx !, lower memory usage as well!
2. Fixed problem with clear/spot 0 (how did this one last so long!!!)
my $t = new Net::Telnet;
-push @out, $self->msg('call1');
+push @out, $self->msg('call1', 'AA6HF');
foreach $l (@list) {
$t->open(Host => "jeifer.pineknot.com",
Port => 1235,
}
$t->close;
} else {
- push @out, $self->msg('e18', 'PineKnot');
+ push @out, $self->msg('e18', 'AA6HF');
}
}
--- /dev/null
+#
+# Query the PineKnot Database server for a callsign
+#
+# from an idea by Steve Franke K9AN and information from Angel EA7WA
+#
+# $Id$
+#
+my ($self, $line) = @_;
+my @list = split /\s+/, $line; # generate a list of callsigns
+my $l;
+my @out;
+
+return (1, "SHOW/QRZ <callsign>, e.g. SH/QRZ g1tlh") unless @list;
+
+use Net::Telnet;
+
+my $t = new Net::Telnet;
+
+push @out, $self->msg('call1', "QRZ.com");
+foreach $l (@list) {
+ $t->open(Host => "qrz.com",
+ Port => 80,
+ Timeout => 5);
+ if ($t) {
+ $t->print("GET /database?callsign=$l HTTP/1.0\n\n");
+ Log('call', "show/qrz $l");
+ my $state = "call";
+ while (my $result = $t->getline) {
+# print "$state: $result";
+ if ($state eq 'call' && $result =~ /$l/i) {
+ $state = 'getaddr';
+ push @out, uc $l;
+ } elsif ($state eq 'getaddr' || $state eq 'inaddr') {
+ if ($result =~ /^\s+([\w\s.,;:-]+)(?:<br>)?$/) {
+ my $line = $1;
+ unless ($line =~ /^\s+$/) {
+ push @out, $line;
+ $state = 'inaddr' unless $state eq 'inaddr';
+ }
+ } else {
+ $state = 'runout' if $state eq 'inaddr';
+ }
+ }
+ }
+ $t->close;
+ } else {
+ push @out, $self->msg('e18', 'QRZ.com');
+ }
+}
+
+return (1, @out);
bbs => 'Your BBS Address is now \"$_[0]\"',
beepoff => 'Beeps are now off',
beepon => 'Beeps are now on',
- call1 => 'Callsign lookup via Pineknot:',
+ call1 => 'Callsign lookup via $_[0]:',
conother => 'Sorry $_[0] you are connected on another port',
concluster => 'Sorry $_[0] you are already connected elsewhere on the cluster',
conscript => 'no connect script called \"$_[0]\" found in $main::root/connect',