Alterations to html etc
[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
2459   some examples:-
2460
2461
2462
2463          acc/ann dest 6MUK
2464          acc/ann 2 by_zone 14,15,16
2465          (this could be all on one line: acc/ann dest 6MUK or by_zone 14,15,16)
2466
2467
2468
2469
2470   or
2471
2472
2473
2474          acc/ann by G,M,2
2475
2476
2477
2478
2479   This filter would only allow announces that were posted buy UK
2480   stations.  You can use the tag 'all' to accept everything eg:
2481
2482
2483
2484          acc/ann all
2485
2486
2487
2488
2489   but this probably for advanced users...
2490
2491
2492   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)
2493
2494   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
2495   version
2496
2497
2498   This version allows a sysop to set a filter for a callsign as well as
2499   the default for nodes and users eg:-
2500
2501
2502
2503          accept/ann by G,M,2
2504          accept/ann input node_default by G,M,2
2505          accept/ann user_default by G,M,2
2506
2507
2508
2509   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)
2510
2511   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
2512
2513
2514   Create an 'accept this spot' line for a filter.
2515
2516
2517   An accept filter line means that if the spot matches this filter it is
2518   passed onto the user. See HELP FILTERS for more info. Please read this
2519   to understand how filters work - it will save a lot of grief later on.
2520
2521   You can use any of the following things in this line:-
2522
2523
2524
2525          freq <range>           eg: 0/30000 or hf or hf/cw or 6m,4m,2m
2526          on <range>             same as 'freq'
2527          call <prefixes>        eg: G,PA,HB9
2528          info <string>          eg: iota or qsl
2529          by <prefixes>
2530          call_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
2531          call_itu <numbers>
2532          call_zone <numbers>
2533          by_dxcc <numbers>
2534          by_itu <numbers>
2535          by_zone <numbers>
2536          origin <prefixes>
2537          channel <prefixes>
2538
2539
2540
2541
2542
2543   For frequencies, you can use any of the band names defined in
2544   SHOW/BANDS and you can use a subband name like: cw, rtty, data, ssb -
2545   thus: hf/ssb. You can also just have a simple range like: 0/30000 -
2546   this is more efficient than saying simply: freq HF (but don't get too
2547   hung up about that)
2548
2549   some examples:-
2550
2551
2552
2553          acc/spot 1 on hf/cw
2554          acc/spot 2 on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
2555
2556
2557
2558
2559   You can use the tag 'all' to accept everything, eg:
2560
2561
2562
2563          acc/spot 3 all
2564
2565
2566
2567
2568   but this probably for advanced users...
2569
2570
2571   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)
2572
2573   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
2574
2575   This version allows a sysop to set a filter for a callsign as well as
2576   the default for nodes and users eg:-
2577
2578
2579
2580          accept/spot db0sue-7 1 by_zone 14,15,16
2581          accept/spot node_default all
2582          set/hops node_default 10
2583
2584          accept/spot user_default by G,M,2
2585
2586
2587
2588
2589
2590   1\b11\b1.\b.5\b5.\b.  a\bac\bcc\bce\bep\bpt\bt/\b/w\bwc\bcy\by (\b(0\b0)\b)
2591
2592   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
2593
2594
2595   It is unlikely that you will want to do this, but if you do then you
2596   can filter on the following fields:-
2597
2598
2599
2600          by <prefixes>            eg: G,M,2
2601          origin <prefixes>
2602          origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
2603          origin_itu <numbers>
2604          origin_zone <numbers>
2605          by_dxcc <numbers>
2606          by_itu <numbers>
2607          by_zone <numbers>
2608          channel <prefixes>
2609
2610
2611
2612
2613
2614   There are no examples because WCY Broadcasts only come from one place
2615   and you either want them or not (see UNSET/WCY if you don't want
2616   them).
2617
2618   This command is really provided for future use.
2619
2620   See HELP FILTER for information.
2621
2622
2623   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)
2624
2625   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
2626
2627
2628   This version allows a sysop to set a filter for a callsign as well as
2629   the default for nodes and users eg:-
2630
2631
2632
2633          accept/wcy node_default all
2634          set/hops node_default 10
2635
2636
2637
2638
2639
2640
2641   1\b11\b1.\b.7\b7.\b.  a\bac\bcc\bce\bep\bpt\bt/\b/w\bww\bwv\bv (\b(0\b0)\b)
2642
2643   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
2644
2645
2646   It is unlikely that you will want to do this, but if you do then you
2647   can filter on the following fields:-
2648
2649
2650
2651          by <prefixes>            eg: G,M,2
2652          origin <prefixes>
2653          origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
2654          origin_itu <numbers>
2655          origin_zone <numbers>
2656          by_dxcc <numbers>
2657          by_itu <numbers>
2658          by_zone <numbers>
2659          channel <prefixes>
2660
2661
2662
2663
2664   for example
2665
2666
2667
2668          accept/wwv by_zone 4
2669
2670
2671
2672
2673   is probably the only useful thing to do (which will only show WWV
2674   broadcasts by stations in the US).
2675
2676   See HELP FILTER for information.
2677
2678
2679   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)
2680
2681   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
2682
2683
2684   This version allows a sysop to set a filter for a callsign as well as
2685   the default for nodes and users eg:-
2686
2687
2688
2689          accept/wwv db0sue-7 1 by_zone 4
2690          accept/wwv node_default all
2691          set/hops node_default 10
2692
2693          accept/wwv user_default by W,K
2694
2695
2696
2697
2698
2699   1\b11\b1.\b.9\b9.\b.  a\ban\bnn\bno\bou\bun\bnc\bce\be (\b(0\b0)\b)
2700
2701   a\ban\bnn\bno\bou\bun\bnc\bce\be <\b<t\bte\bex\bxt\bt>\b> Send an announcement to local users
2702
2703
2704   Send an announcement to LOCAL users only, where <text> is the text of
2705   the announcement you wish to broadcast
2706
2707   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)
2708
2709   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
2710
2711
2712   This command will send your announcement across the whole cluster
2713   network.
2714
2715
2716
2717   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)
2718
2719   a\ban\bnn\bno\bou\bun\bnc\bce\be s\bsy\bys\bso\bop\bp <\b<t\bte\bex\bxt\bt>\b>
2720
2721
2722   Send an announcement to Sysops only
2723
2724
2725   1\b11\b1.\b.1\b12\b2.\b.  a\bap\bpr\bro\bop\bpo\bos\bs (\b(0\b0)\b)
2726
2727   a\bap\bpr\bro\bop\bpo\bos\bs <\b<s\bst\btr\bri\bin\bng\bg>\b> Search the help database
2728
2729
2730   Search the help database for <string> (it isn't case sensitive), and
2731   print the names of all the commands that may be relevant.
2732
2733
2734   1\b11\b1.\b.1\b13\b3.\b.  b\bby\bye\be (\b(0\b0)\b)
2735
2736   b\bby\bye\be Exit from the cluster
2737
2738
2739   This will disconnect you from the cluster
2740
2741
2742   1\b11\b1.\b.1\b14\b4.\b.  c\bca\bat\btc\bch\bhu\bup\bp (\b(5\b5)\b)
2743
2744   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
2745
2746
2747   When you send messages the fact that you have forwarded it to another
2748   node is remembered so that it isn't sent again. When you have a new
2749   partner node and you add their callsign to your /spider/msg/forward.pl
2750   file, all outstanding non-private messages will be forwarded to them.
2751   This may well be ALL the non-private messages. You can prevent this by
2752   using these commmands:-
2753
2754
2755
2756          catchup GB7DJK all
2757          catchup GB7DJK 300 301 302 303 500-510
2758
2759
2760
2761
2762   and to undo what you have just done:-
2763
2764
2765
2766          uncatchup GB7DJK all
2767          uncatchup GB7DJK 300 301 302 303 500-510
2768
2769
2770
2771
2772
2773   which will arrange for them to be forward candidates again.
2774
2775   Order is not important.
2776
2777
2778   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)
2779
2780   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
2781
2782
2783   This command allows you to clear (remove) a line in a spot filter or
2784   to remove the whole filter.
2785
2786   If you have a filter:-
2787
2788
2789
2790          acc/spot 1 on hf/cw
2791          acc/spot 2 on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
2792
2793
2794
2795
2796   and you say:-
2797
2798
2799
2800          clear/spot 1
2801
2802
2803
2804
2805   you will be left with:-
2806
2807
2808
2809          acc/spot 2 on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
2810
2811
2812
2813
2814   If you do:
2815
2816
2817
2818          clear/spot all
2819
2820
2821
2822
2823   the filter will be completely removed.
2824
2825
2826
2827   1\b11\b1.\b.1\b16\b6.\b.  c\bco\bon\bnn\bne\bec\bct\bt (\b(5\b5)\b)
2828
2829   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
2830
2831
2832   Start a connection process that will culminate in a new connection to
2833   the DX cluster <callsign>. This process creates a new 'client' process
2834   which will use the script in /spider/connect/<callsign> to effect the
2835   'chat' exchange necessary to traverse the network(s) to logon to the
2836   cluster <callsign>.
2837
2838
2839   1\b11\b1.\b.1\b17\b7.\b.  d\bdb\bba\bav\bva\bai\bil\bl (\b(0\b0)\b)
2840
2841   d\bdb\bba\bav\bva\bai\bil\bl Show a list of all the databases in the system
2842
2843
2844   The title says it all really, this command lists all the databases
2845   defined in the system. It is also aliased to SHOW/COMMAND.
2846
2847
2848   1\b11\b1.\b.1\b18\b8.\b.  d\bdb\bbc\bcr\bre\bea\bat\bte\be (\b(9\b9)\b)
2849
2850   d\bdb\bbc\bcr\bre\bea\bat\bte\be <\b<n\bna\bam\bme\be>\b> Create a database entry
2851   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
2852   entry
2853   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
2854
2855
2856   DBCREATE allows you to define a database in the system. It doesn't
2857   actually create anything, just defines it.
2858
2859   The databases that are created are simple DB_File hash databases, they
2860   are therefore already 'indexed'.
2861
2862   You can define a local database with the first form of the command eg:
2863
2864   DBCREATE oblast
2865
2866   You can also chain databases with the addition of the 'chain' keyword.
2867   This will search each database one after the other. A typical example
2868   is:
2869
2870   DBCREATE sdx_qsl chain sql_ad
2871
2872   No checking is done to see if the any of the chained databases exist,
2873   in fact it is usually better to do the above statement first then do
2874   each of the chained databases.
2875
2876   Databases can exist offsite. To define a database that lives on
2877   another node do:
2878
2879   DBCREATE buckmaster remote gb7dxc
2880
2881   Remote databases cannot be chained; however, the last database in a a
2882   chain can be a remote database eg:
2883
2884   DBCREATE qsl chain gb7dxc
2885
2886   To see what databases have been defined do:
2887
2888   DBAVAIL (or it will have been aliased to SHOW/COMMAND)
2889
2890   It would be normal for you to add an entry into your local Aliases
2891   file to allow people to use the 'SHOW/<dbname>' style syntax. So you
2892   would need to add a line like:-
2893
2894
2895
2896          's' => [
2897            ..
2898            ..
2899            '^sh\w*/buc', 'dbshow buckmaster', 'dbshow',
2900            ..
2901            ..
2902           ],
2903
2904
2905   to allow
2906
2907   SH/BUCK g1tlh
2908
2909   to work as they may be used to.
2910
2911   See DBIMPORT for the importing of existing AK1A format data to
2912   databases.  See DBSHOW for generic database enquiry
2913
2914
2915   1\b11\b1.\b.1\b19\b9.\b.  d\bdb\bbi\bim\bmp\bpo\bor\brt\bt (\b(9\b9)\b)
2916
2917   d\bdb\bbi\bim\bmp\bpo\bor\brt\bt <\b<d\bdb\bbn\bna\bam\bme\be>\b> Import AK1A data into a database
2918
2919
2920   If you want to import or update data in bulk to a database you can use
2921   this command. It will either create or update entries into an existing
2922   database. For example:-
2923
2924   DBIMPORT oblast /tmp/OBLAST.FUL
2925
2926   will import the standard OBLAST database that comes with AK1A into the
2927   oblast database held locally.
2928
2929
2930   1\b11\b1.\b.2\b20\b0.\b.  d\bdb\bbr\bre\bem\bmo\bov\bve\be (\b(9\b9)\b)
2931
2932   d\bdb\bbr\bre\bem\bmo\bov\bve\be <\b<d\bdb\bbn\bna\bam\bme\be>\b> Delete a database
2933
2934
2935   DBREMOVE will completely remove a database entry and also delete any
2936   data file that is associated with it.
2937
2938   There is no warning, no comeback, no safety net.
2939
2940   For example:
2941
2942   DBREMOVE oblast
2943
2944   will remove the oblast database from the system and it will also
2945   remove the associated datafile.
2946
2947   I repeat:
2948
2949   There is no warning, no comeback, no safety net.
2950
2951   You have been warned.
2952
2953
2954   1\b11\b1.\b.2\b21\b1.\b.  d\bdb\bbs\bsh\bho\bow\bw (\b(0\b0)\b)
2955
2956   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
2957
2958
2959   This is the generic user interface to the database to the database
2960   system.  It is expected that the sysop will add an entry to the local
2961   Aliases file so that users can use the more familiar AK1A style of
2962   enquiry such as:
2963
2964
2965
2966          SH/BUCK G1TLH
2967
2968
2969
2970
2971   but if he hasn't and the database really does exist (use DBAVAIL or
2972   SHOW/COMMAND to find out) you can do the same thing with:
2973
2974
2975
2976          DBSHOW buck G1TLH
2977
2978
2979
2980
2981
2982
2983   1\b11\b1.\b.2\b22\b2.\b.  d\bde\beb\bbu\bug\bg (\b(9\b9)\b)
2984
2985   d\bde\beb\bbu\bug\bg Set the cluster program into debug mode
2986
2987
2988   Executing this command will only have an effect if you are running the
2989   cluster in debug mode i.e.
2990
2991
2992
2993                perl -d cluster.pl
2994
2995
2996
2997
2998   It will interrupt the cluster just after the debug command has
2999   finished.
3000
3001
3002   1\b11\b1.\b.2\b23\b3.\b.  d\bdi\bir\bre\bec\bct\bto\bor\bry\by (\b(0\b0)\b)
3003
3004   d\bdi\bir\bre\bec\bct\bto\bor\bry\by List messages
3005   d\bdi\bir\bre\bec\bct\bto\bor\bry\by o\bow\bwn\bn List your own messages
3006   d\bdi\bir\bre\bec\bct\bto\bor\bry\by n\bne\bew\bw List all new messages
3007   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>
3008   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>
3009   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
3010   d\bdi\bir\bre\bec\bct\bto\bor\bry\by <\b<n\bnn\bn>\b> List last <nn> messages
3011   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
3012
3013
3014   List the messages in the messages directory.
3015
3016   If there is a 'p' one space after the message number then it is a
3017   personal message. If there is a '-' between the message number and the
3018
3019   You can use shell escape characters such as '*' and '?' in the <call>
3020   fields.
3021
3022   You can combine some of the various directory commands together eg:-
3023
3024
3025
3026           DIR TO G1TLH 5
3027        or
3028           DIR SUBJECT IOTA 200-250
3029
3030
3031
3032
3033   You can abbreviate all the commands to one letter and use ak1a
3034   syntax:-
3035
3036
3037           DIR/T G1* 10
3038           DIR/S QSL 10-100 5
3039
3040
3041
3042
3043
3044
3045   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)
3046
3047   Works just like the user command except that sysops can see ALL
3048   messages.
3049
3050
3051   1\b11\b1.\b.2\b25\b5.\b.  d\bdi\bis\bsc\bco\bon\bnn\bne\bec\bct\bt (\b(8\b8)\b)
3052
3053   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
3054
3055
3056   Disconnect any <call> connected locally
3057
3058
3059   1\b11\b1.\b.2\b26\b6.\b.  d\bdx\bx (\b(0\b0)\b)
3060
3061   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
3062
3063
3064   This is how you send a DX Spot to other users. You can, in fact, now
3065   enter the <freq> and the <call> either way round.
3066
3067
3068
3069           DX FR0G 144.600
3070           DX 144.600 FR0G
3071           DX 144600 FR0G
3072
3073
3074
3075
3076   will all give the same result. You can add some remarks to the end of
3077   the command and they will be added to the spot.
3078
3079
3080
3081           DX FR0G 144600 this is a test
3082
3083
3084
3085
3086   You can credit someone else by saying:-
3087
3088
3089
3090           DX by G1TLH FR0G 144.600 he isn't on the cluster
3091
3092
3093
3094
3095   The <freq> is compared against the available bands set up in the
3096   cluster.  See SHOW/BANDS for more information.
3097
3098
3099   1\b11\b1.\b.2\b27\b7.\b.  e\bex\bxp\bpo\bor\brt\bt (\b(9\b9)\b)
3100
3101   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
3102
3103   Export a message to a file. This command can only be executed on a
3104   local console with a fully privileged user. The file produced will be
3105   in a form ready to be imported back into the cluster by placing it in
3106   the import directory (/spider/msg/import).
3107
3108   This command cannot overwrite an existing file. This is to provide
3109   some measure of security. Any files written will owned by the same
3110   user as the main cluster, otherwise you can put the new files anywhere
3111   the cluster can access. For example:-
3112
3113   EXPORT 2345 /tmp/a
3114
3115
3116   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)
3117
3118   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
3119
3120
3121   Export the users database to a file in ascii format. If no filename is
3122   given then it will export the file to /spider/data/user_asc.
3123
3124   If the file already exists it will be renamed to <filename>.o. In fact
3125   up to 5 generations of the file can be kept each one with an extra 'o'
3126   on the suffix.
3127
3128   BE WARNED: this will write to any file you have write access to. No
3129   check is made on the filename (if any) that you specify.
3130
3131
3132   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)
3133
3134   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
3135   another cluster
3136
3137
3138   This command sends all the latitude and longitude information that
3139   your cluster is holding against callsigns.  One advantage of recieving
3140   this information is that more locator information is held by you.
3141   This means that more locators are given on the DX line assuming you
3142   have _\bs_\be_\bt_\b/_\bd_\bx_\bg_\br_\bi_\bd enabled.  This could be a LOT of information though,
3143   so it is not recommended on slow links.
3144
3145
3146   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)
3147
3148   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
3149   clusters
3150
3151
3152   This command sends out any information held in the user file which can
3153   be broadcast in PC41 protocol packets. This information is Name, QTH,
3154   Location and Homenode. PC41s are only sent for the information that is
3155   available.
3156
3157
3158   1\b11\b1.\b.3\b31\b1.\b.  h\bhe\bel\blp\bp (\b(0\b0)\b)
3159
3160   h\bhe\bel\blp\bp <\b<c\bcm\bmd\bd>\b> Get help on a command
3161
3162
3163   All commands can be abbreviated, so SHOW/DX can be abbreviated to
3164   SH/DX, ANNOUNCE can be shortened to AN and so on.
3165
3166   Look at the APROPOS <string> command which will search the help
3167   database for the <string> you specify and give you a list of likely
3168   commands to look at with HELP.
3169   1\b11\b1.\b.3\b32\b2.\b.  i\bin\bni\bit\bt (\b(5\b5)\b)
3170
3171   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
3172
3173
3174   This command attempts to re-initialise a link to a (usually) AK1A node
3175   that has got confused, usually by a protocol loop of some kind. It may
3176   work - but you usually will be better off simply disconnecting it (or
3177   better, if it is a real AK1A node, doing an RCMD <node> DISC/F <your
3178   node>).
3179
3180   Best of luck - you will need it.
3181
3182
3183   1\b11\b1.\b.3\b33\b3.\b.  k\bki\bil\bll\bl (\b(0\b0)\b)
3184
3185   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
3186
3187
3188   Delete a message from the local system. You will only be able to
3189   delete messages that you have originated or been sent (unless you are
3190   the sysop).
3191
3192
3193   1\b11\b1.\b.3\b34\b4.\b.  k\bki\bil\bll\bl (\b(5\b5)\b)
3194
3195   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
3196   k\bki\bil\bll\bl f\bfr\bro\bom\bm <\b<c\bca\bal\bll\bl>\b> Remove all messages from a callsign
3197   k\bki\bil\bll\bl t\bto\bo <\b<c\bca\bal\bll\bl>\b> Remove all messages to a callsign
3198
3199
3200   You can get rid of any message to or originating from your callsign
3201   using this command. You can remove more than one message at a time.
3202
3203   As a sysop you can kill any message on the system.
3204
3205
3206   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
3207   c\bcl\blu\bus\bst\bte\ber\br k\bki\bil\bll\bl f\bfu\bul\bll\bl (\b(5\b5)\b)
3208
3209   Delete a message (usually a 'bulletin') from the whole cluster system.
3210
3211   This uses the subject field, so any messages that have exactly the
3212   same subject will be deleted. Beware!
3213
3214
3215   1\b11\b1.\b.3\b36\b6.\b.  l\bli\bin\bnk\bks\bs (\b(0\b0)\b)
3216
3217   l\bli\bin\bnk\bks\bs Show which nodes are physically connected
3218
3219
3220   This is a quick listing that shows which links are connected and some
3221   information about them. See WHO for a list of all connections.
3222
3223
3224
3225   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)
3226
3227   l\blo\boa\bad\bd/\b/a\bal\bli\bia\bas\bse\bes\bs Reload the command alias table
3228
3229
3230   Reload the /spider/cmd/Aliases file after you have editted it. You
3231   will need to do this if you change this file whilst the cluster is
3232   running in order for the changes to take effect.
3233
3234
3235   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)
3236
3237   Reload the /spider/data/baddx.pl file if you have changed it manually
3238   whilst the cluster is running. This table contains the DX Calls that,
3239   if spotted, will not be passed on. FR0G and TEST are classic examples.
3240
3241
3242   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)
3243
3244   l\blo\boa\bad\bd/\b/b\bba\bad\bdm\bms\bsg\bg Reload the bad message table
3245
3246
3247   Reload the /spider/msg/badmsg.pl file if you have changed it manually
3248   whilst the cluster is running. This table contains a number of perl
3249   regular expressions which are searched for in the fields targetted of
3250   each message.  If any of them match then that message is immediately
3251   deleted on receipt.
3252
3253
3254   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)
3255
3256   l\blo\boa\bad\bd/\b/b\bba\bad\bdw\bwo\bor\brd\bds\bs Reload the badwords file
3257
3258
3259   Reload the /spider/data/badwords file if you have changed it manually
3260   whilst the cluster is running. This file contains a list of words
3261   which, if found on certain text portions of PC protocol, will cause
3262   those protocol frames to be rejected. It will all put out a message if
3263   any of these words are used on the announce, dx and talk commands. The
3264   words can be one or more on a line, lines starting with '#' are
3265   ignored.
3266
3267
3268   1\b11\b1.\b.4\b41\b1.\b.  l\blo\boa\bad\bd/\b/b\bba\ban\bnd\bds\bs (\b(9\b9)\b)
3269
3270   l\blo\boa\bad\bd/\b/b\bba\ban\bnd\bds\bs Reload the band limits table
3271
3272
3273   Reload the /spider/data/bands.pl file if you have changed it manually
3274   whilst the cluster is running.
3275
3276
3277   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)
3278
3279   l\blo\boa\bad\bd/\b/c\bcm\bmd\bd_\b_c\bca\bac\bch\bhe\be Reload the automatic command cache
3280
3281
3282   Normally, if you change a command file in the cmd or local_cmd tree it
3283   will automatially be picked up by the cluster program. Sometimes it
3284   can get confused if you are doing a lot of moving commands about or
3285   delete a command in the local_cmd tree and want to use the normal one
3286   again. Execute this command to reset everything back to the state it
3287   was just after a cluster restart.
3288
3289
3290   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)
3291
3292   l\blo\boa\bad\bd/\b/f\bfo\bor\brw\bwa\bar\brd\bd Reload the msg forwarding routing table
3293
3294   Reload the /spider/msg/forward.pl file if you have changed it manually
3295   whilst the cluster is running.
3296
3297
3298
3299
3300
3301   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)
3302
3303   l\blo\boa\bad\bd/\b/m\bme\bes\bss\bsa\bag\bge\bes\bs Reload the system messages file
3304
3305
3306   If you change the /spider/perl/Messages file (usually whilst
3307   fiddling/writing ne commands) you can have them take effect during a
3308   cluster session by executing this command. You need to do this if get
3309   something like :-
3310
3311   unknown message 'xxxx' in lang 'en'
3312
3313
3314   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)
3315
3316   l\blo\boa\bad\bd/\b/p\bpr\bre\bef\bfi\bix\bxe\bes\bs Reload the prefix table
3317
3318
3319   Reload the /spider/data/prefix_data.pl file if you have changed it
3320   manually whilst the cluster is running.
3321
3322
3323   1\b11\b1.\b.4\b46\b6.\b.  m\bme\ber\brg\bge\be (\b(5\b5)\b)
3324
3325   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
3326
3327
3328   MERGE allows you to bring your spot and wwv database up to date. By
3329   default it will request the last 10 spots and 5 WWVs from the node you
3330   select. The node must be connected locally.
3331
3332   You can request any number of spots or wwv and although they will be
3333   appended to your databases they will not duplicate any that have
3334   recently been added (the last 2 days for spots and last month for WWV
3335   data).
3336
3337
3338   1\b11\b1.\b.4\b47\b7.\b.  m\bms\bsg\bg (\b(9\b9)\b)
3339
3340   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
3341
3342
3343   Alter message parameters like To, From, Subject, whether private or
3344   bulletin or return receipt (RR) is required or whether to keep this
3345   message from timing out.
3346
3347
3348
3349          MSG TO <msgno> <call>     - change TO callsign to <call>
3350          MSG FRom <msgno> <call>   - change FROM callsign to <call>
3351          MSG PRrivate <msgno>      - set private flag
3352          MSG NOPRrivate <msgno>    - unset private flag
3353          MSG RR <msgno>            - set RR flag
3354          MSG NORR <msgno>          - unset RR flag
3355          MSG KEep <msgno>          - set the keep flag (message won't be deleted ever)
3356          MSG NOKEep <msgno>        - unset the keep flag
3357          MSG SUbject <msgno> <new> - change the subject to <new>
3358          MSG WAittime <msgno>      - remove any waitting time for this message
3359          MSG NOREad <msgno>        - mark message as unread
3360          MSG REad <msgno>          - mark message as read
3361          MSG QUeue                 - queue any outstanding bulletins
3362          MSG QUeue 1               - queue any outstanding private messages
3363
3364
3365
3366
3367   You can look at the status of a message by using:-
3368
3369   STAT/MSG <msgno>
3370
3371   This will display more information on the message than DIR does.
3372
3373
3374   1\b11\b1.\b.4\b48\b8.\b.  p\bpc\bc (\b(8\b8)\b)
3375
3376   p\bpc\bc <\b<c\bca\bal\bll\bl>\b> <\b<t\bte\bex\bxt\bt>\b> Send text (eg PC Protocol) to <call>
3377
3378
3379   Send some arbitrary text to a locally connected callsign. No
3380   processing is done on the text. This command allows you to send PC
3381   Protocol to unstick things if problems arise (messages get stuck etc).
3382   eg:-
3383
3384   pc gb7djk PC33^GB7TLH^GB7DJK^400^
3385
3386   You can also use in the same way as a talk command to a connected user
3387   but without any processing, added of "from <blah> to <blah>" or
3388   whatever.
3389
3390   pc G1TLH Try doing that properly!!!
3391
3392
3393   1\b11\b1.\b.4\b49\b9.\b.  p\bpi\bin\bng\bg (\b(1\b1)\b)
3394
3395   p\bpi\bin\bng\bg <\b<n\bno\bod\bde\be>\b> Check the link quality between nodes
3396
3397
3398   his command allows you to send a frame to another cluster node on the
3399   network and get a return frame.  The time it takes to do this is a
3400   good indication of the quality of the link.  The actual time it takes
3401   is output to the console in seconds.  Any visible cluster node can be
3402   PINGed.
3403
3404
3405
3406   1\b11\b1.\b.5\b50\b0.\b.  r\brc\bcm\bmd\bd (\b(1\b1)\b)
3407
3408   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
3409
3410
3411   This command allows you to send nearly any command to another DX
3412   Cluster node that is connected to the system.
3413
3414   Whether you get any output is dependant on a) whether the other system
3415   knows that the node callsign of this cluster is in fact a node b)
3416   whether the other system is allowing RCMDs from this node and c)
3417   whether you have permission to send this command at all.
3418
3419
3420   1\b11\b1.\b.5\b51\b1.\b.  r\bre\bea\bad\bd (\b(0\b0)\b)
3421
3422   r\bre\bea\bad\bd Read the next unread personal message addressed to you
3423   r\bre\bea\bad\bd <\b<m\bms\bsg\bgn\bno\bo>\b> Read the specified message
3424
3425
3426   You can read any messages that are sent as 'non-personal' and also any
3427   message either sent by or sent to your callsign.
3428
3429
3430
3431
3432
3433   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)
3434
3435   r\bre\bea\bad\bd <\b<m\bms\bsg\bgn\bno\bo>\b> Read a message on the system
3436
3437
3438   As a sysop you may read any message on the system
3439
3440
3441   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
3442
3443   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
3444
3445
3446   Create an 'reject this announce' line for a filter.
3447
3448   An reject filter line means that if the announce matches this filter
3449   it is passed onto the user. See HELP FILTERS for more info. Please
3450   read this to understand how filters work - it will save a lot of grief
3451   later on.
3452
3453   You can use any of the following things in this line:-
3454
3455
3456
3457          info <string>            eg: iota or qsl
3458          by <prefixes>            eg: G,M,2
3459          origin <prefixes>
3460          origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
3461          origin_itu <numbers>
3462          origin_zone <numbers>
3463          by_dxcc <numbers>
3464          by_itu <numbers>
3465          by_zone <numbers>
3466          channel <prefixes>
3467          wx 1                     filter WX announces
3468          dest <prefixes>          eg: 6MUK,WDX      (distros)
3469
3470
3471
3472
3473   some examples:-
3474
3475
3476
3477          rej/ann by_zone 14,15,16 and not by G,M,2
3478
3479
3480
3481
3482   You can use the tag 'all' to reject everything eg:
3483
3484
3485
3486          rej/ann all
3487
3488
3489
3490
3491   but this probably for advanced users...
3492
3493
3494   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)
3495
3496   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
3497   version
3498
3499   This version allows a sysop to set a filter for a callsign as well as
3500   the default for nodes and users eg:-
3501
3502
3503
3504          reject/ann by G,M,2
3505          reject/ann input node_default by G,M,2
3506          reject/ann user_default by G,M,2
3507
3508
3509
3510
3511
3512   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)
3513
3514   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
3515
3516
3517   Create a 'reject this spot' line for a filter.
3518
3519   A reject filter line means that if the spot matches this filter it is
3520   dumped (not passed on). See HELP FILTERS for more info. Please read
3521   this to understand how filters work - it will save a lot of grief
3522   later on.
3523
3524   You can use any of the following things in this line:-
3525
3526
3527
3528          freq <range>           eg: 0/30000 or hf or hf/cw or 6m,4m,2m
3529          on <range>             same as 'freq'
3530          call <prefixes>        eg: G,PA,HB9
3531          info <string>          eg: iota or qsl
3532          by <prefixes>
3533          call_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
3534          call_itu <numbers>
3535          call_zone <numbers>
3536          by_dxcc <numbers>
3537          by_itu <numbers>
3538          by_zone <numbers>
3539          origin <prefixes>
3540          channel <prefixes>
3541
3542
3543
3544
3545   For frequencies, you can use any of the band names defined in
3546   SHOW/BANDS and you can use a subband name like: cw, rtty, data, ssb -
3547   thus: hf/ssb. You can also just have a simple range like: 0/30000 -
3548   this is more efficient than saying simply: on HF (but don't get too
3549   hung up about that)
3550
3551   some examples:-
3552
3553
3554
3555          rej/spot 1 on hf
3556          rej/spot 2 on vhf and not (by_zone 14,15,16 or call_zone 14,15,16)
3557
3558
3559
3560
3561   You can use the tag 'all' to reject everything eg:
3562
3563
3564
3565     rej/spot 3 all
3566
3567
3568
3569
3570   but this probably for advanced users...
3571
3572
3573   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)
3574
3575   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
3576   version
3577
3578
3579   This version allows a sysop to set a filter for a callsign as well as
3580   the default for nodes and users eg:-
3581
3582
3583
3584          reject/spot db0sue-7 1 by_zone 14,15,16
3585          reject/spot node_default all
3586          set/hops node_default 10
3587
3588          reject/spot user_default by G,M,2
3589
3590
3591
3592
3593
3594   1\b11\b1.\b.5\b57\b7.\b.  r\bre\bej\bje\bec\bct\bt/\b/w\bwc\bcy\by (\b(0\b0)\b)
3595
3596   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
3597
3598
3599   It is unlikely that you will want to do this, but if you do then you
3600   can filter on the following fields:-
3601
3602
3603
3604          by <prefixes>            eg: G,M,2
3605          origin <prefixes>
3606          origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
3607          origin_itu <numbers>
3608          origin_zone <numbers>
3609          by_dxcc <numbers>
3610          by_itu <numbers>
3611          by_zone <numbers>
3612          channel <prefixes>
3613
3614
3615
3616
3617   There are no examples because WCY Broadcasts only come from one place
3618   and you either want them or not (see UNSET/WCY if you don't want
3619   them).
3620
3621   This command is really provided for future use.
3622
3623   See HELP FILTER for information.
3624
3625
3626   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)
3627
3628   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
3629   version
3630
3631   This version allows a sysop to set a filter for a callsign as well as
3632   the default for nodes and users eg:-
3633
3634   reject/wcy gb7djk all
3635
3636
3637   1\b11\b1.\b.5\b59\b9.\b.  r\bre\bej\bje\bec\bct\bt/\b/w\bww\bwv\bv (\b(0\b0)\b)
3638
3639   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
3640
3641
3642   It is unlikely that you will want to do this, but if you do then you
3643   can filter on the following fields:-
3644
3645
3646
3647          by <prefixes>            eg: G,M,2
3648          origin <prefixes>
3649          origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
3650          origin_itu <numbers>
3651          origin_zone <numbers>
3652          by_dxcc <numbers>
3653          by_itu <numbers>
3654          by_zone <numbers>
3655          channel <prefixes>
3656
3657
3658
3659
3660   for example
3661
3662
3663
3664          reject/wwv by_zone 14,15,16
3665
3666
3667
3668
3669   is probably the only useful thing to do (which will only show WWV
3670   broadcasts by stations in the US).
3671
3672   See HELP FILTER for information.
3673
3674
3675   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)
3676
3677   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
3678   version
3679
3680
3681   This version allows a sysop to set a filter for a callsign as well as
3682   the default for nodes and users eg:-
3683
3684
3685
3686          reject/wwv db0sue-7 1 by_zone 4
3687          reject/wwv node_default all
3688
3689          reject/wwv user_default by W
3690
3691
3692
3693
3694
3695
3696
3697   1\b11\b1.\b.6\b61\b1.\b.  r\bre\bep\bpl\bly\by (\b(0\b0)\b)
3698
3699   r\bre\bep\bpl\bly\by Reply (privately) to the last message that you have read
3700   r\bre\bep\bpl\bly\by <\b<m\bms\bsg\bgn\bno\bo>\b> Reply (privately) to the specified message
3701   r\bre\bep\bpl\bly\by B\bB <\b<m\bms\bsg\bgn\bno\bo>\b> Reply as a Bulletin to the specified message
3702   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
3703   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
3704
3705
3706   You can reply to a message and the subject will automatically have
3707   "Re:" inserted in front of it, if it isn't already present.
3708
3709   You can also use all the extra qualifiers such as RR, PRIVATE,
3710   NOPRIVATE, B that you can use with the SEND command (see SEND for
3711   further details)
3712
3713
3714   1\b11\b1.\b.6\b62\b2.\b.  s\bse\ben\bnd\bd (\b(0\b0)\b)
3715
3716   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
3717   s\bse\ben\bnd\bd R\bRR\bR <\b<c\bca\bal\bll\bl>\b> Send a message and ask for a read receipt
3718   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
3719   s\bse\ben\bnd\bd P\bPR\bRI\bIV\bVA\bAT\bTE\bE <\b<c\bca\bal\bll\bl>\b> Send a personal message
3720   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
3721
3722
3723   All the SEND commands will create a message which will be sent either
3724   to an individual callsign or to one of the 'bulletin' addresses.
3725
3726   SEND <call> on its own acts as though you had typed SEND PRIVATE, that
3727   is it will mark the message as personal and send it to the cluster
3728   node that that callsign is connected to.
3729
3730   You can have more than one callsign in all of the SEND commands.
3731
3732   You can have multiple qualifiers so that you can have for example:-
3733
3734
3735
3736          SEND RR COPY 123 PRIVATE G1TLH G0RDI
3737
3738
3739
3740
3741   which should send a copy of message 123 to G1TLH and G0RDI and you
3742   will receive a read receipt when they have read the message.
3743
3744   SB is an alias for SEND NOPRIVATE (or send a bulletin in BBS speak) SP
3745   is an alias for SEND PRIVATE
3746
3747
3748   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)
3749
3750   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
3751
3752
3753   Literally, record your address details on the cluster.
3754
3755
3756   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)
3757
3758   s\bse\bet\bt/\b/a\ban\bnn\bno\bou\bun\bnc\bce\be Allow announce messages
3759
3760
3761   Allow announce messages to arrive at your terminal.
3762
3763   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)
3764
3765   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-
3766   Cluster type node
3767
3768
3769   Set the node_call as an AR-Cluster type node
3770
3771
3772   1\b11\b1.\b.6\b66\b6.\b.  s\bse\bet\bt/\b/b\bba\bad\bdd\bdx\bx (\b(8\b8)\b)
3773
3774   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
3775   field of a dx spot being propagated
3776
3777
3778   Setting a word as 'baddx' will prevent spots with that word in the
3779   callsign field of a DX spot from going any further. They will not be
3780   displayed and they will not be sent onto other nodes.
3781
3782   The word must be wriiten in full, no wild cards are allowed eg:-
3783
3784
3785
3786          set/baddx FORSALE VIDEO FR0G
3787
3788
3789
3790
3791   To allow a word again, use the following command ...
3792
3793
3794
3795          unset/baddx VIDEO
3796
3797
3798
3799
3800
3801   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)
3802
3803   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
3804   propagated
3805
3806
3807   Setting a callsign as a 'badnode' will prevent spots from that node
3808   going any further. They will not be displayed and they will not be
3809   sent onto other nodes.
3810
3811   The call can be a full or partial call (or a prefix), eg:-
3812
3813
3814
3815          set/badnode K1TTT
3816
3817
3818
3819
3820   will stop anything from K1TTT (including any SSID's)
3821
3822
3823
3824          unset/badnode K1TTT
3825
3826
3827
3828
3829   will allow spots from him again.
3830
3831   Use with extreme care. This command may well be superceded by
3832   FILTERing.
3833
3834
3835   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)
3836
3837   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
3838
3839
3840   Setting a callsign as a 'badspotter' will prevent spots from this
3841   callsign going any further. They will not be displayed and they will
3842   not be sent onto other nodes.
3843
3844   The call must be written in full, no wild cards are allowed eg:-
3845
3846
3847
3848          set/badspotter VE2STN
3849
3850
3851
3852
3853   will stop anything from VE2STN. If you want SSIDs as well then you
3854   must enter them specifically.
3855
3856
3857
3858          unset/badspotter VE2STN
3859
3860
3861
3862
3863   will allow spots from him again.
3864
3865   Use with extreme care. This command may well be superceded by
3866   FILTERing.
3867
3868
3869   1\b11\b1.\b.6\b69\b9.\b.  s\bse\bet\bt/\b/b\bbe\bee\bep\bp (\b(0\b0)\b)
3870
3871   s\bse\bet\bt/\b/b\bbe\bee\bep\bp Add beeps to terminal messages
3872
3873
3874   Add a beep to DX and other terminal messages.
3875
3876
3877   1\b11\b1.\b.7\b70\b0.\b.  s\bse\bet\bt/\b/c\bcl\blx\bx (\b(5\b5)\b)
3878
3879   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
3880   node
3881
3882
3883   Set the node_call as a CLX type node
3884
3885
3886   1\b11\b1.\b.7\b71\b1.\b.  s\bse\bet\bt/\b/d\bde\beb\bbu\bug\bg (\b(9\b9)\b)
3887
3888   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
3889
3890
3891   You can remove this level with unset/debug <name>
3892
3893
3894
3895   1\b11\b1.\b.7\b72\b2.\b.  s\bse\bet\bt/\b/d\bdx\bx (\b(0\b0)\b)
3896
3897   s\bse\bet\bt/\b/d\bdx\bxAllow DX messages to arrive at your terminal
3898
3899
3900   You can stop DX messages with the _\bu_\bn_\bs_\be_\bt_\b/_\bd_\bx command
3901
3902
3903   1\b11\b1.\b.7\b73\b3.\b.  s\bse\bet\bt/\b/d\bdx\bxg\bgr\bri\bid\bd (\b(0\b0)\b)
3904
3905   s\bse\bet\bt/\b/d\bdx\bxg\bgr\bri\bid\bdAllow grid squares on the end of DX messages
3906
3907
3908   Some logging programs do not like the additional information at the
3909   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
3910   to remove the grid squares.
3911
3912
3913   1\b11\b1.\b.7\b74\b4.\b.  s\bse\bet\bt/\b/d\bdx\bxn\bne\bet\bt (\b(5\b5)\b)
3914
3915   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
3916   type node
3917
3918
3919   Set the node_call as a DXNet type node
3920
3921
3922   1\b11\b1.\b.7\b75\b5.\b.  s\bse\bet\bt/\b/e\bec\bch\bho\bo (\b(0\b0)\b)
3923
3924   s\bse\bet\bt/\b/e\bec\bch\bho\bo Make the cluster echo your input
3925
3926
3927   If you are connected via a telnet session, different implimentations
3928   of telnet handle echo differently depending on whether you are
3929   connected via port 23 or some other port. You can use this command to
3930   change the setting appropriately.
3931
3932   You can remove the echo with the _\bu_\bn_\bs_\be_\bt_\b/_\be_\bc_\bh_\bo command
3933
3934   The setting is stored in your user profile.
3935
3936   YOU DO NOT NEED TO USE THIS COMMAND IF YOU ARE CONNECTED VIA AX25.
3937
3938
3939   1\b11\b1.\b.7\b76\b6.\b.  s\bse\bet\bt/\b/h\bhe\ber\bre\be (\b(0\b0)\b)
3940
3941   s\bse\bet\bt/\b/h\bhe\ber\bre\be Set the here flag
3942
3943
3944   Let others on the cluster know you are here by only displaying your
3945   callsign.  If you are away from your terminal you can use the
3946   _\bu_\bn_\bs_\be_\bt_\b/_\bh_\be_\br_\be command to let people know you are away.  This simply puts
3947   brackets around your callsign to indicate you are not available.
3948
3949
3950   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)
3951
3952   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
3953
3954
3955   Tell the cluster system where you normally connect to. Any Messages
3956   sent to you will normally find their way there should you not be
3957   connected.  eg:-
3958
3959
3960
3961     SET/HOMENODE gb7djk
3962
3963
3964
3965
3966
3967   1\b11\b1.\b.7\b78\b8.\b.  s\bse\bet\bt/\b/h\bho\bop\bps\bs (\b(8\b8)\b)
3968
3969   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
3970
3971
3972   Set the hop count for a particular type of broadcast for a node.
3973
3974   This command allows you to set up special hop counts for a node for
3975   currently: announce, spots, wwv and wcy broadcasts.
3976
3977
3978
3979        eg:
3980          set/hops gb7djk ann 10
3981          set/hops gb7mbc spots 20
3982
3983
3984
3985
3986   Set SHOW/HOPS for information on what is already set. This command
3987   creates a filter and works in conjunction with the filter system.
3988
3989
3990   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)
3991
3992   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
3993
3994
3995   Connect a node to your system in such a way that you are a full
3996   protocol member of its network and can see all spots on it, but
3997   nothing either leaks out from it nor goes back into from the rest of
3998   the nodes connected to you.
3999
4000   You can potentially connect several nodes in this way.
4001
4002   You can see which nodes are isolated with the show/isolate (1)
4003   command.
4004
4005   You can remove the isolation with the command unset/isolate.
4006
4007
4008   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)
4009
4010   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
4011
4012
4013   You can select the language that you want the cluster to use.
4014   Currently the languages available are _\be_\bn (English) and _\bn_\bl (Dutch).
4015
4016
4017   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)
4018
4019   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
4020
4021
4022   You can set your latitude and longitude manually or alternatively use
4023   the _\bs_\be_\bt_\b/_\bq_\br_\ba command which will do the conversion for you.
4024
4025
4026
4027     set/location 54 04 N 2 02 E
4028
4029
4030
4031
4032
4033
4034   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)
4035
4036   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
4037
4038
4039   In order to get accurate headings and such like you must tell the
4040   system what your latitude and longitude is. If you have not yet done a
4041   SET/QRA then this command will set your QRA locator for you. For
4042   example:-
4043
4044
4045
4046          SET/LOCATION 52 22 N 0 57 E
4047
4048
4049
4050
4051
4052   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)
4053
4054   s\bse\bet\bt/\b/l\blo\bog\bgi\bin\bni\bin\bnf\bfo\bo Show logins and logouts of nodes and users
4055
4056
4057   Show users and nodes when they log in and out of the local cluster.
4058   You can stop these messages by using the _\bu_\bn_\bs_\be_\bt_\b/_\bl_\bo_\bg_\bi_\bn_\bi_\bn_\bf_\bo command.
4059
4060
4061
4062   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)
4063
4064   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
4065
4066
4067   You can show who is locked out with the _\bs_\bh_\bo_\bw_\b/_\bl_\bo_\bc_\bk_\bo_\bu_\bt command.  To
4068   allow the user to connect again, use the _\bu_\bn_\bs_\be_\bt_\b/_\bl_\bo_\bc_\bk_\bo_\bu_\bt command.
4069
4070
4071   1\b11\b1.\b.8\b85\b5.\b.  s\bse\bet\bt/\b/n\bna\bam\bme\be (\b(0\b0)\b)
4072
4073   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
4074
4075
4076   Tell the cluster what your name is, eg:-
4077
4078
4079
4080          set/name Dirk
4081
4082
4083
4084
4085
4086   1\b11\b1.\b.8\b86\b6.\b.  s\bse\bet\bt/\b/n\bno\bod\bde\be (\b(9\b9)\b)
4087
4088   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
4089
4090
4091   Tell the system that the call(s) are to be treated as AK1A cluster and
4092   fed PC Protocol rather normal user commands.
4093   From version 1.41 you can also set the following types of cluster
4094
4095
4096
4097          set/spider
4098          set/dxnet
4099          set/clx
4100          set/arcluster
4101
4102
4103
4104
4105   To see what your nodes are set to, use the _\bs_\bh_\bo_\bw_\b/_\bn_\bo_\bd_\be_\bs command.
4106
4107
4108   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)
4109
4110   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
4111   counter
4112
4113
4114   From version 1.35 onwards neighbouring nodes are pinged at regular
4115   intervals (see SET/PINGINTERVAL), usually 300 seconds or 5 minutes.
4116   There is a 'pump-up' counter which is decremented on every outgoing
4117   ping and then reset to the 'obscount' value on every incoming ping.
4118   The default value of this parameter is 2.
4119
4120   What this means is that a neighbouring node will be pinged twice at
4121   (default) 300 second intervals and if no reply has been heard just
4122   before what would be the third attempt, that node is disconnected.
4123
4124   If a ping is heard then the obscount is reset to the full value. Using
4125   default values, if a node has not responded to a ping within 15
4126   minutes, it is disconnected.
4127
4128
4129   1\b11\b1.\b.8\b88\b8.\b.  s\bse\bet\bt/\b/p\bpa\bag\bge\be (\b(0\b0)\b)
4130
4131   s\bse\bet\bt/\b/p\bpa\bag\bge\be <\b<n\bn>\b> Set the number of lines per page
4132
4133
4134   Tell the system how many lines you wish on a page when the number of
4135   lines of output from a command is more than this. The default is 20.
4136   Setting it explicitly to 0 will disable paging.
4137
4138
4139
4140          SET/PAGE 30
4141          SET/PAGE 0
4142
4143
4144
4145
4146   The setting is stored in your user profile.
4147
4148
4149
4150   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)
4151
4152   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
4153
4154
4155   The password for a user can only be set by a full sysop. The string
4156   can contain any characters but any spaces are removed (you can type in
4157   spaces - but they won't appear in the password). You can see the
4158   result with STAT/USER.  The password is the usual 30 character baycom
4159   type password.
4160
4161
4162   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)
4163
4164   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
4165   nodes
4166
4167
4168   As from version 1.35 all neighbouring nodes are pinged at regular
4169   intervals in order to determine the rolling quality of the link and,
4170   in future, to affect routing decisions. The default interval is 300
4171   secs or 5 minutes.
4172
4173   You can use this command to set a different interval. Please don't.
4174
4175   But if you do the value you enter is treated as minutes up 60 and
4176   seconds for numbers greater than that.
4177
4178   This is used also to help determine when a link is down at the far end
4179   (as certain cluster software doesn't always notice), see SET/OBSCOUNT
4180   for more information.
4181
4182
4183   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)
4184
4185   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
4186   call
4187
4188
4189   Set the privilege level on a callsign. The privilege levels that
4190   pertain to commands are as default:-
4191
4192
4193
4194          0 - normal user
4195          1 - allow remote nodes normal user RCMDs
4196          5 - various privileged commands (including shutdown, but not disc-
4197              connect), the normal level for another node.
4198          8 - more privileged commands (including disconnect)
4199          9 - local sysop privilege. DO NOT SET ANY REMOTE USER OR NODE TO THIS
4200              LEVEL.
4201
4202
4203
4204
4205   If you are a sysop and you come in as a normal user on a remote
4206   connection your privilege will automatically be set to 0.
4207
4208
4209   1\b11\b1.\b.9\b92\b2.\b.  s\bse\bet\bt/\b/s\bsp\bpi\bid\bde\ber\br (\b(5\b5)\b)
4210
4211   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
4212   type node
4213
4214
4215   Set the node_call as a DXSpider type node
4216
4217
4218   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)
4219
4220   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
4221
4222
4223
4224
4225   1\b11\b1.\b.9\b94\b4.\b.  s\bse\bet\bt/\b/q\bqr\bra\ba (\b(0\b0)\b)
4226
4227   s\bse\bet\bt/\b/q\bqr\bra\ba <\b<l\blo\boc\bca\bat\bto\bor\br>\b> Set your QRA locator
4228
4229
4230   Tell the system what your QRA (or Maidenhead) locator is. If you have
4231   not done a SET/LOCATION then your latitude and longitude will be set
4232   roughly correctly (assuming your locator is correct ;-). For example:-
4233
4234
4235
4236          SET/QRA JO02LQ
4237
4238
4239
4240
4241
4242   1\b11\b1.\b.9\b95\b5.\b.  s\bse\bet\bt/\b/q\bqt\bth\bh (\b(0\b0)\b)
4243
4244   s\bse\bet\bt/\b/q\bqt\bth\bh <\b<y\byo\bou\bur\br Q\bQT\bTH\bH>\b> Set your QTH
4245
4246
4247   Tell the system where your are.  For example:-
4248
4249
4250
4251          set/qth East Dereham, Norfolk
4252
4253
4254
4255
4256
4257   1\b11\b1.\b.9\b96\b6.\b.  s\bse\bet\bt/\b/t\bta\bal\blk\bk (\b(0\b0)\b)
4258
4259   s\bse\bet\bt/\b/t\bta\bal\blk\bk Allow talk messages to be seen at your console
4260
4261
4262   Allow talk messages to arrive at your console.  You can switch off
4263   talks with the _\bu_\bn_\bs_\be_\bt_\b/_\bt_\ba_\bl_\bk command.
4264
4265
4266   1\b11\b1.\b.9\b97\b7.\b.  s\bse\bet\bt/\b/w\bwc\bcy\by (\b(0\b0)\b)
4267
4268   s\bse\bet\bt/\b/w\bwc\bcy\by Allow WCY messages to be seen at your console
4269
4270
4271   Allow WCY information to be seen at your console.  You can switch off
4272   WCY messages with the _\bu_\bn_\bs_\be_\bt_\b/_\bw_\bc_\by command.
4273
4274
4275   1\b11\b1.\b.9\b98\b8.\b.  s\bse\bet\bt/\b/w\bww\bwv\bv (\b(0\b0)\b)
4276
4277   s\bse\bet\bt/\b/w\bww\bwv\bv Allow WWV messages to be seen at your console
4278
4279
4280   Allow WWV information to be seen at your console.  You can switch off
4281   WWV messages with the _\bu_\bn_\bs_\be_\bt_\b/_\bw_\bw_\bv command.
4282
4283
4284   1\b11\b1.\b.9\b99\b9.\b.  s\bse\bet\bt/\b/w\bwx\bx (\b(0\b0)\b)
4285
4286   s\bse\bet\bt/\b/w\bwx\bx Allow WX messages to be seen at your console
4287
4288
4289   Allow WX information to be seen at your console.  You can switch off
4290   WX messages with the _\bu_\bn_\bs_\be_\bt_\b/_\bw_\bx command.
4291   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)
4292
4293   s\bsh\bho\bow\bw/\b/b\bba\bad\bdd\bdx\bxShow all the bad dx calls in the system
4294
4295
4296   Display all the bad dx callsigns in the system, see SET/BADDX for more
4297   information.
4298
4299
4300   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)
4301
4302   s\bsh\bho\bow\bw/\b/b\bba\bad\bdn\bno\bod\bde\be Show all the bad nodes in the system
4303
4304
4305   Display all the bad node callsigns in the system, see SET/BADNODE for
4306   more information.
4307
4308
4309   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)
4310
4311   s\bsh\bho\bow\bw/\b/b\bba\bad\bds\bsp\bpo\bot\btt\bte\ber\brShow all the bad spotters in the system
4312
4313
4314   Display all the bad spotter's callsigns in the system, see
4315   SET/BADSPOTTER for more information.
4316
4317
4318   1\b11\b1.\b.1\b10\b03\b3.\b.  s\bsh\bho\bow\bw/\b/d\bda\bat\bte\be (\b(0\b0)\b)
4319
4320   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
4321
4322
4323   This is very nearly the same as SHOW/TIME, the only difference the
4324   format of the date string if no arguments are given.
4325
4326   If no prefixes or callsigns are given then this command returns the
4327   local time and UTC as the computer has it right now. If you give some
4328   prefixes then it will show UTC and UTC + the local offset (not
4329   including DST) at the prefixes or callsigns that you specify.
4330
4331
4332   1\b11\b1.\b.1\b10\b04\b4.\b.  s\bsh\bho\bow\bw/\b/d\bdx\bx (\b(0\b0)\b)
4333
4334   s\bsh\bho\bow\bw/\b/d\bdx\bx [\b[o\bop\bpt\bti\bio\bon\bns\bs]\b] interrogate the spot database
4335
4336
4337   If you just type SHOW/DX you will get the last so many spots (sysop
4338   configurable, but usually 10).
4339
4340   In addition you can add any number of these options in very nearly any
4341   order to the basic SHOW/DX command, they are:-
4342
4343
4344
4345
4346
4347
4348
4349
4350
4351
4352
4353
4354
4355
4356
4357   on <band>       - eg 160m 20m 2m 23cm 6mm
4358   on <region>     - eg hf vhf uhf shf      (see SHOW/BANDS)
4359
4360   <number>        - the number of spots you want
4361   <from>-<to>     - <from> spot no <to> spot no in
4362                     the selected list
4363
4364   <prefix>        - for a spotted callsign beginning with <prefix>
4365   *<suffix>       - for a spotted callsign ending in <suffix>
4366   *<string>*      - for a spotted callsign containing <string>
4367
4368   day <number>    - starting <number> days ago
4369   day <from>-<to> - <from> days <to> days ago
4370
4371   info <text>     - any spots containing <text> in the info or remarks
4372
4373   by <call>       - any spots spotted by <call> (spotter <call>
4374                           is the same).
4375
4376   qsl             - this automatically looks for any qsl info on the call
4377                     held in the spot database.
4378
4379   iota [<iota>]   - If the iota island number is missing it will
4380                     look for the string iota and anything which looks like
4381                     an iota island number. If you specify then it will look
4382                     for that island.
4383
4384   qra [<locator>] - this will look for the specific locator if
4385                     you specify one or else anything that looks like a locator.
4386
4387
4388
4389
4390   e.g.
4391
4392
4393
4394
4395           SH/DX 9m0
4396           SH/DX on 20m info iota
4397           SH/DX 9a on vhf day 30
4398           SH/DX rf1p qsl
4399           SH/DX iota
4400           SH/DX iota eu-064
4401           SH/DX qra jn86
4402
4403
4404
4405
4406
4407   1\b11\b1.\b.1\b10\b05\b5.\b.  s\bsh\bho\bow\bw/\b/d\bdx\bxc\bcc\bc (\b(0\b0)\b)
4408
4409   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
4410
4411
4412   This command takes the <prefix> (which can be a full or partial
4413   callsign if desired), looks up which internal country number it is and
4414   then displays all the spots as per SH/DX for that country.
4415
4416   The options for SHOW/DX also apply to this command.  e.g.
4417
4418
4419
4420
4421
4422
4423      SH/DXCC G
4424      SH/DXCC W on 20m info iota
4425
4426
4427
4428
4429
4430   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)
4431
4432   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
4433
4434
4435   SHOW/FILES on its own will show you a list of the various fileareas
4436   available on the system. To see the contents of a particular file area
4437   type:-
4438
4439
4440
4441           SH/FILES <filearea>
4442
4443
4444
4445
4446   where <filearea> is the name of the filearea you want to see the
4447   contents of.
4448
4449   You can also use shell globbing characters like '*' and '?' in a
4450   string to see a selection of files in a filearea eg:-
4451
4452
4453
4454           SH/FILES bulletins arld*
4455
4456
4457
4458
4459   See also TYPE - to see the contents of a file.
4460
4461
4462   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)
4463
4464   s\bsh\bho\bow\bw/\b/f\bfi\bil\blt\bte\ber\br Show the filters you have set
4465
4466
4467   Show the contents of all the filters that are set by you. This command
4468   displays all the filters set - for all the various categories.
4469
4470
4471   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)
4472
4473   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>
4474
4475
4476   A sysop can look at any filters that have been set.
4477
4478
4479   1\b11\b1.\b.1\b10\b09\b9.\b.  s\bsh\bho\bow\bw/\b/h\bho\bop\bps\bs (\b(8\b8)\b)
4480
4481   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
4482   node
4483
4484
4485   This command shows the hop counts set up for a node. You can specify
4486   which category you want to see. If you leave the category out then all
4487   the categories will be listed.
4488
4489   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)
4490
4491   s\bsh\bho\bow\bw/\b/i\bis\bso\bol\bla\bat\bte\be Show a list of isolated nodes
4492
4493
4494   Show which nodes are currently set to be isolated.
4495
4496
4497   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)
4498
4499   s\bsh\bho\bow\bw/\b/l\blo\boc\bck\bko\bou\but\bt Show a list of excluded callsigns
4500
4501
4502   Show a list of callsigns that have been excluded (locked out) of the
4503   cluster locally with the _\bs_\be_\bt_\b/_\bl_\bo_\bc_\bk_\bo_\bu_\bt command
4504
4505
4506   1\b11\b1.\b.1\b11\b12\b2.\b.  s\bsh\bho\bow\bw/\b/m\bmo\boo\bon\bn (\b(0\b0)\b)
4507
4508   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
4509
4510
4511   Show the Moon rise and set times for a (list of) prefixes or
4512   callsigns, together with the azimuth and elevation of the sun
4513   currently at those locations.
4514
4515   If you don't specify any prefixes or callsigns, it will show the times
4516   for your QTH (assuming you have set it with either SET/LOCATION or
4517   SET/QRA), together with the current azimuth and elevation.
4518
4519   In addition, it will show the gain or loss dB relative to the nominal
4520   distance of 385,000Km due to the ellipsoidal nature of the orbit.
4521
4522   If all else fails it will show the Moonrise and set times for the node
4523   that you are connected to.
4524
4525   For example:-
4526
4527
4528
4529          SH/MOON
4530          SH/MOON G1TLH W5UN
4531
4532
4533
4534
4535
4536   1\b11\b1.\b.1\b11\b13\b3.\b.  s\bsh\bho\bow\bw/\b/m\bmu\buf\bf (\b(0\b0)\b)
4537
4538   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
4539   <prefix>
4540
4541
4542   This command allow you to estimate the likelihood of you contacting a
4543   station with the prefix you have specified. The output assumes a
4544   modest power of 20dBW and receiver sensitivity of -123dBm (about
4545   0.15muV/10dB SINAD)
4546
4547   The result predicts the most likely operating frequencies and signal
4548   levels for high frequency (shortwave) radio propagation paths on
4549   specified days of the year and hours of the day. It is most useful for
4550   paths between 250 km and 6000 km, but can be used with reduced
4551   accuracy for paths shorter or longer than this.
4552
4553   The command uses a routine MINIMUF 3.5 developed by the U.S. Navy and
4554   used to predict the MUF given the predicted flux, day of the year,
4555   hour of the day and geographic coordinates of the transmitter and
4556   receiver. This routine is reasonably accurate for the purposes here,
4557   with a claimed RMS error of 3.8 MHz, but much smaller and less complex
4558   than the programs used by major shortwave broadcasting organizations,
4559   such as the Voice of America.
4560
4561   The command will display some header information detailing its
4562   assumptions, together with the locations, latitude and longitudes and
4563   bearings. It will then show UTC (UT), local time at the other end
4564   (LT), calculate the MUFs, Sun zenith angle at the midpoint of the path
4565   (Zen) and the likely signal strengths. Then for each frequency for
4566   which the system thinks there is a likelihood of a circuit it prints a
4567   value.
4568
4569   The value is currently a likely S meter reading based on the
4570   conventional 6dB / S point scale. If the value has a '+' appended it
4571   means that it is 1/2 an S point stronger. If the value is preceeded by
4572   an 'm' it means that there is likely to be much fading and by an 's'
4573   that the signal is likely to be noisy.
4574
4575   By default SHOW/MUF will show the next two hours worth of data. You
4576   can specify anything up to 24 hours worth of data by appending the no
4577   of hours required after the prefix. For example:-
4578
4579
4580
4581          SH/MUF W
4582
4583
4584
4585
4586   produces:
4587
4588
4589
4590          RxSens: -123 dBM SFI: 159   R: 193   Month: 10   Day: 21
4591          Power :   20 dBW    Distance:  6283 km    Delay: 22.4 ms
4592          Location                       Lat / Long           Azim
4593          East Dereham, Norfolk          52 41 N 0 57 E         47
4594          United-States-W                43 0 N 87 54 W        299
4595          UT LT  MUF Zen  1.8  3.5  7.0 10.1 14.0 18.1 21.0 24.9 28.0 50.0
4596          18 23 11.5 -35  mS0+ mS2   S3
4597          19  0 11.2 -41  mS0+ mS2   S3
4598
4599
4600
4601
4602   indicating that you will have weak, fading circuits on top band and
4603   80m but usable signals on 40m (about S3).
4604
4605   inputing:-
4606
4607
4608
4609          SH/MUF W 24
4610
4611
4612
4613
4614   will get you the above display, but with the next 24 hours worth of
4615   propagation data.
4616
4617
4618
4619
4620
4621     SH/MUF W L 24
4622     SH/MUF W 24 Long
4623
4624
4625
4626
4627   Gives you an estimate of the long path propagation characterics. It
4628   should be noted that the figures will probably not be very useful, nor
4629   terrible accurate, but it is included for completeness.
4630
4631
4632   1\b11\b1.\b.1\b11\b14\b4.\b.  s\bsh\bho\bow\bw/\b/n\bno\bod\bde\be (\b(1\b1)\b)
4633
4634   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
4635
4636
4637   Show the type and version (if connected) of the nodes specified on the
4638   command line. If no callsigns are specified then a sorted list of all
4639   the non-user callsigns known to the system will be displayed.
4640
4641
4642   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)
4643
4644   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
4645
4646
4647   This command takes the <callsign> (which can be a full or partial
4648   callsign or a prefix), looks up which internal country number it is
4649   and then displays all the relevant prefixes for that country together
4650   with the internal country no, the CQ and ITU regions.
4651
4652   See also SHOW/DXCC
4653
4654
4655
4656   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)
4657
4658   s\bsh\bho\bow\bw/\b/p\bpr\bro\bog\bgr\bra\bam\bm Show the locations of all the included program modules
4659
4660
4661   Show the name and location where every program module was load from.
4662   This is useful for checking where you think you have loaded a .pm file
4663   from.
4664
4665
4666   1\b11\b1.\b.1\b11\b17\b7.\b.  s\bsh\bho\bow\bw/\b/q\bqr\bra\ba (\b(0\b0)\b)
4667
4668   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
4669   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
4670
4671
4672   This is a multipurpose command that allows you either to calculate the
4673   distance and bearing between two locators or (if only one locator is
4674   given on the command line) the distance and beraing from your station
4675   to the locator. For example:-
4676
4677
4678
4679        SH/QRA IO92QL
4680        SH/QRA JN06 IN73
4681
4682
4683
4684
4685   The first example will show the distance and bearing to the locator
4686   from yourself, the second example will calculate the distance and
4687   bearing from the first locator to the second. You can use 4 or 6
4688   character locators.
4689
4690   It is also possible to convert a latitude and longitude to a locator
4691   by using this command with a latitude and longitude as an argument,
4692   for example:-
4693
4694
4695
4696        SH/QRA 52 41 N 0 58 E
4697
4698
4699
4700
4701
4702   1\b11\b1.\b.1\b11\b18\b8.\b.  s\bsh\bho\bow\bw/\b/q\bqr\brz\bz (\b(0\b0)\b)
4703
4704   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
4705
4706
4707   This command queries the QRZ callbook server on the internet and
4708   returns any information available for that callsign. This service is
4709   provided for users of this software by http://www.qrz.com
4710
4711
4712   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)
4713
4714   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>
4715
4716
4717   This command allows you to see to which node the callsigns specified
4718   are connected. It is a sort of inverse sh/config.
4719
4720
4721
4722          sh/route n2tly
4723
4724
4725
4726
4727
4728   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)
4729
4730   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
4731   data
4732
4733
4734   Show the tracking data from your location to the satellite of your
4735   choice from now on for the next few hours.
4736
4737   If you use this command without a satellite name it will display a
4738   list of all the satellites known currently to the system.
4739
4740   If you give a name then you can obtain tracking data of all the passes
4741   that start and finish 5 degrees below the horizon. As default it will
4742   give information for the next three hours for every five minute
4743   period.
4744
4745   You can alter the number of hours and the step size, within certain
4746   limits.
4747
4748   Each pass in a period is separated with a row of '-----' characters
4749
4750   So for example:-
4751
4752
4753        SH/SAT AO-10
4754        SH/SAT FENGYUN1 12 2
4755
4756
4757
4758
4759
4760   1\b11\b1.\b.1\b12\b21\b1.\b.  s\bsh\bho\bow\bw/\b/s\bsu\bun\bn (\b(0\b0)\b)
4761
4762   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
4763
4764
4765   Show the sun rise and set times for a (list of) prefixes or callsigns,
4766   together with the azimuth and elevation of the sun currently at those
4767   locations.
4768
4769   If you don't specify any prefixes or callsigns, it will show the times
4770   for your QTH (assuming you have set it with either SET/LOCATION or
4771   SET/QRA), together with the current azimuth and elevation.
4772
4773   If all else fails it will show the sunrise and set times for the node
4774   that you are connected to.
4775
4776   For example:-
4777
4778
4779
4780          SH/SUN
4781          SH/SUN G1TLH K9CW ZS
4782
4783
4784
4785
4786
4787   1\b11\b1.\b.1\b12\b22\b2.\b.  s\bsh\bho\bow\bw/\b/t\bti\bim\bme\be (\b(0\b0)\b)
4788
4789   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
4790
4791
4792   If no prefixes or callsigns are given then this command returns the
4793   local time and UTC as the computer has it right now. If you give some
4794   prefixes then it will show UTC and UTC + the local offset (not
4795   including DST) at the prefixes or callsigns that you specify.
4796
4797
4798   1\b11\b1.\b.1\b12\b23\b3.\b.  s\bsh\bho\bow\bw/\b/w\bwc\bcy\by (\b(0\b0)\b)
4799
4800   s\bsh\bho\bow\bw/\b/w\bwc\bcy\by Show the last 10 WCY broadcasts
4801   s\bsh\bho\bow\bw/\b/w\bwc\bcy\by <\b<n\bn>\b> Show the last <n> WCY broadcasts
4802
4803
4804   Display the most recent WCY information that has been received by the
4805   system
4806
4807
4808   1\b11\b1.\b.1\b12\b24\b4.\b.  s\bsh\bho\bow\bw/\b/w\bww\bwv\bv (\b(0\b0)\b)
4809
4810   s\bsh\bho\bow\bw/\b/w\bww\bwv\bv Show the last 10 WWV broadcasts
4811   s\bsh\bho\bow\bw/\b/w\bww\bwv\bv <\b<n\bn>\b> Show the last <n> WWV broadcasts
4812
4813
4814   Display the most recent WWV information that has been received by the
4815   system
4816
4817
4818
4819   1\b11\b1.\b.1\b12\b25\b5.\b.  s\bsh\bhu\but\btd\bdo\bow\bwn\bn (\b(5\b5)\b)
4820
4821   s\bsh\bhu\but\btd\bdo\bow\bwn\bn Shutdown the cluster
4822
4823
4824   Shutdown the cluster and disconnect all the users.  If you have Spider
4825   set to respawn in /etc/inittab it will of course restart.
4826
4827
4828   1\b11\b1.\b.1\b12\b26\b6.\b.  s\bsp\bpo\boo\bof\bf (\b(9\b9)\b)
4829
4830   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
4831
4832
4833   This is a very simple yet powerful command for the sysop.  It allows
4834   you to issue commands as if you were a different user.  This is very
4835   useful for the kind of things that users seem to always get wrong..
4836   like home_node for example.
4837
4838
4839   1\b11\b1.\b.1\b12\b27\b7.\b.  s\bst\bta\bat\bt/\b/d\bdb\bb (\b(5\b5)\b)
4840
4841   s\bst\bta\bat\bt/\b/d\bdb\bb <\b<d\bdb\bbn\bna\bam\bme\be>\b> Show the status of a database
4842
4843
4844   Show the internal status of a database descriptor.
4845
4846   Depending on your privilege level you will see more or less
4847   information.  This command is unlikely to be of much use to anyone
4848   other than a sysop.
4849
4850
4851   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)
4852
4853   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
4854
4855
4856   Show the internal status of the channel object either for the channel
4857   that you are on or else for the callsign that you asked for.
4858
4859   Only the fields that are defined (in perl term) will be displayed.
4860
4861
4862   1\b11\b1.\b.1\b12\b29\b9.\b.  s\bst\bta\bat\bt/\b/m\bms\bsg\bg (\b(5\b5)\b)
4863
4864   s\bst\bta\bat\bt/\b/m\bms\bsg\bg <\b<m\bms\bsg\bgn\bno\bo>\b> Show the status of a message
4865
4866
4867   This command shows the internal status of a message and includes
4868   information such as to whom it has been forwarded, its size, origin
4869   etc etc.
4870
4871
4872   1\b11\b1.\b.1\b13\b30\b0.\b.  s\bst\bta\bat\bt/\b/u\bus\bse\ber\br (\b(5\b5)\b)
4873
4874   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
4875
4876
4877   Shows the full contents of a user record including all the secret
4878   flags and stuff.
4879
4880   Only the fields that are defined (in perl term) will be displayed.
4881
4882
4883
4884
4885   1\b11\b1.\b.1\b13\b31\b1.\b.  s\bsy\bys\bso\bop\bp (\b(0\b0)\b)
4886
4887   s\bsy\bys\bso\bop\bp Regain your privileges if you login remotely
4888
4889
4890   The system automatically reduces your privilege level to that of a
4891   normal user if you login in remotely. This command allows you to
4892   regain your normal privilege level. It uses the normal system: five
4893   numbers are returned that are indexes into the character array that is
4894   your assigned password (see SET/PASSWORD). The indexes start from
4895   zero.
4896
4897   You are expected to return a string which contains the characters
4898   required in the correct order. You may intersperse those characters
4899   with others to obscure your reply for any watchers. For example (and
4900   these values are for explanation :-):
4901
4902
4903
4904          password = 012345678901234567890123456789
4905          > sysop
4906          22 10 15 17 3
4907
4908
4909
4910
4911   you type:-
4912
4913
4914
4915         aa2bbbb0ccc5ddd7xxx3n
4916         or 2 0 5 7 3
4917         or 20573
4918
4919
4920
4921
4922   They will all match. If there is no password you will still be offered
4923   numbers but nothing will happen when you input a string. Any match is
4924   case sensitive.
4925
4926
4927   1\b11\b1.\b.1\b13\b32\b2.\b.  t\bta\bal\blk\bk (\b(0\b0)\b)
4928
4929   t\bta\bal\blk\bk <\b<c\bca\bal\bll\bls\bsi\big\bgn\bn>\b> Enter talk mode with <callsign>
4930   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>
4931   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
4932   <callsign> via <node_call>
4933
4934
4935   Send a short message to any other station that is visible on the
4936   cluster system. You can send it to anyone you can see with a
4937   SHOW/CONFIGURATION command, they don't have to be connected locally.
4938
4939   The second form of TALK is used when other cluster nodes are connected
4940   with restricted information. This usually means that they don't send
4941   the user information usually associated with logging on and off the
4942   cluster.
4943
4944   If you know that G3JNB is likely to be present on GB7TLH, but you can
4945   only see GB7TLH in the SH/C list but with no users, then you would use
4946   the second form of the talk message.
4947
4948   If you want to have a ragchew with someone you can leave the text
4949   message out and the system will go into 'Talk' mode. What this means
4950   is that a short message is sent to the recipient telling them that you
4951   are in a 'Talking' frame of mind and then you just type - everything
4952   you send will go to the station that you asked for.
4953
4954   All the usual announcements, spots and so on will still come out on
4955   your terminal.
4956
4957   If you want to do something (such as send a spot) you precede the
4958   normal command with a '/' character, eg:-
4959
4960
4961
4962           /DX 14001 G1TLH What's a B class licensee doing on 20m CW?
4963           /HELP talk
4964
4965
4966
4967
4968   To leave talk mode type:
4969
4970
4971
4972           /EX
4973
4974
4975
4976
4977
4978   1\b11\b1.\b.1\b13\b33\b3.\b.  t\bty\byp\bpe\be (\b(0\b0)\b)
4979
4980   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
4981
4982
4983   Type out the contents of a file in a filearea. So, for example, in
4984   filearea 'bulletins' you want to look at file 'arld051' you would
4985   enter:-
4986
4987
4988
4989           TYPE bulletins/arld051
4990
4991
4992
4993
4994   See also SHOW/FILES to see what fileareas are available and a list of
4995   content.
4996
4997
4998   1\b11\b1.\b.1\b13\b34\b4.\b.  w\bwh\bho\bo (\b(0\b0)\b)
4999
5000   w\bwh\bho\bo Show who is physically connected locally
5001
5002
5003   This is a quick listing that shows which callsigns are connected and
5004   what sort of connection they have
5005
5006
5007   1\b11\b1.\b.1\b13\b35\b5.\b.  w\bwx\bx (\b(0\b0)\b)
5008
5009   w\bwx\bx <\b<t\bte\bex\bxt\bt>\b> Send a weather message to local users
5010   w\bwx\bx f\bfu\bul\bll\bl <\b<t\bte\bex\bxt\bt>\b>  Send a weather message to all cluster users
5011
5012
5013   Weather messages can sometimes be useful if you are experiencing an
5014   extreme that may indicate enhanced conditions
5015
5016
5017   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)
5018
5019   w\bwx\bx s\bsy\bys\bso\bop\bp <\b<t\bte\bex\bxt\bt>\b> Send a weather message to other clusters only
5020
5021
5022   Send a weather message only to other cluster nodes and not to general
5023   users.
5024
5025
5026
5027
5028
5029
5030
5031
5032
5033
5034
5035
5036
5037
5038
5039
5040
5041
5042
5043
5044
5045
5046
5047
5048
5049
5050
5051
5052
5053
5054
5055
5056
5057
5058
5059
5060
5061
5062
5063
5064
5065
5066
5067
5068
5069
5070
5071
5072
5073
5074
5075
5076
5077
5078
5079
5080
5081
5082