23Feb03=======================================================================
1. Added show/wm7d command (a US only callbook server) [by K1XX].
2. Added a prototype show/db0sdx command (w.i.p).
-3. Add new Commands to manuals (g0vgs)
+3. Added set/dxcq and set/dxitu zone commands [Translators: I have added
+dxcqu, dxcqs, dxitus and dxituu to Messages].
+4. Add new Commands to manuals (g0vgs)
22Feb03=======================================================================
1. changed qrz.com address
2. added Charlie's [K1XX] new wpxloc.raw data stuff to get WA1, KC3 type
=== 0^SET/DX^Allow DX messages to come out on your terminal
=== 0^UNSET/DX^Stop DX messages coming out on your terminal
+=== 0^SET/DXCQ^Show CQ Zones on the end of DX announcements
+=== 0^UNSET/DXCQ^Stop CQ Zones on the end of DX announcements
+Display both the Spotter's and the Spotted's CQ Zone on the end
+of a DX announcement (there is just enough room). Some user programs
+cannot cope with this. The Spotter's CQ is on the RHS of the
+time, the Spotted's CQ is on the LHS.
+
+Conflicts with: SHOW/DXGRID, SHOW/DXITU, SHOW/USSTATE
+
+Do a STAT/USER to see which flags you have set if you are confused.
+
+=== 0^SET/DXITU^Show ITU Zones on the end of DX announcements
+=== 0^UNSET/DXITU^Stop ITU Zones on the end of DX announcements
+Display both the Spotter's and the Spotted's ITU Zone on the end
+of a DX announcement (there is just enough room). Some user programs
+cannot cope with this. The Spotter's ITU is on the RHS of the
+time, the Spotted's ITU is on the LHS.
+
+Conflicts with: SHOW/DXGRID, SHOW/DXCQ, SHOW/USSTATE
+
+Do a STAT/USER to see which flags you have set if you are confused.
+
=== 0^SET/DXGRID^Allow QRA Grid Squares on the end of DX announcements
=== 0^UNSET/DXGRID^Stop QRA Grid Squares on the end of DX announcements
A standard feature which is enabled in version 1.43 and above is
cannot cope with this. You can use this command to reset (or set)
this feature.
+Conflicts with: SHOW/DXCQ, SHOW/DXITU
+
+Do a STAT/USER to see which flags you have set if you are confused.
+
=== 5^SET/DXNET <call> [<call>..]^Make the callsign an DXNet node
=== 0^SET/ECHO^Make the cluster echo your input
see also DELETE/USDB
-=== 0^SET/DXSTATE^Allow US State info on the end of DX announcements
-=== 0^UNSET/DXSTATE^Stop US State info on the end of DX announcements
+=== 0^SET/USSTATE^Allow US State info on the end of DX announcements
+=== 0^UNSET/USSTATE^Stop US State info on the end of DX announcements
If the spotter's or spotted's US State is known it is output on the
end of a DX announcement (there is just enough room).
Some user programs cannot cope with this. You can use this command
to reset (or set) this feature.
+Conflicts with: SHOW/DXCQ, SHOW/DXITU
+
+Do a STAT/USER to see which flags you have set if you are confused.
+
=== 0^SET/WCY^Allow WCY messages to come out on your terminal
=== 0^UNSET/WCY^Stop WCY messages coming out on your terminal
--- /dev/null
+#
+# set the dxdxcq flag
+#
+# Copyright (c) 2000 - Dirk Koopman
+#
+# $Id$
+#
+
+my ($self, $line) = @_;
+my @args = split /\s+/, $line;
+my $call;
+my @out;
+
+@args = $self->call if (!@args || $self->priv < 9);
+
+foreach $call (@args) {
+ $call = uc $call;
+ my $user = DXUser->get_current($call);
+ if ($user) {
+ $user->wantdxcq(1);
+ $user->put;
+ push @out, $self->msg('dxcqs', $call);
+ } else {
+ push @out, $self->msg('e3', "Set DX CQ", $call);
+ }
+}
+return (1, @out);
--- /dev/null
+#
+# set the dxitu flag
+#
+# Copyright (c) 2000 - Dirk Koopman
+#
+# $Id$
+#
+
+my ($self, $line) = @_;
+my @args = split /\s+/, $line;
+my $call;
+my @out;
+
+@args = $self->call if (!@args || $self->priv < 9);
+
+foreach $call (@args) {
+ $call = uc $call;
+ my $user = DXUser->get_current($call);
+ if ($user) {
+ $user->wantdxitu(1);
+ $user->put;
+ push @out, $self->msg('dxitus', $call);
+ } else {
+ push @out, $self->msg('e3', "Set DX ITU", $call);
+ }
+}
+return (1, @out);
my($info, $t);
$t = new Net::Telnet;
+
+dbg("db0sdx: contacting $target:$port") if isdbg('db0sdx');
$info = $t->open(Host => $target,
Port => $port,
Timeout => 15);
push @out, $self->msg('e18', 'DB0SDX Database server');
} else {
+ dbg("db0sdx: connected to $target:$port") if isdbg('db0sdx');
+
my $s = qq(<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
--- /dev/null
+#
+# unset the dxdxcq flag
+#
+# Copyright (c) 2000 - Dirk Koopman
+#
+# $Id$
+#
+
+my ($self, $line) = @_;
+my @args = split /\s+/, $line;
+my $call;
+my @out;
+
+@args = $self->call if (!@args || $self->priv < 9);
+
+foreach $call (@args) {
+ $call = uc $call;
+ my $user = DXUser->get_current($call);
+ if ($user) {
+ $user->wantdxcq(0);
+ $user->put;
+ push @out, $self->msg('dxcqu', $call);
+ } else {
+ push @out, $self->msg('e3', "Unset DX CQ", $call);
+ }
+}
+return (1, @out);
--- /dev/null
+#
+# unset the dxdxitu flag
+#
+# Copyright (c) 2000 - Dirk Koopman
+#
+# $Id$
+#
+
+my ($self, $line) = @_;
+my @args = split /\s+/, $line;
+my $call;
+my @out;
+
+@args = $self->call if (!@args || $self->priv < 9);
+
+foreach $call (@args) {
+ $call = uc $call;
+ my $user = DXUser->get_current($call);
+ if ($user) {
+ $user->wantdxitu(0);
+ $user->put;
+ push @out, $self->msg('dxituu', $call);
+ } else {
+ push @out, $self->msg('e3', "Unset DX ITU", $call);
+ }
+}
+return (1, @out);
}
+ dbg('spot: "' . join('","', @_) . '"') if isdbg('dxspot');
+
my $t = ztime($_[2]);
my $loc;
my $clth = $self->{consort} eq 'local' ? 29 : 30;
}
$loc = "" unless $loc;
- # USDB stuff
- if ($USDB::present && $self->{user}->wantusstate) {
- my ($city, $state) = USDB::get($_[4]);
- if ($state) {
- $loc = ' ' . $state;
- }
- ($city, $state) = USDB::get($_[1]);
- if ($state) {
- $comment = substr($comment, 0, $self->{consort} eq 'local' ? 26 : 27) . ' ' . $state;
- }
+ if ($self->{user}->wantdxitu) {
+ $loc = ' ' . sprintf("%2d", $_[10]) if defined $_[10];
+ $comment = substr($comment, 0, $self->{consort} eq 'local' ? 26 : 27) . ' ' . sprintf("%2d", $_[8]) if defined $_[8];
+ } elsif ($self->{user}->wantdxcq) {
+ $loc = ' ' . sprintf("%2d", $_[11]) if defined $_[11];
+ $comment = substr($comment, 0, $self->{consort} eq 'local' ? 26 : 27) . ' ' . sprintf("%2d", $_[9]) if defined $_[9];
+ } elsif ($self->{user}->wantusstate) {
+ $loc = ' ' . $_[13] if $_[13];
+ $comment = substr($comment, 0, $self->{consort} eq 'local' ? 26 : 27) . ' ' . $_[12] if $_[12];
}
my $buf = sprintf "DX de %-7.7s%11.1f %-12.12s %-s $t$loc", "$_[4]:", $_[0], $_[1], $comment;
pingint => '9,Node Ping interval',
nopings => '9,Ping Obs Count',
wantlogininfo => '9,Login info req,yesno',
- wantgrid => '0,DX Grid Info,yesno',
+ wantgrid => '0,Show DX Grid,yesno',
wantann_talk => '0,Talklike Anns,yesno',
wantpc90 => '1,Req PC90,yesno',
- wantnp => '1,Req New Protocol,yesno',
+ wantnp => '1,Req New Proto,yesno',
wantpc16 => '9,Want Users from node,yesno',
wantsendpc16 => '9,Send PC16,yesno',
wantroutepc19 => '9,Route PC19,yesno',
- wantusstate => '9,Show US State,yesno',
+ wantusstate => '0,Show US State,yesno',
+ wantdxcq => '0,Show CQ Zone,yesno',
+ wantdxitu => '0,Show ITU Zone,yesno',
lastoper => '9,Last for/oper,cldatetime',
nothere => '0,Not Here Text',
registered => '9,Registered?,yesno',
return _want('usstate', @_);
}
+sub wantdxcq
+{
+ return _want('dxcq', @_);
+}
+
+sub wantdxitu
+{
+ return _want('dxitu', @_);
+}
+
sub wantlogininfo
{
my $self = shift;
dx1 => 'Frequency $_[0] not in band (see show/band); usage: DX [BY call] freq call comments',
dx2 => 'Need a callsign; usage: DX [BY call] freq call comments',
dx3 => 'The callsign or frequency is invalid',
+ dxcqs => 'DX CQ Zones enabled for $_[0]',
+ dxcqu => 'DX CQ Zones disabled for $_[0]',
+ dxitus => 'DX ITU Zones enabled for $_[0]',
+ dxituu => 'DX ITU Zones disabled for $_[0]',
dxs => 'DX Spots enabled for $_[0]',
dxu => 'DX Spots disabled for $_[0]',
e1 => 'Invalid command',