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