Added a txt directory for text versions of manuals
[spider.git] / txt / adminmanual.txt
1   The DXSpider Installation and Administration Manual
2   Ian Maude, G0VGS, (ianmaude@btinternet.com)
3   Version 1.28 January 2001
4
5   A reference for SysOps of the DXSpider DXCluster program.
6   ______________________________________________________________________
7
8   Table of Contents
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67   1. Installation (Original version by Iain Phillips, G0RDI)
68
69      1.1 Introduction
70      1.2 Preparation
71      1.3 Installing the software
72      1.4 Setting callsigns etc
73      1.5 Starting up for the first time
74
75   2. The Client program
76
77   3. Configuration
78
79      3.1 Allowing ax25 connects from users
80      3.2 Allowing telnet connects from users
81      3.3 Setting up node connects
82      3.4 Connection scripts
83      3.5 Starting the connection
84      3.6 Telnet echo
85
86   4. Automating things
87
88      4.1 Autostarting the cluster
89      4.2 The crontab file
90
91   5. Hop control
92
93      5.1 Basic hop control
94      5.2 Isolating networks
95
96   6. Filtering (Old Style upto v1.44)
97
98      6.1 Spots
99      6.2 Announcements
100      6.3 WWV
101
102   7. Filtering (New Style v1.45 and later)
103
104      7.1 General filter rules
105      7.2 Types of filter
106      7.3 Filter options
107      7.4 Default filters
108      7.5 Advanced filtering
109
110   8. Other filters
111
112      8.1 Filtering Mail
113      8.2 Filtering DX callouts
114      8.3 Filtering words from text fields in Announce, Talk and DX spots
115
116   9. Information, files and useful programs
117
118      9.1 MOTD
119      9.2 Downtime message
120      9.3 Other text messages
121      9.4 The Aliases file
122      9.5 Forward.pl
123      9.6 Distribution lists
124      9.7 Console.pl
125
126   10. CVS
127
128   11. The DXSpider command set
129
130      11.1 accept/announce (0)
131      11.2 accept/announce (extended for sysops) (8)
132      11.3 accept/spots (0)
133      11.4 accept/spots (extended for sysops) (8)
134      11.5 accept/wcy (0)
135      11.6 accept/wcy (extended for sysops) (8)
136      11.7 accept/wwv (0)
137      11.8 accept/wwv (extended for sysops) (8)
138      11.9 announce (0)
139      11.10 announce full (0)
140      11.11 announce sysop (5)
141      11.12 apropos (0)
142      11.13 bye (0)
143      11.14 catchup (5)
144      11.15 clear/spots (0)
145      11.16 connect (5)
146      11.17 dbavail (0)
147      11.18 dbcreate (9)
148      11.19 dbimport (9)
149      11.20 dbremove (9)
150      11.21 dbshow (0)
151      11.22 debug (9)
152      11.23 directory (0)
153      11.24 directory (extended for sysops) (5)
154      11.25 disconnect (8)
155      11.26 dx (0)
156      11.27 export (9)
157      11.28 export_users (9)
158      11.29 forward/latlong (8)
159      11.30 forward/opername (1)
160      11.31 help (0)
161      11.32 init (5)
162      11.33 kill (0)
163      11.34 kill (5)
164      11.35 kill full (5)
165      11.36 links (0)
166      11.37 load/aliases (9)
167      11.38 load/baddx (9)
168      11.39 load/badmsg (9)
169      11.40 load/badwords (9)
170      11.41 load/bands (9)
171      11.42 load/cmd_cache (9)
172      11.43 load/forward (9)
173      11.44 load/messages (9)
174      11.45 load/prefixes (9)
175      11.46 merge (5)
176      11.47 msg (9)
177      11.48 pc (8)
178      11.49 ping (1)
179      11.50 rcmd (1)
180      11.51 read (0)
181      11.52 read (extended for sysops) (5)
182      11.53 reject/announce
183      11.54 reject/announce (extended for sysops) (8)
184      11.55 reject/spots (0)
185      11.56 reject/spots (extended for sysops) (8)
186      11.57 reject/wcy (0)
187      11.58 reject/wcy (extended for sysops) (8)
188      11.59 reject/wwv (0)
189      11.60 reject/wwv (extended for sysops) (8)
190      11.61 reply (0)
191      11.62 send (0)
192      11.63 set/address (0)
193      11.64 set/announce (0)
194      11.65 set/arcluster (5)
195      11.66 set/badnode (6)
196      11.67 set/beep (0)
197      11.68 set/clx (5)
198      11.69 set/debug (9)
199      11.70 set/dx (0)
200      11.71 set/dxgrid (0)
201      11.72 set/dxnet (5)
202      11.73 set/echo (0)
203      11.74 set/here (0)
204      11.75 set/homenode (0)
205      11.76 set/hops (8)
206      11.77 set/isolate (9)
207      11.78 set/language (0)
208      11.79 set/location (0)
209      11.80 set/sys_location (9)
210      11.81 set/logininfo (0)
211      11.82 set/lockout (9)
212      11.83 set/name (0)
213      11.84 set/node (9)
214      11.85 set/obscount (9)
215      11.86 set/page (0)
216      11.87 set/password (9)
217      11.88 set/pinginterval (9)
218      11.89 set/privilege (9)
219      11.90 set/spider (5)
220      11.91 set/sys_qra (9)
221      11.92 set/qra (0)
222      11.93 set/qth (0)
223      11.94 set/talk (0)
224      11.95 set/wcy (0)
225      11.96 set/wwv (0)
226      11.97 set/wx (0)
227      11.98 show/badnode (6)
228      11.99 show/date (0)
229      11.100 show/dx (0)
230      11.101 show/dxcc (0)
231      11.102 show/files (0)
232      11.103 show/filter (0)
233      11.104 show/filter (extended for sysops) (5)
234      11.105 show/hops (8)
235      11.106 show/isolate (1)
236      11.107 show/lockout (9)
237      11.108 show/moon (0)
238      11.109 show/muf (0)
239      11.110 show/node (1)
240      11.111 show/prefix (0)
241      11.112 show/program (5)
242      11.113 show/qra (0)
243      11.114 show/qrz (0)
244      11.115 show/satellite (0)
245      11.116 show/sun (0)
246      11.117 show/time (0)
247      11.118 show/wcy (0)
248      11.119 show/wwv (0)
249      11.120 shutdown (5)
250      11.121 spoof (9)
251      11.122 stat/db (5)
252      11.123 stat/channel (5)
253      11.124 stat/msg (5)
254      11.125 stat/user (5)
255      11.126 sysop (0)
256      11.127 talk (0)
257      11.128 type (0)
258      11.129 who (0)
259      11.130 wx (0)
260      11.131 wx (enhanced for sysops) (5)
261
262
263   ______________________________________________________________________
264
265   1\b1.\b.  I\bIn\bns\bst\bta\bal\bll\bla\bat\bti\bio\bon\bn (\b(O\bOr\bri\big\bgi\bin\bna\bal\bl v\bve\ber\brs\bsi\bio\bon\bn b\bby\by I\bIa\bai\bin\bn P\bPh\bhi\bil\bll\bli\bip\bps\bs,\b, G\bG0\b0R\bRD\bDI\bI)\b)
266
267   Last modified: 02 January 2001 by Ian Maude, G0VGS
268
269
270   1\b1.\b.1\b1.\b.  I\bIn\bnt\btr\bro\bod\bdu\buc\bct\bti\bio\bon\bn
271
272   This section describes the installation of DX Spider v1.35 on a RedHat
273   Linux Distribution.  I do not intend to try and cover the installation
274   of Linux or the setup of the AX25 utilities.  If you need help on this
275   then read Iains original HOWTO on the DXSpider website.
276
277
278   I am assuming a general knowledge of Linux and its commands.  You
279   should know how to use _\bt_\ba_\br and how to edit files using your favourite
280   editor.
281
282
283   The crucial ingredient for all of this is Perl 5.004.  Now I know Perl
284   5.005 is out and this will almost certainly work with it, but RedHat
285   5.1 comes with 5.004.  _\bB_\be _\bW_\ba_\br_\bn_\be_\bd, earlier versions of RedHat d\bdo\bo n\bno\bot\bt
286   come with 5.004 as standard, you need to upgrade
287
288
289   In addition to the standard Red Hat distribution you will require the
290   following CPAN modules: -
291
292
293
294   +\bo  MD5-1.7.tar.gz
295
296   +\bo  Data-Dumper-2.10.tar.gz
297
298   +\bo  FreezeThaw-0.3.tar.gz
299
300   +\bo  MLDBM-2.00.tar.gz
301
302   +\bo  TimeDate-1.08.tar.gz
303
304   +\bo  IO-1.20.tar.gz
305
306   +\bo  Net-Telnet-3.02.tar.gz
307
308   +\bo  Curses-1.05.tar.gz
309
310   +\bo  Time-HiRes-01.20.tar.gz
311
312
313
314   _\bD_\bo get the latest versions of these packages and install them but use
315   the above list as the earliest versions usable.
316
317
318   1\b1.\b.2\b2.\b.  P\bPr\bre\bep\bpa\bar\bra\bat\bti\bio\bon\bn
319
320   I will assume that you have already downloaded the latest tarball of
321   the DXSpider software and are ready to install it. I am assuming
322   version 1.35 for this section but of course you would use the latest
323   version.
324
325
326   Login as root and create a user to run the cluster under.  _\bU_\bN_\bD_\bE_\bR _\bN_\bO
327   _\bC_\bI_\bR_\bC_\bU_\bM_\bS_\bT_\bA_\bN_\bC_\bE_\bS _\bU_\bS_\bE _\bR_\bO_\bO_\bT _\bA_\bS _\bT_\bH_\bI_\bS _\bU_\bS_\bE_\bR_\b!.  I am going to use the name
328   _\bs_\by_\bs_\bo_\bp.  You can call it anything you wish.  Depending on your security
329   requirements you may wish to use an existing user, however this is
330   your own choice.
331        # adduser -m sysop
332
333
334
335
336
337   Now set a password for the user ...
338
339
340
341        # passwd sysop
342        # New UNIX password:
343        # Retype new UNIX password:
344        passwd: all authentication tokens updated successfully
345
346
347
348
349
350   1\b1.\b.3\b3.\b.  I\bIn\bns\bst\bta\bal\bll\bli\bin\bng\bg t\bth\bhe\be s\bso\bof\bft\btw\bwa\bar\bre\be
351
352   Now to unpack the DX Spider distribution, set symbolic links and group
353   permissions.  Copy the tarball to /home/sysop and do the following.
354
355
356
357        # cd ~sysop
358        # tar xvfz spider-1.35.tar.gz
359        # ln -s ~sysop/spider /spider
360        # groupadd -g 251 spider       (or another number)
361
362
363
364
365   If you do not have the command _\bg_\br_\bo_\bu_\bp_\ba_\bd_\bd available to you simply add a
366   line in /etc/group by hand.
367
368
369
370        # vi /etc/group                (or your favorite editor)
371
372
373
374
375   You also need to add some others to the group, including your own
376   callsign (this will be used as an alias) and root.  The finished line
377   in /etc/group should look something like this
378
379   spider:x:251:sysop,g0vgs,root
380
381
382   The next step is to set the permissions on the Spider directory tree
383   and files ....
384
385
386
387        # chown -R sysop.spider spider
388        # find . -type d -exec chmod 2775 {} \;
389        # find . -type f -exec chmod 775 {} \;
390
391
392
393
394
395   This last step allows various users of the group _\bs_\bp_\bi_\bd_\be_\br to have write
396   access to all the directories.  This is not really needed just yet but
397   will be useful when web interfaces start to appear.
398
399
400   Finally, you need to fix the permissions on the ax25_call and
401   netrom_call programs.  Check where they are with the _\bl_\bo_\bc_\ba_\bt_\be command
402   and alter the permissions with the _\bc_\bh_\bm_\bo_\bd command like this ..
403
404
405
406        # chown root ax25_call netrom_call
407        # chmod 4775 ax25_call netrom_call
408
409
410
411
412
413   1\b1.\b.4\b4.\b.  S\bSe\bet\btt\bti\bin\bng\bg c\bca\bal\bll\bls\bsi\big\bgn\bns\bs e\bet\btc\bc
414
415   Now login to your machine as the user you created earlier.  In my case
416   that user is called _\bs_\by_\bs_\bo_\bp.  Once logged in, issue the following
417   commands ....
418
419
420
421        $ cd /spider
422        $ mkdir local
423        $ mkdir local_cmd
424        $ cp perl/DXVars.pm.issue local/DXVars.pm
425        $ cd local
426        $ vi DXVars.pm (or your favourite editor)
427
428
429
430
431
432   Using the distributed DXVars.pm as a a template, set your cluster
433   callsign, sysop callsign and other user info to suit your own
434   environment. Note that this a perl file which will be parsed and
435   executed as part of the cluster. If you get it wrong then perl will
436   complain when you start the cluster process.  It is important only to
437   alter the text of any section.  Some of the lines look a little odd.
438   Take this line for example ....
439
440   $myemail = "ianmaude\@btinternet.com";
441
442
443   There appears to be an extra slash in there.  However this has to be
444   there for the file to work so leave it in.
445
446
447   P\bPL\bLE\bEA\bAS\bSE\bE U\bUS\bSE\bE C\bCA\bAP\bPI\bIT\bTA\bAL\bL L\bLE\bET\bTT\bTE\bER\bRS\bS F\bFO\bOR\bR C\bCA\bAL\bLL\bLS\bSI\bIG\bGN\bNS\bS
448
449
450   DON'T alter the DXVars.pm (or any other file) in /spider/perl, they
451   are overwritten with every release. Any files or commands you place in
452   /spider/local or /spider/local_cmd will automagically be used in
453   preference to the ones in /spider/perl EVEN while the cluster is
454   running!
455
456
457   Save the new file and change directory to ../perl ....
458
459
460
461        $ cd ../perl
462
463   Now type the following command which creates the basic user file with
464   you as the sysop.
465
466
467
468        $ create_sysop.pl
469
470
471
472
473
474   1\b1.\b.5\b5.\b.  S\bSt\bta\bar\brt\bti\bin\bng\bg u\bup\bp f\bfo\bor\br t\bth\bhe\be f\bfi\bir\brs\bst\bt t\bti\bim\bme\be
475
476   We can now bring spider up for the first time and see if all is well
477   or not!  It should look something like this ...
478
479
480
481        $ cluster.pl
482        DXSpider DX Cluster Version 1.35
483        Copyright (c) 1998 Dirk Koopman G1TLH
484        loading prefixes ...
485        loading band data ...
486        loading user file system ...
487        starting listener ...
488        reading existing message headers
489        reading cron jobs
490        orft we jolly well go ...
491
492
493
494
495
496   If all is well then login on another term or console as _\bs_\by_\bs_\bo_\bp and cd
497   to /spider/perl.  Now issue the following command ...
498
499
500
501        $ client.pl
502
503
504
505
506
507   This should log you into the cluster as the sysop under the alias
508   callsign we set earlier.  In this case the callsign is G0VGS.  The
509   cluster callsign is set in the DXVars.pm file in /spider/local.  In
510   this case we will assume that this was set as GB7MBC.  You should
511   therefore see this when you login ....
512
513
514
515        G0VGS de GB7MBC 19-Nov-1999 2150Z >
516
517
518
519
520   If you do, congratulations!  If not, look over the instructions again,
521   you have probably missed something out.  You can shut spider down
522   again with the command ....
523
524
525
526        shutdown
527
528
529   and both the cluster and the client should return to Linux prompts.
530
531
532   2\b2.\b.  T\bTh\bhe\be C\bCl\bli\bie\ben\bnt\bt p\bpr\bro\bog\bgr\bra\bam\bm
533
534   In earlier versions of Spider, all the processes were Perl scripts.
535   This was fine but with a lot of users your computer memory would soon
536   be used up.  To combat this a new client was written in "C".  This
537   client only works for _\bi_\bn_\bc_\bo_\bm_\bi_\bn_\bg connects at the moment.  Before you can
538   use it though it has to be "made".  CD to /spider/src and type _\bm_\ba_\bk_\be.
539   You should see the output on your screen and hopefully now have a
540   small C program called _\bc_\bl_\bi_\be_\bn_\bt.  Leave it in this directory.
541
542
543   3\b3.\b.  C\bCo\bon\bnf\bfi\big\bgu\bur\bra\bat\bti\bio\bon\bn
544
545   3\b3.\b.1\b1.\b.  A\bAl\bll\blo\bow\bwi\bin\bng\bg a\bax\bx2\b25\b5 c\bco\bon\bnn\bne\bec\bct\bts\bs f\bfr\bro\bom\bm u\bus\bse\ber\brs\bs
546
547   As stated previously, the aim of this document is not to tell you how
548   to configure Linux or the ax25 utilities.  However, you do need to add
549   a line in your ax25d.conf to allow connections to DXSpider for your
550   users.  For each interface that you wish to allow connections on, use
551   the following format ...
552
553
554
555        default  * * * * * *  - sysop /spider/src/client client %u ax25
556
557
558
559
560
561   3\b3.\b.2\b2.\b.  A\bAl\bll\blo\bow\bwi\bin\bng\bg t\bte\bel\bln\bne\bet\bt c\bco\bon\bnn\bne\bec\bct\bts\bs f\bfr\bro\bom\bm u\bus\bse\ber\brs\bs
562
563   Allowing telnet connections is quite simple.  Firstly you need to add
564   a line in /etc/services to allow connections to a port number, like
565   this ....
566
567
568
569        spdlogin   8000/tcp     # spider anonymous login port
570
571
572
573
574   Then add a line in /etc/inetd.conf like this ....
575
576
577
578        spdlogin stream tcp nowait root /usr/sbin/tcpd /spider/src/client login telnet
579
580
581
582
583
584   This needs to be added above the standard services such as ftp, telnet
585   etc.  Once this is done, you need to restart inetd like this ....
586
587
588
589        killall -HUP inetd
590
591
592
593
594
595   Now login as _\bs_\by_\bs_\bo_\bp and cd spider/perl. You can test that spider is
596   accepting telnet logins by issuing the following command ....
597
598
599
600        client.pl login telnet
601
602
603
604
605   You should get a login prompt and on issuing a callsign, you will be
606   given access to the cluster.  Note, you will not get a password login.
607   There seems no good reason for a password prompt to be given so it is
608   not asked for.
609
610
611   Assuming all is well, then try a telnet from your linux console ....
612
613
614
615        telnet localhost 8000
616
617
618
619
620
621   You should now get the login prompt and be able to login as before.
622
623
624   3\b3.\b.3\b3.\b.  S\bSe\bet\btt\bti\bin\bng\bg u\bup\bp n\bno\bod\bde\be c\bco\bon\bnn\bne\bec\bct\bts\bs
625
626   In order to allow cluster node connections, spider needs to know that
627   the connecting callsign is a cluster node.  This is the case whether
628   the connect is incoming or outgoing.  In spider this is a simple task
629   and can be done in runtime.
630
631
632   Later versions of Spider can distinguish different software and treat
633   them differently.  For example, the WCY beacon cannot be handles by
634   AK1A type nodes as AK1A does not know what to do with PC73.  There are
635   4 different types of node at present and although they may not have
636   any major differences at the moment, it allows for compatibility.  The
637   4 types are ...
638
639
640
641        set/node        (AK1A type)
642        set/spider
643        set/dxnet
644        set/clx
645
646
647
648
649
650   For now, we will assume that the cluster we are going to connect to is
651   an AK1A type node.
652
653
654   Start up the cluster as you did before and login as the sysop with
655   client.pl.  The cluster node I am wanting to make a connection to is
656   GB7BAA but you would obviously use whatever callsign you required.  At
657   the prompt type ...
658
659
660
661   set/node gb7baa
662
663
664
665
666
667   The case does not matter as long as you have a version of DXSpider
668   later than 1.33.  Earlier versions required the callsign to be in
669   upper case.
670
671
672   That is now set, it is as simple as that.  To prove it, login on yet
673   another console as sysop and issue the command ...
674
675
676
677        client.pl gb7baa (using the callsign you set as a node)
678
679
680
681
682
683   You should get an initialisation string from DXSpider like this ...
684
685
686
687        client.pl gb7baa
688        PC38^GB7MBC^~
689
690
691
692
693   If the callsign you just set up as a cluster node is for an incoming
694   connect, this is all that needs to be done.  If the connection is to
695   be outgoing then a connection script needs to be written.
696
697
698   3\b3.\b.4\b4.\b.  C\bCo\bon\bnn\bne\bec\bct\bti\bio\bon\bn s\bsc\bcr\bri\bip\bpt\bts\bs
699
700   Because DXSpider operates under Linux, connections can be made using
701   just about any protocol;  AX25, NETRom, tcp/ip, ROSE etc are all
702   possible examples.  Connect scripts live in the /spider/connect
703   directory and are simple ascii files.  Writing a script for
704   connections is therefore relatively simple.
705
706
707   The connect scripts consist of lines which start with the following
708   keywords or symbols:-
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727   #               All lines starting with a # are ignored, as are completely
728                   blank lines.
729
730   timeout         timeout followed by a number is the number of seconds to wait for a
731                   command to complete. If there is no timeout specified in the script
732                   then the default is 60 seconds.
733
734   abort           abort is a regular expression containing one or more strings to look
735                   for to abort a connection. This is a perl regular expression and is
736                   executed ignoring case.
737
738   connect         connect followed by ax25 or telnet and some type dependent
739                   information. In the case of a telnet connection, there can be up to
740                   two parameters.
741                   The first is the ip address or hostname of the computer you wish to
742                   connect to and the second is the port number you want to use (this
743                   can be left out if it is a normal telnet session).
744                   In the case of an ax25 session then this would normally be a call to
745                   ax25_call or netrom_call as in the example above. It is your
746                   responsibility to get your node and other ax25 parameters to work
747                   before going down this route!
748
749   '               line in a chat type script. The words/phrases normally come in pairs,
750                   either can be empty. Each line reads input from the connection until
751                   it sees the string (or perl regular expression) contained in the
752                   left hand string. If the left hand string is empty then it doesn't
753                   read or wait for anything. The comparison is done ignoring case.
754                   When the left hand string has found what it is looking for (if it is)
755                   then the right hand string is sent to the connection.
756                   This process is repeated for every line of chat script.
757
758   client          client starts the connection, put the arguments you would want here
759                   if you were starting the client program manually. You only need this
760                   if the script has a different name to the callsign you are trying to
761                   connect to (i.e. you have a script called other which actually
762                   connects to GB7DJK-1 [instead of a script called gb7djk-1]).
763
764
765
766
767   There are many possible ways to configure the script but here are two
768   examples, one for a NETRom/AX25 connect and one for tcp/ip.
769
770
771
772        timeout 60
773        abort (Busy|Sorry|Fail)
774        # don't forget to chmod 4775 netrom_call!
775        connect ax25 /usr/sbin/netrom_call bbs gb7djk g1tlh
776        # you can leave this out if you call the script 'gb7dxm'
777        client gb7dxm ax25
778
779
780
781
782
783
784
785
786        timeout 15
787        connect telnet dirkl.tobit.co.uk
788        # tell GB7DJK-1 that it is connected to GB7DJK
789        # you can leave this out if you call this script 'gb7djk'
790        client gb7djk telnet
791
792
793   Both these examples assume that everything is set up properly at the
794   other end.  You will find other examples in the /spider/examples
795   directory.
796
797
798   3\b3.\b.5\b5.\b.  S\bSt\bta\bar\brt\bti\bin\bng\bg t\bth\bhe\be c\bco\bon\bnn\bne\bec\bct\bti\bio\bon\bn
799
800   You start the connection, from within a sysop enabled cluster login,
801   by typing in the word _\bc_\bo_\bn_\bn_\be_\bc_\bt followed by a script name like this ....
802
803
804
805        G0VGS de GB7MBC 13-Dec-1998 2041Z >connect gb7djk-1
806        connection to GB7DJK-1 started
807        G0VGS de GB7MBC 13-Dec-1998 2043Z >
808
809
810
811
812   This will start a connection using the script called _\bg_\bb_\b7_\bd_\bj_\bk_\b-_\b1.  You
813   can follow the connection by watching the term or console from where
814   you started _\bc_\bl_\bu_\bs_\bt_\be_\br_\b._\bp_\bl.  You should see something like this ...
815
816
817
818        <- D G1TLH connect gb7djk-1
819        -> D G1TLH connection to GB7DJK-1 started
820        -> D G1TLH G1TLH de GB7DJK 13-Dec-1998 2046Z >
821        timeout set to 15
822        CONNECT sort: telnet command: dirkl.tobit.co.uk
823        CHAT "login" -> "gb7djk"
824        received "
825        Red Hat Linux release 5.1 (Manhattan)
826        Kernel 2.0.35 on an i586
827        "
828        received "login: "
829        sent "gb7djk"
830        CHAT "word" -> "gb7djk"
831        received "gb7djk"
832        received "Password: "
833        sent "gb7djk"
834        Connected to GB7DJK-1, starting normal protocol
835        <- O GB7DJK-1 telnet
836        -> B GB7DJK-1 0
837        GB7DJK-1 channel func  state 0 -> init
838        <- D GB7DJK-1
839        <- D GB7DJK-1 Last login: Sun Dec 13 17:59:56 from dirk1
840        <- D GB7DJK-1 PC38^GB7DJK-1^~
841        <- D GB7DJK-1 PC18^ 1 nodes, 0 local / 1 total users  Max users 0  Uptime
842        0 00:00^5447^~
843            etc
844
845
846
847
848
849   With later versions of Spider there is a set/login command for users.
850   This tells them when a user or node logs in or out.  If you do not add
851   a line to your scripts after the final line (or before the client line
852   which should always be last if needed) then the login/logout
853   information will be sent to users _\bb_\be_\bf_\bo_\br_\be the login actually completes.
854   This means if a node is unreachable, it will continue sending logins
855   and logouts to users even though it is not actually connecting.  To
856   avoid this use the following line ...
857
858
859   In a script, this might look like ...
860
861
862
863        timeout 35
864        abort (Busy|Sorry|Fail)
865        connect telnet mary 3000
866
867
868
869
870
871   3\b3.\b.6\b6.\b.  T\bTe\bel\bln\bne\bet\bt e\bec\bch\bho\bo
872
873   Cluster links in particular suffer greatly from the presence of telnet
874   echo.  This is caused by the telnet negotiation itself and can create
875   at worst severe loops.  At best it creates unnecessary bandwidth and
876   large logfiles!  There are things that can be done to limit this
877   problem but will not always work dependent on the route taken to
878   connect.
879
880
881   Telnet echo itself should only be a problem if the connection is being
882   made to the telnet port (23).  This port uses special rules that
883   include echo negotiation.  If the connection is to a different port,
884   such as 8000, this negotiation does not happen and therefore no echo
885   should be present.
886
887
888   Sometimes it is not possible to make a direct connection to another
889   node and this can cause problems.  There is a way of trying to
890   suppress the telnet echo but this will not always work, unfortunately
891   it is difficult to be more specific.  Here is an example of what I
892   mean ...
893
894
895
896        timeout 35
897        abort (Busy|Sorry|Fail)
898        connect telnet mary.lancs.ac.uk
899
900
901
902
903   So, the first connection is made by Spider.  This is fine as Spider
904   uses the Net_Telnet script from within perl.  This actually uses TCP
905   rather than TELNET so no negotiation will be done on the first
906   connection.  Once connected to mary.lancs.ac.uk, the command is sent
907   to suppress echo.  Now a telnet is made to a cluster node that is
908   accepting connections on port 23.  The problem with this link is that
909   the negotiation is made by the remote machine, therefore you have no
910   control over it.  The chances are that this link will create echo and
911   there will be no way you can stop it.
912
913
914
915   4\b4.\b.  A\bAu\but\bto\bom\bma\bat\bti\bin\bng\bg t\bth\bhi\bin\bng\bgs\bs
916
917   Ok, you should now have DXSpider running nicely and allowing connects
918   by cluster nodes or users.  However, it has to be shutdown and
919   restarted manually and if connection scripts fail they have to be
920   started again manually too, not much use if you are not at the
921   console!  So, in this section we will automate both.  Firstly starting
922   the cluster.
923
924
925   4\b4.\b.1\b1.\b.  A\bAu\but\bto\bos\bst\bta\bar\brt\bti\bin\bng\bg t\bth\bhe\be c\bcl\blu\bus\bst\bte\ber\br
926
927   This is not only a way to start the cluster automatically, it also
928   works as a watchdog, checking the sanity of DXSpider and respawning it
929   should it crash for any reason.  Before doing the following, shutdown
930   the cluster as you did earlier.
931
932
933   Login as root and bring up the /etc/inittab file in your favourite
934   editor.  Add the following lines to the file near the end ...
935
936
937
938        ##Start DXSpider on bootup and respawn it should it crash
939        DX:3:respawn:/bin/su -c "/usr/bin/perl -w /spider/perl/cluster.pl" sysop >/dev/tty7
940
941
942
943
944
945   This will automatically start DXSpider on tty7 (ALT-F7) on bootup and
946   restart it should it crash for any reason.
947
948
949   As root type the command _\bt_\be_\bl_\bi_\bn_\bi_\bt _\bq.  DXSpider should start up
950   immediately.  You will see the output on tty7 and if you login as
951   _\bs_\by_\bs_\bo_\bp you should find everything running nicely.
952
953
954   So far so good, now to automate script connections...
955
956
957   4\b4.\b.2\b2.\b.  T\bTh\bhe\be c\bcr\bro\bon\bnt\bta\bab\bb f\bfi\bil\ble\be
958
959   Login as _\bs_\by_\bs_\bo_\bp and create a file in /spider/local_cmd called crontab.
960   Edit it with your favourite editor and add a line like this (I have
961   included a comment)
962
963
964
965        # check every 10 minutes to see if gb7xxx is connected and if not
966        # start a connect job going
967
968        0,10,20,30,40,50 * * * * start_connect('gb7xxx') if !connected('gb7xxx')
969
970
971
972
973
974   The callsign involved will be the callsign of the cluster node you are
975   going to connect to.  This will now check every 10 minutes to see if
976   gb7xxx is connected, if it is then nothing will be done.  If it is
977   not, then a connect attempt will be started.
978
979
980   There are probably lots of other things you could use this crontab
981   file for.  If you want to know more about it, look at the DXSpider
982   website at the cron page where it is explained more fully.
983
984
985   5\b5.\b.  H\bHo\bop\bp c\bco\bon\bnt\btr\bro\bol\bl
986
987   Starting with version 1.13 there is simple hop control available on a
988   per node basis. Also it is possible to isolate a network completely so
989   that you get all the benefits of being on that network, but can't pass
990   on information from it to any other networks you may be connected to
991   (or vice versa).
992
993
994   5\b5.\b.1\b1.\b.  B\bBa\bas\bsi\bic\bc h\bho\bop\bp c\bco\bon\bnt\btr\bro\bol\bl
995
996   In /spider/data you will find a file called hop_table.pl.  This is the
997   file that controls your hop count settings.  It has a set of default
998   hops on the various PC frames and also a set for each node you want to
999   alter the hops for.  You may be happy with the default settings of
1000   course, but this powerful tool can help to protect and improve the
1001   network.  The file will look something like this ...
1002
1003
1004
1005        #
1006        # hop table construction
1007        #
1008
1009        package DXProt;
1010
1011        # default hopcount to use
1012        $def_hopcount = 5;
1013
1014        # some variable hop counts based on message type
1015        %hopcount =
1016        (
1017         11 => 10,
1018         16 => 10,
1019         17 => 10,
1020         19 => 10,
1021         21 => 10,
1022        );
1023
1024
1025        # the per node hop control thingy
1026
1027
1028        %nodehops =
1029
1030         GB7ADX => {            11 => 8,
1031                                12 => 8,
1032                                16 => 8,
1033                                17 => 8,
1034                                19 => 8,
1035                                21 => 8,
1036                           },
1037
1038         GB7UDX => {            11 => 8,
1039                                12 => 8,
1040                                16 => 8,
1041                                17 => 8,
1042                                19 => 8,
1043                                21 => 8,
1044                           },
1045         GB7BAA => {
1046                                11 => 5,
1047                                12 => 8,
1048                                16 => 8,
1049                                17 => 8,
1050                                19 => 8,
1051                                21 => 8,
1052                           },
1053        };
1054
1055
1056
1057   Each set of hops is contained within a pair of curly braces and
1058   contains a series of PC frame types.  PC11 for example is a DX spot.
1059   The figures here are not exhaustive but should give you a good idea of
1060   how the file works.
1061
1062
1063   You can alter this file at any time, including whilst the cluster is
1064   running.  If you alter the file during runtime, the command _\bl_\bo_\ba_\bd_\b/_\bh_\bo_\bp_\bs
1065   will bring your changes into effect.
1066
1067
1068   5\b5.\b.2\b2.\b.  I\bIs\bso\bol\bla\bat\bti\bin\bng\bg n\bne\bet\btw\bwo\bor\brk\bks\bs
1069
1070   It is possible to isolate networks from each other on a "gateway" node
1071   using the _\bs_\be_\bt_\b/_\bi_\bs_\bo_\bl_\ba_\bt_\be _\b<_\bn_\bo_\bd_\be_\b__\bc_\ba_\bl_\bl_\b> command.
1072
1073
1074   The effect of this is to partition an isolated network completely from
1075   another nodes connected to your node. Your node will appear on and
1076   otherwise behave normally on every network to which you are connected,
1077   but data from an isolated network will not cross onto any other
1078   network or vice versa. However all the spot, announce and WWV traffic
1079   and personal messages will still be handled locally (because you are a
1080   real node on all connected networks), that is locally connected users
1081   will appear on all networks and will be able to access and receive
1082   information from all networks transparently.  All routed messages will
1083   be sent as normal, so if a user on one network knows that you are a
1084   gateway for another network, he can still still send a talk/announce
1085   etc message via your node and it will be routed across.
1086
1087
1088   The only limitation currently is that non-private messages cannot be
1089   passed down isolated links regardless of whether they are generated
1090   locally. This will change when the bulletin routing facility is added.
1091
1092
1093   If you use isolate on a node connection you will continue to receive
1094   all information from the isolated partner, however you will not pass
1095   any information back to the isolated node.  There are times when you
1096   would like to forward only spots across a link (maybe during a contest
1097   for example).  To do this, isolate the node in the normal way and put
1098   in a filter in the /spider/filter/spots directory to override the
1099   isolate.  This filter can be very simple and consists of just one line
1100   ....
1101
1102
1103
1104        $in = [
1105                [ 1, 0, 'd', 0, 3]      # The last figure (3) is the hop count
1106        ];
1107
1108
1109
1110
1111
1112   There is a lot more on filtering in the next section.
1113
1114
1115   6\b6.\b.  F\bFi\bil\blt\bte\ber\bri\bin\bng\bg (\b(O\bOl\bld\bd S\bSt\bty\byl\ble\be u\bup\bpt\bto\bo v\bv1\b1.\b.4\b44\b4)\b)
1116
1117   Filters can be set for spots, announcements and WWV.  You will find
1118   the directories for these under /spider/filter.  You will find some
1119   examples in the directories with the suffix _\b._\bi_\bs_\bs_\bu_\be.  There are two
1120   types of filter, one for incoming information and one for outgoing
1121   information.  Outgoing filters are in the form _\bC_\bA_\bL_\bL_\bS_\bI_\bG_\bN_\b._\bp_\bl and
1122   incoming filters are in the form _\bi_\bn_\b__\bC_\bA_\bL_\bL_\bS_\bI_\bG_\bN_\b._\bp_\bl.  Filters can be set
1123   for both nodes and users.
1124
1125
1126   All filters work in basically the same way.  There are several
1127   elements delimited by commas.  There can be many lines in the filter
1128   and they are read from the top by the program.  When writing a filter
1129   you need to think carefully about just what you want to achieve.  You
1130   are either going to write a filter to _\ba_\bc_\bc_\be_\bp_\bt or to _\br_\be_\bj_\be_\bc_\bt.  Think of a
1131   filter as having 2 main elements.  For a reject filter, you would have
1132   a line or multiple lines rejecting the things you do not wish to
1133   receive and then a default line accepting everything else that is not
1134   included in the filter.  Likewise, for an accept filter, you would
1135   have a line or multiple lines accepting the things you wish to receive
1136   and a default line rejecting everthing else.
1137
1138
1139   In the example below, a user requires a filter that would only return
1140   SSB spots posted in Europe on the HF bands.  This is achieved by first
1141   rejecting the CW section of each HF band and rejecting all of VHF, UHF
1142   etc based on frequency.  Secondly, a filter rule is set based on CQ
1143   zones to only accept spots posted in Europe.  Lastly, a default filter
1144   rule is set to reject anything outside the filter.
1145
1146
1147
1148        $in = [
1149                [ 0, 0, 'r', # reject all CW spots
1150                        [
1151                        1800.0, 1850.0,
1152                        3500.0, 3600.0,
1153                        7000.0, 7040.0,
1154                        14000.0, 14100.0,
1155                        18068.0, 18110.0,
1156                        21000.0, 21150.0,
1157                        24890.0, 24930.0,
1158                        28000.0, 28180.0,
1159                        30000.0, 49000000000.0,
1160                        ] ,1 ],
1161                [ 1, 11, 'n', [ 14, 15, 16, 20, 33, ], 15 ], #accept EU
1162                [ 0, 0, 'd', 0, 1 ], # 1 = want, 'd' = everything else
1163        ];
1164
1165
1166
1167
1168
1169   The actual elements of each filter are described more fully in the
1170   following sections.
1171
1172
1173   6\b6.\b.1\b1.\b.  S\bSp\bpo\bot\bts\bs
1174
1175   The elements of the Spot filter are ....
1176
1177
1178
1179        [action, field_no, sort, possible_values, hops]
1180
1181
1182
1183
1184
1185   There are 3 elements here to look at.  Firstly, the action element.
1186   This is very simple and only 2 possible states exist, accept (1) or
1187   drop (0).
1188
1189   The second element is the field_no.  There are 13 possiblities to
1190   choose from here ....
1191
1192
1193
1194              0 = frequency
1195              1 = call
1196              2 = date in unix format
1197              3 = comment
1198              4 = spotter
1199              5 = spotted dxcc country
1200              6 = spotter's dxcc country
1201              7 = origin
1202              8 = spotted itu
1203              9 = spotted cq
1204              10 = spotter's itu
1205              11 = spotter's cq
1206              12 = callsign of the channel on which the spot has appeared
1207
1208
1209
1210
1211
1212   The third element tells us what to expect in the fourth element.
1213   There are 4 possibilities ....
1214
1215
1216
1217             n - numeric list of numbers e.g. [ 1,2,3 ]
1218             r - ranges of pairs of numbers e.g. between 2 and 4 or 10 to 17 - [ 2,4, 10,17 ]
1219             a - an alphanumeric regex
1220             d - the default rule
1221
1222
1223
1224
1225
1226   The fifth element is simply the hops to set in this filter.  This
1227   would only be used if the filter was for a node of course and
1228   overrides the hop count in hop_table.pl.
1229
1230
1231   So, let's look at an example spot filter.  It does not matter in the
1232   example who the filter is to be used for.  So, what do we need in the
1233   filter?  We need to filter the spots the user/node requires and also
1234   set a default rule for anything else outside the filter.  Below is a
1235   simple filter that stops spots arriving from outside Europe.
1236
1237
1238
1239        $in = [
1240          [ 0, 4, 'a', '^(K|N|A|W|VE|VA|J)'],  # 0 = drop, 'a' = alphanumeric
1241          [ 1, 0, 'd', 0, 1 ],                 # 1 = want, 'd' = everything else
1242                             ];
1243
1244
1245
1246
1247
1248   So the filter is wrapped in between a pair of square brackets.  This
1249   tells Spider to look in between these limits.  Then each line is
1250   contained within its own square brackets and ends with a comma. Lets
1251   look carefully at the first line.  The first element is 0 (drop).
1252   Therefore anything we put on this line will not be accepted.  The next
1253   element is 4.  This means we are filtering by the spotter.  The third
1254   element is the letter "a" which tells the program to expect an
1255   alphanumeric expression in the fourth element.  The fourth element is
1256   a list of letters separated by the pipe symbol.
1257
1258
1259   What this line does is tell the program to drop any spots posted by
1260   anyone in the USA, Canada or Japan.
1261
1262
1263   The second line is the default rule for anything else.  The "d" tells
1264   us this and the line simply reads... accept anything else.
1265
1266
1267   You can add as many lines as you need to complete the filter but if
1268   there are several lines of the same type it is neater to enclose them
1269   all as one line.  An example of this is where specific bands are set.
1270   We could write this like this ....
1271
1272
1273
1274        [ 0,0,'r',[1800.0, 2000.0], 1],
1275        [ 0,0,'r',[10100.0, 10150.0], 1],
1276        [ 0,0,'r',[14000.0, 14350.0], 1],
1277        [ 0,0,'r',[18000.0, 18200.0], 1],
1278
1279
1280
1281
1282
1283   But the line below achieves the same thing and is more efficient ....
1284
1285
1286
1287          [ 0, 0, 'r',
1288            [
1289              1800.0, 2000.0,         # top band
1290              10100.0, 10150.0,       # WARC
1291              14000.0, 14350.0,       # 20m
1292              18000.0, 18200.0,       # WARC
1293            [ ,1 ],
1294
1295
1296
1297
1298
1299
1300   6\b6.\b.2\b2.\b.  A\bAn\bnn\bno\bou\bun\bnc\bce\bem\bme\ben\bnt\bts\bs
1301
1302
1303
1304
1305        # This is an example announce or filter allowing only West EU announces
1306        #
1307        # The element list is:-
1308        # 0 - callsign of announcer
1309        # 1 - destination * = all, <callsign> = routed to the node
1310        # 2 - text
1311        # 3 - * - sysop, <some text> - special list eg 6MUK, ' ', normal announce
1312        # 4 - origin
1313        # 5 - 0 - announce, 1 - wx
1314        # 6 - channel callsign (the interface from which this spot came)
1315
1316        $in = [
1317                [ 1, 0, 'a', '^(P[ABCDE]|DK0WCY|G|M|2|EI|F|ON)' ],
1318                [ 0, 0, 'd', 0 ]
1319        ];
1320
1321   In this example, only the prefixes listed will be allowed.  It is
1322   possible to be quite specific.  The Dutch prefix "P" is followed by
1323   several secondary identifiers which are allowed.  So, in the example,
1324   "PA" or "PE" would be ok but not "PG".  It is even possible to allow
1325   information from a single callsign.  In the example this is DK0WCY, to
1326   allow the posting of his Aurora Beacon.
1327
1328
1329   6\b6.\b.3\b3.\b.  W\bWW\bWV\bV
1330
1331
1332
1333
1334        # This is an example WWV filter
1335        #
1336        # The element list is:-
1337        # 0 - nominal unix date of spot (ie the day + hour:13)
1338        # 1 - the hour
1339        # 2 - SFI
1340        # 3 - K
1341        # 4 - I
1342        # 5 - text
1343        # 6 - spotter
1344        # 7 - origin
1345        # 8 - incoming interface callsign
1346
1347        # this one doesn't filter, it just sets the hop count to 6 and is
1348        # used mainly just to override any isolation from WWV coming from
1349        # the internet.
1350
1351        $in = [
1352                [ 1, 0, 'd', 0, 6 ]
1353        ];
1354
1355
1356
1357
1358
1359   It should be noted that the filter will start to be used only once a
1360   user/node has logged out and back in again.
1361
1362   I am not going to spend any more time on these filters now as they
1363   will become more "comprehensive" in the near future.
1364
1365
1366   7\b7.\b.  F\bFi\bil\blt\bte\ber\bri\bin\bng\bg (\b(N\bNe\bew\bw S\bSt\bty\byl\ble\be v\bv1\b1.\b.4\b45\b5 a\ban\bnd\bd l\bla\bat\bte\ber\br)\b)
1367
1368   7\b7.\b.1\b1.\b.  G\bGe\ben\bne\ber\bra\bal\bl f\bfi\bil\blt\bte\ber\br r\bru\bul\ble\bes\bs
1369
1370   Upto v1.44 it was not possible for the user to set their own filters.
1371   From v1.45 though that has all changed.  It is now possible to set
1372   filters for just about anything you wish.  If you have just updated
1373   from an older version of DXSpider you will need to update your new
1374   filters.  You do not need to do anything with your old filters, they
1375   will be renamed as you update.
1376
1377
1378   There are 3 basic commands involved in setting and manipulating
1379   filters.  These are _\ba_\bc_\bc_\be_\bp_\bt, _\br_\be_\bj_\be_\bc_\bt and _\bc_\bl_\be_\ba_\br.  First we will look
1380   generally at filtering. There are a number of things you can filter in
1381   the DXSpider system. They all use the same general mechanism.
1382
1383
1384   In general terms you can create a 'reject' or an 'accept' filter which
1385   can have up to 10 lines in it. You do this using, for example ...
1386
1387        accept/spots .....
1388        reject/spots .....
1389
1390
1391
1392
1393   where ..... are the specific commands for that type of filter. There
1394   are filters for spots, wwv, announce, wcy and (for sysops) connects.
1395   See each different accept or reject command reference for more
1396   details.
1397
1398   There is also a command to clear out one or more lines in a filter.
1399   They are ...
1400
1401
1402
1403        clear/spots 1
1404        clear/spots all
1405
1406
1407
1408
1409   There is clear/xxxx command for each type of filter.
1410
1411
1412   and you can check that your filters have worked by the command ...
1413
1414
1415
1416
1417        show/filter
1418
1419
1420
1421
1422
1423   For now we are going to use spots for the examples, but you can apply
1424   the same principles to all types of filter.
1425
1426
1427   7\b7.\b.2\b2.\b.  T\bTy\byp\bpe\bes\bs o\bof\bf f\bfi\bil\blt\bte\ber\br
1428
1429   There are two main types of filter, _\ba_\bc_\bc_\be_\bp_\bt or _\br_\be_\bj_\be_\bc_\bt.  You can use
1430   either to achieve the result you want dependent on your own preference
1431   and which is more simple to do.  It is pointless writing 8 lines of
1432   reject filters when 1 accept filter would do the same thing!  Each
1433   filter has 10 lines (of any length) which are tried in order.  If a
1434   line matches then the action you have specified is taken (ie reject
1435   means ignore it and accept means take it)
1436
1437
1438   If you specify reject filters, then any lines that arrive that match
1439   the filter will be dumped but all else will be accepted.  If you use
1440   an accept filter, then ONLY the lines in the filter will be accepted
1441   and all else will be dumped.  For example if you have a single line
1442   _\ba_\bc_\bc_\be_\bp_\bt filter ...
1443
1444
1445
1446        accept/spots on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
1447
1448
1449
1450
1451   then you will _\bO_\bN_\bL_\bY get VHF spots _\bf_\br_\bo_\bm or _\bt_\bo CQ zones 14, 15 and 16.
1452
1453   If you set a reject filter like this ...
1454
1455
1456
1457        reject/spots on hf/cw
1458
1459
1460
1461
1462   Then you will get everything _\bE_\bX_\bC_\bE_\bP_\bT HF CW spots.  You could make this
1463   single filter even more flexible.  For example, if you are interested
1464   in IOTA and will work it even on CW even though normally you are not
1465   interested in CW, then you could say ...
1466
1467
1468
1469        reject/spots on hf/cw and not info iota
1470
1471
1472
1473
1474   But in that case you might only be interested in iota and say:-
1475
1476
1477
1478        accept/spots not on hf/cw or info iota
1479
1480
1481
1482
1483   which achieves exactly the same thing. You should choose one or the
1484   other until you are comfortable with the way it works. You can mix
1485   them if you wish (actually you can have an accept AND a reject on the
1486   same line) but don't attempt this until you are sure you know what you
1487   are doing!
1488
1489
1490   You can arrange your filter lines into logical units, either for your
1491   own understanding or simply convenience. Here is an example ...
1492
1493
1494
1495        reject/spots 1 on hf/cw
1496        reject/spots 2 on 50000/1400000 not (by_zone 14,15,16 or call_zone 14,15,16)
1497
1498
1499
1500
1501   What this does is to ignore all HF CW spots and also rejects any spots
1502   on VHF which don't either originate or spot someone in Europe.
1503
1504
1505   This is an example where you would use a line number (1 and 2 in this
1506   case), if you leave the digit out, the system assumes '1'. Digits
1507   '0'-'9' are available.  This make it easier to see just what filters
1508   you have set.  It also makes it more simple to remove individual
1509   filters, during a contest for example.
1510
1511
1512   You will notice in the above example that the second line has
1513   brackets.  Look at the line logically.  You can see there are 2
1514   separate sections to it.  We are saying reject spots that are VHF or
1515   above _\bA_\bP_\bA_\bR_\bT from those in zones 14, 15 and 16 (either spotted there or
1516   originated there).  If you did not have the brackets to separate the 2
1517   sections, then Spider would read it logically from the front and see a
1518   different expression entirely ...
1519        (on 50000/1400000 and by_zone 14,15,16) or call_zone 14,15,16
1520
1521
1522
1523
1524   The simple way to remember this is, if you use OR - use brackets.
1525   Whilst we are here CASE is not important. 'And BY_Zone' is just the
1526   same as 'and by_zone'.
1527
1528   As mentioned earlier, setting several filters can be more flexible
1529   than simply setting one complex one.  Doing it in this way means that
1530   if you want to alter your filter you can just redefine or remove one
1531   or more lines of it or one line. For example ...
1532
1533
1534
1535        reject/spots 1 on hf/ssb
1536
1537
1538
1539
1540   would redefine our earlier example, or
1541
1542
1543
1544        clear/spots 1
1545
1546
1547
1548
1549   To remove all the filter lines in the spot filter ...
1550
1551
1552
1553        clear/spots all
1554
1555
1556
1557
1558
1559   7\b7.\b.3\b3.\b.  F\bFi\bil\blt\bte\ber\br o\bop\bpt\bti\bio\bon\bns\bs
1560
1561   You can filter in several different ways.  The options are listed in
1562   the various helpfiles for accept, reject and filter.
1563
1564
1565   7\b7.\b.4\b4.\b.  D\bDe\bef\bfa\bau\bul\blt\bt f\bfi\bil\blt\bte\ber\brs\bs
1566
1567   Sometimes all that is needed is a general rule for node connects.
1568   This can be done with a node_default filter.  This rule will always be
1569   followed, even if the link is isolated, unless another filter is set
1570   specifically.  Default rules can be set for nodes and users.  They can
1571   be set for spots, announces, WWV and WCY.  They can also be used for
1572   hops.  An example might look like this ...
1573
1574
1575
1576        accept/spot node_default by_zone 14,15,16,20,33
1577        set/hops node_default spot 50
1578
1579
1580
1581
1582   This filter is for spots only, you could set others for announce, WWV
1583   and WCY.  This filter would work for ALL nodes unless a specific
1584   filter is written to override it for a particular node.  You can also
1585   set a user_default should you require.  It is important to note that
1586   default filters should be considered to be "connected".  By this I
1587   mean that should you override the default filter for spots, you need
1588   to add a rule for the hops for spots also.
1589
1590
1591   7\b7.\b.5\b5.\b.  A\bAd\bdv\bva\ban\bnc\bce\bed\bd f\bfi\bil\blt\bte\ber\bri\bin\bng\bg
1592
1593   Once you are happy with the results you get, you may like to
1594   experiment.
1595
1596
1597   The previous example that filters hf/cw spots and accepts vhf/uhf
1598   spots from EU can be written with a mixed filter, for example ...
1599
1600
1601
1602        rej/spot on hf/cw
1603        acc/spot on 0/30000
1604        acc/spot 2 on 50000/1400000 and (by_zone 14,15,16 or call_zone 14,15,16)
1605
1606
1607
1608
1609   Note that the first filter has not been specified with a number.  This
1610   will automatically be assumed to be number 1.  In this case, we have
1611   said _\br_\be_\bj_\be_\bc_\bt _\ba_\bl_\bl _\bH_\bF _\bs_\bp_\bo_\bt_\bs _\bi_\bn _\bt_\bh_\be _\bC_\bW _\bs_\be_\bc_\bt_\bi_\bo_\bn _\bo_\bf _\bt_\bh_\be _\bb_\ba_\bn_\bd_\bs _\bb_\bu_\bt _\ba_\bc_\bc_\be_\bp_\bt _\ba_\bl_\bl
1612   _\bo_\bt_\bh_\be_\br_\bs _\ba_\bt _\bH_\bF_\b.  _\bA_\bl_\bs_\bo _\ba_\bc_\bc_\be_\bp_\bt _\ba_\bn_\by_\bt_\bh_\bi_\bn_\bg _\bi_\bn _\bV_\bH_\bF _\ba_\bn_\bd _\ba_\bb_\bo_\bv_\be _\bs_\bp_\bo_\bt_\bt_\be_\bd _\bi_\bn _\bo_\br _\bb_\by
1613   _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\bs _\bi_\bn _\bt_\bh_\be _\bz_\bo_\bn_\be_\bs _\b1_\b4_\b, _\b1_\b5 _\ba_\bn_\bd _\b1_\b6.  Each filter slot actually has a
1614   'reject' slot and an 'accept' slot. The reject slot is executed BEFORE
1615   the accept slot.
1616
1617
1618   It was mentioned earlier that after a reject test that doesn't match,
1619   the default for following tests is 'accept', the reverse is true for
1620   'accept'. In the example what happens is that the reject is executed
1621   first, any non hf/cw spot is passed to the accept line, which lets
1622   through everything else on HF.  The next filter line lets through just
1623   VHF/UHF spots from EU.
1624
1625
1626
1627   8\b8.\b.  O\bOt\bth\bhe\ber\br f\bfi\bil\blt\bte\ber\brs\bs
1628
1629   8\b8.\b.1\b1.\b.  F\bFi\bil\blt\bte\ber\bri\bin\bng\bg M\bMa\bai\bil\bl
1630
1631   In the /spider/msg directory you will find a file called
1632   badmsg.pl.issue.  Rename this to badmsg.pl and edit the file.  The
1633   original looks something like this ....
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651   # the list of regexes for messages that we won't store having
1652   # received them (bear in mind that we must receive them fully before
1653   # we can bin them)
1654
1655
1656   # The format of each line is as follows
1657
1658   #     type      source             pattern
1659   #     P/B/F     T/F/O/S            regex
1660
1661   # type: P - private, B - bulletin (msg), F - file (ak1a bull)
1662   # source: T - to field, F - from field,  O - origin, S - subject
1663   # pattern: a perl regex on the field requested
1664
1665   # Currently only type B and P msgs are affected by this code.
1666   #
1667   # The list is read from the top down, the first pattern that matches
1668   # causes the action to be taken.
1669
1670   # The pattern can be undef or 0 in which case it will always be selected
1671   # for the action specified
1672
1673
1674
1675   package DXMsg;
1676
1677   @badmsg = (
1678   );
1679
1680
1681
1682
1683
1684   I think this is fairly self explanatory.  It is simply a list of
1685   subject headers that we do not want to pass on to either the users of
1686   the cluster or the other cluster nodes that we are linked to.  This is
1687   usually because of rules and regulations pertaining to items for sale
1688   etc in a particular country.
1689
1690
1691   8\b8.\b.2\b2.\b.  F\bFi\bil\blt\bte\ber\bri\bin\bng\bg D\bDX\bX c\bca\bal\bll\blo\bou\but\bts\bs
1692
1693   In the same way as mail, there are some types of spot we do not wish
1694   to pass on to users or linked cluster nodes.  In the /spider/data
1695   directory you will find a file called baddx.pl.issue.  Rename this to
1696   baddx.pl and edit the file.  The original looks like this ....
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717   # the list of dx spot addresses that we don't store and don't pass on
1718
1719
1720   package DXProt;
1721
1722   @baddx = qw
1723
1724    FROG
1725    SALE
1726    FORSALE
1727    WANTED
1728    P1RATE
1729    PIRATE
1730    TEST
1731    DXTEST
1732    NIL
1733    NOCALL
1734   );
1735
1736
1737
1738
1739
1740   Again, this is simply a list of names we do not want to see in the
1741   spotted field of a DX callout.
1742
1743
1744
1745   8\b8.\b.3\b3.\b.  F\bFi\bil\blt\bte\ber\bri\bin\bng\bg w\bwo\bor\brd\bds\bs f\bfr\bro\bom\bm t\bte\bex\bxt\bt f\bfi\bie\bel\bld\bds\bs i\bin\bn A\bAn\bnn\bno\bou\bun\bnc\bce\be,\b, T\bTa\bal\blk\bk a\ban\bnd\bd D\bDX\bX s\bsp\bpo\bot\bts\bs
1746
1747   Create a file in /spider/data called _\bb_\ba_\bd_\bw_\bo_\br_\bd_\bs.  The format is quite
1748   simple.  Lines beginning with # are ignored so comments can be added.
1749   An example file is below ...
1750
1751
1752
1753        # Below is a list of words we do not wish to see on the cluster
1754        grunge grunged grunging
1755        splodge splodger splodging
1756        grince
1757        fluffle
1758
1759
1760
1761
1762   Multiple words can be used on the same line as shown.  Obviously these
1763   are just examples :-)
1764
1765
1766   You can reload the file from the cluster prompt as sysop with
1767   load/badwords.
1768
1769
1770   9\b9.\b.  I\bIn\bnf\bfo\bor\brm\bma\bat\bti\bio\bon\bn,\b, f\bfi\bil\ble\bes\bs a\ban\bnd\bd u\bus\bse\bef\bfu\bul\bl p\bpr\bro\bog\bgr\bra\bam\bms\bs
1771
1772   9\b9.\b.1\b1.\b.  M\bMO\bOT\bTD\bD
1773
1774   One of the more important things a cluster sysop needs to do is to get
1775   information to his users.  The simplest way to do this is to have a
1776   banner that is sent to the user on login.  This is know as a "message
1777   of the day" or "motd".  To set this up, simply create a file in
1778   /spider/data called motd and edit it to say whatever you want.  It is
1779   purely a text file and will be sent automatically to anyone logging in
1780   to the cluster.
1781
1782
1783   9\b9.\b.2\b2.\b.  D\bDo\bow\bwn\bnt\bti\bim\bme\be m\bme\bes\bss\bsa\bag\bge\be
1784
1785   If for any reason the cluster is down, maybe for upgrade or
1786   maintenance but the machine is still running, a message can be sent to
1787   the user advising them of the fact.  This message lives in the
1788   /spider/data directory and is called "offline".  Simply create the
1789   file and edit it to say whatever you wish.  This file will be sent to
1790   a user attempting to log into the cluster when DXSpider is not
1791   actually running.
1792
1793
1794   9\b9.\b.3\b3.\b.  O\bOt\bth\bhe\ber\br t\bte\bex\bxt\bt m\bme\bes\bss\bsa\bag\bge\bes\bs
1795
1796   You can set other text messages to be read by the user if they input
1797   the file name.  This could be for news items or maybe information for
1798   new users.  To set this up, make a directory under /spider called
1799   _\bp_\ba_\bc_\bk_\bc_\bl_\bu_\bs.  Under this directory you can create files called _\bn_\be_\bw_\bs or
1800   _\bn_\be_\bw_\bu_\bs_\be_\br for example.  In fact you can create files with any names you
1801   like.  These can be listed by the user with the command ....
1802
1803
1804
1805        show/files
1806
1807
1808
1809
1810   They can be read by the user by typing the command ....
1811
1812
1813
1814        type news
1815
1816
1817
1818
1819   If the file they want to read is called _\bn_\be_\bw_\bs.  You could also set an
1820   alias for this in the Alias file to allow them just to type _\bn_\be_\bw_\bs
1821
1822
1823   You can also store other information in this directory, either
1824   directly or nested under directories.  One use for this would be to
1825   store DX bulletins such as the OPDX bulletins.  These can be listed
1826   and read by the user.  To keep things tidy, make a directory under
1827   /spider/packclus called _\bb_\bu_\bl_\bl_\be_\bt_\bi_\bn_\bs.  Now copy any OPDX or similar
1828   bulletins into it.  These can be listed by the user in the same way as
1829   above using the _\bs_\bh_\bo_\bw_\b/_\bf_\bi_\bl_\be_\bs command with an extension for the bulletins
1830   directory you have just created, like this ....
1831
1832
1833
1834        show/files bulletins
1835
1836
1837
1838
1839
1840   An example would look like this ....
1841
1842
1843
1844        sh/files
1845        bulletins      DIR 20-Dec-1999 1715Z news          1602 14-Dec-1999 1330Z
1846
1847
1848
1849   You can see that in the files area (basically the packclus directory)
1850   there is a file called _\bn_\be_\bw_\bs and a directory called _\bb_\bu_\bl_\bl_\be_\bt_\bi_\bn_\bs.  You can
1851   also see that dates they were created.  In the case of the file _\bn_\be_\bw_\bs,
1852   you can also see the time it was last modified, a good clue as to
1853   whether the file has been updated since you last read it.  To read the
1854   file called _\bn_\be_\bw_\bs you would simply issue the command ....
1855
1856
1857
1858        type news
1859
1860
1861
1862
1863   To look what is in the bulletins directory you issue the command ....
1864
1865
1866
1867        show/files bulletins
1868        opdx390      21381 29-Nov-1999 1621Z opdx390.1     1670 29-Nov-1999 1621Z
1869        opdx390.2     2193 29-Nov-1999 1621Z opdx391      25045 29-Nov-1999 1621Z
1870        opdx392      35969 29-Nov-1999 1621Z opdx393      15023 29-Nov-1999 1621Z
1871        opdx394      33429 29-Nov-1999 1621Z opdx394.1     3116 29-Nov-1999 1621Z
1872        opdx395      24319 29-Nov-1999 1621Z opdx396      32647 29-Nov-1999 1621Z
1873        opdx396.1     5537 29-Nov-1999 1621Z opdx396.2     6242 29-Nov-1999 1621Z
1874        opdx397      18433 29-Nov-1999 1621Z opdx398      19961 29-Nov-1999 1621Z
1875        opdx399      17719 29-Nov-1999 1621Z opdx400      19600 29-Nov-1999 1621Z
1876        opdx401      27738 29-Nov-1999 1621Z opdx402      18698 29-Nov-1999 1621Z
1877        opdx403      24994 29-Nov-1999 1621Z opdx404      15685 29-Nov-1999 1621Z
1878        opdx405      13984 29-Nov-1999 1621Z opdx405.1     4166 29-Nov-1999 1621Z
1879        opdx406      28934 29-Nov-1999 1621Z opdx407      24153 29-Nov-1999 1621Z
1880        opdx408      15081 29-Nov-1999 1621Z opdx409      23234 29-Nov-1999 1621Z
1881        Press Enter to continue, A to abort (16 lines) >
1882
1883
1884
1885
1886   You can now read any file in this directory using the type command,
1887   like this ....
1888
1889
1890
1891        type bulletins/opdx391
1892        Ohio/Penn DX Bulletin No. 391
1893        The Ohio/Penn Dx PacketCluster
1894        DX Bulletin No. 391
1895        BID: $OPDX.391
1896        January 11, 1999
1897        Editor Tedd Mirgliotta, KB8NW
1898        Provided by BARF-80 BBS Cleveland, Ohio
1899        Online at 440-237-8208 28.8k-1200 Baud 8/N/1 (New Area Code!)
1900        Thanks to the Northern Ohio Amateur Radio Society, Northern Ohio DX
1901        Association, Ohio/Penn PacketCluster Network, K1XN & Golist, WB2RAJ/WB2YQH
1902        & The 59(9) DXReport, W3UR & The Daily DX, K3TEJ, KN4UG, W4DC, NC6J, N6HR,
1903        Press Enter to continue, A to abort (508 lines) >
1904
1905
1906
1907
1908   The page length will of course depend on what you have it set to!
1909
1910
1911   9\b9.\b.4\b4.\b.  T\bTh\bhe\be A\bAl\bli\bia\bas\bse\bes\bs f\bfi\bil\ble\be
1912
1913   You will find a file in /spider/cmd/ called Aliases.  First, copy this
1914   file to /spider/local_cmd/Aliases and edit this file.  You will see
1915   something like this ...
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981   #!/usr/bin/perl
1982
1983   # provide some standard aliases for commands for terminally
1984   # helpless ak1a user (helpless in the sense that they never
1985   # read nor understand help files)
1986
1987   # This file is automagically reloaded if its modification time is
1988   # later than the one stored in CmdAlias.pm
1989
1990   # PLEASE make this file consistant with reality! (the patterns MUST
1991   # match the filenames!)
1992
1993   # Don't alter this file, copy it into the local_cmd tree and modify it.
1994   # This file will be replaced everytime I issue a new release.
1995
1996   # You only need to put aliases in here for commands that don't work as
1997   # you desire naturally, e.g sh/dx on its own just works as you expect
1998   # so you need not add it as an alias.
1999
2000
2001
2002   package CmdAlias;
2003
2004   %alias = (
2005       '?' => [
2006             '^\?', 'apropos', 'apropos',
2007           ],
2008       'a' => [
2009             '^ann.*/full', 'announce full', 'announce',
2010             '^ann.*/sysop', 'announce sysop', 'announce',
2011             '^ann.*/(.*)$', 'announce $1', 'announce',
2012           ],
2013           'b' => [
2014           ],
2015           'c' => [
2016           ],
2017           'd' => [
2018             '^del', 'kill', 'kill',
2019             '^del\w*/fu', 'kill full', 'kill',
2020             '^di\w*/a\w*', 'directory all', 'directory',
2021             '^di\w*/b\w*', 'directory bulletins', 'directory',
2022             '^di\w*/n\w*', 'directory new', 'directory',
2023             '^di\w*/o\w*', 'directory own', 'directory',
2024             '^di\w*/s\w*', 'directory subject', 'directory',
2025             '^di\w*/t\w*', 'directory to', 'directory',
2026             '^di\w*/f\w*', 'directory from', 'directory',
2027             '^di\w*/(\d+)', 'directory $1', 'directory',
2028           ],
2029           'e' => [
2030           ],
2031           'f' => [
2032           ],
2033           'g' => [
2034           ],
2035           'h' => [
2036           ],
2037           'i' => [
2038           ],
2039           'j' => [
2040           ],
2041           'k' => [
2042           ],
2043           'l' => [
2044             '^l$', 'directory', 'directory',
2045             '^ll$', 'directory', 'directory',
2046             '^ll/(\d+)', 'directory $1', 'directory',
2047           ],
2048           'm' => [
2049           ],
2050           'n' => [
2051             '^news', 'type news', 'type',
2052           ],
2053           'o' => [
2054           ],
2055           'p' => [
2056           ],
2057           'q' => [
2058             '^q', 'bye', 'bye',
2059           ],
2060           'r' => [
2061             '^r$', 'read', 'read',
2062             '^rcmd/(\S+)', 'rcmd $1', 'rcmd',
2063           ],
2064           's' => [
2065             '^s/p$', 'send', 'send',
2066             '^sb$', 'send noprivate', 'send',
2067             '^set/home$', 'set/homenode', 'set/homenode',
2068             '^set/nobe', 'unset/beep', 'unset/beep',
2069             '^set/nohe', 'unset/here', 'unset/here',
2070             '^set/noan', 'unset/announce', 'unset/announce',
2071             '^set/nodx', 'unset/dx', 'unset/dx',
2072             '^set/nota', 'unset/talk', 'unset/talk',
2073             '^set/noww', 'unset/wwv', 'unset/wwv',
2074             '^set/nowx', 'unset/wx', 'unset/wx',
2075             '^sh$', 'show', 'show',
2076             '^sh\w*/buck', 'dbshow buck', 'dbshow',
2077             '^sh\w*/bu', 'show/files bulletins', 'show/files',
2078             '^sh\w*/c/n', 'show/configuration nodes', 'show/configuration',
2079             '^sh\w*/c$', 'show/configuration', 'show/configuration',
2080             '^sh\w*/com', 'dbavail', 'dbavail',
2081             '^sh\w*/dx/(\d+)-(\d+)', 'show/dx $1-$2', 'show/dx',
2082             '^sh\w*/dx/(\d+)', 'show/dx $1', 'show/dx',
2083             '^sh\w*/dx/d(\d+)', 'show/dx from $1', 'show/dx',
2084             '^sh\w*/email', 'dbshow email', 'dbshow',
2085             '^sh\w*/hftest', 'dbshow hftest', 'dbshow',
2086             '^sh\w*/vhftest', 'dbshow vhftest', 'dbshow',
2087             '^sh\w*/qsl', 'dbshow qsl', 'dbshow',
2088             '^sh\w*/tnc', 'who', 'who',
2089             '^sh\w*/up', 'show/cluster', 'show/cluster',
2090             '^sh\w*/w\w*/(\d+)-(\d+)', 'show/wwv $1-$2', 'show/wwv',
2091             '^sh\w*/w\w*/(\d+)', 'show/wwv $1', 'show/wwv',
2092             '^sp$', 'send', 'send',
2093
2094       ],
2095           't' => [
2096             '^ta$', 'talk', 'talk',
2097             '^t$', 'talk', 'talk',
2098           ],
2099           'u' => [
2100           ],
2101           'v' => [
2102           ],
2103           'w' => [
2104             '^wx/full', 'wx full', 'wx',
2105             '^wx/sysop', 'wx sysop', 'wx',
2106           ],
2107           'x' => [
2108           ],
2109           'y' => [
2110           ],
2111           'z' => [
2112           ],
2113   )
2114
2115
2116
2117
2118   You can create aliases for commands at will.  Beware though, these may
2119   not always turn out as you think.  Care is needed and you need to test
2120   the results once you have set an alias.
2121
2122
2123   9\b9.\b.5\b5.\b.  F\bFo\bor\brw\bwa\bar\brd\bd.\b.p\bpl\bl
2124
2125   DXSpider receives all and any mail sent to it without any alterations
2126   needed in files.  Because personal and bulletin mail are treated
2127   differently, there is no need for a list of accepted bulletin
2128   addresses.  It is necessary, however, to tell the program which links
2129   accept which bulletins.  For example, it is pointless sending
2130   bulletins addresses to "UK" to any links other than UK ones.  The file
2131   that does this is called forward.pl and lives in /spider/msg.  At
2132   default, like other spider files it is named forward.pl.issue.  Rename
2133   it to forward.pl and edit the file to match your requirements.  The
2134   format is below ...
2135
2136
2137
2138        #
2139        # this is an example message forwarding file for the system
2140        #
2141        # The format of each line is as follows
2142        #
2143        #     type    to/from/at pattern action  destinations
2144        #     P/B/F     T/F/A     regex   I/F    [ call [, call ...] ]
2145        #
2146        # type: P - private, B - bulletin (msg), F - file (ak1a bull)
2147        # to/from/at: T - to field, F - from field, A - home bbs, O - origin
2148        # pattern: a perl regex on the field requested
2149        # action: I - ignore, F - forward
2150        # destinations: a reference to an array containing node callsigns
2151        #
2152        # if it is non-private and isn't in here then it won't get forwarded
2153        #
2154        # Currently only type B msgs are affected by this code.
2155        #
2156        # The list is read from the top down, the first pattern that matches
2157        # causes the action to be taken.
2158        #
2159        # The pattern can be undef or 0 in which case it will always be selected
2160        # for the action specified
2161        #
2162        # If the BBS list is undef or 0 and the action is 'F' (and it matches the
2163        # pattern) then it will always be forwarded to every node that doesn't have
2164        # it (I strongly recommend you don't use this unless you REALLY mean it, if
2165        # you allow a new link with this on EVERY bull will be forwarded immediately
2166        # on first connection)
2167        #
2168
2169        package DXMsg;
2170
2171        @forward = (
2172        );
2173
2174
2175
2176
2177   Simply insert a bulletin address and state in the brackets where you
2178   wish that mail to go.  For example, you can see here that mail sent to
2179   "UK" will only be sent to the UK links and not to PA4AB-14.
2180
2181
2182   To force the cluster to reread the file use load/forward
2183
2184
2185   9\b9.\b.6\b6.\b.  D\bDi\bis\bst\btr\bri\bib\bbu\but\bti\bio\bon\bn l\bli\bis\bst\bts\bs
2186
2187   Distribution lists are simply a list of users to send certain types of
2188   mail to.  An example of this is mail you only wish to send to other
2189   sysops.  In /spider/msg there is a directory called _\bd_\bi_\bs_\bt_\br_\bo.  You put
2190   any distibution lists in here.  For example, here is a file called
2191   SYSOP.pl that caters for the UK sysops.
2192
2193
2194
2195        qw(GB7TLH GB7DJK GB7DXM GB7CDX GB7BPQ GB7DXN GB7MBC GB7MBC-6 GB7MDX
2196           GB7NDX GB7SDX GB7TDX GB7UDX GB7YDX GB7ADX GB7BAA GB7DXA GB7DXH
2197           GB7DXK GB7DXI GB7DXS)
2198
2199
2200
2201
2202   Any mail sent to "sysop" would only be sent to the callsigns in this
2203   list.
2204
2205
2206   9\b9.\b.7\b7.\b.  C\bCo\bon\bns\bso\bol\ble\be.\b.p\bpl\bl
2207
2208   In later versions of Spider a simple console program is provided for
2209   the sysop.  This has a type ahead buffer with line editing facilities
2210   and colour for spots, announces etc.  To use this program, simply use
2211   console.pl instead of client.pl.
2212
2213
2214   To edit the colours, copy /spider/perl/Console.pl to /spider/local and
2215   edit the file with your favourite editor.
2216
2217
2218   1\b10\b0.\b.  C\bCV\bVS\bS
2219
2220   CVS stands for "Concurrent Versions System" and the CVS for DXSpider
2221   is held at Sourceforge.  This means that it is possible to update your
2222   DXSpider installation to the latest sources by using a few simple
2223   commands.
2224
2225
2226   THIS IS NOT FOR THE FAINT HEARTED!!!  ONLY DO THIS IF YOU HAVE A TEST
2227   INSTALLATION OR ARE WILLING TO HAVE YOUR CLUSTER CRASH ON YOU!!!  THIS
2228   MUST BE CONSIDERED AT LEAST BETA TESTING AND MAYBE EVEN ALPHA!!  YOU
2229   HAVE BEEN WARNED!!!
2230
2231
2232   DID I MENTION..... ONLY DO THIS IF YOU ARE WILLING TO ACCEPT THE
2233   CONSEQUENCES!!!
2234
2235
2236   I am of course assuming that you have a machine with both DXSpider and
2237   Internet access running.
2238
2239
2240   BEFORE YOU EVEN CONSIDER STARTING WITH THIS MAKE A BACKUP OF YOUR
2241   ENTIRE SPIDER TREE!!
2242
2243
2244
2245   Assuming you are connected to the Internet, you need to login to the
2246   CVS repository and then update your Spider source.  There are several
2247   steps which are listed below ...
2248
2249
2250   First login as the user _\bs_\by_\bs_\bo_\bp.  Next you need to connect to the CVS
2251   repository.  You do this with the command below ...
2252
2253
2254   cvs -d:pserver:anonymous@cvs.DXSpider.sourceforge.net:/cvsroot/DXSpider login
2255
2256
2257
2258   You will get a password prompt.  Simply hit return here and your
2259   machine should return to a normal linux prompt.
2260
2261
2262   What happens next depends on whether you have an existing installation
2263   that you want to update with the latest and greatest or whether you
2264   just want to see what is there and/or run it on a new machine for
2265   testing.  Either way you will want to change directory to a new place,
2266   if you want to update an existing installation then I suggest /tmp,
2267   otherwise choose a suitable place according to the normal installation
2268   instructions.
2269
2270
2271   The next step will create a brand new 'spider' directory in your
2272   current directory.
2273
2274
2275   cvs -z3 -d:pserver:anonymous@cvs.DXSpider.sourceforge.net:/cvsroot/DXSpider co spider
2276
2277
2278
2279   This command is all on one line.
2280
2281
2282   Hopefully your screen should show you downloading files.  The -z3
2283   simply compresses the download to improve speed.  When this has
2284   finished, you will have exactly the same as if you had untarred a full
2285   tarball PLUS some extra directories and files that CVS needs to do the
2286   magic that it does.
2287
2288
2289   Now if you are doing a new installation, that's it.  Carry on as if
2290   you have just downloaded and untarred the lastest tarball.
2291
2292
2293   If you want to upgrade your current installation then do this ...
2294
2295
2296
2297        tar cvfz /tmp/s.tgz spider
2298        cd /
2299        tar xvfzp /tmp/s.tgz
2300
2301
2302
2303
2304   This is assuming you downloaded to the /tmp directory of course.
2305
2306
2307   NOTE:  the 'p' on the end of the 'xvfz' is IMPORTANT!   It keeps the
2308   permissions correct.  YOU WERE LOGGED IN AS THE USER SYSOP WEREN'T
2309   YOU?????
2310
2311   Remember to recompile the C client (cd /spider/src; make)
2312
2313
2314   At this point the files have been upgraded.  You can (usually) restrt
2315   the cluster in your own time.  However, if you attempt to use any new
2316   commands or features expect it to be fatal!  At least your cluster
2317   will have been restarted then so it will be too late to worry about
2318   it!
2319
2320
2321   Now the magic part!  From now on when you want to update, simply
2322   connect to the Internet and then, as the user _\bs_\by_\bs_\bo_\bp ...
2323
2324
2325
2326        cd /spider
2327        cvs -z3 update -d
2328
2329
2330
2331
2332   and your files will be updated.  As above, remember to recompile the
2333   "C" client if it has been updated (CVS will tell you) and restart if
2334   any of the perl scripts have been altered or added, again, CVS will
2335   tell you.
2336
2337
2338   You will find any changes documented in the /spider/Changes file.
2339
2340
2341   1\b11\b1.\b.  T\bTh\bhe\be D\bDX\bXS\bSp\bpi\bid\bde\ber\br c\bco\bom\bmm\bma\ban\bnd\bd s\bse\bet\bt
2342
2343   Below is a complete list of commands available from the cluster
2344   prompt.  Most maintenance tasks are automatic but there are some
2345   commands that are useful for a sysop.  These are listed below in
2346   alphabetical order.  The number in brackets following the command name
2347   is the permissions level needed to use the command.
2348
2349
2350   1\b11\b1.\b.1\b1.\b.  a\bac\bcc\bce\bep\bpt\bt/\b/a\ban\bnn\bno\bou\bun\bnc\bce\be (\b(0\b0)\b)
2351
2352   a\bac\bcc\bce\bep\bpt\bt/\b/a\ban\bnn\bno\bou\bun\bnc\bce\be [\b[0\b0-\b-9\b9]\b] <\b<p\bpa\bat\btt\bte\ber\brn\bn>\b> Set an accept filter line for announce
2353
2354
2355   Create an 'accept this announce' line for a filter.
2356
2357   An accept filter line means that if the announce matches this filter
2358   it is passed onto the user. See HELP FILTERS for more info. Please
2359   read this to understand how filters work - it will save a lot of grief
2360   later on.
2361
2362   You can use any of the following things in this line:-
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377     info <string>            eg: iota or qsl
2378     by <prefixes>            eg: G,M,2
2379     origin <prefixes>
2380     origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
2381     origin_itu <numbers>
2382     origin_zone <numbers>
2383     by_dxcc <numbers>
2384     by_itu <numbers>
2385     by_zone <numbers>
2386     channel <prefixes>
2387     wx 1                     filter WX announces
2388     dest <prefixes>          eg: 6MUK,WDX      (distros)
2389
2390
2391
2392   some examples:-
2393
2394
2395     acc/ann dest 6MUK
2396     acc/ann 2 by_zone 14,15,16
2397     (this could be all on one line: acc/ann dest 6MUK or by_zone 14,15,16)
2398
2399
2400
2401   or
2402
2403
2404     acc/ann by G,M,2
2405
2406
2407
2408   This filter would only allow announces that were posted buy UK
2409   stations.  You can use the tag 'all' to accept everything eg:
2410
2411
2412     acc/ann all
2413
2414
2415
2416   but this probably for advanced users...
2417
2418
2419   1\b11\b1.\b.2\b2.\b.  a\bac\bcc\bce\bep\bpt\bt/\b/a\ban\bnn\bno\bou\bun\bnc\bce\be (\b(e\bex\bxt\bte\ben\bnd\bde\bed\bd f\bfo\bor\br s\bsy\bys\bso\bop\bps\bs)\b) (\b(8\b8)\b)
2420
2421   a\bac\bcc\bce\bep\bpt\bt/\b/a\ban\bnn\bno\bou\bun\bnc\bce\be <\b<c\bca\bal\bll\bl>\b> [\b[i\bin\bnp\bpu\but\bt]\b] [\b[0\b0-\b-9\b9]\b]<\b<p\bpa\bat\btt\bte\ber\brn\bn>\b> Announce filter sysop
2422   version
2423
2424
2425   This version allows a sysop to set a filter for a callsign as well as
2426   the default for nodes and users eg:-
2427
2428
2429     accept/ann by G,M,2
2430     accept/ann input node_default by G,M,2
2431     accept/ann user_default by G,M,2
2432
2433
2434
2435
2436   1\b11\b1.\b.3\b3.\b.  a\bac\bcc\bce\bep\bpt\bt/\b/s\bsp\bpo\bot\bts\bs (\b(0\b0)\b)
2437
2438   a\bac\bcc\bce\bep\bpt\bt/\b/a\ban\bnn\bno\bou\bun\bnc\bce\be [\b[0\b0-\b-9\b9]\b] <\b<p\bpa\bat\btt\bte\ber\brn\bn>\b> Set an accept filter line for spots
2439
2440
2441   Create an 'accept this spot' line for a filter.
2442
2443   An accept filter line means that if the spot matches this filter it is
2444   passed onto the user. See HELP FILTERS for more info. Please read this
2445   to understand how filters work - it will save a lot of grief later on.
2446
2447   You can use any of the following things in this line:-
2448
2449
2450     freq <range>           eg: 0/30000 or hf or hf/cw or 6m,4m,2m
2451     on <range>             same as 'freq'
2452     call <prefixes>        eg: G,PA,HB9
2453     info <string>          eg: iota or qsl
2454     by <prefixes>
2455     call_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
2456     call_itu <numbers>
2457     call_zone <numbers>
2458     by_dxcc <numbers>
2459     by_itu <numbers>
2460     by_zone <numbers>
2461     origin <prefixes>
2462     channel <prefixes>
2463
2464
2465
2466
2467   For frequencies, you can use any of the band names defined in
2468   SHOW/BANDS and you can use a subband name like: cw, rtty, data, ssb -
2469   thus: hf/ssb. You can also just have a simple range like: 0/30000 -
2470   this is more efficient than saying simply: freq HF (but don't get too
2471   hung up about that)
2472
2473   some examples:-
2474
2475
2476     acc/spot 1 on hf/cw
2477     acc/spot 2 on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
2478
2479
2480
2481   You can use the tag 'all' to accept everything, eg:
2482
2483
2484     acc/spot 3 all
2485
2486
2487
2488   but this probably for advanced users...
2489
2490
2491   1\b11\b1.\b.4\b4.\b.  a\bac\bcc\bce\bep\bpt\bt/\b/s\bsp\bpo\bot\bts\bs (\b(e\bex\bxt\bte\ben\bnd\bde\bed\bd f\bfo\bor\br s\bsy\bys\bso\bop\bps\bs)\b) (\b(8\b8)\b)
2492
2493   a\bac\bcc\bce\bep\bpt\bt/\b/s\bsp\bpo\bot\bts\bs <\b<c\bca\bal\bll\bl>\b> [\b[i\bin\bnp\bpu\but\bt]\b] [\b[0\b0-\b-9\b9]\b] <\b<p\bpa\bat\btt\bte\ber\brn\bn>\b> Spot filter sysop version
2494
2495
2496   This version allows a sysop to set a filter for a callsign as well as
2497   the default for nodes and users eg:-
2498
2499
2500     accept/spot db0sue-7 1 by_zone 14,15,16
2501     accept/spot node_default all
2502     set/hops node_default 10
2503
2504     accept/spot user_default by G,M,2
2505
2506
2507
2508
2509   1\b11\b1.\b.5\b5.\b.  a\bac\bcc\bce\bep\bpt\bt/\b/w\bwc\bcy\by (\b(0\b0)\b)
2510
2511   a\bac\bcc\bce\bep\bpt\bt/\b/w\bwc\bcy\by [\b[0\b0-\b-9\b9]\b] <\b<p\bpa\bat\btt\bte\ber\brn\bn>\b> set an accept WCY filter
2512
2513
2514   It is unlikely that you will want to do this, but if you do then you
2515   can filter on the following fields:-
2516
2517
2518     by <prefixes>            eg: G,M,2
2519     origin <prefixes>
2520     origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
2521     origin_itu <numbers>
2522     origin_zone <numbers>
2523     by_dxcc <numbers>
2524     by_itu <numbers>
2525     by_zone <numbers>
2526     channel <prefixes>
2527
2528
2529
2530
2531   There are no examples because WCY Broadcasts only come from one place
2532   and you either want them or not (see UNSET/WCY if you don't want
2533   them).
2534
2535   This command is really provided for future use.
2536
2537   See HELP FILTER for information.
2538
2539
2540   1\b11\b1.\b.6\b6.\b.  a\bac\bcc\bce\bep\bpt\bt/\b/w\bwc\bcy\by (\b(e\bex\bxt\bte\ben\bnd\bde\bed\bd f\bfo\bor\br s\bsy\bys\bso\bop\bps\bs)\b) (\b(8\b8)\b)
2541
2542   a\bac\bcc\bce\bep\bpt\bt/\b/w\bwc\bcy\by <\b<c\bca\bal\bll\bl>\b> [\b[i\bin\bnp\bpu\but\bt]\b] [\b[0\b0-\b-9\b9]\b] <\b<p\bpa\bat\btt\bte\ber\brn\bn>\b> WCY filter sysop version
2543
2544
2545   This version allows a sysop to set a filter for a callsign as well as
2546   the default for nodes and users eg:-
2547
2548
2549     accept/wcy node_default all
2550     set/hops node_default 10
2551
2552
2553
2554
2555   1\b11\b1.\b.7\b7.\b.  a\bac\bcc\bce\bep\bpt\bt/\b/w\bww\bwv\bv (\b(0\b0)\b)
2556
2557   a\bac\bcc\bce\bep\bpt\bt/\b/w\bww\bwv\bv [\b[0\b0-\b-9\b9]\b] <\b<p\bpa\bat\btt\bte\ber\brn\bn>\b> Set an accept WWV filter
2558
2559
2560   It is unlikely that you will want to do this, but if you do then you
2561   can filter on the following fields:-
2562
2563
2564     by <prefixes>            eg: G,M,2
2565     origin <prefixes>
2566     origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
2567     origin_itu <numbers>
2568     origin_zone <numbers>
2569     by_dxcc <numbers>
2570     by_itu <numbers>
2571     by_zone <numbers>
2572     channel <prefixes>
2573
2574
2575   for example
2576
2577
2578     accept/wwv by_zone 4
2579
2580
2581
2582   is probably the only useful thing to do (which will only show WWV
2583   broadcasts by stations in the US).
2584
2585   See HELP FILTER for information.
2586
2587
2588   1\b11\b1.\b.8\b8.\b.  a\bac\bcc\bce\bep\bpt\bt/\b/w\bww\bwv\bv (\b(e\bex\bxt\bte\ben\bnd\bde\bed\bd f\bfo\bor\br s\bsy\bys\bso\bop\bps\bs)\b) (\b(8\b8)\b)
2589
2590   a\bac\bcc\bce\bep\bpt\bt/\b/w\bww\bwv\bv <\b<c\bca\bal\bll\bl>\b> [\b[i\bin\bnp\bpu\but\bt]\b] [\b[0\b0-\b-9\b9]\b] <\b<p\bpa\bat\btt\bte\ber\brn\bn>\b> WWV filter sysop version
2591
2592
2593   This version allows a sysop to set a filter for a callsign as well as
2594   the default for nodes and users eg:-
2595
2596
2597     accept/wwv db0sue-7 1 by_zone 4
2598     accept/wwv node_default all
2599     set/hops node_default 10
2600
2601     accept/wwv user_default by W,K
2602
2603
2604
2605
2606   1\b11\b1.\b.9\b9.\b.  a\ban\bnn\bno\bou\bun\bnc\bce\be (\b(0\b0)\b)
2607
2608   a\ban\bnn\bno\bou\bun\bnc\bce\be <\b<t\bte\bex\bxt\bt>\b> Send an announcement to local users
2609
2610
2611   Send an announcement to LOCAL users only, where <text> is the text of
2612   the announcement you wish to broadcast
2613
2614
2615   1\b11\b1.\b.1\b10\b0.\b.  a\ban\bnn\bno\bou\bun\bnc\bce\be f\bfu\bul\bll\bl (\b(0\b0)\b)
2616
2617   a\ban\bnn\bno\bou\bun\bnc\bce\be f\bfu\bul\bll\bl <\b<t\bte\bex\bxt\bt>\b> Send an announcement cluster wide
2618
2619
2620   This command will send your announcement across the whole cluster
2621   network.
2622
2623
2624
2625   1\b11\b1.\b.1\b11\b1.\b.  a\ban\bnn\bno\bou\bun\bnc\bce\be s\bsy\bys\bso\bop\bp (\b(5\b5)\b)
2626
2627   a\ban\bnn\bno\bou\bun\bnc\bce\be s\bsy\bys\bso\bop\bp <\b<t\bte\bex\bxt\bt>\b>
2628
2629
2630   Send an announcement to Sysops only
2631
2632
2633   1\b11\b1.\b.1\b12\b2.\b.  a\bap\bpr\bro\bop\bpo\bos\bs (\b(0\b0)\b)
2634
2635   a\bap\bpr\bro\bop\bpo\bos\bs <\b<s\bst\btr\bri\bin\bng\bg>\b> Search the help database
2636
2637
2638   Search the help database for <string> (it isn't case sensitive), and
2639   print the names of all the commands that may be relevant.
2640
2641   1\b11\b1.\b.1\b13\b3.\b.  b\bby\bye\be (\b(0\b0)\b)
2642
2643   b\bby\bye\be Exit from the cluster
2644
2645
2646   This will disconnect you from the cluster
2647
2648
2649   1\b11\b1.\b.1\b14\b4.\b.  c\bca\bat\btc\bch\bhu\bup\bp (\b(5\b5)\b)
2650
2651   c\bca\bat\btc\bch\bhu\bup\bp <\b<n\bno\bod\bde\be_\b_c\bca\bal\bll\bl>\b> A\bAl\bll\bl|\b|[\b[<\b<m\bms\bsg\bgn\bno\bo>\b> .\b..\b..\b.]\b] Mark a message as sent
2652
2653
2654   When you send messages the fact that you have forwarded it to another
2655   node is remembered so that it isn't sent again. When you have a new
2656   partner node and you add their callsign to your /spider/msg/forward.pl
2657   file, all outstanding non-private messages will be forwarded to them.
2658   This may well be ALL the non-private messages. You can prevent this by
2659   using these commmands:-
2660
2661
2662     catchup GB7DJK all
2663     catchup GB7DJK 300 301 302 303 500-510
2664
2665
2666
2667   and to undo what you have just done:-
2668
2669
2670     uncatchup GB7DJK all
2671     uncatchup GB7DJK 300 301 302 303 500-510
2672
2673
2674
2675   which will arrange for them to be forward candidates again.
2676
2677   Order is not important.
2678
2679
2680   1\b11\b1.\b.1\b15\b5.\b.  c\bcl\ble\bea\bar\br/\b/s\bsp\bpo\bot\bts\bs (\b(0\b0)\b)
2681
2682   c\bcl\ble\bea\bar\br/\b/s\bsp\bpo\bot\bts\bs [\b[1\b1|\b|a\bal\bll\bl]\b] Clear a spot filter line
2683
2684
2685   This command allows you to clear (remove) a line in a spot filter or
2686   to remove the whole filter.
2687
2688   If you have a filter:-
2689
2690
2691     acc/spot 1 on hf/cw
2692     acc/spot 2 on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
2693
2694
2695
2696   and you say:-
2697
2698
2699     clear/spot 1
2700
2701
2702
2703   you will be left with:-
2704
2705
2706
2707     acc/spot 2 on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
2708
2709
2710
2711   If you do:
2712
2713
2714     clear/spot all
2715
2716
2717
2718   the filter will be completely removed.
2719
2720
2721
2722   1\b11\b1.\b.1\b16\b6.\b.  c\bco\bon\bnn\bne\bec\bct\bt (\b(5\b5)\b)
2723
2724   c\bco\bon\bnn\bne\bec\bct\bt <\b<c\bca\bal\bll\bls\bsi\big\bgn\bn>\b> Start a connection to another DX Cluster
2725
2726
2727   Start a connection process that will culminate in a new connection to
2728   the DX cluster <callsign>. This process creates a new 'client' process
2729   which will use the script in /spider/connect/<callsign> to effect the
2730   'chat' exchange necessary to traverse the network(s) to logon to the
2731   cluster <callsign>.
2732
2733
2734   1\b11\b1.\b.1\b17\b7.\b.  d\bdb\bba\bav\bva\bai\bil\bl (\b(0\b0)\b)
2735
2736   d\bdb\bba\bav\bva\bai\bil\bl Show a list of all the databases in the system
2737
2738
2739   The title says it all really, this command lists all the databases
2740   defined in the system. It is also aliased to SHOW/COMMAND.
2741
2742
2743   1\b11\b1.\b.1\b18\b8.\b.  d\bdb\bbc\bcr\bre\bea\bat\bte\be (\b(9\b9)\b)
2744
2745   d\bdb\bbc\bcr\bre\bea\bat\bte\be <\b<n\bna\bam\bme\be>\b> Create a database entry
2746   d\bdb\bbc\bcr\bre\bea\bat\bte\be <\b<n\bna\bam\bme\be>\b> c\bch\bha\bai\bin\bn <\b<n\bna\bam\bme\be>\b> [\b[<\b<n\bna\bam\bme\be>\b>.\b..\b.]\b] Create a chained database
2747   entry
2748   d\bdb\bbc\bcr\bre\bea\bat\bte\be <\b<n\bna\bam\bme\be>\b> r\bre\bem\bmo\bot\bte\be <\b<n\bno\bod\bde\be>\b> Create a remote database entry
2749
2750
2751   DBCREATE allows you to define a database in the system. It doesn't
2752   actually create anything, just defines it.
2753
2754   The databases that are created are simple DB_File hash databases, they
2755   are therefore already 'indexed'.
2756
2757   You can define a local database with the first form of the command eg:
2758
2759   DBCREATE oblast
2760
2761   You can also chain databases with the addition of the 'chain' keyword.
2762   This will search each database one after the other. A typical example
2763   is:
2764
2765   DBCREATE sdx_qsl chain sql_ad
2766
2767   No checking is done to see if the any of the chained databases exist,
2768   in fact it is usually better to do the above statement first then do
2769   each of the chained databases.
2770
2771   Databases can exist offsite. To define a database that lives on
2772   another node do:
2773   DBCREATE buckmaster remote gb7dxc
2774
2775   Remote databases cannot be chained; however, the last database in a a
2776   chain can be a remote database eg:
2777
2778   DBCREATE qsl chain gb7dxc
2779
2780   To see what databases have been defined do:
2781
2782   DBAVAIL (or it will have been aliased to SHOW/COMMAND)
2783
2784   It would be normal for you to add an entry into your local Aliases
2785   file to allow people to use the 'SHOW/<dbname>' style syntax. So you
2786   would need to add a line like:-
2787
2788
2789
2790          's' => [
2791            ..
2792            ..
2793            '^sh\w*/buc', 'dbshow buckmaster', 'dbshow',
2794            ..
2795            ..
2796           ],
2797
2798
2799
2800
2801   to allow
2802
2803   SH/BUCK g1tlh
2804
2805   to work as they may be used to.
2806
2807   See DBIMPORT for the importing of existing AK1A format data to
2808   databases.  See DBSHOW for generic database enquiry
2809
2810
2811   1\b11\b1.\b.1\b19\b9.\b.  d\bdb\bbi\bim\bmp\bpo\bor\brt\bt (\b(9\b9)\b)
2812
2813   d\bdb\bbi\bim\bmp\bpo\bor\brt\bt <\b<d\bdb\bbn\bna\bam\bme\be>\b> Import AK1A data into a database
2814
2815
2816   If you want to import or update data in bulk to a database you can use
2817   this command. It will either create or update entries into an existing
2818   database. For example:-
2819
2820   DBIMPORT oblast /tmp/OBLAST.FUL
2821
2822   will import the standard OBLAST database that comes with AK1A into the
2823   oblast database held locally.
2824
2825
2826   1\b11\b1.\b.2\b20\b0.\b.  d\bdb\bbr\bre\bem\bmo\bov\bve\be (\b(9\b9)\b)
2827
2828   d\bdb\bbr\bre\bem\bmo\bov\bve\be <\b<d\bdb\bbn\bna\bam\bme\be>\b> Delete a database
2829
2830
2831   DBREMOVE will completely remove a database entry and also delete any
2832   data file that is associated with it.
2833
2834   There is no warning, no comeback, no safety net.
2835
2836   For example:
2837
2838
2839   DBREMOVE oblast
2840
2841   will remove the oblast database from the system and it will also
2842   remove the associated datafile.
2843
2844   I repeat:
2845
2846   There is no warning, no comeback, no safety net.
2847
2848   You have been warned.
2849
2850
2851   1\b11\b1.\b.2\b21\b1.\b.  d\bdb\bbs\bsh\bho\bow\bw (\b(0\b0)\b)
2852
2853   d\bdb\bbs\bsh\bho\bow\bw <\b<d\bdb\bbn\bna\bam\bme\be>\b> <\b<k\bke\bey\by>\b> Display an entry, if it exists, in a database
2854
2855
2856   This is the generic user interface to the database to the database
2857   system.  It is expected that the sysop will add an entry to the local
2858   Aliases file so that users can use the more familiar AK1A style of
2859   enquiry such as:
2860
2861
2862     SH/BUCK G1TLH
2863
2864
2865
2866   but if he hasn't and the database really does exist (use DBAVAIL or
2867   SHOW/COMMAND to find out) you can do the same thing with:
2868
2869
2870     DBSHOW buck G1TLH
2871
2872
2873
2874
2875
2876   1\b11\b1.\b.2\b22\b2.\b.  d\bde\beb\bbu\bug\bg (\b(9\b9)\b)
2877
2878   d\bde\beb\bbu\bug\bg Set the cluster program into debug mode
2879
2880
2881   Executing this command will only have an effect if you are running the
2882   cluster in debug mode i.e.
2883
2884
2885
2886                perl -d cluster.pl
2887
2888
2889
2890
2891   It will interrupt the cluster just after the debug command has
2892   finished.
2893
2894
2895   1\b11\b1.\b.2\b23\b3.\b.  d\bdi\bir\bre\bec\bct\bto\bor\bry\by (\b(0\b0)\b)
2896
2897   d\bdi\bir\bre\bec\bct\bto\bor\bry\by List messages
2898   d\bdi\bir\bre\bec\bct\bto\bor\bry\by o\bow\bwn\bn List your own messages
2899   d\bdi\bir\bre\bec\bct\bto\bor\bry\by n\bne\bew\bw List all new messages
2900   d\bdi\bir\bre\bec\bct\bto\bor\bry\by t\bto\bo <\b<c\bca\bal\bll\bl>\b> List all messages to <call>
2901   d\bdi\bir\bre\bec\bct\bto\bor\bry\by f\bfr\bro\bom\bm <\b<c\bca\bal\bll\bl>\b> List all messages from <call>
2902   d\bdi\bir\bre\bec\bct\bto\bor\bry\by s\bsu\bub\bbj\bje\bec\bct\bt <\b<s\bst\btr\bri\bin\bng\bg>\b> List all messages with <string> in subject
2903   d\bdi\bir\bre\bec\bct\bto\bor\bry\by <\b<n\bnn\bn>\b> List last <nn> messages
2904   d\bdi\bir\bre\bec\bct\bto\bor\bry\by <\b<f\bfr\bro\bom\bm>\b>-\b-<\b<t\bto\bo>\b> List messages <from> message <to> message
2905   List the messages in the messages directory.
2906
2907   If there is a 'p' one space after the message number then it is a
2908   personal message. If there is a '-' between the message number and the
2909
2910   You can use shell escape characters such as '*' and '?' in the <call>
2911   fields.
2912
2913   You can combine some of the various directory commands together eg:-
2914
2915
2916      DIR TO G1TLH 5
2917   or
2918      DIR SUBJECT IOTA 200-250
2919
2920
2921
2922   You can abbreviate all the commands to one letter and use ak1a
2923   syntax:-
2924
2925
2926      DIR/T G1* 10
2927      DIR/S QSL 10-100 5
2928
2929
2930
2931
2932
2933   1\b11\b1.\b.2\b24\b4.\b.  d\bdi\bir\bre\bec\bct\bto\bor\bry\by (\b(e\bex\bxt\bte\ben\bnd\bde\bed\bd f\bfo\bor\br s\bsy\bys\bso\bop\bps\bs)\b) (\b(5\b5)\b)
2934
2935   Works just like the user command except that sysops can see ALL
2936   messages.
2937
2938
2939   1\b11\b1.\b.2\b25\b5.\b.  d\bdi\bis\bsc\bco\bon\bnn\bne\bec\bct\bt (\b(8\b8)\b)
2940
2941   d\bdi\bis\bsc\bco\bon\bnn\bne\bec\bct\bt <\b<c\bca\bal\bll\bl>\b> [\b[<\b<c\bca\bal\bll\bl>\b> .\b..\b..\b.]\b] Disconnect a user or node
2942
2943
2944   Disconnect any <call> connected locally
2945
2946
2947   1\b11\b1.\b.2\b26\b6.\b.  d\bdx\bx (\b(0\b0)\b)
2948
2949   d\bdx\bx [\b[b\bby\by <\b<c\bca\bal\bll\bl>\b>]\b] <\b<f\bfr\bre\beq\bq>\b> <\b<c\bca\bal\bll\bl>\b> <\b<r\bre\bem\bma\bar\brk\bks\bs>\b> Send a DX spot
2950
2951
2952   This is how you send a DX Spot to other users. You can, in fact, now
2953   enter the <freq> and the <call> either way round.
2954
2955
2956      DX FR0G 144.600
2957      DX 144.600 FR0G
2958      DX 144600 FR0G
2959
2960
2961
2962   will all give the same result. You can add some remarks to the end of
2963   the command and they will be added to the spot.
2964
2965
2966      DX FR0G 144600 this is a test
2967
2968
2969
2970
2971   You can credit someone else by saying:-
2972
2973
2974      DX by G1TLH FR0G 144.600 he isn't on the cluster
2975
2976
2977
2978   The <freq> is compared against the available bands set up in the
2979   cluster.  See SHOW/BANDS for more information.
2980
2981
2982   1\b11\b1.\b.2\b27\b7.\b.  e\bex\bxp\bpo\bor\brt\bt (\b(9\b9)\b)
2983
2984   e\bex\bxp\bpo\bor\brt\bt <\b<m\bms\bsg\bgn\bno\bo>\b> <\b<f\bfi\bil\ble\ben\bna\bam\bme\be>\b> Export a message to a file
2985
2986
2987   Export a message to a file. This command can only be executed on a
2988   local console with a fully privileged user. The file produced will be
2989   in a form ready to be imported back into the cluster by placing it in
2990   the import directory (/spider/msg/import).
2991
2992   This command cannot overwrite an existing file. This is to provide
2993   some measure of security. Any files written will owned by the same
2994   user as the main cluster, otherwise you can put the new files anywhere
2995   the cluster can access. For example:-
2996
2997   EXPORT 2345 /tmp/a
2998
2999
3000   1\b11\b1.\b.2\b28\b8.\b.  e\bex\bxp\bpo\bor\brt\bt_\b_u\bus\bse\ber\brs\bs (\b(9\b9)\b)
3001
3002   e\bex\bxp\bpo\bor\brt\bt_\b_u\bus\bse\ber\brs\bs [\b[<\b<f\bfi\bil\ble\ben\bna\bam\bme\be>\b>]\b] Export the users database to ascii
3003
3004
3005   Export the users database to a file in ascii format. If no filename is
3006   given then it will export the file to /spider/data/user_asc.
3007
3008   If the file already exists it will be renamed to <filename>.o. In fact
3009   up to 5 generations of the file can be kept each one with an extra 'o'
3010   on the suffix.
3011
3012   BE WARNED: this will write to any file you have write access to. No
3013   check is made on the filename (if any) that you specify.
3014
3015
3016   1\b11\b1.\b.2\b29\b9.\b.  f\bfo\bor\brw\bwa\bar\brd\bd/\b/l\bla\bat\btl\blo\bon\bng\bg (\b(8\b8)\b)
3017
3018   f\bfo\bor\brw\bwa\bar\brd\bd/\b/l\bla\bat\btl\blo\bon\bng\bg <\b<n\bno\bod\bde\be_\b_c\bca\bal\bll\bl>\b> Send latitude and longitude information to
3019   another cluster
3020
3021
3022   This command sends all the latitude and longitude information that
3023   your cluster is holding against callsigns.  One advantage of recieving
3024   this information is that more locator information is held by you.
3025   This means that more locators are given on the DX line assuming you
3026   have _\bs_\be_\bt_\b/_\bd_\bx_\bg_\br_\bi_\bd enabled.  This could be a LOT of information though,
3027   so it is not recommended on slow links.
3028
3029
3030   1\b11\b1.\b.3\b30\b0.\b.  f\bfo\bor\brw\bwa\bar\brd\bd/\b/o\bop\bpe\ber\brn\bna\bam\bme\be (\b(1\b1)\b)
3031
3032   f\bfo\bor\brw\bwa\bar\brd\bd/\b/o\bop\bpe\ber\brn\bna\bam\bme\be <\b<c\bca\bal\bll\bl>\b> Send out information on this <call> to all
3033   clusters
3034
3035
3036
3037   This command sends out any information held in the user file which can
3038   be broadcast in PC41 protocol packets. This information is Name, QTH,
3039   Location and Homenode. PC41s are only sent for the information that is
3040   available.
3041
3042
3043   1\b11\b1.\b.3\b31\b1.\b.  h\bhe\bel\blp\bp (\b(0\b0)\b)
3044
3045   h\bhe\bel\blp\bp <\b<c\bcm\bmd\bd>\b> Get help on a command
3046
3047
3048   All commands can be abbreviated, so SHOW/DX can be abbreviated to
3049   SH/DX, ANNOUNCE can be shortened to AN and so on.
3050
3051   Look at the APROPOS <string> command which will search the help
3052   database for the <string> you specify and give you a list of likely
3053   commands to look at with HELP.
3054
3055
3056   1\b11\b1.\b.3\b32\b2.\b.  i\bin\bni\bit\bt (\b(5\b5)\b)
3057
3058   i\bin\bni\bit\bt <\b<n\bno\bod\bde\be c\bca\bal\bll\bl>\b> Re-initialise a link to an AK1A compatible node
3059
3060
3061   This command attempts to re-initialise a link to a (usually) AK1A node
3062   that has got confused, usually by a protocol loop of some kind. It may
3063   work - but you usually will be better off simply disconnecting it (or
3064   better, if it is a real AK1A node, doing an RCMD <node> DISC/F <your
3065   node>).
3066
3067   Best of luck - you will need it.
3068
3069
3070   1\b11\b1.\b.3\b33\b3.\b.  k\bki\bil\bll\bl (\b(0\b0)\b)
3071
3072   k\bki\bil\bll\bl <\b<m\bms\bsg\bgn\bno\bo>\b> [\b[<\b<m\bms\bsg\bgn\bno\bo>\b> .\b..\b.]\b] Delete a message from the local system
3073
3074
3075   Delete a message from the local system. You will only be able to
3076   delete messages that you have originated or been sent (unless you are
3077   the sysop).
3078
3079
3080   1\b11\b1.\b.3\b34\b4.\b.  k\bki\bil\bll\bl (\b(5\b5)\b)
3081
3082   k\bki\bil\bll\bl <\b<m\bms\bsg\bgn\bno\bo>\b> [\b[<\b<m\bms\bsg\bgn\bno\bo>\b> .\b..\b..\b.]\b] Remove or erase a message from the system
3083   k\bki\bil\bll\bl f\bfr\bro\bom\bm <\b<c\bca\bal\bll\bl>\b> Remove all messages from a callsign
3084   k\bki\bil\bll\bl t\bto\bo <\b<c\bca\bal\bll\bl>\b> Remove all messages to a callsign
3085
3086
3087   You can get rid of any message to or originating from your callsign
3088   using this command. You can remove more than one message at a time.
3089
3090   As a sysop you can kill any message on the system.
3091
3092
3093   1\b11\b1.\b.3\b35\b5.\b.  k\bki\bil\bll\bl f\bfu\bul\bll\bl <\b<m\bms\bsg\bgn\bno\bo>\b> [\b[<\b<m\bms\bsg\bgn\bno\bo>\b>]\b]  D\bDe\bel\ble\bet\bte\be a\ba m\bme\bes\bss\bsa\bag\bge\be f\bfr\bro\bom\bm t\bth\bhe\be w\bwh\bho\bol\ble\be
3094   c\bcl\blu\bus\bst\bte\ber\br k\bki\bil\bll\bl f\bfu\bul\bll\bl (\b(5\b5)\b)
3095
3096   Delete a message (usually a 'bulletin') from the whole cluster system.
3097
3098   This uses the subject field, so any messages that have exactly the
3099   same subject will be deleted. Beware!
3100
3101
3102
3103   1\b11\b1.\b.3\b36\b6.\b.  l\bli\bin\bnk\bks\bs (\b(0\b0)\b)
3104
3105   l\bli\bin\bnk\bks\bs Show which nodes are physically connected
3106
3107
3108   This is a quick listing that shows which links are connected and some
3109   information about them. See WHO for a list of all connections.
3110
3111
3112
3113   1\b11\b1.\b.3\b37\b7.\b.  l\blo\boa\bad\bd/\b/a\bal\bli\bia\bas\bse\bes\bs (\b(9\b9)\b)
3114
3115   l\blo\boa\bad\bd/\b/a\bal\bli\bia\bas\bse\bes\bs Reload the command alias table
3116
3117
3118   Reload the /spider/cmd/Aliases file after you have editted it. You
3119   will need to do this if you change this file whilst the cluster is
3120   running in order for the changes to take effect.
3121
3122
3123
3124   1\b11\b1.\b.3\b38\b8.\b.  l\blo\boa\bad\bd/\b/b\bba\bad\bdd\bdx\bx  R\bRe\bel\blo\boa\bad\bd t\bth\bhe\be b\bba\bad\bd D\bDX\bX t\bta\bab\bbl\ble\be l\blo\boa\bad\bd/\b/b\bba\bad\bdd\bdx\bx (\b(9\b9)\b)
3125
3126   Reload the /spider/data/baddx.pl file if you have changed it manually
3127   whilst the cluster is running. This table contains the DX Calls that,
3128   if spotted, will not be passed on. FR0G and TEST are classic examples.
3129
3130
3131   1\b11\b1.\b.3\b39\b9.\b.  l\blo\boa\bad\bd/\b/b\bba\bad\bdm\bms\bsg\bg (\b(9\b9)\b)
3132
3133   l\blo\boa\bad\bd/\b/b\bba\bad\bdm\bms\bsg\bg Reload the bad message table
3134
3135
3136   Reload the /spider/msg/badmsg.pl file if you have changed it manually
3137   whilst the cluster is running. This table contains a number of perl
3138   regular expressions which are searched for in the fields targetted of
3139   each message.  If any of them match then that message is immediately
3140   deleted on receipt.
3141
3142
3143   1\b11\b1.\b.4\b40\b0.\b.  l\blo\boa\bad\bd/\b/b\bba\bad\bdw\bwo\bor\brd\bds\bs (\b(9\b9)\b)
3144
3145   l\blo\boa\bad\bd/\b/b\bba\bad\bdw\bwo\bor\brd\bds\bs Reload the badwords file
3146
3147
3148   Reload the /spider/data/badwords file if you have changed it manually
3149   whilst the cluster is running. This file contains a list of words
3150   which, if found on certain text portions of PC protocol, will cause
3151   those protocol frames to be rejected. It will all put out a message if
3152   any of these words are used on the announce, dx and talk commands. The
3153   words can be one or more on a line, lines starting with '#' are
3154   ignored.
3155
3156
3157   1\b11\b1.\b.4\b41\b1.\b.  l\blo\boa\bad\bd/\b/b\bba\ban\bnd\bds\bs (\b(9\b9)\b)
3158
3159   l\blo\boa\bad\bd/\b/b\bba\ban\bnd\bds\bs Reload the band limits table
3160
3161
3162   Reload the /spider/data/bands.pl file if you have changed it manually
3163   whilst the cluster is running.
3164
3165
3166
3167
3168
3169   1\b11\b1.\b.4\b42\b2.\b.  l\blo\boa\bad\bd/\b/c\bcm\bmd\bd_\b_c\bca\bac\bch\bhe\be (\b(9\b9)\b)
3170
3171   l\blo\boa\bad\bd/\b/c\bcm\bmd\bd_\b_c\bca\bac\bch\bhe\be Reload the automatic command cache
3172
3173
3174   Normally, if you change a command file in the cmd or local_cmd tree it
3175   will automatially be picked up by the cluster program. Sometimes it
3176   can get confused if you are doing a lot of moving commands about or
3177   delete a command in the local_cmd tree and want to use the normal one
3178   again. Execute this command to reset everything back to the state it
3179   was just after a cluster restart.
3180
3181
3182   1\b11\b1.\b.4\b43\b3.\b.  l\blo\boa\bad\bd/\b/f\bfo\bor\brw\bwa\bar\brd\bd (\b(9\b9)\b)
3183
3184   l\blo\boa\bad\bd/\b/f\bfo\bor\brw\bwa\bar\brd\bd Reload the msg forwarding routing table
3185
3186   Reload the /spider/msg/forward.pl file if you have changed it manually
3187   whilst the cluster is running.
3188
3189
3190   1\b11\b1.\b.4\b44\b4.\b.  l\blo\boa\bad\bd/\b/m\bme\bes\bss\bsa\bag\bge\bes\bs (\b(9\b9)\b)
3191
3192   l\blo\boa\bad\bd/\b/m\bme\bes\bss\bsa\bag\bge\bes\bs Reload the system messages file
3193
3194
3195   If you change the /spider/perl/Messages file (usually whilst
3196   fiddling/writing ne commands) you can have them take effect during a
3197   cluster session by executing this command. You need to do this if get
3198   something like :-
3199
3200   unknown message 'xxxx' in lang 'en'
3201
3202
3203   1\b11\b1.\b.4\b45\b5.\b.  l\blo\boa\bad\bd/\b/p\bpr\bre\bef\bfi\bix\bxe\bes\bs (\b(9\b9)\b)
3204
3205   l\blo\boa\bad\bd/\b/p\bpr\bre\bef\bfi\bix\bxe\bes\bs Reload the prefix table
3206
3207
3208   Reload the /spider/data/prefix_data.pl file if you have changed it
3209   manually whilst the cluster is running.
3210
3211
3212   1\b11\b1.\b.4\b46\b6.\b.  m\bme\ber\brg\bge\be (\b(5\b5)\b)
3213
3214   m\bme\ber\brg\bge\be <\b<n\bno\bod\bde\be>\b> [\b[<\b<n\bno\bo s\bsp\bpo\bot\bts\bs>\b>/\b/<\b<n\bno\bo w\bww\bwv\bv>\b>]\b] Ask for the latest spots and WWV
3215
3216
3217   MERGE allows you to bring your spot and wwv database up to date. By
3218   default it will request the last 10 spots and 5 WWVs from the node you
3219   select. The node must be connected locally.
3220
3221   You can request any number of spots or wwv and although they will be
3222   appended to your databases they will not duplicate any that have
3223   recently been added (the last 2 days for spots and last month for WWV
3224   data).
3225
3226
3227   1\b11\b1.\b.4\b47\b7.\b.  m\bms\bsg\bg (\b(9\b9)\b)
3228
3229   m\bms\bsg\bg <\b<c\bcm\bmd\bd>\b> <\b<m\bms\bsg\bgn\bno\bo>\b> [\b[d\bda\bat\bta\ba .\b..\b..\b.]\b] Alter various message parameters
3230
3231
3232   Alter message parameters like To, From, Subject, whether private or
3233   bulletin or return receipt (RR) is required or whether to keep this
3234   message from timing out.
3235          MSG TO <msgno> <call>     - change TO callsign to <call>
3236          MSG FRom <msgno> <call>   - change FROM callsign to <call>
3237          MSG PRrivate <msgno>      - set private flag
3238          MSG NOPRrivate <msgno>    - unset private flag
3239          MSG RR <msgno>            - set RR flag
3240          MSG NORR <msgno>          - unset RR flag
3241          MSG KEep <msgno>          - set the keep flag (message won't be deleted ever)
3242          MSG NOKEep <msgno>        - unset the keep flag
3243          MSG SUbject <msgno> <new> - change the subject to <new>
3244          MSG WAittime <msgno>      - remove any waitting time for this message
3245          MSG NOREad <msgno>        - mark message as unread
3246          MSG REad <msgno>          - mark message as read
3247          MSG QUeue                 - queue any outstanding bulletins
3248          MSG QUeue 1               - queue any outstanding private messages
3249
3250
3251
3252
3253   You can look at the status of a message by using:-
3254
3255   STAT/MSG <msgno>
3256
3257   This will display more information on the message than DIR does.
3258
3259
3260   1\b11\b1.\b.4\b48\b8.\b.  p\bpc\bc (\b(8\b8)\b)
3261
3262   p\bpc\bc <\b<c\bca\bal\bll\bl>\b> <\b<t\bte\bex\bxt\bt>\b> Send text (eg PC Protocol) to <call>
3263
3264
3265   Send some arbitrary text to a locally connected callsign. No
3266   processing is done on the text. This command allows you to send PC
3267   Protocol to unstick things if problems arise (messages get stuck etc).
3268   eg:-
3269
3270   pc gb7djk PC33^GB7TLH^GB7DJK^400^
3271
3272   You can also use in the same way as a talk command to a connected user
3273   but without any processing, added of "from <blah> to <blah>" or
3274   whatever.
3275
3276   pc G1TLH Try doing that properly!!!
3277
3278
3279   1\b11\b1.\b.4\b49\b9.\b.  p\bpi\bin\bng\bg (\b(1\b1)\b)
3280
3281   p\bpi\bin\bng\bg <\b<n\bno\bod\bde\be>\b> Send a ping command to another cluster node
3282
3283
3284   This command is used to estimate the quality of the link to another
3285   cluster.  The time returned is the length of time taken for a PC51 to
3286   go to another cluster and be returned.
3287
3288   Any visible cluster node can be PINGed.
3289
3290
3291   1\b11\b1.\b.5\b50\b0.\b.  r\brc\bcm\bmd\bd (\b(1\b1)\b)
3292
3293   r\brc\bcm\bmd\bd <\b<n\bno\bod\bde\be c\bca\bal\bll\bl>\b> <\b<c\bcm\bmd\bd>\b> Send a command to another DX cluster
3294
3295
3296   This command allows you to send nearly any command to another DX
3297   Cluster node that is connected to the system.
3298
3299   Whether you get any output is dependant on a) whether the other system
3300   knows that the node callsign of this cluster is in fact a node b)
3301   whether the other system is allowing RCMDs from this node and c)
3302   whether you have permission to send this command at all.
3303
3304
3305   1\b11\b1.\b.5\b51\b1.\b.  r\bre\bea\bad\bd (\b(0\b0)\b)
3306
3307   r\bre\bea\bad\bd Read the next unread personal message addressed to you
3308   r\bre\bea\bad\bd <\b<m\bms\bsg\bgn\bno\bo>\b> Read the specified message
3309
3310
3311   You can read any messages that are sent as 'non-personal' and also any
3312   message either sent by or sent to your callsign.
3313
3314
3315
3316   1\b11\b1.\b.5\b52\b2.\b.  r\bre\bea\bad\bd (\b(e\bex\bxt\bte\ben\bnd\bde\bed\bd f\bfo\bor\br s\bsy\bys\bso\bop\bps\bs)\b) (\b(5\b5)\b)
3317
3318   r\bre\bea\bad\bd <\b<m\bms\bsg\bgn\bno\bo>\b> Read a message on the system
3319
3320
3321   As a sysop you may read any message on the system
3322
3323
3324   1\b11\b1.\b.5\b53\b3.\b.  r\bre\bej\bje\bec\bct\bt/\b/a\ban\bnn\bno\bou\bun\bnc\bce\be
3325
3326   r\bre\bej\bje\bec\bct\bt/\b/a\ban\bnn\bno\bou\bun\bnc\bce\be [\b[0\b0-\b-9\b9]\b] <\b<p\bpa\bat\btt\bte\ber\brn\bn>\b> Set a reject filter for announce
3327
3328
3329   Create an 'reject this announce' line for a filter.
3330
3331   An reject filter line means that if the announce matches this filter
3332   it is passed onto the user. See HELP FILTERS for more info. Please
3333   read this to understand how filters work - it will save a lot of grief
3334   later on.
3335
3336   You can use any of the following things in this line:-
3337
3338
3339     info <string>            eg: iota or qsl
3340     by <prefixes>            eg: G,M,2
3341     origin <prefixes>
3342     origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
3343     origin_itu <numbers>
3344     origin_zone <numbers>
3345     by_dxcc <numbers>
3346     by_itu <numbers>
3347     by_zone <numbers>
3348     channel <prefixes>
3349     wx 1                     filter WX announces
3350     dest <prefixes>          eg: 6MUK,WDX      (distros)
3351
3352
3353
3354   some examples:-
3355
3356
3357     rej/ann by_zone 14,15,16 and not by G,M,2
3358
3359
3360
3361   You can use the tag 'all' to reject everything eg:
3362
3363
3364     rej/ann all
3365
3366
3367   but this probably for advanced users...
3368
3369
3370   1\b11\b1.\b.5\b54\b4.\b.  r\bre\bej\bje\bec\bct\bt/\b/a\ban\bnn\bno\bou\bun\bnc\bce\be (\b(e\bex\bxt\bte\ben\bnd\bde\bed\bd f\bfo\bor\br s\bsy\bys\bso\bop\bps\bs)\b) (\b(8\b8)\b)
3371
3372   r\bre\bej\bje\bec\bct\bt/\b/a\ban\bnn\bno\bou\bun\bnc\bce\be <\b<c\bca\bal\bll\bl>\b> [\b[i\bin\bnp\bpu\but\bt]\b] [\b[0\b0-\b-9\b9]\b] <\b<p\bpa\bat\btt\bte\ber\brn\bn>\b> Announce filter sysop
3373   version
3374
3375
3376   This version allows a sysop to set a filter for a callsign as well as
3377   the default for nodes and users eg:-
3378
3379
3380     reject/ann by G,M,2
3381     reject/ann input node_default by G,M,2
3382     reject/ann user_default by G,M,2
3383
3384
3385
3386
3387   1\b11\b1.\b.5\b55\b5.\b.  r\bre\bej\bje\bec\bct\bt/\b/s\bsp\bpo\bot\bts\bs (\b(0\b0)\b)
3388
3389   r\bre\bej\bje\bec\bct\bt/\b/s\bsp\bpo\bot\bts\bs [\b[0\b0-\b-9\b9]\b] <\b<p\bpa\bat\btt\bte\ber\brn\bn>\b> Set a reject filter line for spots
3390
3391
3392   Create an 'reject this spot' line for a filter.
3393
3394   An reject filter line means that if the spot matches this filter it is
3395   dumped (not passed on). See HELP FILTERS for more info. Please read
3396   this to understand how filters work - it will save a lot of grief
3397   later on.
3398
3399   You can use any of the following things in this line:-
3400
3401
3402     freq <range>           eg: 0/30000 or hf or hf/cw or 6m,4m,2m
3403     on <range>             same as 'freq'
3404     call <prefixes>        eg: G,PA,HB9
3405     info <string>          eg: iota or qsl
3406     by <prefixes>
3407     call_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
3408     call_itu <numbers>
3409     call_zone <numbers>
3410     by_dxcc <numbers>
3411     by_itu <numbers>
3412     by_zone <numbers>
3413     origin <prefixes>
3414     channel <prefixes>
3415
3416
3417
3418   For frequencies, you can use any of the band names defined in
3419   SHOW/BANDS and you can use a subband name like: cw, rtty, data, ssb -
3420   thus: hf/ssb. You can also just have a simple range like: 0/30000 -
3421   this is more efficient than saying simply: on HF (but don't get too
3422   hung up about that)
3423
3424   some examples:-
3425
3426
3427     rej/spot 1 on hf
3428     rej/spot 2 on vhf and not (by_zone 14,15,16 or call_zone 14,15,16)
3429
3430
3431
3432
3433   You can use the tag 'all' to reject everything eg:
3434
3435
3436     rej/spot 3 all
3437
3438
3439
3440   but this probably for advanced users...
3441
3442
3443   1\b11\b1.\b.5\b56\b6.\b.  r\bre\bej\bje\bec\bct\bt/\b/s\bsp\bpo\bot\bts\bs (\b(e\bex\bxt\bte\ben\bnd\bde\bed\bd f\bfo\bor\br s\bsy\bys\bso\bop\bps\bs)\b) (\b(8\b8)\b)
3444
3445   r\bre\bej\bje\bec\bct\bt/\b/s\bsp\bpo\bot\bts\bs <\b<c\bca\bal\bll\bl>\b> [\b[i\bin\bnp\bpu\but\bt]\b] [\b[0\b0-\b-9\b9]\b] <\b<p\bpa\bat\btt\bte\ber\brn\bn>\b> Reject spot filter sysop
3446   version
3447
3448
3449   This version allows a sysop to set a filter for a callsign as well as
3450   the default for nodes and users eg:-
3451
3452
3453     reject/spot db0sue-7 1 by_zone 14,15,16
3454     reject/spot node_default all
3455     set/hops node_default 10
3456
3457     reject/spot user_default by G,M,2
3458
3459
3460
3461
3462   1\b11\b1.\b.5\b57\b7.\b.  r\bre\bej\bje\bec\bct\bt/\b/w\bwc\bcy\by (\b(0\b0)\b)
3463
3464   r\bre\bej\bje\bec\bct\bt/\b/w\bwc\bcy\by [\b[0\b0-\b-9\b9]\b] <\b<p\bpa\bat\btt\bte\ber\brn\bn>\b> Set a reject WCY filter
3465
3466
3467   It is unlikely that you will want to do this, but if you do then you
3468   can filter on the following fields:-
3469
3470
3471     by <prefixes>            eg: G,M,2
3472     origin <prefixes>
3473     origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
3474     origin_itu <numbers>
3475     origin_zone <numbers>
3476     by_dxcc <numbers>
3477     by_itu <numbers>
3478     by_zone <numbers>
3479     channel <prefixes>
3480
3481
3482
3483   There are no examples because WCY Broadcasts only come from one place
3484   and you either want them or not (see UNSET/WCY if you don't want
3485   them).
3486
3487   This command is really provided for future use.
3488
3489   See HELP FILTER for information.
3490
3491
3492   1\b11\b1.\b.5\b58\b8.\b.  r\bre\bej\bje\bec\bct\bt/\b/w\bwc\bcy\by (\b(e\bex\bxt\bte\ben\bnd\bde\bed\bd f\bfo\bor\br s\bsy\bys\bso\bop\bps\bs)\b) (\b(8\b8)\b)
3493
3494   r\bre\bej\bje\bec\bct\bt/\b/w\bwc\bcy\by <\b<c\bca\bal\bll\bl>\b> [\b[i\bin\bnp\bpu\but\bt]\b] [\b[0\b0-\b-9\b9]\b] <\b<p\bpa\bat\btt\bte\ber\brn\bn>\b> WCY reject filter sysop
3495   version
3496
3497
3498
3499   This version allows a sysop to set a filter for a callsign as well as
3500   the default for nodes and users eg:-
3501
3502   reject/wcy gb7djk all
3503
3504
3505   1\b11\b1.\b.5\b59\b9.\b.  r\bre\bej\bje\bec\bct\bt/\b/w\bww\bwv\bv (\b(0\b0)\b)
3506
3507   r\bre\bej\bje\bec\bct\bt/\b/w\bww\bwv\bv [\b[0\b0-\b-9\b9]\b] <\b<p\bpa\bat\btt\bte\ber\brn\bn>\b> Set a reject WWV filter
3508
3509
3510   It is unlikely that you will want to do this, but if you do then you
3511   can filter on the following fields:-
3512
3513
3514     by <prefixes>            eg: G,M,2
3515     origin <prefixes>
3516     origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
3517     origin_itu <numbers>
3518     origin_zone <numbers>
3519     by_dxcc <numbers>
3520     by_itu <numbers>
3521     by_zone <numbers>
3522     channel <prefixes>
3523
3524
3525
3526   for example
3527
3528
3529     reject/wwv by_zone 14,15,16
3530
3531
3532
3533   is probably the only useful thing to do (which will only show WWV
3534   broadcasts by stations in the US).
3535
3536   See HELP FILTER for information.
3537
3538
3539   1\b11\b1.\b.6\b60\b0.\b.  r\bre\bej\bje\bec\bct\bt/\b/w\bww\bwv\bv (\b(e\bex\bxt\bte\ben\bnd\bde\bed\bd f\bfo\bor\br s\bsy\bys\bso\bop\bps\bs)\b) (\b(8\b8)\b)
3540
3541   r\bre\bej\bje\bec\bct\bt/\b/w\bww\bwv\bv <\b<c\bca\bal\bll\bl>\b> [\b[i\bin\bnp\bpu\but\bt]\b] [\b[0\b0-\b-9\b9]\b] <\b<p\bpa\bat\btt\bte\ber\brn\bn>\b> WWV reject filter sysop
3542   version
3543
3544
3545   This version allows a sysop to set a filter for a callsign as well as
3546   the default for nodes and users eg:-
3547
3548
3549     reject/wwv db0sue-7 1 by_zone 4
3550     reject/wwv node_default all
3551
3552     reject/wwv user_default by W
3553
3554
3555
3556
3557   1\b11\b1.\b.6\b61\b1.\b.  r\bre\bep\bpl\bly\by (\b(0\b0)\b)
3558
3559   r\bre\bep\bpl\bly\by Reply (privately) to the last message that you have read
3560   r\bre\bep\bpl\bly\by <\b<m\bms\bsg\bgn\bno\bo>\b> Reply (privately) to the specified message
3561   r\bre\bep\bpl\bly\by B\bB <\b<m\bms\bsg\bgn\bno\bo>\b> Reply as a Bulletin to the specified message
3562   r\bre\bep\bpl\bly\by N\bNO\bOP\bPr\bri\biv\bva\bat\bte\be <\b<m\bms\bsg\bgn\bno\bo>\b> Reply as a Bulletin to the specified message
3563   r\bre\bep\bpl\bly\by R\bRR\bR <\b<m\bms\bsg\bgn\bno\bo>\b> Reply to the specified message with read receipt
3564
3565   You can reply to a message and the subject will automatically have
3566   "Re:" inserted in front of it, if it isn't already present.
3567
3568   You can also use all the extra qualifiers such as RR, PRIVATE,
3569   NOPRIVATE, B that you can use with the SEND command (see SEND for
3570   further details)
3571
3572
3573   1\b11\b1.\b.6\b62\b2.\b.  s\bse\ben\bnd\bd (\b(0\b0)\b)
3574
3575   s\bse\ben\bnd\bd <\b<c\bca\bal\bll\bl>\b> [\b[<\b<c\bca\bal\bll\bl>\b> .\b..\b..\b.]\b] Send a message to one or more callsigns
3576   s\bse\ben\bnd\bd R\bRR\bR <\b<c\bca\bal\bll\bl>\b> Send a message and ask for a read receipt
3577   s\bse\ben\bnd\bd C\bCO\bOP\bPY\bY <\b<m\bms\bsg\bgn\bno\bo>\b> <\b<c\bca\bal\bll\bl>\b> Send a copy of a  message to someone
3578   s\bse\ben\bnd\bd P\bPR\bRI\bIV\bVA\bAT\bTE\bE <\b<c\bca\bal\bll\bl>\b> Send a personal message
3579   s\bse\ben\bnd\bd N\bNO\bOP\bPR\bRI\bIV\bVA\bAT\bTE\bE <\b<c\bca\bal\bll\bl>\b> Send a message to all stations
3580
3581
3582   All the SEND commands will create a message which will be sent either
3583   to an individual callsign or to one of the 'bulletin' addresses.
3584
3585   SEND <call> on its own acts as though you had typed SEND PRIVATE, that
3586   is it will mark the message as personal and send it to the cluster
3587   node that that callsign is connected to.
3588
3589   You can have more than one callsign in all of the SEND commands.
3590
3591   You can have multiple qualifiers so that you can have for example:-
3592
3593
3594     SEND RR COPY 123 PRIVATE G1TLH G0RDI
3595
3596
3597
3598   which should send a copy of message 123 to G1TLH and G0RDI and you
3599   will receive a read receipt when they have read the message.
3600
3601   SB is an alias for SEND NOPRIVATE (or send a bulletin in BBS speak) SP
3602   is an alias for SEND PRIVATE
3603
3604
3605   1\b11\b1.\b.6\b63\b3.\b.  s\bse\bet\bt/\b/a\bad\bdd\bdr\bre\bes\bss\bs (\b(0\b0)\b)
3606
3607   s\bse\bet\bt/\b/a\bad\bdd\bdr\bre\bes\bss\bs <\b<y\byo\bou\bur\br_\b_a\bad\bdd\bdr\bre\bes\bss\bs>\b> Record your postal address
3608
3609
3610   Literally, record your address details on the cluster.
3611
3612
3613   1\b11\b1.\b.6\b64\b4.\b.  s\bse\bet\bt/\b/a\ban\bnn\bno\bou\bun\bnc\bce\be (\b(0\b0)\b)
3614
3615   s\bse\bet\bt/\b/a\ban\bnn\bno\bou\bun\bnc\bce\be Allow announce messages
3616
3617
3618   Allow announce messages to arrive at your terminal.
3619
3620
3621   1\b11\b1.\b.6\b65\b5.\b.  s\bse\bet\bt/\b/a\bar\brc\bcl\blu\bus\bst\bte\ber\br (\b(5\b5)\b)
3622
3623   s\bse\bet\bt/\b/a\bar\brc\bcl\blu\bus\bst\bte\ber\br <\b<n\bno\bod\bde\be_\b_c\bca\bal\bll\bl>\b> [\b[<\b<n\bno\bod\bde\be_\b_c\bca\bal\bll\bl>\b> .\b..\b..\b.]\b] Make the node_call an AR-
3624   Cluster type node
3625
3626
3627   Set the node_call as an AR-Cluster type node
3628
3629
3630
3631   1\b11\b1.\b.6\b66\b6.\b.  s\bse\bet\bt/\b/b\bba\bad\bdn\bno\bod\bde\be (\b(6\b6)\b)
3632
3633   s\bse\bet\bt/\b/b\bba\bad\bdn\bno\bod\bde\be <\b<n\bno\bod\bde\be_\b_c\bca\bal\bll\bl>\b> Stop spots from this node_call being
3634   propagated
3635
3636
3637   Setting a callsign as a 'badnode' will prevent spots from that node
3638   going any further. They will not be displayed and they will not be
3639   sent onto other nodes.
3640
3641   The call can be a full or partial call (or a prefix), eg:-
3642
3643
3644     set/badnode K1TTT
3645
3646
3647
3648   will stop anything from K1TTT (including any SSID's)
3649
3650
3651     unset/badnode K1TTT
3652
3653
3654
3655   will allow spots from him again.
3656
3657   Use with extreme care. This command may well be superceded by
3658   FILTERing.
3659
3660
3661   1\b11\b1.\b.6\b67\b7.\b.  s\bse\bet\bt/\b/b\bbe\bee\bep\bp (\b(0\b0)\b)
3662
3663   s\bse\bet\bt/\b/b\bbe\bee\bep\bp Add beeps to terminal messages
3664
3665
3666   Add a beep to DX and other terminal messages.
3667
3668
3669   1\b11\b1.\b.6\b68\b8.\b.  s\bse\bet\bt/\b/c\bcl\blx\bx (\b(5\b5)\b)
3670
3671   s\bse\bet\bt/\b/c\bcl\blx\bx <\b<n\bno\bod\bde\be_\b_c\bca\bal\bll\bl>\b> [\b[<\b<n\bno\bod\bde\be_\b_c\bca\bal\bll\bl>\b> .\b..\b..\b.]\b] Make the node_call a CLX type
3672   node
3673
3674
3675   Set the node_call as a CLX type node
3676
3677
3678   1\b11\b1.\b.6\b69\b9.\b.  s\bse\bet\bt/\b/d\bde\beb\bbu\bug\bg (\b(9\b9)\b)
3679
3680   s\bse\bet\bt/\b/d\bde\beb\bbu\bug\bg <\b<n\bna\bam\bme\be>\b> Add a debug level to the debug set
3681
3682
3683   You can remove this level with unset/debug <name>
3684
3685
3686   1\b11\b1.\b.7\b70\b0.\b.  s\bse\bet\bt/\b/d\bdx\bx (\b(0\b0)\b)
3687
3688   s\bse\bet\bt/\b/d\bdx\bxAllow DX messages to arrive at your terminal
3689
3690
3691   You can stop DX messages with the _\bu_\bn_\bs_\be_\bt_\b/_\bd_\bx command
3692
3693
3694
3695
3696
3697   1\b11\b1.\b.7\b71\b1.\b.  s\bse\bet\bt/\b/d\bdx\bxg\bgr\bri\bid\bd (\b(0\b0)\b)
3698
3699   s\bse\bet\bt/\b/d\bdx\bxg\bgr\bri\bid\bdAllow grid squares on the end of DX messages
3700
3701
3702   Some logging programs do not like the additional information at the
3703   end of a DX spot.  If this is the case, use the _\bu_\bn_\bs_\be_\bt_\b/_\bd_\bx_\bg_\br_\bi_\bd command
3704   to remove the grid squares.
3705
3706
3707   1\b11\b1.\b.7\b72\b2.\b.  s\bse\bet\bt/\b/d\bdx\bxn\bne\bet\bt (\b(5\b5)\b)
3708
3709   s\bse\bet\bt/\b/d\bdx\bxn\bne\bet\bt <\b<n\bno\bod\bde\be_\b_c\bca\bal\bll\bl>\b> [\b[<\b<n\bno\bod\bde\be_\b_c\bca\bal\bll\bl>\b> .\b..\b..\b.]\b] Make the node_call a DXNet
3710   type node
3711
3712
3713   Set the node_call as a DXNet type node
3714
3715
3716   1\b11\b1.\b.7\b73\b3.\b.  s\bse\bet\bt/\b/e\bec\bch\bho\bo (\b(0\b0)\b)
3717
3718   s\bse\bet\bt/\b/e\bec\bch\bho\bo Make the cluster echo your input
3719
3720
3721   If you are connected via a telnet session, different implimentations
3722   of telnet handle echo differently depending on whether you are
3723   connected via port 23 or some other port. You can use this command to
3724   change the setting appropriately.
3725
3726   You can remove the echo with the _\bu_\bn_\bs_\be_\bt_\b/_\be_\bc_\bh_\bo command
3727
3728   The setting is stored in your user profile.
3729
3730   YOU DO NOT NEED TO USE THIS COMMAND IF YOU ARE CONNECTED VIA AX25.
3731
3732
3733   1\b11\b1.\b.7\b74\b4.\b.  s\bse\bet\bt/\b/h\bhe\ber\bre\be (\b(0\b0)\b)
3734
3735   s\bse\bet\bt/\b/h\bhe\ber\bre\be Set the here flag
3736
3737
3738   Let others on the cluster know you are here by only displaying your
3739   callsign.  If you are away from your terminal you can use the
3740   _\bu_\bn_\bs_\be_\bt_\b/_\bh_\be_\br_\be command to let people know you are away.  This simply puts
3741   brackets around your callsign to indicate you are not available.
3742
3743
3744   1\b11\b1.\b.7\b75\b5.\b.  s\bse\bet\bt/\b/h\bho\bom\bme\ben\bno\bod\bde\be (\b(0\b0)\b)
3745
3746   s\bse\bet\bt/\b/h\bho\bom\bme\ben\bno\bod\bde\be <\b<n\bno\bod\bde\be_\b_c\bca\bal\bll\bl>\b> Set your home cluster
3747
3748
3749   Tell the cluster system where you normally connect to. Any Messages
3750   sent to you will normally find their way there should you not be
3751   connected.  eg:-
3752
3753
3754     SET/HOMENODE gb7djk
3755
3756
3757
3758
3759   1\b11\b1.\b.7\b76\b6.\b.  s\bse\bet\bt/\b/h\bho\bop\bps\bs (\b(8\b8)\b)
3760
3761   s\bse\bet\bt/\b/h\bho\bop\bps\bs <\b<n\bno\bod\bde\be_\b_c\bca\bal\bll\bl>\b> a\ban\bnn\bn|\b|s\bsp\bpo\bot\bts\bs|\b|w\bww\bwv\bv|\b|w\bwc\bcy\by <\b<n\bn>\b> Set hop count
3762
3763   Set the hop count for a particular type of broadcast for a node.
3764
3765   This command allows you to set up special hop counts for a node for
3766   currently: announce, spots, wwv and wcy broadcasts.
3767
3768
3769   eg:
3770     set/hops gb7djk ann 10
3771     set/hops gb7mbc spots 20
3772
3773
3774
3775   Set SHOW/HOPS for information on what is already set. This command
3776   creates a filter and works in conjunction with the filter system.
3777
3778
3779   1\b11\b1.\b.7\b77\b7.\b.  s\bse\bet\bt/\b/i\bis\bso\bol\bla\bat\bte\be (\b(9\b9)\b)
3780
3781   s\bse\bet\bt/\b/i\bis\bso\bol\bla\bat\bte\be <\b<n\bno\bod\bde\be c\bca\bal\bll\bl>\b> Isolate a node from the rest of the network
3782
3783
3784   Connect a node to your system in such a way that you are a full
3785   protocol member of its network and can see all spots on it, but
3786   nothing either leaks out from it nor goes back into from the rest of
3787   the nodes connected to you.
3788
3789   You can potentially connect several nodes in this way.
3790
3791   You can see which nodes are isolated with the show/isolate (1)
3792   command.
3793
3794   You can remove the isolation with the command unset/isolate.
3795
3796
3797   1\b11\b1.\b.7\b78\b8.\b.  s\bse\bet\bt/\b/l\bla\ban\bng\bgu\bua\bag\bge\be (\b(0\b0)\b)
3798
3799   s\bse\bet\bt/\b/l\bla\ban\bng\bgu\bua\bag\bge\be <\b<l\bla\ban\bng\bgu\bua\bag\bge\be>\b> Set the language you wish to use
3800
3801
3802   You can select the language that you want the cluster to use.
3803   Currently the languages available are _\be_\bn (English) and _\bn_\bl (Dutch).
3804
3805
3806   1\b11\b1.\b.7\b79\b9.\b.  s\bse\bet\bt/\b/l\blo\boc\bca\bat\bti\bio\bon\bn (\b(0\b0)\b)
3807
3808   s\bse\bet\bt/\b/l\blo\boc\bca\bat\bti\bio\bon\bn <\b<l\bla\bat\bt a\ban\bnd\bd l\blo\bon\bng\bg>\b> Set your latitude and longitude
3809
3810
3811   You can set your latitude and longitude manually or alternatively use
3812   the _\bs_\be_\bt_\b/_\bq_\br_\ba command which will do the conversion for you.
3813
3814
3815     set/location 54 04 N 2 02 E
3816
3817
3818
3819
3820
3821   1\b11\b1.\b.8\b80\b0.\b.  s\bse\bet\bt/\b/s\bsy\bys\bs_\b_l\blo\boc\bca\bat\bti\bio\bon\bn (\b(9\b9)\b)
3822
3823   s\bse\bet\bt/\b/s\bsy\bys\bs_\b_l\blo\boc\bca\bat\bti\bio\bon\bn <\b<l\bla\bat\bt &\b& l\blo\bon\bng\bg>\b> Set your cluster latitude and longitude
3824
3825
3826   In order to get accurate headings and such like you must tell the
3827   system what your latitude and longitude is. If you have not yet done a
3828   SET/QRA then this command will set your QRA locator for you. For
3829   example:-
3830
3831
3832     SET/LOCATION 52 22 N 0 57 E
3833
3834
3835
3836
3837   1\b11\b1.\b.8\b81\b1.\b.  s\bse\bet\bt/\b/l\blo\bog\bgi\bin\bni\bin\bnf\bfo\bo (\b(0\b0)\b)
3838
3839   s\bse\bet\bt/\b/l\blo\bog\bgi\bin\bni\bin\bnf\bfo\bo Show logins and logouts of nodes and users
3840
3841
3842   Show users and nodes when they log in and out of the local cluster.
3843   You can stop these messages by using the _\bu_\bn_\bs_\be_\bt_\b/_\bl_\bo_\bg_\bi_\bn_\bi_\bn_\bf_\bo command.
3844
3845
3846
3847   1\b11\b1.\b.8\b82\b2.\b.  s\bse\bet\bt/\b/l\blo\boc\bck\bko\bou\but\bt (\b(9\b9)\b)
3848
3849   s\bse\bet\bt/\b/l\blo\boc\bck\bko\bou\but\bt <\b<c\bca\bal\bll\bl>\b> Stop a callsign connecting to the cluster
3850
3851
3852   You can show who is locked out with the _\bs_\bh_\bo_\bw_\b/_\bl_\bo_\bc_\bk_\bo_\bu_\bt command.  To
3853   allow the user to connect again, use the _\bu_\bn_\bs_\be_\bt_\b/_\bl_\bo_\bc_\bk_\bo_\bu_\bt command.
3854
3855
3856   1\b11\b1.\b.8\b83\b3.\b.  s\bse\bet\bt/\b/n\bna\bam\bme\be (\b(0\b0)\b)
3857
3858   s\bse\bet\bt/\b/n\bna\bam\bme\be <\b<y\byo\bou\bur\br_\b_n\bna\bam\bme\be>\b> Set your name
3859
3860
3861   Tell the cluster what your name is, eg:-
3862
3863
3864     set/name Dirk
3865
3866
3867
3868
3869   1\b11\b1.\b.8\b84\b4.\b.  s\bse\bet\bt/\b/n\bno\bod\bde\be (\b(9\b9)\b)
3870
3871   s\bse\bet\bt/\b/n\bno\bod\bde\be <\b<c\bca\bal\bll\bl>\b> [\b[<\b<c\bca\bal\bll\bl>\b> .\b..\b..\b.]\b] Make the callsign an AK1A cluster
3872
3873
3874   Tell the system that the call(s) are to be treated as AK1A cluster and
3875   fed PC Protocol rather normal user commands.
3876
3877   From version 1.41 you can also set the following types of cluster
3878
3879
3880     set/spider
3881     set/dxnet
3882     set/clx
3883     set/arcluster
3884
3885
3886
3887   To see what your nodes are set to, use the _\bs_\bh_\bo_\bw_\b/_\bn_\bo_\bd_\be_\bs command.
3888
3889
3890   1\b11\b1.\b.8\b85\b5.\b.  s\bse\bet\bt/\b/o\bob\bbs\bsc\bco\bou\bun\bnt\bt (\b(9\b9)\b)
3891
3892   s\bse\bet\bt/\b/o\bob\bbs\bsc\bco\bou\bun\bnt\bt <\b<c\bco\bou\bun\bnt\bt>\b> <\b<n\bno\bod\bde\be c\bca\bal\bll\bl>\b> Set the 'pump-up' obsolescence
3893   counter
3894
3895   From version 1.35 onwards neighbouring nodes are pinged at regular
3896   intervals (see SET/PINGINTERVAL), usually 300 seconds or 5 minutes.
3897   There is a 'pump-up' counter which is decremented on every outgoing
3898   ping and then reset to the 'obscount' value on every incoming ping.
3899   The default value of this parameter is 2.
3900
3901   What this means is that a neighbouring node will be pinged twice at
3902   (default) 300 second intervals and if no reply has been heard just
3903   before what would be the third attempt, that node is disconnected.
3904
3905   If a ping is heard then the obscount is reset to the full value. Using
3906   default values, if a node has not responded to a ping within 15
3907   minutes, it is disconnected.
3908
3909
3910   1\b11\b1.\b.8\b86\b6.\b.  s\bse\bet\bt/\b/p\bpa\bag\bge\be (\b(0\b0)\b)
3911
3912   s\bse\bet\bt/\b/p\bpa\bag\bge\be <\b<n\bn>\b> Set the number of lines per page
3913
3914
3915   Tell the system how many lines you wish on a page when the number of
3916   lines of output from a command is more than this. The default is 20.
3917   Setting it explicitly to 0 will disable paging.
3918
3919
3920     SET/PAGE 30
3921     SET/PAGE 0
3922
3923
3924
3925   The setting is stored in your user profile.
3926
3927
3928
3929   1\b11\b1.\b.8\b87\b7.\b.  s\bse\bet\bt/\b/p\bpa\bas\bss\bsw\bwo\bor\brd\bd (\b(9\b9)\b)
3930
3931   s\bse\bet\bt/\b/p\bpa\bas\bss\bsw\bwo\bor\brd\bd <\b<c\bca\bal\bll\bls\bsi\big\bgn\bn>\b> <\b<s\bst\btr\bri\bin\bng\bg>\b> Set a users password
3932
3933
3934   The password for a user can only be set by a full sysop. The string
3935   can contain any characters but any spaces are removed (you can type in
3936   spaces - but they won't appear in the password). You can see the
3937   result with STAT/USER.  The password is the usual 30 character baycom
3938   type password.
3939
3940
3941   1\b11\b1.\b.8\b88\b8.\b.  s\bse\bet\bt/\b/p\bpi\bin\bng\bgi\bin\bnt\bte\ber\brv\bva\bal\bl (\b(9\b9)\b)
3942
3943   s\bse\bet\bt/\b/p\bpi\bin\bng\bgi\bin\bnt\bte\ber\brv\bva\bal\bl <\b<t\bti\bim\bme\be>\b> <\b<n\bno\bod\bde\be c\bca\bal\bll\bl>\b> Set the ping time to neighbouring
3944   nodes
3945
3946
3947   As from version 1.35 all neighbouring nodes are pinged at regular
3948   intervals in order to determine the rolling quality of the link and,
3949   in future, to affect routing decisions. The default interval is 300
3950   secs or 5 minutes.
3951
3952   You can use this command to set a different interval. Please don't.
3953
3954   But if you do the value you enter is treated as minutes up 60 and
3955   seconds for numbers greater than that.
3956
3957   This is used also to help determine when a link is down at the far end
3958   (as certain cluster software doesn't always notice), see SET/OBSCOUNT
3959   for more information.
3960
3961   1\b11\b1.\b.8\b89\b9.\b.  s\bse\bet\bt/\b/p\bpr\bri\biv\bvi\bil\ble\beg\bge\be (\b(9\b9)\b)
3962
3963   s\bse\bet\bt/\b/p\bpr\bri\biv\bvi\bil\ble\beg\bge\be <\b<n\bn>\b> <\b<c\bca\bal\bll\bl>\b> [\b[<\b<c\bca\bal\bll\bl>\b> .\b..\b..\b.]\b] Set the privilege level on a
3964   call
3965
3966
3967   Set the privilege level on a callsign. The privilege levels that
3968   pertain to commands are as default:-
3969
3970
3971
3972          0 - normal user
3973          1 - allow remote nodes normal user RCMDs
3974          5 - various privileged commands (including shutdown, but not disc-
3975              connect), the normal level for another node.
3976          8 - more privileged commands (including disconnect)
3977          9 - local sysop privilege. DO NOT SET ANY REMOTE USER OR NODE TO THIS
3978              LEVEL.
3979
3980
3981
3982
3983   If you are a sysop and you come in as a normal user on a remote
3984   connection your privilege will automatically be set to 0.
3985
3986
3987   1\b11\b1.\b.9\b90\b0.\b.  s\bse\bet\bt/\b/s\bsp\bpi\bid\bde\ber\br (\b(5\b5)\b)
3988
3989   s\bse\bet\bt/\b/s\bsp\bpi\bid\bde\ber\br <\b<n\bno\bod\bde\be_\b_c\bca\bal\bll\bl>\b> [\b[<\b<n\bno\bod\bde\be_\b_c\bca\bal\bll\bl>\b> .\b..\b..\b.]\b] Make the node_call a DXSpider
3990   type node
3991
3992
3993   Set the node_call as a DXSpider type node
3994
3995
3996   1\b11\b1.\b.9\b91\b1.\b.  s\bse\bet\bt/\b/s\bsy\bys\bs_\b_q\bqr\bra\ba (\b(9\b9)\b)
3997
3998   s\bse\bet\bt/\b/s\bsy\bys\bs_\b_q\bqr\bra\ba <\b<l\blo\boc\bca\bat\bto\bor\br>\b> Set your cluster QRA locator
3999
4000
4001   1\b11\b1.\b.9\b92\b2.\b.  s\bse\bet\bt/\b/q\bqr\bra\ba (\b(0\b0)\b)
4002
4003   s\bse\bet\bt/\b/q\bqr\bra\ba <\b<l\blo\boc\bca\bat\bto\bor\br>\b> Set your QRA locator
4004
4005
4006   Tell the system what your QRA (or Maidenhead) locator is. If you have
4007   not done a SET/LOCATION then your latitude and longitude will be set
4008   roughly correctly (assuming your locator is correct ;-). For example:-
4009
4010
4011     SET/QRA JO02LQ
4012
4013
4014
4015
4016   1\b11\b1.\b.9\b93\b3.\b.  s\bse\bet\bt/\b/q\bqt\bth\bh (\b(0\b0)\b)
4017
4018   s\bse\bet\bt/\b/q\bqt\bth\bh <\b<y\byo\bou\bur\br Q\bQT\bTH\bH>\b> Set your QTH
4019
4020
4021   Tell the system where your are.  For example:-
4022
4023
4024     set/qth East Dereham, Norfolk
4025
4026
4027   1\b11\b1.\b.9\b94\b4.\b.  s\bse\bet\bt/\b/t\bta\bal\blk\bk (\b(0\b0)\b)
4028
4029   s\bse\bet\bt/\b/t\bta\bal\blk\bk Allow talk messages to be seen at your console
4030
4031
4032   Allow talk messages to arrive at your console.  You can switch off
4033   talks with the _\bu_\bn_\bs_\be_\bt_\b/_\bt_\ba_\bl_\bk command.
4034
4035
4036   1\b11\b1.\b.9\b95\b5.\b.  s\bse\bet\bt/\b/w\bwc\bcy\by (\b(0\b0)\b)
4037
4038   s\bse\bet\bt/\b/w\bwc\bcy\by Allow WCY messages to be seen at your console
4039
4040
4041   Allow WCY information to be seen at your console.  You can switch off
4042   WCY messages with the _\bu_\bn_\bs_\be_\bt_\b/_\bw_\bc_\by command.
4043
4044
4045   1\b11\b1.\b.9\b96\b6.\b.  s\bse\bet\bt/\b/w\bww\bwv\bv (\b(0\b0)\b)
4046
4047   s\bse\bet\bt/\b/w\bww\bwv\bv Allow WWV messages to be seen at your console
4048
4049
4050   Allow WWV information to be seen at your console.  You can switch off
4051   WWV messages with the _\bu_\bn_\bs_\be_\bt_\b/_\bw_\bw_\bv command.
4052
4053
4054   1\b11\b1.\b.9\b97\b7.\b.  s\bse\bet\bt/\b/w\bwx\bx (\b(0\b0)\b)
4055
4056   s\bse\bet\bt/\b/w\bwx\bx Allow WX messages to be seen at your console
4057
4058
4059   Allow WX information to be seen at your console.  You can switch off
4060   WX messages with the _\bu_\bn_\bs_\be_\bt_\b/_\bw_\bx command.
4061
4062
4063   1\b11\b1.\b.9\b98\b8.\b.  s\bsh\bho\bow\bw/\b/b\bba\bad\bdn\bno\bod\bde\be (\b(6\b6)\b)
4064
4065   s\bsh\bho\bow\bw/\b/b\bba\bad\bdn\bno\bod\bde\be Show all the bad nodes in the system
4066
4067
4068   Display all the bad node callsigns in the system, see SET/BADNODE for
4069   more information.
4070
4071
4072   1\b11\b1.\b.9\b99\b9.\b.  s\bsh\bho\bow\bw/\b/d\bda\bat\bte\be (\b(0\b0)\b)
4073
4074   s\bsh\bho\bow\bw/\b/d\bda\bat\bte\be [\b[<\b<p\bpr\bre\bef\bfi\bix\bx>\b>|\b|<\b<c\bca\bal\bll\bls\bsi\big\bgn\bn>\b>]\b] Show the local time
4075
4076
4077   This is very nearly the same as SHOW/TIME, the only difference the
4078   format of the date string if no arguments are given.
4079
4080   If no prefixes or callsigns are given then this command returns the
4081   local time and UTC as the computer has it right now. If you give some
4082   prefixes then it will show UTC and UTC + the local offset (not
4083   including DST) at the prefixes or callsigns that you specify.
4084
4085
4086   1\b11\b1.\b.1\b10\b00\b0.\b.  s\bsh\bho\bow\bw/\b/d\bdx\bx (\b(0\b0)\b)
4087
4088   s\bsh\bho\bow\bw/\b/d\bdx\bx [\b[o\bop\bpt\bti\bio\bon\bns\bs]\b] interrogate the spot database
4089
4090
4091   If you just type SHOW/DX you will get the last so many spots (sysop
4092   configurable, but usually 10).
4093   In addition you can add any number of these options in very nearly any
4094   order to the basic SHOW/DX command, they are:-
4095
4096
4097
4098   on <band>       - eg 160m 20m 2m 23cm 6mm
4099   on <region>     - eg hf vhf uhf shf      (see SHOW/BANDS)
4100
4101   <number>        - the number of spots you want
4102   <from>-<to>     - <from> spot no <to> spot no in
4103                     the selected list
4104
4105   <prefix>        - for a spotted callsign beginning with <prefix>
4106   *<suffix>       - for a spotted callsign ending in <suffix>
4107   *<string>*      - for a spotted callsign containing <string>
4108
4109   day <number>    - starting <number> days ago
4110   day <from>-<to> - <from> days <to> days ago
4111
4112   info <text>     - any spots containing <text> in the info or remarks
4113
4114   by <call>       - any spots spotted by <call> (spotter <call>
4115                           is the same).
4116
4117   qsl             - this automatically looks for any qsl info on the call
4118                     held in the spot database.
4119
4120   iota [<iota>]   - If the iota island number is missing it will
4121                     look for the string iota and anything which looks like
4122                     an iota island number. If you specify then it will look
4123                     for that island.
4124
4125   qra [<locator>] - this will look for the specific locator if
4126                     you specify one or else anything that looks like a locator.
4127
4128
4129
4130   e.g.
4131
4132
4133
4134      SH/DX 9m0
4135      SH/DX on 20m info iota
4136      SH/DX 9a on vhf day 30
4137      SH/DX rf1p qsl
4138      SH/DX iota
4139      SH/DX iota eu-064
4140      SH/DX qra jn86
4141
4142
4143
4144
4145   1\b11\b1.\b.1\b10\b01\b1.\b.  s\bsh\bho\bow\bw/\b/d\bdx\bxc\bcc\bc (\b(0\b0)\b)
4146
4147   s\bsh\bho\bow\bw/\b/d\bdx\bxc\bcc\bc <\b<p\bpr\bre\bef\bfi\bix\bx>\b> Interrogate the spot database by country
4148
4149
4150   This command takes the <prefix> (which can be a full or partial
4151   callsign if desired), looks up which internal country number it is and
4152   then displays all the spots as per SH/DX for that country.
4153
4154   The options for SHOW/DX also apply to this command.  e.g.
4155
4156
4157
4158
4159      SH/DXCC G
4160      SH/DXCC W on 20m info iota
4161
4162
4163
4164
4165   1\b11\b1.\b.1\b10\b02\b2.\b.  s\bsh\bho\bow\bw/\b/f\bfi\bil\ble\bes\bs (\b(0\b0)\b)
4166
4167   s\bsh\bho\bow\bw/\b/f\bfi\bil\ble\bes\bs [\b[<\b<f\bfi\bil\ble\bea\bar\bre\bea\ba>\b> [\b[<\b<s\bst\btr\bri\bin\bng\bg>\b>]\b]]\b] List the contents of a filearea
4168
4169
4170   SHOW/FILES on its own will show you a list of the various fileareas
4171   available on the system. To see the contents of a particular file area
4172   type:-
4173
4174
4175      SH/FILES <filearea>
4176
4177
4178
4179   where <filearea> is the name of the filearea you want to see the
4180   contents of.
4181
4182   You can also use shell globbing characters like '*' and '?' in a
4183   string to see a selection of files in a filearea eg:-
4184
4185
4186      SH/FILES bulletins arld*
4187
4188
4189
4190   See also TYPE - to see the contents of a file.
4191
4192
4193   1\b11\b1.\b.1\b10\b03\b3.\b.  s\bsh\bho\bow\bw/\b/f\bfi\bil\blt\bte\ber\br (\b(0\b0)\b)
4194
4195   s\bsh\bho\bow\bw/\b/f\bfi\bil\blt\bte\ber\br Show the filters you have set
4196
4197
4198   Show the contents of all the filters that are set by you. This command
4199   displays all the filters set - for all the various categories.
4200
4201
4202   1\b11\b1.\b.1\b10\b04\b4.\b.  s\bsh\bho\bow\bw/\b/f\bfi\bil\blt\bte\ber\br (\b(e\bex\bxt\bte\ben\bnd\bde\bed\bd f\bfo\bor\br s\bsy\bys\bso\bop\bps\bs)\b) (\b(5\b5)\b)
4203
4204   s\bsh\bho\bow\bw/\b/f\bfi\bil\blt\bte\ber\br <\b<c\bca\bal\bll\bls\bsi\big\bgn\bn>\b> Show the filters set by <callsign>
4205
4206
4207   A sysop can look at any filters that have been set.
4208
4209
4210   1\b11\b1.\b.1\b10\b05\b5.\b.  s\bsh\bho\bow\bw/\b/h\bho\bop\bps\bs (\b(8\b8)\b)
4211
4212   s\bsh\bho\bow\bw/\b/h\bho\bop\bps\bs <\b<n\bno\bod\bde\be_\b_c\bca\bal\bll\bl>\b> [\b[a\ban\bnn\bn|\b|s\bsp\bpo\bot\bts\bs|\b|w\bwc\bcy\by|\b|w\bww\bwv\bv|\b|]\b] Show the hop counts for a
4213   node
4214
4215
4216   This command shows the hop counts set up for a node. You can specify
4217   which category you want to see. If you leave the category out then all
4218   the categories will be listed.
4219
4220
4221   1\b11\b1.\b.1\b10\b06\b6.\b.  s\bsh\bho\bow\bw/\b/i\bis\bso\bol\bla\bat\bte\be (\b(1\b1)\b)
4222
4223   s\bsh\bho\bow\bw/\b/i\bis\bso\bol\bla\bat\bte\be Show a list of isolated nodes
4224
4225   Show which nodes are currently set to be isolated.
4226
4227
4228   1\b11\b1.\b.1\b10\b07\b7.\b.  s\bsh\bho\bow\bw/\b/l\blo\boc\bck\bko\bou\but\bt (\b(9\b9)\b)
4229
4230   s\bsh\bho\bow\bw/\b/l\blo\boc\bck\bko\bou\but\bt Show a list of excluded callsigns
4231
4232
4233   Show a list of callsigns that have been excluded (locked out) of the
4234   cluster locally with the _\bs_\be_\bt_\b/_\bl_\bo_\bc_\bk_\bo_\bu_\bt command
4235
4236
4237   1\b11\b1.\b.1\b10\b08\b8.\b.  s\bsh\bho\bow\bw/\b/m\bmo\boo\bon\bn (\b(0\b0)\b)
4238
4239   s\bsh\bho\bow\bw/\b/m\bmo\boo\bon\bn [\b[<\b<p\bpr\bre\bef\bfi\bix\bx>\b>|\b|<\b<c\bca\bal\bll\bls\bsi\big\bgn\bn>\b>]\b] Show moon rise and set times
4240
4241
4242   Show the Moon rise and set times for a (list of) prefixes or
4243   callsigns, together with the azimuth and elevation of the sun
4244   currently at those locations.
4245
4246   If you don't specify any prefixes or callsigns, it will show the times
4247   for your QTH (assuming you have set it with either SET/LOCATION or
4248   SET/QRA), together with the current azimuth and elevation.
4249
4250   In addition, it will show the gain or loss dB relative to the nominal
4251   distance of 385,000Km due to the ellipsoidal nature of the orbit.
4252
4253   If all else fails it will show the Moonrise and set times for the node
4254   that you are connected to.
4255
4256   For example:-
4257
4258
4259     SH/MOON
4260     SH/MOON G1TLH W5UN
4261
4262
4263
4264
4265   1\b11\b1.\b.1\b10\b09\b9.\b.  s\bsh\bho\bow\bw/\b/m\bmu\buf\bf (\b(0\b0)\b)
4266
4267   s\bsh\bho\bow\bw/\b/m\bmu\buf\bf <\b<p\bpr\bre\bef\bfi\bix\bx>\b> [\b[<\b<h\bho\bou\bur\brs\bs>\b>]\b][\b[l\blo\bon\bng\bg]\b] Show the likely propagation to
4268   <prefix>
4269
4270
4271   This command allow you to estimate the likelihood of you contacting a
4272   station with the prefix you have specified. The output assumes a
4273   modest power of 20dBW and receiver sensitivity of -123dBm (about
4274   0.15muV/10dB SINAD)
4275
4276   The result predicts the most likely operating frequencies and signal
4277   levels for high frequency (shortwave) radio propagation paths on
4278   specified days of the year and hours of the day. It is most useful for
4279   paths between 250 km and 6000 km, but can be used with reduced
4280   accuracy for paths shorter or longer than this.
4281
4282   The command uses a routine MINIMUF 3.5 developed by the U.S. Navy and
4283   used to predict the MUF given the predicted flux, day of the year,
4284   hour of the day and geographic coordinates of the transmitter and
4285   receiver. This routine is reasonably accurate for the purposes here,
4286   with a claimed RMS error of 3.8 MHz, but much smaller and less complex
4287   than the programs used by major shortwave broadcasting organizations,
4288   such as the Voice of America.
4289
4290
4291   The command will display some header information detailing its
4292   assumptions, together with the locations, latitude and longitudes and
4293   bearings. It will then show UTC (UT), local time at the other end
4294   (LT), calculate the MUFs, Sun zenith angle at the midpoint of the path
4295   (Zen) and the likely signal strengths. Then for each frequency for
4296   which the system thinks there is a likelihood of a circuit it prints a
4297   value.
4298
4299   The value is currently a likely S meter reading based on the
4300   conventional 6dB / S point scale. If the value has a '+' appended it
4301   means that it is 1/2 an S point stronger. If the value is preceeded by
4302   an 'm' it means that there is likely to be much fading and by an 's'
4303   that the signal is likely to be noisy.
4304
4305   By default SHOW/MUF will show the next two hours worth of data. You
4306   can specify anything up to 24 hours worth of data by appending the no
4307   of hours required after the prefix. For example:-
4308
4309
4310     SH/MUF W
4311
4312
4313
4314   produces:
4315
4316
4317     RxSens: -123 dBM SFI: 159   R: 193   Month: 10   Day: 21
4318     Power :   20 dBW    Distance:  6283 km    Delay: 22.4 ms
4319     Location                       Lat / Long           Azim
4320     East Dereham, Norfolk          52 41 N 0 57 E         47
4321     United-States-W                43 0 N 87 54 W        299
4322     UT LT  MUF Zen  1.8  3.5  7.0 10.1 14.0 18.1 21.0 24.9 28.0 50.0
4323     18 23 11.5 -35  mS0+ mS2   S3
4324     19  0 11.2 -41  mS0+ mS2   S3
4325
4326
4327
4328   indicating that you will have weak, fading circuits on top band and
4329   80m but usable signals on 40m (about S3).
4330
4331   inputing:-
4332
4333
4334     SH/MUF W 24
4335
4336
4337
4338   will get you the above display, but with the next 24 hours worth of
4339   propagation data.
4340
4341
4342     SH/MUF W L 24
4343     SH/MUF W 24 Long
4344
4345
4346
4347   Gives you an estimate of the long path propagation characterics. It
4348   should be noted that the figures will probably not be very useful, nor
4349   terrible accurate, but it is included for completeness.
4350
4351
4352   1\b11\b1.\b.1\b11\b10\b0.\b.  s\bsh\bho\bow\bw/\b/n\bno\bod\bde\be (\b(1\b1)\b)
4353
4354   s\bsh\bho\bow\bw/\b/n\bno\bod\bde\be [\b[<\b<n\bno\bod\bde\be_\b_c\bca\bal\bll\bl>\b> .\b..\b..\b.]\b] Show the type and version number of nodes
4355
4356
4357   Show the type and version (if connected) of the nodes specified on the
4358   command line. If no callsigns are specified then a sorted list of all
4359   the non-user callsigns known to the system will be displayed.
4360
4361
4362   1\b11\b1.\b.1\b11\b11\b1.\b.  s\bsh\bho\bow\bw/\b/p\bpr\bre\bef\bfi\bix\bx (\b(0\b0)\b)
4363
4364   s\bsh\bho\bow\bw/\b/p\bpr\bre\bef\bfi\bix\bx <\b<c\bca\bal\bll\bls\bsi\big\bgn\bn>\b> Interrogate the prefix database
4365
4366
4367   This command takes the <callsign> (which can be a full or partial
4368   callsign or a prefix), looks up which internal country number it is
4369   and then displays all the relevant prefixes for that country together
4370   with the internal country no, the CQ and ITU regions.
4371
4372   See also SHOW/DXCC
4373
4374
4375
4376   1\b11\b1.\b.1\b11\b12\b2.\b.  s\bsh\bho\bow\bw/\b/p\bpr\bro\bog\bgr\bra\bam\bm (\b(5\b5)\b)
4377
4378   s\bsh\bho\bow\bw/\b/p\bpr\bro\bog\bgr\bra\bam\bm Show the locations of all the included program modules
4379
4380
4381   Show the name and location where every program module was load from.
4382   This is useful for checking where you think you have loaded a .pm file
4383   from.
4384
4385
4386   1\b11\b1.\b.1\b11\b13\b3.\b.  s\bsh\bho\bow\bw/\b/q\bqr\bra\ba (\b(0\b0)\b)
4387
4388   s\bsh\bho\bow\bw/\b/q\bqr\bra\ba <\b<l\blo\boc\bca\bat\bto\bor\br>\b> [\b[<\b<l\blo\boc\bca\bat\bto\bor\br>\b>]\b] Show the distance between locators
4389   s\bsh\bho\bow\bw/\b/q\bqr\bra\ba <\b<l\bla\bat\bt>\b> <\b<l\blo\bon\bng\bg>\b> Convert latitude and longitude to a locator
4390
4391
4392   This is a multipurpose command that allows you either to calculate the
4393   distance and bearing between two locators or (if only one locator is
4394   given on the command line) the distance and beraing from your station
4395   to the locator. For example:-
4396
4397
4398   SH/QRA IO92QL
4399   SH/QRA JN06 IN73
4400
4401
4402
4403   The first example will show the distance and bearing to the locator
4404   from yourself, the second example will calculate the distance and
4405   bearing from the first locator to the second. You can use 4 or 6
4406   character locators.
4407
4408   It is also possible to convert a latitude and longitude to a locator
4409   by using this command with a latitude and longitude as an argument,
4410   for example:-
4411
4412
4413   SH/QRA 52 41 N 0 58 E
4414
4415
4416
4417
4418   1\b11\b1.\b.1\b11\b14\b4.\b.  s\bsh\bho\bow\bw/\b/q\bqr\brz\bz (\b(0\b0)\b)
4419
4420   s\bsh\bho\bow\bw/\b/q\bqr\brz\bz <\b<c\bca\bal\bll\bls\bsi\big\bgn\bn>\b> Show any callbook details on a callsign
4421
4422
4423   This command queries the QRZ callbook server on the internet and
4424   returns any information available for that callsign. This service is
4425   provided for users of this software by http://www.qrz.com
4426
4427
4428   1\b11\b1.\b.1\b11\b15\b5.\b.  s\bsh\bho\bow\bw/\b/s\bsa\bat\bte\bel\bll\bli\bit\bte\be (\b(0\b0)\b)
4429
4430   s\bsh\bho\bow\bw/\b/s\bsa\bat\bte\bel\bll\bli\bit\bte\be <\b<n\bna\bam\bme\be>\b> [\b[<\b<h\bho\bou\bur\brs\bs>\b> <\b<i\bin\bnt\bte\ber\brv\bva\bal\bl>\b>]\b] Show satellite tracking
4431   data
4432
4433
4434   Show the tracking data from your location to the satellite of your
4435   choice from now on for the next few hours.
4436
4437   If you use this command without a satellite name it will display a
4438   list of all the satellites known currently to the system.
4439
4440   If you give a name then you can obtain tracking data of all the passes
4441   that start and finish 5 degrees below the horizon. As default it will
4442   give information for the next three hours for every five minute
4443   period.
4444
4445   You can alter the number of hours and the step size, within certain
4446   limits.
4447
4448   Each pass in a period is separated with a row of '-----' characters
4449
4450   So for example:-
4451
4452
4453   SH/SAT AO-10
4454   SH/SAT FENGYUN1 12 2
4455
4456
4457
4458
4459   1\b11\b1.\b.1\b11\b16\b6.\b.  s\bsh\bho\bow\bw/\b/s\bsu\bun\bn (\b(0\b0)\b)
4460
4461   s\bsh\bho\bow\bw/\b/s\bsu\bun\bn [\b[<\b<p\bpr\bre\bef\bfi\bix\bx>\b>|\b|<\b<c\bca\bal\bll\bls\bsi\big\bgn\bn>\b>]\b] Show sun rise and set times
4462
4463
4464   Show the sun rise and set times for a (list of) prefixes or callsigns,
4465   together with the azimuth and elevation of the sun currently at those
4466   locations.
4467
4468   If you don't specify any prefixes or callsigns, it will show the times
4469   for your QTH (assuming you have set it with either SET/LOCATION or
4470   SET/QRA), together with the current azimuth and elevation.
4471
4472   If all else fails it will show the sunrise and set times for the node
4473   that you are connected to.
4474
4475   For example:-
4476
4477
4478     SH/SUN
4479     SH/SUN G1TLH K9CW ZS
4480
4481
4482
4483
4484   1\b11\b1.\b.1\b11\b17\b7.\b.  s\bsh\bho\bow\bw/\b/t\bti\bim\bme\be (\b(0\b0)\b)
4485
4486   s\bsh\bho\bow\bw/\b/t\bti\bim\bme\be [\b[<\b<p\bpr\bre\bef\bfi\bix\bx>\b>|\b|<\b<c\bca\bal\bll\bls\bsi\big\bgn\bn>\b>]\b] Show the local time
4487
4488
4489   If no prefixes or callsigns are given then this command returns the
4490   local time and UTC as the computer has it right now. If you give some
4491   prefixes then it will show UTC and UTC + the local offset (not
4492   including DST) at the prefixes or callsigns that you specify.
4493
4494
4495   1\b11\b1.\b.1\b11\b18\b8.\b.  s\bsh\bho\bow\bw/\b/w\bwc\bcy\by (\b(0\b0)\b)
4496
4497   s\bsh\bho\bow\bw/\b/w\bwc\bcy\by Show the last 10 WCY broadcasts
4498   s\bsh\bho\bow\bw/\b/w\bwc\bcy\by <\b<n\bn>\b> Show the last <n> WCY broadcasts
4499
4500
4501   Display the most recent WCY information that has been received by the
4502   system
4503
4504
4505   1\b11\b1.\b.1\b11\b19\b9.\b.  s\bsh\bho\bow\bw/\b/w\bww\bwv\bv (\b(0\b0)\b)
4506
4507   s\bsh\bho\bow\bw/\b/w\bww\bwv\bv Show the last 10 WWV broadcasts
4508   s\bsh\bho\bow\bw/\b/w\bww\bwv\bv <\b<n\bn>\b> Show the last <n> WWV broadcasts
4509
4510
4511   Display the most recent WWV information that has been received by the
4512   system
4513
4514
4515
4516   1\b11\b1.\b.1\b12\b20\b0.\b.  s\bsh\bhu\but\btd\bdo\bow\bwn\bn (\b(5\b5)\b)
4517
4518   s\bsh\bhu\but\btd\bdo\bow\bwn\bn Shutdown the cluster
4519
4520
4521   Shutdown the cluster and disconnect all the users.  If you have Spider
4522   set to respawn in /etc/inittab it will of course restart.
4523
4524
4525   1\b11\b1.\b.1\b12\b21\b1.\b.  s\bsp\bpo\boo\bof\bf (\b(9\b9)\b)
4526
4527   s\bsp\bpo\boo\bof\bf <\b<c\bca\bal\bll\bls\bsi\big\bgn\bn>\b> <\b<c\bco\bom\bmm\bma\ban\bnd\bd>\b> Run commands as another user
4528
4529
4530   This is a very simple yet powerful command for the sysop.  It allows
4531   you to issue commands as if you were a different user.  This is very
4532   useful for the kind of things that users seem to always get wrong..
4533   like home_node for example.
4534
4535
4536   1\b11\b1.\b.1\b12\b22\b2.\b.  s\bst\bta\bat\bt/\b/d\bdb\bb (\b(5\b5)\b)
4537
4538   s\bst\bta\bat\bt/\b/d\bdb\bb <\b<d\bdb\bbn\bna\bam\bme\be>\b> Show the status of a database
4539
4540
4541   Show the internal status of a database descriptor.
4542
4543   Depending on your privilege level you will see more or less
4544   information.  This command is unlikely to be of much use to anyone
4545   other than a sysop.
4546
4547
4548   1\b11\b1.\b.1\b12\b23\b3.\b.  s\bst\bta\bat\bt/\b/c\bch\bha\ban\bnn\bne\bel\bl (\b(5\b5)\b)
4549
4550   s\bst\bta\bat\bt/\b/c\bch\bha\ban\bnn\bne\bel\bl <\b<c\bca\bal\bll\bls\bsi\big\bgn\bn>\b> Show the status of a channel on the cluster
4551
4552
4553   Show the internal status of the channel object either for the channel
4554   that you are on or else for the callsign that you asked for.
4555   Only the fields that are defined (in perl term) will be displayed.
4556
4557
4558   1\b11\b1.\b.1\b12\b24\b4.\b.  s\bst\bta\bat\bt/\b/m\bms\bsg\bg (\b(5\b5)\b)
4559
4560   s\bst\bta\bat\bt/\b/m\bms\bsg\bg <\b<m\bms\bsg\bgn\bno\bo>\b> Show the status of a message
4561
4562
4563   This command shows the internal status of a message and includes
4564   information such as to whom it has been forwarded, its size, origin
4565   etc etc.
4566
4567
4568   1\b11\b1.\b.1\b12\b25\b5.\b.  s\bst\bta\bat\bt/\b/u\bus\bse\ber\br (\b(5\b5)\b)
4569
4570   s\bst\bta\bat\bt/\b/u\bus\bse\ber\br <\b<c\bca\bal\bll\bls\bsi\big\bgn\bn>\b> Show the full status of a user
4571
4572
4573   Shows the full contents of a user record including all the secret
4574   flags and stuff.
4575
4576   Only the fields that are defined (in perl term) will be displayed.
4577
4578
4579   1\b11\b1.\b.1\b12\b26\b6.\b.  s\bsy\bys\bso\bop\bp (\b(0\b0)\b)
4580
4581   s\bsy\bys\bso\bop\bp Regain your privileges if you login remotely
4582
4583
4584   The system automatically reduces your privilege level to that of a
4585   normal user if you login in remotely. This command allows you to
4586   regain your normal privilege level. It uses the normal system: five
4587   numbers are returned that are indexes into the character array that is
4588   your assigned password (see SET/PASSWORD). The indexes start from
4589   zero.
4590
4591   You are expected to return a string which contains the characters
4592   required in the correct order. You may intersperse those characters
4593   with others to obscure your reply for any watchers. For example (and
4594   these values are for explanation :-):
4595
4596
4597     password = 012345678901234567890123456789
4598     > sysop
4599     22 10 15 17 3
4600
4601
4602
4603   you type:-
4604
4605
4606    aa2bbbb0ccc5ddd7xxx3n
4607    or 2 0 5 7 3
4608    or 20573
4609
4610
4611
4612   They will all match. If there is no password you will still be offered
4613   numbers but nothing will happen when you input a string. Any match is
4614   case sensitive.
4615
4616
4617   1\b11\b1.\b.1\b12\b27\b7.\b.  t\bta\bal\blk\bk (\b(0\b0)\b)
4618
4619   t\bta\bal\blk\bk <\b<c\bca\bal\bll\bls\bsi\big\bgn\bn>\b> Enter talk mode with <callsign>
4620   t\bta\bal\blk\bk <\b<c\bca\bal\bll\bls\bsi\big\bgn\bn>\b> <\b<t\bte\bex\bxt\bt>\b> Send a text message to <callsign>
4621   t\bta\bal\blk\bk <\b<c\bca\bal\bll\bls\bsi\big\bgn\bn>\b> >\b> <\b<n\bno\bod\bde\be_\b_c\bca\bal\bll\bl>\b> [\b[<\b<t\bte\bex\bxt\bt>\b>]\b] Send a text message to
4622   <callsign> via <node_call>
4623
4624
4625   Send a short message to any other station that is visible on the
4626   cluster system. You can send it to anyone you can see with a
4627   SHOW/CONFIGURATION command, they don't have to be connected locally.
4628
4629   The second form of TALK is used when other cluster nodes are connected
4630   with restricted information. This usually means that they don't send
4631   the user information usually associated with logging on and off the
4632   cluster.
4633
4634   If you know that G3JNB is likely to be present on GB7TLH, but you can
4635   only see GB7TLH in the SH/C list but with no users, then you would use
4636   the second form of the talk message.
4637
4638   If you want to have a ragchew with someone you can leave the text
4639   message out and the system will go into 'Talk' mode. What this means
4640   is that a short message is sent to the recipient telling them that you
4641   are in a 'Talking' frame of mind and then you just type - everything
4642   you send will go to the station that you asked for.
4643
4644   All the usual announcements, spots and so on will still come out on
4645   your terminal.
4646
4647   If you want to do something (such as send a spot) you precede the
4648   normal command with a '/' character, eg:-
4649
4650
4651      /DX 14001 G1TLH What's a B class licensee doing on 20m CW?
4652      /HELP talk
4653
4654
4655
4656   To leave talk mode type:
4657
4658
4659      /EX
4660
4661
4662
4663
4664   1\b11\b1.\b.1\b12\b28\b8.\b.  t\bty\byp\bpe\be (\b(0\b0)\b)
4665
4666   t\bty\byp\bpe\be <\b<f\bfi\bil\ble\bea\bar\bre\bea\ba>\b>/\b/<\b<n\bna\bam\bme\be>\b> Look at a file in one of the fileareas
4667
4668
4669   Type out the contents of a file in a filearea. So, for example, in
4670   filearea 'bulletins' you want to look at file 'arld051' you would
4671   enter:-
4672
4673
4674      TYPE bulletins/arld051
4675
4676
4677
4678   See also SHOW/FILES to see what fileareas are available and a list of
4679   content.
4680
4681
4682   1\b11\b1.\b.1\b12\b29\b9.\b.  w\bwh\bho\bo (\b(0\b0)\b)
4683
4684   w\bwh\bho\bo Show who is physically connected locally
4685
4686
4687   This is a quick listing that shows which callsigns are connected and
4688   what sort of connection they have
4689
4690
4691   1\b11\b1.\b.1\b13\b30\b0.\b.  w\bwx\bx (\b(0\b0)\b)
4692
4693   w\bwx\bx <\b<t\bte\bex\bxt\bt>\b> Send a weather message to local users
4694   w\bwx\bx f\bfu\bul\bll\bl <\b<t\bte\bex\bxt\bt>\b>  Send a weather message to all cluster users
4695
4696
4697   Weather messages can sometimes be useful if you are experiencing an
4698   extreme that may indicate enhanced conditions
4699
4700
4701   1\b11\b1.\b.1\b13\b31\b1.\b.  w\bwx\bx (\b(e\ben\bnh\bha\ban\bnc\bce\bed\bd f\bfo\bor\br s\bsy\bys\bso\bop\bps\bs)\b) (\b(5\b5)\b)
4702
4703   w\bwx\bx s\bsy\bys\bso\bop\bp <\b<t\bte\bex\bxt\bt>\b> Send a weather message to other clusters only
4704
4705
4706   Send a weather message only to other cluster nodes and not to general
4707   users.
4708
4709
4710
4711
4712
4713
4714
4715
4716
4717
4718
4719
4720
4721
4722
4723
4724
4725
4726
4727
4728
4729
4730
4731
4732
4733
4734
4735
4736
4737
4738
4739
4740
4741
4742
4743
4744
4745
4746
4747
4748
4749
4750
4751
4752