]> scm.dxcluster.org Git - spider.git/blob - txt/adminmanual.txt
ba88f983dde6d795e6bbece5e23e118e2531386a
[spider.git] / txt / adminmanual.txt
1   The DXSpider Administration Manual v1.49
2   Ian Maude, G0VGS, (ianmaude@btinternet.com)
3   November 2001 revision 1.1
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. Routing and Filtering
68
69      1.1 Introduction
70      1.2 Route Filters
71      1.3 The node_default filter
72      1.4 General route filtering
73      1.5 General filter rules
74      1.6 Types of filter
75      1.7 Filter options
76      1.8 Default filters
77      1.9 Advanced filtering
78      1.10 Basic hop control
79      1.11 Hop Control on Specific Nodes
80      1.12 Isolating networks
81
82   2. Other filters
83
84      2.1 Filtering Mail
85      2.2 Filtering words from text fields in Announce, Talk and DX spots
86      2.3 Stopping (possibly bad) DX Spots from Nodes or Spotters
87
88   3. Mail
89
90      3.1 Personal mail
91      3.2 Bulletin mail
92      3.3 Forward.pl
93      3.4 The msg command
94      3.5 Message status
95      3.6 Filtering mail
96      3.7 Distribution lists
97      3.8 BBS interface
98
99   4. Scripts
100
101   5. Databases
102
103      5.1 Creating databases
104      5.2 Importing databases
105      5.3 Checking available databases
106      5.4 Looking up databases
107      5.5 Removing databases
108
109   6. Information, files and useful programs
110
111      6.1 MOTD
112      6.2 MOTD_NOR
113      6.3 Downtime message
114      6.4 Other text messages
115      6.5 The Aliases file
116      6.6 Console.pl
117      6.7 Updating kepler data
118      6.8 The QRZ callbook
119
120   7. Security
121
122      7.1 Registration
123      7.2 Passwords
124
125   8. CVS
126
127   9. The DXSpider command set
128
129      9.1 accept/announce (0)
130      9.2 accept/announce (extended for sysops) (8)
131      9.3 accept/route (8)
132      9.4 accept/spots (0)
133      9.5 accept/spots (extended for sysops) (8)
134      9.6 accept/wcy (0)
135      9.7 accept/wcy (extended for sysops) (8)
136      9.8 accept/wwv (0)
137      9.9 accept/wwv (extended for sysops) (8)
138      9.10 announce (0)
139      9.11 announce full (0)
140      9.12 announce sysop (5)
141      9.13 apropos (0)
142      9.14 bye (0)
143      9.15 catchup (5)
144      9.16 clear/announce (8)
145      9.17 clear/route (8)
146      9.18 clear/spots (0)
147      9.19 clear/spots (extended for sysops) (8)
148      9.20 clear/wcy (0)
149      9.21 clear/wcy (extended for sysops) (8)
150      9.22 clear/wwv (0)
151      9.23 clear/wwv (extended for sysops) (8)
152      9.24 connect (5)
153      9.25 dbavail (0)
154      9.26 dbcreate (9)
155      9.27 dbimport (9)
156      9.28 dbremove (9)
157      9.29 dbshow (0)
158      9.30 debug (9)
159      9.31 delete/user (9)
160      9.32 directory (0)
161      9.33 directory (extended for sysops) (5)
162      9.34 disconnect (8)
163      9.35 dx (0)
164      9.36 export (9)
165      9.37 export_users (9)
166      9.38 filtering (0)
167      9.39 forward/latlong (8)
168      9.40 forward/opername (1)
169      9.41 help (0)
170      9.42 init (5)
171      9.43 kill (0)
172      9.44 kill (5)
173      9.45 kill full (5)
174      9.46 kill/expunge (6)
175      9.47 links (0)
176      9.48 load/aliases (9)
177      9.49 load/badmsg (9)
178      9.50 load/badwords (9)
179      9.51 load/bands (9)
180      9.52 load/cmd_cache (9)
181      9.53 load/forward (9)
182      9.54 load/messages (9)
183      9.55 load/prefixes (9)
184      9.56 merge (5)
185      9.57 msg (9)
186      9.58 pc (8)
187      9.59 ping (1)
188      9.60 rcmd (1)
189      9.61 read (0)
190      9.62 read (extended for sysops) (5)
191      9.63 reject/announce
192      9.64 reject/announce (extended for sysops) (8)
193      9.65 reject/route (8)
194      9.66 reject/spots (0)
195      9.67 reject/spots (extended for sysops) (8)
196      9.68 reject/wcy (0)
197      9.69 reject/wcy (extended for sysops) (8)
198      9.70 reject/wwv (0)
199      9.71 reject/wwv (extended for sysops) (8)
200      9.72 reply (0)
201      9.73 send (0)
202      9.74 set/address (0)
203      9.75 set/announce (0)
204      9.76 set/arcluster (5)
205      9.77 set/baddx (8)
206      9.78 set/badnode (6)
207      9.79 set/badspotter (8)
208      9.80 set/badword (8)
209      9.81 set/beep (0)
210      9.82 set/bbs (5)
211      9.83 set/clx (5)
212      9.84 set/debug (9)
213      9.85 set/dx (0)
214      9.86 set/dxgrid (0)
215      9.87 set/dxnet (5)
216      9.88 set/echo (0)
217      9.89 set/email (0)
218      9.90 set/here (0)
219      9.91 set/homenode (0)
220      9.92 set/hops (8)
221      9.93 set/isolate (9)
222      9.94 set/language (0)
223      9.95 set/location (0)
224      9.96 set/sys_location (9)
225      9.97 set/logininfo (0)
226      9.98 set/lockout (9)
227      9.99 set/name (0)
228      9.100 set/node (9)
229      9.101 set/obscount (9)
230      9.102 set/page (0)
231      9.103 set/password (0)
232      9.104 set/password (9)
233      9.105 set/pinginterval (9)
234      9.106 set/privilege (9)
235      9.107 set/spider (5)
236      9.108 set/sys_qra (9)
237      9.109 set/qra (0)
238      9.110 set/qth (0)
239      9.111 set/register (9)
240      9.112 set/talk (0)
241      9.113 set/wcy (0)
242      9.114 set/wwv (0)
243      9.115 set/wx (0)
244      9.116 show/baddx (1)
245      9.117 show/badnode (6)
246      9.118 show/badspotter (1)
247      9.119 show/badword (1)
248      9.120 show/configuration (0)
249      9.121 show/configuration/node (0)
250      9.122 show/connect (1)
251      9.123 show/date (0)
252      9.124 show/debug (9)
253      9.125 show/dx (0)
254      9.126 show/dxcc (0)
255      9.127 sh/dxstats (0)
256      9.128 show/files (0)
257      9.129 show/filter (0)
258      9.130 show/filter (extended for sysops) (5)
259      9.131 show/hfstats (0)
260      9.132 show/hftable (0)
261      9.133 show/hops (8)
262      9.134 show/isolate (1)
263      9.135 show/lockout (9)
264      9.136 show/log (8)
265      9.137 show/moon (0)
266      9.138 show/muf (0)
267      9.139 show/newconfiguration (0)
268      9.140 show/newconfiguration/node (0)
269      9.141 show/node (1)
270      9.142 show/prefix (0)
271      9.143 show/program (5)
272      9.144 show/qra (0)
273      9.145 show/qrz (0)
274      9.146 show/registered (9)
275      9.147 show/route (0)
276      9.148 show/satellite (0)
277      9.149 show/sun (0)
278      9.150 show/time (0)
279      9.151 show/vhfstats (0)
280      9.152 show/vhftable (0)
281      9.153 show/wcy (0)
282      9.154 show/wwv (0)
283      9.155 shutdown (5)
284      9.156 spoof (9)
285      9.157 stat/db (5)
286      9.158 stat/channel (5)
287      9.159 stat/msg (5)
288      9.160 stat/route_node (5)
289      9.161 stat/route_user (5)
290      9.162 stat/user (5)
291      9.163 sysop (0)
292      9.164 talk (0)
293      9.165 type (0)
294      9.166 who (0)
295      9.167 wx (0)
296      9.168 wx (enhanced for sysops) (5)
297
298
299   ______________________________________________________________________
300
301   1.  Routing and Filtering
302
303   1.1.  Introduction
304
305   From DXSpider version 1.48, major changes were introduced to the way
306   node connections are treated.  This is part of an ongoing process to
307   remove problems with loops and to enable talk and other functions to
308   propagate across the whole of the worldwide cluster network.  In fact,
309   in a Spider network, it would be useful, perhaps even necessary to
310   have loops.  This would give real resilience to the network, meaning
311   that if a link dropped, the information flow would simply come in and
312   go out via a different route.  Of course, we do not have a complete
313   network of Spider nodes, there are other programs out there.  Some of
314   these do not have any protection from loops.  Certainly AK1A does not
315   handle loops well at all.  It is therefore necessary to have some form
316   of protection for these nodes.
317
318
319   In fact DXSpider has had a simple system for some time which is called
320   isolation. This is similar to what in other systems such as clx, is
321   called passive mode. A more detailed explanation of isolation is given
322   further below. This system is still available and, for simple
323   networks, is probably all that you need.
324
325
326   The new functionality introduced in version 1.48 allows filtering the
327   node and user protocol frames on a "per interface" basis. We call this
328   route filtering. This is used instead of isolation.
329
330
331   What this really means is that you can control more or less completely
332   which user and node management PC protocol frames pass to each of your
333   partner nodes. You can also limit what comes into your node from your
334   partners. It is even possible to control the settings that your
335   partner node has for the routing information that it sends to you
336   (using the rcmd command).
337
338
339   1.2.  Route Filters
340
341   Initially when route filters were being tested we generated a
342   "default" filter.  Unfortunately it quickly became apparent that this
343   might suit the UK cluster network but didn't really fit anybody else.
344   However using a default filter is an appropriate thing to do. How, is
345   explained further on.
346
347
348   The first thing that you must do is determine whether you need to use
349   route filtering at all. If you are a "normal" node with two or three
350   partners and you arranged in an "official" non-looping tree type
351   network, then you do not need to do route filtering and you will feel
352   a lot better for not getting involved. If you are successfully using
353   isolation then you also probably don't need to use route filtering.
354
355
356   To put it simply, you should not mix Isolation and Route Filtering.
357   It will work, of sorts, but you will not get the expected results.  If
358   you are using Isolation sucessfully at the moment, do not get involved
359   in Route Filtering unless you have a good supply of aspirin!  Once you
360   have started down the road of Route Filtering, do not use Isolation
361   either.  Use one or the other, not both.
362
363
364   You will only require this functionality if you are "well-connected".
365   What that means is that you are connected to several different parts
366   of (say) the EU cluster and, at the same time, also connected to two
367   or three places in the US which, in turn are connected back to the EU.
368   This is called a "loop" and if you are seriously looped then you need
369   filtering.
370
371
372   I should at this stage give a little bit of background on filters.
373   All the filters in Spider work in basically the same way.  You can
374   either accept or reject various options in order to create the filter
375   rules you wish to achieve.  Some filters are user settable, others can
376   only be altered by the sysop.  Route filtering can only be done by the
377   sysop.
378
379
380
381   Anyway, without further discouragement, let me start the process of
382   explanation.
383
384
385   1.3.  The node_default filter
386
387   All normal systems should have a default routing filter and it should
388   usually be set to send only the normal, unlooped, view of your
389   "national" network.  Here in the UK that means nodes from the UK and
390   Eire, in EU it is more complex as the networks there grew up in a more
391   intertwined way.
392
393
394
395   The generic commands are:-
396
397        reject/route node_default <filter_option>
398
399        or
400
401        accept/route node_default <filter_option>
402
403
404
405
406   where filter_option is one of the following ...
407
408
409
410        call <prefixes>
411        call_dxcc <numbers>
412        call_itu <numbers>
413        call_zone <numbers>
414        channel <prefixes>
415        channel_dxcc <numbers>
416        channel_itu <numbers>
417        channel_zone <numbers>
418
419
420
421
422   Please be careful if you alter this setting, it will affect ALL your
423   links!  Remember, this is a default filter for node connections, not a
424   per link default.
425
426
427   For the default routing filter then you have two real choices: either
428   a "national" view or the "safe" option of only your own callsign.
429   Examples of each (for my node: GB7DJK) are:-
430
431
432
433        acc/route node_default call_dxcc 61,38
434        acc/route node_default call gb7djk
435
436
437
438
439   GB7DJK uses the first of these. The DXCC countries can be obtained
440   from the show/prefix command.
441
442
443   The example filters shown control output TO all your partner nodes
444   unless they have a specific filter applied to them (see next section).
445
446
447   It is also possible to control the incoming routing information that
448   you are prepared to accept FROM your partner nodes. The reason this is
449   necessary is to make sure that stuff like mail, pings and similar
450   commands a) go down the correct links and b) don't loop around
451   excessively. Again using GB7DJK as an example a typical default input
452   filter would be something like:
453
454
455
456        rej/route node_default input call_dxcc 61,38 and not channel_dxcc 61,38
457
458
459
460
461   What this does is accept node and user information for our national
462   network from nodes that are in our national network, but rejects such
463   information from anyone else. Although it doesn't explicitly say so,
464   by implication, any other node information (not from the UK and Eire)
465   is accepted.
466
467
468   As I imagine it will take a little while to get one's head around all
469   of this you can study the effect of any rules that you try by watching
470   the debug output after having done:-
471
472
473
474        set/debug filter
475
476
477
478
479   After you have got tired of that, to put it back the way it was:-
480
481
482
483        unset/debug filter
484
485
486
487
488
489   1.4.  General route filtering
490
491   Exactly the same rules apply for general route filtering.  You would
492   use either an accept filter or a reject filter like this ...
493
494
495
496        reject/route <node_call> <filter_option>
497
498        or
499
500        accept/route <node_call> <filter_option>
501
502
503
504
505
506   Here are some examples of route filters ...
507
508
509
510        rej/route gb7djk call_dxcc 61,38 (send everything except UK+EIRE nodes)
511        rej/route all                    (equiv to [very] restricted mode)
512        acc/route gb7djk call_dxcc 61,38 (send only UK+EIRE nodes)
513        acc/route gb7djk call gb7djk     (equiv to SET/ISOLATE)
514
515
516
517
518   In practice you will either be opening the default filter out for a
519   partner by defining a specific filter for that callsign:-
520
521
522
523        acc/route gb7baa all
524        acc/route gb7baa input all
525
526
527
528
529   or restricting it quite a lot, in fact making it very nearly like an
530   isolated node, like this:-
531
532
533
534        acc/route pi4ehv-8 call gb7djk
535        rej/route pi4ehv-8 input call_dxcc 61,38
536
537
538
539
540   This last example takes everything except UK and Eire from PI4EHV-8
541   but only sends him my local configuration (just a PC19 for GB7DJK and
542   PC16s for my local users).
543
544
545   It is possible to write much more complex rules, there are up to 10
546   accept/reject pairs per callsign per filter. For more information see
547   the next section.
548
549
550
551   1.5.  General filter rules
552
553   Upto v1.44 it was not possible for the user to set their own filters.
554   From v1.45 though that has all changed.  It is now possible to set
555   filters for just about anything you wish.  If you have just updated
556   from an older version of DXSpider you will need to update your new
557   filters.  You do not need to do anything with your old filters, they
558   will be renamed as you update.
559
560
561   There are 3 basic commands involved in setting and manipulating
562   filters.  These are accept, reject and clear.  First we will look
563   generally at filtering. There are a number of things you can filter in
564   the DXSpider system. They all use the same general mechanism.
565
566
567   In general terms you can create a "reject" or an "accept" filter which
568   can have up to 10 lines in it. You do this using, for example ...
569
570
571
572
573        accept/spots .....
574        reject/spots .....
575
576
577
578
579   where ..... are the specific commands for that type of filter. There
580   are filters for spots, wwv, announce, wcy and (for sysops) connects.
581   See each different accept or reject command reference for more
582   details.
583
584   There is also a command to clear out one or more lines in a filter.
585   They are ...
586
587
588
589        clear/spots 1
590        clear/spots all
591
592
593
594
595   There is clear/xxxx command for each type of filter.
596
597
598   and you can check that your filters have worked by the command ...
599
600
601
602
603        show/filter
604
605
606
607
608
609   For now we are going to use spots for the examples, but you can apply
610   the same principles to all types of filter.
611
612
613   1.6.  Types of filter
614
615   There are two main types of filter, accept or reject.  You can use
616   either to achieve the result you want dependent on your own preference
617   and which is more simple to do.  It is pointless writing 8 lines of
618   reject filters when 1 accept filter would do the same thing!  Each
619   filter has 10 lines (of any length) which are tried in order.  If a
620   line matches then the action you have specified is taken (ie reject
621   means ignore it and accept means take it)
622
623
624   If you specify reject filters, then any lines that arrive that match
625   the filter will be dumped but all else will be accepted.  If you use
626   an accept filter, then ONLY the lines in the filter will be accepted
627   and all else will be dumped.  For example if you have a single line
628   accept filter ...
629
630
631
632        accept/spots on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
633
634
635
636
637   then you will ONLY get VHF spots from or to CQ zones 14, 15 and 16.
638
639
640   If you set a reject filter like this ...
641
642
643
644        reject/spots on hf/cw
645
646
647
648
649   Then you will get everything EXCEPT HF CW spots.  You could make this
650   single filter even more flexible.  For example, if you are interested
651   in IOTA and will work it even on CW even though normally you are not
652   interested in CW, then you could say ...
653
654
655
656        reject/spots on hf/cw and not info iota
657
658
659
660
661   But in that case you might only be interested in iota and say:-
662
663
664
665        accept/spots not on hf/cw or info iota
666
667
668
669
670   which achieves exactly the same thing. You should choose one or the
671   other until you are comfortable with the way it works. You can mix
672   them if you wish (actually you can have an accept AND a reject on the
673   same line) but don't attempt this until you are sure you know what you
674   are doing!
675
676
677   You can arrange your filter lines into logical units, either for your
678   own understanding or simply convenience. Here is an example ...
679
680
681
682        reject/spots 1 on hf/cw
683        reject/spots 2 on 50000/1400000 not (by_zone 14,15,16 or call_zone 14,15,16)
684
685
686
687
688   What this does is to ignore all HF CW spots and also rejects any spots
689   on VHF which don't either originate or spot someone in Europe.
690
691
692   This is an example where you would use a line number (1 and 2 in this
693   case), if you leave the digit out, the system assumes '1'. Digits
694   '0'-'9' are available.  This make it easier to see just what filters
695   you have set.  It also makes it more simple to remove individual
696   filters, during a contest for example.
697
698
699   You will notice in the above example that the second line has
700   brackets.  Look at the line logically.  You can see there are 2
701   separate sections to it.  We are saying reject spots that are VHF or
702   above APART from those in zones 14, 15 and 16 (either spotted there or
703   originated there).  If you did not have the brackets to separate the 2
704   sections, then Spider would read it logically from the front and see a
705   different expression entirely ...
706
707
708
709        (on 50000/1400000 and by_zone 14,15,16) or call_zone 14,15,16
710
711
712
713
714   The simple way to remember this is, if you use OR - use brackets.
715   Whilst we are here CASE is not important. 'And BY_Zone' is just the
716   same as 'and by_zone'.
717
718   As mentioned earlier, setting several filters can be more flexible
719   than simply setting one complex one.  Doing it in this way means that
720   if you want to alter your filter you can just redefine or remove one
721   or more lines of it or one line. For example ...
722
723
724
725        reject/spots 1 on hf/ssb
726
727   would redefine our earlier example, or
728
729
730
731        clear/spots 1
732
733
734
735
736   To remove all the filter lines in the spot filter ...
737
738
739
740        clear/spots all
741
742
743
744
745
746   1.7.  Filter options
747
748   You can filter in several different ways.  The options are listed in
749   the various helpfiles for accept, reject and filter.
750
751
752   1.8.  Default filters
753
754   Sometimes all that is needed is a general rule for node connects.
755   This can be done with a node_default filter.  This rule will always be
756   followed, even if the link is isolated, unless another filter is set
757   specifically.  Default rules can be set for nodes and users.  They can
758   be set for spots, announces, WWV and WCY.  They can also be used for
759   hops.  An example might look like this ...
760
761
762
763        accept/spot node_default by_zone 14,15,16,20,33
764        set/hops node_default spot 50
765
766
767
768
769   This filter is for spots only, you could set others for announce, WWV
770   and WCY.  This filter would work for ALL nodes unless a specific
771   filter is written to override it for a particular node.  You can also
772   set a user_default should you require.  It is important to note that
773   default filters should be considered to be "connected".  By this I
774   mean that should you override the default filter for spots, you need
775   to add a rule for the hops for spots also.
776
777
778   1.9.  Advanced filtering
779
780   Once you are happy with the results you get, you may like to
781   experiment.
782
783
784   The previous example that filters hf/cw spots and accepts vhf/uhf
785   spots from EU can be written with a mixed filter, for example ...
786
787
788
789        rej/spot on hf/cw
790        acc/spot on 0/30000
791        acc/spot 2 on 50000/1400000 and (by_zone 14,15,16 or call_zone 14,15,16)
792
793   Note that the first filter has not been specified with a number.  This
794   will automatically be assumed to be number 1.  In this case, we have
795   said reject all HF spots in the CW section of the bands but accept all
796   others at HF.  Also accept anything in VHF and above spotted in or by
797   operators in the zones 14, 15 and 16.  Each filter slot actually has a
798   'reject' slot and an 'accept' slot. The reject slot is executed BEFORE
799   the accept slot.
800
801
802   It was mentioned earlier that after a reject test that doesn't match,
803   the default for following tests is 'accept', the reverse is true for
804   'accept'. In the example what happens is that the reject is executed
805   first, any non hf/cw spot is passed to the accept line, which lets
806   through everything else on HF.  The next filter line lets through just
807   VHF/UHF spots from EU.
808
809
810   1.10.  Basic hop control
811
812   In /spider/data you will find a file called hop_table.pl.  This is the
813   file that controls your hop count settings.  It has a set of default
814   hops on the various PC frames and also a set for each node you want to
815   alter the hops for.  You may be happy with the default settings of
816   course, but this powerful tool can help to protect and improve the
817   network.  The file will look something like this ...
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859   #
860   # hop table construction
861   #
862
863   package DXProt;
864
865   # default hopcount to use
866   $def_hopcount = 5;
867
868   # some variable hop counts based on message type
869   %hopcount =
870   (
871    11 => 10,
872    16 => 10,
873    17 => 10,
874    19 => 10,
875    21 => 10,
876   );
877
878
879   # the per node hop control thingy
880
881
882   %nodehops =
883
884    GB7ADX => {            11 => 8,
885                           12 => 8,
886                           16 => 8,
887                           17 => 8,
888                           19 => 8,
889                           21 => 8,
890                      },
891
892    GB7UDX => {            11 => 8,
893                           12 => 8,
894                           16 => 8,
895                           17 => 8,
896                           19 => 8,
897                           21 => 8,
898                      },
899    GB7BAA => {
900                           11 => 5,
901                           12 => 8,
902                           16 => 8,
903                           17 => 8,
904                           19 => 8,
905                           21 => 8,
906                      },
907   };
908
909
910
911
912
913   Each set of hops is contained within a pair of curly braces and
914   contains a series of PC frame types.  PC11 for example is a DX spot.
915   The figures here are not exhaustive but should give you a good idea of
916   how the file works.
917
918
919   You can alter this file at any time, including whilst the cluster is
920   running.  If you alter the file during runtime, the command load/hops
921   will bring your changes into effect.
922
923
924
925   1.11.  Hop Control on Specific Nodes
926
927   You can set a callsign specific hop count for any of the standard
928   filter options so:-
929
930
931
932        set/hops gb7djk spot 4
933        set/hops node_default route 10
934        set/hops gb7baa wcy 5
935
936
937
938
939   all work on their specific area of the protocol.
940
941
942   The set/hops command overrides any hops that you have set otherwise.
943
944
945   You can set what hops have been set using the show/hops command.
946
947
948   1.12.  Isolating networks
949
950   It is possible to isolate networks from each other on a "gateway" node
951   using the set/isolate <node_call> command.
952
953
954   The effect of this is to partition an isolated network completely from
955   another node connected to your node. Your node will appear on and
956   otherwise behave normally on every network to which you are connected,
957   but data from an isolated network will not cross onto any other
958   network or vice versa. However all the spot, announce and WWV traffic
959   and personal messages will still be handled locally (because you are a
960   real node on all connected networks), that is locally connected users
961   will appear on all networks and will be able to access and receive
962   information from all networks transparently.  All routed messages will
963   be sent as normal, so if a user on one network knows that you are a
964   gateway for another network, he can still still send a talk/announce
965   etc message via your node and it will be routed across.
966
967
968   If you use isolate on a node connection you will continue to receive
969   all information from the isolated partner, however you will not pass
970   any information back to the isolated node.  There are times when you
971   would like to forward only spots across a link (maybe during a contest
972   for example).  To do this, isolate the node in the normal way and use
973   an acc/spot >call< all filter to override the isolate.
974
975
976   2.  Other filters
977
978   2.1.  Filtering Mail
979
980   In the /spider/msg directory you will find a file called
981   badmsg.pl.issue.  Rename this to badmsg.pl and edit the file.  The
982   original looks something like this ....
983
984
985
986
987
988
989
990
991   # the list of regexes for messages that we won't store having
992   # received them (bear in mind that we must receive them fully before
993   # we can bin them)
994
995
996   # The format of each line is as follows
997
998   #     type      source             pattern
999   #     P/B/F     T/F/O/S            regex
1000
1001   # type: P - private, B - bulletin (msg), F - file (ak1a bull)
1002   # source: T - to field, F - from field,  O - origin, S - subject
1003   # pattern: a perl regex on the field requested
1004
1005   # Currently only type B and P msgs are affected by this code.
1006   #
1007   # The list is read from the top down, the first pattern that matches
1008   # causes the action to be taken.
1009
1010   # The pattern can be undef or 0 in which case it will always be selected
1011   # for the action specified
1012
1013
1014
1015   package DXMsg;
1016
1017   @badmsg = (
1018   );
1019
1020
1021
1022
1023
1024   I think this is fairly self explanatory.  It is simply a list of
1025   subject headers that we do not want to pass on to either the users of
1026   the cluster or the other cluster nodes that we are linked to.  This is
1027   usually because of rules and regulations pertaining to items for sale
1028   etc in a particular country.
1029
1030
1031
1032   2.2.  Filtering words from text fields in Announce, Talk and DX spots
1033
1034   From version 1.48 onwards the interface to this has changed. You can
1035   now use the commands set/badword to add words that you are not
1036   prepared to see on the cluster, unset/badword to allow that word again
1037   and show/badword to list the words that you have set.
1038
1039
1040   If you have a previous /spider/data/badwords, the first time you start
1041   the node, it will read and convert this file to the new commands. The
1042   old style file will then be removed.
1043
1044
1045   2.3.  Stopping (possibly bad) DX Spots from Nodes or Spotters
1046
1047
1048   There are a number of commands that control whether a spot progresses
1049   any further by regarding it as "bad" in some way.
1050
1051
1052   A DX Spot has a number of fields which can be checked to see whether
1053   they contain "bad" values, they are: the DX callsign itself, the
1054   Spotter and the Originating Node.
1055
1056
1057   There are a set of commands which allow the sysop to control whether a
1058   spot continues:-
1059
1060
1061
1062        set/baddx
1063        set/badspotter
1064        set/badnode
1065
1066
1067
1068
1069   These work in the same as the set/badword command, you can add any
1070   words or callsigns or whatever to the appropriate database. For
1071   example, to stop a spot from a particular node you do:
1072
1073
1074
1075        set/badnode gb7djk gb7dxc
1076
1077
1078
1079
1080   a bad spotter:
1081
1082
1083
1084        set/badspotter b0mb p1rat nocall
1085
1086
1087
1088
1089   and some bad dx:
1090
1091
1092
1093        set/baddx video wsjt
1094
1095
1096
1097
1098   You can remove a word using the appropriate unset command
1099   (unset/baddx, unset/badspotter, unset/badnode) or list them using one
1100   of show/baddx, show/badspotter and show/badnode.
1101
1102
1103   3.  Mail
1104
1105   DXSpider deals seamlessly with standard AK1A type mail.  It supports
1106   both personal and bulletin mail and the sysop has additional commands
1107   to ensure that mail gets to where it is meant.  DXSpider will send
1108   mail almost immediately, assuming that the target is on line.
1109   However, only one mail message is dealt with at any one time.  If a
1110   mail message is already being sent or recieved, then the new message
1111   will be queued until it has finished.
1112
1113   The cluster mail is automatically deleted after 30 days unless the
1114   sysop sets the "keep" flag using the msg command.
1115
1116
1117   3.1.  Personal mail
1118
1119   Personal mail is sent using the sp command.  This is actually the
1120   default method of sending mail and so a simple s for send will do.  A
1121   full list of the send commands and options is in the command set
1122   section, so I will not duplicate them here.
1123   3.2.  Bulletin mail
1124
1125   Bulletin mail is sent by using the sb command.  This is one of the
1126   most common mistakes users make when sending mail.  They send a
1127   bulletin mail with s or sp instead of sb and of course the message
1128   never leaves the cluster.  This can be rectified by the sysop by using
1129   the msg command.
1130
1131
1132   Bulletin addresses can be set using the Forward.pl file.
1133
1134
1135   3.3.  Forward.pl
1136
1137   DXSpider receives all and any mail sent to it without any alterations
1138   needed in files.  Because personal and bulletin mail are treated
1139   differently, there is no need for a list of accepted bulletin
1140   addresses.  It is necessary, however, to tell the program which links
1141   accept which bulletins.  For example, it is pointless sending
1142   bulletins addresses to "UK" to any links other than UK ones.  The file
1143   that does this is called forward.pl and lives in /spider/msg.  At
1144   default, like other spider files it is named forward.pl.issue.  Rename
1145   it to forward.pl and edit the file to match your requirements.  The
1146   format is below ...
1147
1148
1149
1150        #
1151        # this is an example message forwarding file for the system
1152        #
1153        # The format of each line is as follows
1154        #
1155        #     type    to/from/at pattern action  destinations
1156        #     P/B/F     T/F/A     regex   I/F    [ call [, call ...] ]
1157        #
1158        # type: P - private, B - bulletin (msg), F - file (ak1a bull)
1159        # to/from/at: T - to field, F - from field, A - home bbs, O - origin
1160        # pattern: a perl regex on the field requested
1161        # action: I - ignore, F - forward
1162        # destinations: a reference to an array containing node callsigns
1163        #
1164        # if it is non-private and isn't in here then it won't get forwarded
1165        #
1166        # Currently only type B msgs are affected by this code.
1167        #
1168        # The list is read from the top down, the first pattern that matches
1169        # causes the action to be taken.
1170        #
1171        # The pattern can be undef or 0 in which case it will always be selected
1172        # for the action specified
1173        #
1174        # If the BBS list is undef or 0 and the action is 'F' (and it matches the
1175        # pattern) then it will always be forwarded to every node that doesn't have
1176        # it (I strongly recommend you don't use this unless you REALLY mean it, if
1177        # you allow a new link with this on EVERY bull will be forwarded immediately
1178        # on first connection)
1179        #
1180
1181        package DXMsg;
1182
1183        @forward = (
1184        );
1185
1186
1187
1188
1189   Simply insert a bulletin address and state in the brackets where you
1190   wish that mail to go.  For example, you can see here that mail sent to
1191   "UK" will only be sent to the UK links and not to PA4AB-14.
1192
1193
1194   To force the cluster to reread the file use load/forward
1195
1196
1197
1198   3.4.  The msg command
1199
1200   The msg command is a very powerful and flexible tool for the sysop.
1201   It allows the sysop to alter to and from fields and make other changes
1202   to manage the cluster mail.
1203
1204   Here is a full list of the various options ...
1205
1206
1207
1208          MSG TO <msgno> <call>     - change TO callsign to <call>
1209          MSG FRom <msgno> <call>   - change FROM callsign to <call>
1210          MSG PRrivate <msgno>      - set private flag
1211          MSG NOPRrivate <msgno>    - unset private flag
1212          MSG RR <msgno>            - set RR flag
1213          MSG NORR <msgno>          - unset RR flag
1214          MSG KEep <msgno>          - set the keep flag (message won't be deleted ever)
1215          MSG NOKEep <msgno>        - unset the keep flag
1216          MSG SUbject <msgno> <new> - change the subject to <new>
1217          MSG WAittime <msgno>      - remove any waiting time for this message
1218          MSG NOREad <msgno>        - mark message as unread
1219          MSG REad <msgno>          - mark message as read
1220          MSG QUeue                 - queue any outstanding bulletins
1221          MSG QUeue 1               - queue any outstanding private messages
1222
1223
1224
1225
1226   These commands are simply typed from within the cluster as the sysop
1227   user.
1228
1229
1230   3.5.  Message status
1231
1232   You can check on a message from within the cluster by using the
1233   command stat/msg.  This will give you additional information on the
1234   message number including which nodes have received it, which node it
1235   was received from and when etc.  Here is an example of the output of
1236   the command ...
1237
1238
1239
1240        G0VGS de GB7MBC 28-Jan-2001 1308Z >
1241        stat/msg 6869
1242                From: GB7DJK
1243            Msg Time: 26-Jan-2001 1302Z
1244               Msgno: 6869
1245              Origin: GB7DJK
1246                Size: 8012
1247             Subject: AMSAT 2line KEPS 01025.AMSAT
1248                  To: UK
1249        Got it Nodes: GB7BAA, GB7ADX
1250             Private: 0
1251        Read Confirm: 0
1252          Times read: 0
1253        G0VGS de GB7MBC 28-Jan-2001 1308Z >
1254
1255   3.6.  Filtering mail
1256
1257   This is described in the section on Other filters so I will not
1258   duplicate it here.
1259
1260
1261   3.7.  Distribution lists
1262
1263   Distribution lists are simply a list of users to send certain types of
1264   mail to.  An example of this is mail you only wish to send to other
1265   sysops.  In /spider/msg there is a directory called distro.  You put
1266   any distibution lists in here.  For example, here is a file called
1267   SYSOP.pl that caters for the UK sysops.
1268
1269
1270
1271        qw(GB7TLH GB7DJK GB7DXM GB7CDX GB7BPQ GB7DXN GB7MBC GB7MBC-6 GB7MDX
1272           GB7NDX GB7SDX GB7TDX GB7UDX GB7YDX GB7ADX GB7BAA GB7DXA GB7DXH
1273           GB7DXK GB7DXI GB7DXS)
1274
1275
1276
1277
1278   Any mail sent to "sysop" would only be sent to the callsigns in this
1279   list.
1280
1281
1282   3.8.  BBS interface
1283
1284   Spider provides a simple BBS interface.  No input is required from the
1285   sysop of the cluster at all.  The BBS simply sets the cluster as a BBS
1286   and pushes any required mail to the cluster.  No mail can flow from
1287   Spider to the BBS, the interface is one-way.
1288
1289
1290   Please be careful not to flood the cluster network with unnecessary
1291   mail.  Make sure you only send mail to the clusters that want it by
1292   using the Forward.pl file very carefully.
1293
1294
1295   4.  Scripts
1296
1297   From 1.48 onwards it will become increasingly possible to control
1298   DXSpider's operation with scripts of various kinds.
1299
1300
1301   The directory /spider/scripts is where it all happens and is used for
1302   several things.  Firstly it contains a file called startup that can be
1303   used to call in any changes to the cluster from the default settings
1304   on startup.  This script is executed immediately after all
1305   initialisation of the node is done but before any connections are
1306   possible.  Examples of this include how many spots it is possible to
1307   get with the sh/dx command, whether you want registration/passwords to
1308   be permanently on etc.  An example file is shown below and is included
1309   in the distribution as startup.issue.
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321   #
1322   # startup script example
1323   #
1324   # set maximum no of spots allowed to 100
1325   # set/var $Spot::maxspots = 1
1326   #
1327   # Set registration on
1328   # set/var $main::reqreg = 1
1329   #
1330   # Set passwords on
1331   # set/var $main::passwdreq = 1
1332   #
1333
1334
1335
1336
1337
1338   As usual, any text behind a # is treated as a comment and not read.
1339
1340   Secondly, it is used to store the login scripts for users and nodes.
1341   Currently this can only be done by the sysop but it is envisaged that
1342   eventually users will be able to set their own.  An example is
1343   included in the distibution but here is a further example.
1344
1345
1346
1347        #
1348        # G0FYD
1349        #
1350        blank +
1351        sh/wwv 3
1352        blank +
1353        sh/dx
1354        blank +
1355        t g0jhc You abt?
1356        blank +
1357
1358
1359
1360
1361   The lines in between commands can simply insert a blank line or a
1362   character such as a + sign to make the output easier to read.  Simply
1363   create this script with your favourite editor and save it with the
1364   callsign of the user as the filename.  Filenames should always be in
1365   lower case.
1366
1367
1368   Commands can be inserted in the same way for nodes.  A node may wish a
1369   series of commands to be issued on login, such as a merge command for
1370   example.
1371
1372
1373   Thirdly, there are 2 default scripts for users and nodes who do not
1374   have a specifically defined script.  These are user_default and
1375   node_default
1376
1377
1378   5.  Databases
1379
1380   Spider allows the creation of local or remote databases.  It supports
1381   chained databases, allowing several different databases to be scanned
1382   with one simple command.  Importing of databases is limited at present
1383   to the standard AK1A databases such as OBLAST and the DB0SDX QSL
1384   database but will expand with time.
1385
1386
1387   5.1.  Creating databases
1388
1389   Creating a database could not be more simple.  All the commands are
1390   sent from the cluster prompt as the sysop user.
1391
1392   To create a database you use the command dbcreate.  It can be used in
1393   3 different ways like so ..
1394
1395
1396
1397        dbcreate <name>
1398
1399
1400
1401
1402   To simply create a database locally, you just tell the command the
1403   name of the database.  This does not create the actual database, it
1404   simply defines it to say that it exists.
1405
1406
1407
1408        dbcreate <name> chain <name> [<name>...]
1409
1410
1411
1412
1413   This creates a chained database entry.  The first database will be
1414   scanned, then the second, the third etc...
1415
1416
1417
1418        dbcreate <name> remote <name>
1419
1420
1421
1422
1423   This creates a remote entry.  the first name field is the database
1424   name at the remote node, then the remote switch, then the actual
1425   node_call of the remote node, for example...
1426
1427
1428
1429        dbcreate buckmaster remote gb7dxc
1430
1431
1432
1433
1434   Remote databases cannot be chained, however, the last database in a
1435   chain can be a remote database.
1436
1437
1438   5.2.  Importing databases
1439
1440   The only databases that Spider can currently import are the standard
1441   AK1A databases such as OBLAST or the DB0SDX qsl and address database.
1442   This will be added to with time.
1443
1444   To import such a database, first put the file somewhere useful like
1445   /tmp and then issue the following command ...
1446
1447
1448
1449        dbimport oblast /tmp/OBLAST.FUL
1450
1451
1452
1453   This will update the existing local oblast database or create it if it
1454   does not exist.
1455
1456
1457   5.3.  Checking available databases
1458
1459   Once a database is created, you will want to check that it has been
1460   added.  To do this use the dbavail command.  This will output the
1461   available databases.  For example ...
1462
1463
1464
1465        dbavail
1466        DB Name          Location   Chain
1467        qsl              Local
1468        buck             GB7ADX
1469        hftest           GB7DXM
1470        G0VGS de GB7MBC  3-Feb-2001 1925Z >
1471
1472
1473
1474
1475
1476   5.4.  Looking up databases
1477
1478   To look for information in a defined database, simply use the dbshow
1479   command, for example ...
1480
1481
1482
1483        dbshow buckmaster G0YLM
1484
1485
1486
1487
1488   will show the information for the callsign G0YLM from the buckmaster
1489   database if it exists.  To make things more standard for the users you
1490   can add an entry in the Aliases file so that it looks like a standard
1491   show command like this ...
1492
1493
1494
1495
1496
1497
1498
1499   Now you can simply use show/buckmaster or an abreviation.
1500
1501
1502   5.5.  Removing databases
1503
1504   To delete an existing database you use the dbremove command.  For
1505   example ...
1506
1507
1508
1509        dbremove oblast
1510
1511
1512
1513
1514   would remove the oblast database and its associated datafile from the
1515   system.  There are no warnings or recovery possible from this command.
1516   If you remove a database it ceases to exist and would have to be
1517   created from scratch if you still required it.
1518
1519   6.  Information, files and useful programs
1520
1521   6.1.  MOTD
1522
1523   One of the more important things a cluster sysop needs to do is to get
1524   information to his users.  The simplest way to do this is to have a
1525   banner that is sent to the user on login.  This is know as a "message
1526   of the day" or "motd".  To set this up, simply create a file in
1527   /spider/data called motd and edit it to say whatever you want.  It is
1528   purely a text file and will be sent automatically to anyone logging in
1529   to the cluster.
1530
1531
1532   6.2.  MOTD_NOR
1533
1534   This message of the day file lives in the same directory as the
1535   standard motd file but is only sent to non-registered users.  Once
1536   registered they will receive the same message as any other user.
1537
1538
1539   6.3.  Downtime message
1540
1541   If for any reason the cluster is down, maybe for upgrade or
1542   maintenance but the machine is still running, a message can be sent to
1543   the user advising them of the fact.  This message lives in the
1544   /spider/data directory and is called "offline".  Simply create the
1545   file and edit it to say whatever you wish.  This file will be sent to
1546   a user attempting to log into the cluster when DXSpider is not
1547   actually running.
1548
1549
1550   6.4.  Other text messages
1551
1552   You can set other text messages to be read by the user if they input
1553   the file name.  This could be for news items or maybe information for
1554   new users.  To set this up, make a directory under /spider called
1555   packclus.  Under this directory you can create files called news or
1556   newuser for example.  In fact you can create files with any names you
1557   like.  These can be listed by the user with the command ....
1558
1559
1560
1561        show/files
1562
1563
1564
1565
1566   They can be read by the user by typing the command ....
1567
1568
1569
1570        type news
1571
1572
1573
1574
1575   If the file they want to read is called news.  You could also set an
1576   alias for this in the Alias file to allow them just to type news
1577
1578
1579   You can also store other information in this directory, either
1580   directly or nested under directories.  One use for this would be to
1581   store DX bulletins such as the OPDX bulletins.  These can be listed
1582   and read by the user.  To keep things tidy, make a directory under
1583   /spider/packclus called bulletin.  Now copy any OPDX or similar
1584   bulletins into it.  These can be listed by the user in the same way as
1585   above using the show/files command with an extension for the bulletin
1586   directory you have just created, like this ....
1587
1588
1589
1590        show/files bulletin
1591
1592
1593
1594
1595
1596   An example would look like this ....
1597
1598
1599
1600        sh/files
1601        bulletin      DIR 20-Dec-1999 1715Z news          1602 14-Dec-1999 1330Z
1602
1603
1604
1605
1606   You can see that in the files area (basically the packclus directory)
1607   there is a file called news and a directory called bulletin.  You can
1608   also see that dates they were created.  In the case of the file news,
1609   you can also see the time it was last modified, a good clue as to
1610   whether the file has been updated since you last read it.  To read the
1611   file called news you would simply issue the command ....
1612
1613
1614
1615        type news
1616
1617
1618
1619
1620   To look what is in the bulletin directory you issue the command ....
1621
1622
1623
1624        show/files bulletin
1625        opdx390      21381 29-Nov-1999 1621Z opdx390.1     1670 29-Nov-1999 1621Z
1626        opdx390.2     2193 29-Nov-1999 1621Z opdx391      25045 29-Nov-1999 1621Z
1627        opdx392      35969 29-Nov-1999 1621Z opdx393      15023 29-Nov-1999 1621Z
1628        opdx394      33429 29-Nov-1999 1621Z opdx394.1     3116 29-Nov-1999 1621Z
1629        opdx395      24319 29-Nov-1999 1621Z opdx396      32647 29-Nov-1999 1621Z
1630        opdx396.1     5537 29-Nov-1999 1621Z opdx396.2     6242 29-Nov-1999 1621Z
1631        opdx397      18433 29-Nov-1999 1621Z opdx398      19961 29-Nov-1999 1621Z
1632        opdx399      17719 29-Nov-1999 1621Z opdx400      19600 29-Nov-1999 1621Z
1633        opdx401      27738 29-Nov-1999 1621Z opdx402      18698 29-Nov-1999 1621Z
1634        opdx403      24994 29-Nov-1999 1621Z opdx404      15685 29-Nov-1999 1621Z
1635        opdx405      13984 29-Nov-1999 1621Z opdx405.1     4166 29-Nov-1999 1621Z
1636        opdx406      28934 29-Nov-1999 1621Z opdx407      24153 29-Nov-1999 1621Z
1637        opdx408      15081 29-Nov-1999 1621Z opdx409      23234 29-Nov-1999 1621Z
1638        Press Enter to continue, A to abort (16 lines) >
1639
1640
1641
1642
1643   You can now read any file in this directory using the type command,
1644   like this ....
1645
1646
1647
1648
1649
1650
1651   type bulletin/opdx391
1652   Ohio/Penn DX Bulletin No. 391
1653   The Ohio/Penn Dx PacketCluster
1654   DX Bulletin No. 391
1655   BID: $OPDX.391
1656   January 11, 1999
1657   Editor Tedd Mirgliotta, KB8NW
1658   Provided by BARF-80 BBS Cleveland, Ohio
1659   Online at 440-237-8208 28.8k-1200 Baud 8/N/1 (New Area Code!)
1660   Thanks to the Northern Ohio Amateur Radio Society, Northern Ohio DX
1661   Association, Ohio/Penn PacketCluster Network, K1XN & Golist, WB2RAJ/WB2YQH
1662   & The 59(9) DXReport, W3UR & The Daily DX, K3TEJ, KN4UG, W4DC, NC6J, N6HR,
1663   Press Enter to continue, A to abort (508 lines) >
1664
1665
1666
1667
1668   The page length will of course depend on what you have it set to!
1669
1670
1671   6.5.  The Aliases file
1672
1673   You will find a file in /spider/cmd/ called Aliases.  First, copy this
1674   file to /spider/local_cmd/Aliases and edit this file.  You will see
1675   something like this ...
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717   #!/usr/bin/perl
1718
1719   # provide some standard aliases for commands for terminally
1720   # helpless ak1a user (helpless in the sense that they never
1721   # read nor understand help files)
1722
1723   # This file is automagically reloaded if its modification time is
1724   # later than the one stored in CmdAlias.pm
1725
1726   # PLEASE make this file consistant with reality! (the patterns MUST
1727   # match the filenames!)
1728
1729   # Don't alter this file, copy it into the local_cmd tree and modify it.
1730   # This file will be replaced everytime I issue a new release.
1731
1732   # You only need to put aliases in here for commands that don't work as
1733   # you desire naturally, e.g sh/dx on its own just works as you expect
1734   # so you need not add it as an alias.
1735
1736
1737
1738   package CmdAlias;
1739
1740   %alias = (
1741       '?' => [
1742             '^\?', 'apropos', 'apropos',
1743           ],
1744       'a' => [
1745             '^ann.*/full', 'announce full', 'announce',
1746             '^ann.*/sysop', 'announce sysop', 'announce',
1747             '^ann.*/(.*)$', 'announce $1', 'announce',
1748           ],
1749           'b' => [
1750           ],
1751           'c' => [
1752           ],
1753           'd' => [
1754             '^del', 'kill', 'kill',
1755             '^del\w*/fu', 'kill full', 'kill',
1756             '^di\w*/a\w*', 'directory all', 'directory',
1757             '^di\w*/b\w*', 'directory bulletins', 'directory',
1758             '^di\w*/n\w*', 'directory new', 'directory',
1759             '^di\w*/o\w*', 'directory own', 'directory',
1760             '^di\w*/s\w*', 'directory subject', 'directory',
1761             '^di\w*/t\w*', 'directory to', 'directory',
1762             '^di\w*/f\w*', 'directory from', 'directory',
1763             '^di\w*/(\d+)', 'directory $1', 'directory',
1764           ],
1765           'e' => [
1766           ],
1767           'f' => [
1768           ],
1769           'g' => [
1770           ],
1771           'h' => [
1772           ],
1773           'i' => [
1774           ],
1775           'j' => [
1776           ],
1777           'k' => [
1778           ],
1779           'l' => [
1780             '^l$', 'directory', 'directory',
1781             '^ll$', 'directory', 'directory',
1782             '^ll/(\d+)', 'directory $1', 'directory',
1783           ],
1784           'm' => [
1785           ],
1786           'n' => [
1787             '^news', 'type news', 'type',
1788           ],
1789           'o' => [
1790           ],
1791           'p' => [
1792           ],
1793           'q' => [
1794             '^q', 'bye', 'bye',
1795           ],
1796           'r' => [
1797             '^r$', 'read', 'read',
1798             '^rcmd/(\S+)', 'rcmd $1', 'rcmd',
1799           ],
1800           's' => [
1801             '^s/p$', 'send', 'send',
1802             '^sb$', 'send noprivate', 'send',
1803             '^set/home$', 'set/homenode', 'set/homenode',
1804             '^set/nobe', 'unset/beep', 'unset/beep',
1805             '^set/nohe', 'unset/here', 'unset/here',
1806             '^set/noan', 'unset/announce', 'unset/announce',
1807             '^set/nodx', 'unset/dx', 'unset/dx',
1808             '^set/nota', 'unset/talk', 'unset/talk',
1809             '^set/noww', 'unset/wwv', 'unset/wwv',
1810             '^set/nowx', 'unset/wx', 'unset/wx',
1811             '^sh$', 'show', 'show',
1812             '^sh\w*/buck', 'dbshow buck', 'dbshow',
1813             '^sh\w*/bu', 'show/files bulletins', 'show/files',
1814             '^sh\w*/c/n', 'show/configuration nodes', 'show/configuration',
1815             '^sh\w*/c$', 'show/configuration', 'show/configuration',
1816             '^sh\w*/com', 'dbavail', 'dbavail',
1817             '^sh\w*/dx/(\d+)-(\d+)', 'show/dx $1-$2', 'show/dx',
1818             '^sh\w*/dx/(\d+)', 'show/dx $1', 'show/dx',
1819             '^sh\w*/dx/d(\d+)', 'show/dx from $1', 'show/dx',
1820             '^sh\w*/email', 'dbshow email', 'dbshow',
1821             '^sh\w*/hftest', 'dbshow hftest', 'dbshow',
1822             '^sh\w*/vhftest', 'dbshow vhftest', 'dbshow',
1823             '^sh\w*/qsl', 'dbshow qsl', 'dbshow',
1824             '^sh\w*/tnc', 'who', 'who',
1825             '^sh\w*/up', 'show/cluster', 'show/cluster',
1826             '^sh\w*/w\w*/(\d+)-(\d+)', 'show/wwv $1-$2', 'show/wwv',
1827             '^sh\w*/w\w*/(\d+)', 'show/wwv $1', 'show/wwv',
1828             '^sp$', 'send', 'send',
1829
1830       ],
1831           't' => [
1832             '^ta$', 'talk', 'talk',
1833             '^t$', 'talk', 'talk',
1834           ],
1835           'u' => [
1836           ],
1837           'v' => [
1838           ],
1839           'w' => [
1840             '^wx/full', 'wx full', 'wx',
1841             '^wx/sysop', 'wx sysop', 'wx',
1842           ],
1843           'x' => [
1844           ],
1845           'y' => [
1846           ],
1847           'z' => [
1848           ],
1849   )
1850
1851
1852
1853
1854   You can create aliases for commands at will.  Beware though, these may
1855   not always turn out as you think.  Care is needed and you need to test
1856   the results once you have set an alias.
1857
1858
1859   6.6.  Console.pl
1860
1861   In later versions of Spider a simple console program is provided for
1862   the sysop.  This has a type ahead buffer with line editing facilities
1863   and colour for spots, announces etc.  To use this program, simply use
1864   console.pl instead of client.
1865
1866
1867   To edit the colours, copy /spider/perl/Console.pl to /spider/local and
1868   edit the file with your favourite editor.
1869
1870
1871   6.7.  Updating kepler data
1872
1873   Spider has a powerful and flexible show/satellite command.  In order
1874   for this to be accurate, the kepler data has to be updated regularly.
1875   In general, this data is available as an email or via cluster mail.
1876   Updating it is simple.  First you need to export the mail message as a
1877   file.  You do this with the export command from the cluster prompt as
1878   the sysop.  For example ...
1879
1880
1881
1882        export 5467 /spider/perl/keps.in
1883
1884
1885
1886
1887   would export message number 5467 as a file called keps.in in the
1888   /spider/perl directory.
1889
1890   Now login to a VT as sysop and cd /spider/perl.  There is a command in
1891   the perl directory called convkeps.pl.  All we need to do now is
1892   convert the file like so ...
1893
1894
1895
1896        ./convkeps.pl keps.in
1897
1898
1899
1900
1901   Now go back to the cluster and issue the command ...
1902
1903
1904
1905        load/keps
1906
1907
1908
1909
1910   That is it!  the kepler data has been updated.
1911
1912
1913
1914
1915   6.8.  The QRZ callbook
1916
1917   The command sh/qrz will only work once you have followed a few simple
1918   steps.  First you need to get a user ID and password from qrz.com.
1919   Simply go to the site and create one.  Secondly you need to copy the
1920   file /spider/perl/Internet.pm to /spider/local and alter it to match
1921   your user ID and password.  You also at this point need to set
1922   $allow=1 to complete the setup.  Many thanks to Fred Lloyd, the
1923   proprieter of qrz.com for allowing this access.
1924
1925
1926   7.  Security
1927
1928   From version 1.49 DXSpider has some additional security features.
1929   These are not by any means meant to be exhaustive, however they do
1930   afford some security against piracy.  These two new features can be
1931   used independently of each other or in concert to tighten the
1932   security.
1933
1934
1935   7.1.  Registration
1936
1937   The basic principle of registration is simple.  If a user is not
1938   registered by the sysop, then they have read-only access to the
1939   cluster.  The only thing they can actually send is a talk or a message
1940   to the sysop.  In order for them to be able to spot, send announces or
1941   talks etc the sysop must register them with the set/register command,
1942   like this ...
1943
1944
1945
1946        set/register g0vgs
1947
1948
1949
1950
1951   The user g0vgs can now fully use the cluster.  In order to enable
1952   registration, you can issue the command ...
1953
1954
1955
1956        set/var $main::reqreg = 1
1957
1958
1959
1960
1961   Any users that are not registered will now see the motd_nor file
1962   rather than the motd file as discussed in the Information, files and
1963   useful programs section.
1964
1965
1966   Entering this line at the prompt will only last for the time the
1967   cluster is running of course and would not be present on a restart.
1968   To make the change permanent, add the above line to
1969   /spider/scripts/startup.  To read more on the startup file, see the
1970   section on Information, files and useful programs.
1971
1972
1973   To unregister a user use unset/register and to show the list of
1974   registered users, use the command show/register.
1975
1976
1977   7.2.  Passwords
1978
1979   At the moment, passwords only affect users who login to a DXSpider
1980   cluster node via telnet.  If a user requires a password, they can
1981   either set it themselves or have the sysop enter it for them by using
1982   the set/password command.  Any users who already have passwords, such
1983   as remote sysops, will be asked for their passwords automatically by
1984   the cluster.  Using passwords in this way means that the user has a
1985   choice on whether to have a password or not.  To force the use of
1986   passwords at login, issue the command ...
1987
1988
1989
1990        set/var $main::passwdreq = 1
1991
1992
1993
1994
1995   at the cluster prompt.  This can also be added to the
1996   /spider/scripts/startup file as above to make the change permanent.
1997
1998
1999   Of course, if you do this you will have to assign a password for each
2000   of your users.  If you were asking them to register, it is anticipated
2001   that you would ask them to send you a message both to ask to be
2002   registered and to give you the password they wish to use.
2003
2004
2005   Should a user forget their password, it can be reset by the sysop by
2006   first removing the existing password and then setting a new one like
2007   so ...
2008
2009
2010
2011        unset/password g0vgs
2012        set/password g0vgs new_password
2013
2014
2015
2016
2017
2018   8.  CVS
2019
2020   CVS stands for "Concurrent Versions System" and the CVS for DXSpider
2021   is held at Sourceforge.  This means that it is possible to update your
2022   DXSpider installation to the latest sources by using a few simple
2023   commands.
2024
2025
2026   Please be aware that if you update your system using CVS, it is
2027   possible that you could be running code that is very beta and not
2028   fully tested.  There is a possibility that it could be unstable.
2029
2030
2031   I am of course assuming that you have a machine with both DXSpider and
2032   Internet access running.
2033
2034
2035   BEFORE YOU EVEN CONSIDER STARTING WITH THIS MAKE A BACKUP OF YOUR
2036   ENTIRE SPIDER TREE!!
2037
2038
2039   Assuming you are connected to the Internet, you need to login to the
2040   CVS repository and then update your Spider source.  There are several
2041   steps which are listed below ...
2042
2043
2044   First login as the user sysop.  Next you need to connect to the CVS
2045   repository.  You do this with the command below ...
2046
2047   cvs -d:pserver:anonymous@cvs.DXSpider.sourceforge.net:/cvsroot/dxspider login
2048
2049
2050
2051   You will get a password prompt.  Simply hit return here and your
2052   machine should return to a normal linux prompt.
2053
2054
2055   What happens next depends on whether you have an existing installation
2056   that you want to update with the latest and greatest or whether you
2057   just want to see what is there and/or run it on a new machine for
2058   testing.
2059
2060   If you are installing Spider from CVS then change directory to
2061   /home/sysop
2062
2063   If you are wanting to update Spider then cd to /tmp
2064
2065
2066   The next step will create a brand new 'spider' directory in your
2067   current directory.
2068
2069
2070   cvs -z3 -d:pserver:anonymous@cvs.DXSpider.sourceforge.net:/cvsroot/dxspider co spider
2071
2072
2073
2074   This command is all on one line.
2075
2076
2077   Hopefully your screen should show you downloading files.  The -z3
2078   simply compresses the download to improve speed.  When this has
2079   finished, you will have exactly the same as if you had untarred a full
2080   tarball PLUS some extra directories and files that CVS needs to do the
2081   magic that it does.
2082
2083
2084   Now if you are doing a new installation, that's it.  Carry on as if
2085   you have just downloaded and untarred the lastest tarball.
2086
2087
2088   If you want to upgrade your current installation then do this ...
2089
2090
2091
2092        tar cvfz /tmp/s.tgz spider
2093        cd /
2094        tar xvfzp /tmp/s.tgz
2095
2096
2097
2098
2099   This is assuming you downloaded to the /tmp directory of course.
2100
2101
2102   NOTE:  the 'p' on the end of the 'xvfz' is IMPORTANT!   It keeps the
2103   permissions correct.  YOU WERE LOGGED IN AS THE USER SYSOP WEREN'T
2104   YOU?????
2105
2106   Remember to recompile the C client (cd /spider/src; make)
2107
2108
2109   At this point the files have been upgraded.  You can (usually) restart
2110   the cluster in your own time.  However, if you attempt to use any new
2111   commands or features expect it to be fatal!  At least your cluster
2112   will have been restarted then so it will be too late to worry about
2113   it!
2114
2115
2116   Now the magic part!  From now on when you want to update, simply
2117   connect to the Internet and then, as the user sysop ...
2118
2119
2120
2121        cd /spider
2122        cvs -z3 update -d
2123
2124
2125
2126
2127   and your files will be updated.  As above, remember to recompile the
2128   "C" client if it has been updated (CVS will tell you) and restart if
2129   any of the perl scripts have been altered or added, again, CVS will
2130   tell you.
2131
2132
2133   You will find any changes documented in the /spider/Changes file.
2134
2135
2136   9.  The DXSpider command set
2137
2138   Below is a complete list of commands available from the cluster
2139   prompt.  Most maintenance tasks are automatic but there are some
2140   commands that are useful for a sysop.  These are listed below in
2141   alphabetical order.  The number in brackets following the command name
2142   is the permissions level needed to use the command.
2143
2144
2145   9.1.  accept/announce (0)
2146
2147   accept/announce [0-9] <pattern> Set an accept filter line for announce
2148
2149
2150   Create an 'accept this announce' line for a filter.
2151
2152   An accept filter line means that if the announce matches this filter
2153   it is passed onto the user. See HELP FILTERS for more info. Please
2154   read this to understand how filters work - it will save a lot of grief
2155   later on.
2156
2157   You can use any of the following things in this line:-
2158
2159
2160
2161          info <string>            eg: iota or qsl
2162          by <prefixes>            eg: G,M,2
2163          origin <prefixes>
2164          origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
2165          origin_itu <numbers>
2166          origin_zone <numbers>
2167          by_dxcc <numbers>
2168          by_itu <numbers>
2169          by_zone <numbers>
2170          channel <prefixes>
2171          wx 1                     filter WX announces
2172          dest <prefixes>          eg: 6MUK,WDX      (distros)
2173
2174
2175
2176
2177   some examples:-
2178
2179          acc/ann dest 6MUK
2180          acc/ann 2 by_zone 14,15,16
2181          (this could be all on one line: acc/ann dest 6MUK or by_zone 14,15,16)
2182
2183
2184
2185
2186   or
2187
2188
2189
2190          acc/ann by G,M,2
2191
2192
2193
2194
2195   This filter would only allow announces that were posted buy UK
2196   stations.  You can use the tag 'all' to accept everything eg:
2197
2198
2199
2200          acc/ann all
2201
2202
2203
2204
2205   but this probably for advanced users...
2206
2207
2208   9.2.  accept/announce (extended for sysops) (8)
2209
2210   accept/announce <call> [input] [0-9]<pattern> Announce filter sysop
2211   version
2212
2213
2214   This version allows a sysop to set a filter for a callsign as well as
2215   the default for nodes and users eg:-
2216
2217
2218
2219          accept/ann by G,M,2
2220          accept/ann input node_default by G,M,2
2221          accept/ann user_default by G,M,2
2222
2223
2224
2225
2226
2227   9.3.  accept/route (8)
2228
2229   accept/route <call> [0-9] <pattern> Set an 'accept' filter line for
2230   routing
2231
2232
2233   Create an 'accept this routing PC Protocol' line for a filter.
2234
2235
2236   An accept filter line means that if a PC16/17/19/21/24/41/50 matches
2237   this filter it is passed thru that interface. See HELP FILTERING for
2238   more info. Please read this to understand how filters work - it will
2239   save a lot of grief later on.
2240
2241
2242   You can use any of the following things in this line:-
2243
2244
2245          call <prefixes>        the callsign of the thingy
2246          call_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
2247          call_itu <numbers>
2248          call_zone <numbers>
2249          origin <prefixes>      really the interface it came in on
2250          origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
2251          origin_itu <numbers>
2252          origin_zone <numbers>
2253
2254
2255
2256
2257
2258   some examples:-
2259
2260
2261
2262          acc/route gb7djk call_dxcc 61,38 (send only UK+EIRE nodes)
2263          acc/route gb7djk call gb7djk     (equiv to SET/ISOLATE)
2264
2265
2266
2267
2268
2269   You can use the tag 'all' to accept everything eg:
2270
2271
2272
2273          acc/route all
2274
2275
2276
2277
2278
2279   9.4.  accept/spots (0)
2280
2281   accept/announce [0-9] <pattern> Set an accept filter line for spots
2282
2283
2284   Create an 'accept this spot' line for a filter.
2285
2286
2287   An accept filter line means that if the spot matches this filter it is
2288   passed onto the user. See HELP FILTERS for more info. Please read this
2289   to understand how filters work - it will save a lot of grief later on.
2290
2291   You can use any of the following things in this line:-
2292
2293
2294
2295          freq <range>           eg: 0/30000 or hf or hf/cw or 6m,4m,2m
2296          on <range>             same as 'freq'
2297          call <prefixes>        eg: G,PA,HB9
2298          info <string>          eg: iota or qsl
2299          by <prefixes>
2300          call_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
2301          call_itu <numbers>
2302          call_zone <numbers>
2303          by_dxcc <numbers>
2304          by_itu <numbers>
2305          by_zone <numbers>
2306          origin <prefixes>
2307          channel <prefixes>
2308
2309
2310
2311   For frequencies, you can use any of the band names defined in
2312   SHOW/BANDS and you can use a subband name like: cw, rtty, data, ssb -
2313   thus: hf/ssb. You can also just have a simple range like: 0/30000 -
2314   this is more efficient than saying simply: freq HF (but don't get too
2315   hung up about that)
2316
2317   some examples:-
2318
2319
2320
2321          acc/spot 1 on hf/cw
2322          acc/spot 2 on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
2323
2324
2325
2326
2327   You can use the tag 'all' to accept everything, eg:
2328
2329
2330
2331          acc/spot 3 all
2332
2333
2334
2335
2336   but this probably for advanced users...
2337
2338
2339   9.5.  accept/spots (extended for sysops) (8)
2340
2341   accept/spots <call> [input] [0-9] <pattern> Spot filter sysop version
2342
2343
2344   This version allows a sysop to set a filter for a callsign as well as
2345   the default for nodes and users eg:-
2346
2347
2348
2349          accept/spot db0sue-7 1 by_zone 14,15,16
2350          accept/spot node_default all
2351          set/hops node_default 10
2352
2353          accept/spot user_default by G,M,2
2354
2355
2356
2357
2358
2359   9.6.  accept/wcy (0)
2360
2361   accept/wcy [0-9] <pattern> set an accept WCY filter
2362
2363
2364   It is unlikely that you will want to do this, but if you do then you
2365   can filter on the following fields:-
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377     by <prefixes>            eg: G,M,2
2378     origin <prefixes>
2379     origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
2380     origin_itu <numbers>
2381     origin_zone <numbers>
2382     by_dxcc <numbers>
2383     by_itu <numbers>
2384     by_zone <numbers>
2385     channel <prefixes>
2386
2387
2388
2389
2390
2391   There are no examples because WCY Broadcasts only come from one place
2392   and you either want them or not (see UNSET/WCY if you don't want
2393   them).
2394
2395   This command is really provided for future use.
2396
2397   See HELP FILTER for information.
2398
2399
2400   9.7.  accept/wcy (extended for sysops) (8)
2401
2402   accept/wcy <call> [input] [0-9] <pattern> WCY filter sysop version
2403
2404
2405   This version allows a sysop to set a filter for a callsign as well as
2406   the default for nodes and users eg:-
2407
2408
2409
2410          accept/wcy node_default all
2411          set/hops node_default 10
2412
2413
2414
2415
2416
2417   9.8.  accept/wwv (0)
2418
2419   accept/wwv [0-9] <pattern> Set an accept WWV filter
2420
2421
2422   It is unlikely that you will want to do this, but if you do then you
2423   can filter on the following fields:-
2424
2425
2426
2427          by <prefixes>            eg: G,M,2
2428          origin <prefixes>
2429          origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
2430          origin_itu <numbers>
2431          origin_zone <numbers>
2432          by_dxcc <numbers>
2433          by_itu <numbers>
2434          by_zone <numbers>
2435          channel <prefixes>
2436
2437
2438
2439
2440   for example
2441
2442
2443          accept/wwv by_zone 4
2444
2445
2446
2447
2448   is probably the only useful thing to do (which will only show WWV
2449   broadcasts by stations in the US).
2450
2451   See HELP FILTER for information.
2452
2453
2454   9.9.  accept/wwv (extended for sysops) (8)
2455
2456   accept/wwv <call> [input] [0-9] <pattern> WWV filter sysop version
2457
2458
2459   This version allows a sysop to set a filter for a callsign as well as
2460   the default for nodes and users eg:-
2461
2462
2463
2464          accept/wwv db0sue-7 1 by_zone 4
2465          accept/wwv node_default all
2466          set/hops node_default 10
2467
2468          accept/wwv user_default by W,K
2469
2470
2471
2472
2473
2474   9.10.  announce (0)
2475
2476   announce <text> Send an announcement to local users
2477
2478
2479   Send an announcement to LOCAL users only, where <text> is the text of
2480   the announcement you wish to broadcast.  If you do not wish to receive
2481   announces, use the set/noannounce command.  Any announces made by a
2482   sysop will override set/noannounce.
2483
2484
2485   9.11.  announce full (0)
2486
2487   announce full <text> Send an announcement cluster wide
2488
2489
2490   This command will send your announcement across the whole cluster
2491   network.
2492
2493
2494
2495   9.12.  announce sysop (5)
2496
2497   announce sysop <text>
2498
2499
2500   Send an announcement to Sysops only
2501
2502
2503   9.13.  apropos (0)
2504
2505   apropos <string> Search the help database
2506
2507
2508
2509   Search the help database for <string> (it isn't case sensitive), and
2510   print the names of all the commands that may be relevant.
2511
2512
2513   9.14.  bye (0)
2514
2515   bye Exit from the cluster
2516
2517
2518   This will disconnect you from the cluster
2519
2520
2521   9.15.  catchup (5)
2522
2523   catchup <node_call> All|[<msgno> ...] Mark a message as sent
2524
2525
2526   When you send messages the fact that you have forwarded it to another
2527   node is remembered so that it isn't sent again. When you have a new
2528   partner node and you add their callsign to your /spider/msg/forward.pl
2529   file, all outstanding non-private messages will be forwarded to them.
2530   This may well be ALL the non-private messages. You can prevent this by
2531   using these commmands:-
2532
2533
2534
2535          catchup GB7DJK all
2536          catchup GB7DJK 300 301 302 303 500-510
2537
2538
2539
2540
2541   and to undo what you have just done:-
2542
2543
2544
2545          uncatchup GB7DJK all
2546          uncatchup GB7DJK 300 301 302 303 500-510
2547
2548
2549
2550
2551   which will arrange for them to be forward candidates again.
2552
2553   Order is not important.
2554
2555
2556   9.16.  clear/announce (8)
2557
2558   clear/announce [input] <callsign> [0-9|all] Clear an announce filter
2559   line
2560
2561
2562   A sysop can clear an input or normal output filter for a user or the
2563   node_default or user_default.
2564
2565
2566   9.17.  clear/route (8)
2567
2568   clear/route [input] ^lt;callsign> [0-9|all] Clear a route filter line
2569
2570
2571   This command allows you to clear (remove) a line in a route filter or
2572   to remove the whole filter.
2573
2574
2575   see CLEAR/SPOTS for a more detailed explanation.
2576
2577   A sysop can clear an input or normal output filter for a user or the
2578   node_default or user_default.
2579
2580
2581   9.18.  clear/spots (0)
2582
2583   clear/spots [1|all] Clear a spot filter line
2584
2585
2586   This command allows you to clear (remove) a line in a spot filter or
2587   to remove the whole filter.
2588
2589   If you have a filter:-
2590
2591
2592
2593          acc/spot 1 on hf/cw
2594          acc/spot 2 on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
2595
2596
2597
2598
2599   and you say:-
2600
2601
2602
2603          clear/spot 1
2604
2605
2606
2607
2608   you will be left with:-
2609
2610
2611
2612          acc/spot 2 on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
2613
2614
2615
2616
2617   If you do:
2618
2619
2620
2621          clear/spot all
2622
2623
2624
2625
2626   the filter will be completely removed.
2627
2628
2629   9.19.  clear/spots (extended for sysops) (8)
2630
2631   clear/spots [input] <callsign> [0-9|all] Clear a spot filter line
2632
2633
2634   A sysop can clear an input or normal output filter for a user or the
2635   node_default or user_default.
2636
2637
2638
2639
2640
2641   9.20.  clear/wcy (0)
2642
2643   clear/wcy [1|all] Clear a WCY filter line
2644
2645
2646   This command allows you to clear (remove) a line in a WCY filter or to
2647   remove the whole filter.
2648
2649   see CLEAR/SPOTS for a more detailed explanation.
2650
2651
2652   9.21.  clear/wcy (extended for sysops) (8)
2653
2654   clear/wcy [input] <callsign> [0-9|all] Clear a WCY filter line
2655
2656
2657   A sysop can clear an input or normal output filter for a user or the
2658   node_default or user_default.
2659
2660
2661   9.22.  clear/wwv (0)
2662
2663   clear/wwv [1|all] Clear a WWV filter line
2664
2665
2666   This command allows you to clear (remove) a line in a WWV filter or to
2667   remove the whole filter.
2668
2669   see CLEAR/SPOTS for a more detailed explanation.
2670
2671
2672   9.23.  clear/wwv (extended for sysops) (8)
2673
2674   clear/wwv [input] <callsign> [0-9|all] Clear a WWV filter line
2675
2676
2677   A sysop can clear an input or normal output filter for a user or the
2678   node_default or user_default.
2679
2680
2681   9.24.  connect (5)
2682
2683   connect <callsign> Start a connection to another DX Cluster
2684
2685
2686   Start a connection process that will culminate in a new connection to
2687   the DX cluster <callsign>. This process creates a new 'client' process
2688   which will use the script in /spider/connect/<callsign> to effect the
2689   'chat' exchange necessary to traverse the network(s) to logon to the
2690   cluster <callsign>.
2691
2692
2693   9.25.  dbavail (0)
2694
2695   dbavail Show a list of all the databases in the system
2696
2697
2698   The title says it all really, this command lists all the databases
2699   defined in the system. It is also aliased to SHOW/COMMAND.
2700
2701
2702   9.26.  dbcreate (9)
2703
2704   dbcreate <name> Create a database entry
2705   dbcreate <name> chain <name> [<name>..] Create a chained database
2706   entry
2707   dbcreate <name> remote <node> Create a remote database entry
2708
2709
2710   DBCREATE allows you to define a database in the system. It doesn't
2711   actually create anything, just defines it.
2712
2713   The databases that are created are simple DB_File hash databases, they
2714   are therefore already 'indexed'.
2715
2716   You can define a local database with the first form of the command eg:
2717
2718   DBCREATE oblast
2719
2720   You can also chain databases with the addition of the 'chain' keyword.
2721   This will search each database one after the other. A typical example
2722   is:
2723
2724   DBCREATE sdx_qsl chain sql_ad
2725
2726   No checking is done to see if the any of the chained databases exist,
2727   in fact it is usually better to do the above statement first then do
2728   each of the chained databases.
2729
2730   Databases can exist offsite. To define a database that lives on
2731   another node do:
2732
2733   DBCREATE buckmaster remote gb7dxc
2734
2735   Remote databases cannot be chained; however, the last database in a a
2736   chain can be a remote database eg:
2737
2738   DBCREATE qsl chain gb7dxc
2739
2740   To see what databases have been defined do:
2741
2742   DBAVAIL (or it will have been aliased to SHOW/COMMAND)
2743
2744   It would be normal for you to add an entry into your local Aliases
2745   file to allow people to use the 'SHOW/<dbname>' style syntax. So you
2746   would need to add a line like:-
2747
2748
2749
2750          's' => [
2751            ..
2752            ..
2753            '^sh\w*/buc', 'dbshow buckmaster', 'dbshow',
2754            ..
2755            ..
2756           ],
2757
2758
2759
2760
2761   to allow
2762
2763   SH/BUCK g1tlh
2764
2765   to work as they may be used to.
2766
2767   See DBIMPORT for the importing of existing AK1A format data to
2768   databases.  See DBSHOW for generic database enquiry
2769
2770
2771
2772
2773   9.27.  dbimport (9)
2774
2775   dbimport <dbname> Import AK1A data into a database
2776
2777
2778   If you want to import or update data in bulk to a database you can use
2779   this command. It will either create or update entries into an existing
2780   database. For example:-
2781
2782   DBIMPORT oblast /tmp/OBLAST.FUL
2783
2784   will import the standard OBLAST database that comes with AK1A into the
2785   oblast database held locally.
2786
2787
2788   9.28.  dbremove (9)
2789
2790   dbremove <dbname> Delete a database
2791
2792
2793   DBREMOVE will completely remove a database entry and also delete any
2794   data file that is associated with it.
2795
2796   There is no warning, no comeback, no safety net.
2797
2798   For example:
2799
2800   DBREMOVE oblast
2801
2802   will remove the oblast database from the system and it will also
2803   remove the associated datafile.
2804
2805   I repeat:
2806
2807   There is no warning, no comeback, no safety net.
2808
2809   You have been warned.
2810
2811
2812   9.29.  dbshow (0)
2813
2814   dbshow <dbname> <key> Display an entry, if it exists, in a database
2815
2816
2817   This is the generic user interface to the database to the database
2818   system.  It is expected that the sysop will add an entry to the local
2819   Aliases file so that users can use the more familiar AK1A style of
2820   enquiry such as:
2821
2822
2823
2824          SH/BUCK G1TLH
2825
2826
2827
2828
2829   but if he hasn't and the database really does exist (use DBAVAIL or
2830   SHOW/COMMAND to find out) you can do the same thing with:
2831
2832
2833
2834          DBSHOW buck G1TLH
2835
2836
2837
2838
2839   9.30.  debug (9)
2840
2841   debug Set the cluster program into debug mode
2842
2843
2844   Executing this command will only have an effect if you are running the
2845   cluster in debug mode i.e.
2846
2847
2848
2849                perl -d cluster.pl
2850
2851
2852
2853
2854   It will interrupt the cluster just after the debug command has
2855   finished.
2856
2857
2858   9.31.  delete/user (9)
2859
2860   delete/user <callsign> Delete a user from the User Database
2861
2862
2863   This command will completely remove a one or more users from the
2864   database.
2865
2866   There is NO SECOND CHANCE.
2867
2868   It goes without saying that you should use this command CAREFULLY!
2869
2870
2871
2872   9.32.  directory (0)
2873
2874   directory List messages
2875   directory own List your own messages
2876   directory new List all new messages
2877   directory to <call> List all messages to <call>
2878   directory from <call> List all messages from <call>
2879   directory subject <string> List all messages with <string> in subject
2880   directory <nn> List last <nn> messages
2881   directory <from>-<to> List messages <from> message <to> message
2882
2883
2884   List the messages in the messages directory.
2885
2886   If there is a 'p' one space after the message number then it is a
2887   personal message. If there is a '-' between the message number and the
2888
2889   You can use shell escape characters such as '*' and '?' in the <call>
2890   fields.
2891
2892   You can combine some of the various directory commands together eg:-
2893
2894
2895
2896           DIR TO G1TLH 5
2897        or
2898           DIR SUBJECT IOTA 200-250
2899
2900
2901
2902
2903   You can abbreviate all the commands to one letter and use ak1a
2904   syntax:-
2905           DIR/T G1* 10
2906           DIR/S QSL 10-100 5
2907
2908
2909
2910
2911
2912
2913   9.33.  directory (extended for sysops) (5)
2914
2915   Works just like the user command except that sysops can see ALL
2916   messages.
2917
2918
2919   9.34.  disconnect (8)
2920
2921   disconnect <call> [<call> ...] Disconnect a user or node
2922
2923
2924   Disconnect any <call> connected locally
2925
2926
2927   9.35.  dx (0)
2928
2929   dx [by <call>] <freq> <call> <remarks> Send a DX spot
2930
2931
2932   This is how you send a DX Spot to other users. You can, in fact, now
2933   enter the <freq> and the <call> either way round.
2934
2935
2936
2937           DX FR0G 144.600
2938           DX 144.600 FR0G
2939           DX 144600 FR0G
2940
2941
2942
2943
2944   will all give the same result. You can add some remarks to the end of
2945   the command and they will be added to the spot.
2946
2947
2948
2949           DX FR0G 144600 this is a test
2950
2951
2952
2953
2954   You can credit someone else by saying:-
2955
2956
2957
2958           DX by G1TLH FR0G 144.600 he isn't on the cluster
2959
2960
2961
2962
2963   The <freq> is compared against the available bands set up in the
2964   cluster.  See SHOW/BANDS for more information.
2965
2966
2967   9.36.  export (9)
2968
2969   export <msgno> <filename> Export a message to a file
2970
2971   Export a message to a file. This command can only be executed on a
2972   local console with a fully privileged user. The file produced will be
2973   in a form ready to be imported back into the cluster by placing it in
2974   the import directory (/spider/msg/import).
2975
2976   This command cannot overwrite an existing file. This is to provide
2977   some measure of security. Any files written will owned by the same
2978   user as the main cluster, otherwise you can put the new files anywhere
2979   the cluster can access. For example:-
2980
2981   EXPORT 2345 /tmp/a
2982
2983
2984   9.37.  export_users (9)
2985
2986   export_users [<filename>] Export the users database to ascii
2987
2988
2989   Export the users database to a file in ascii format. If no filename is
2990   given then it will export the file to /spider/data/user_asc.
2991
2992   If the file already exists it will be renamed to <filename>.o. In fact
2993   up to 5 generations of the file can be kept each one with an extra 'o'
2994   on the suffix.
2995
2996   BE WARNED: this will write to any file you have write access to. No
2997   check is made on the filename (if any) that you specify.
2998
2999
3000   9.38.  filtering (0)
3001
3002   filtering Filtering things in DXSpider
3003
3004
3005   There are a number of things you can filter in the DXSpider system.
3006   They all use the same general mechanism.
3007
3008   In general terms you can create a 'reject' or an 'accept' filter which
3009   can have up to 10 lines in it. You do this using, for example:-
3010
3011   accept/spots .....  reject/spots .....
3012
3013   where ..... are the specific commands for that type of filter. There
3014   are filters for spots, wwv, announce, wcy and (for sysops) connects.
3015   See each different accept or reject command reference for more
3016   details.
3017
3018   There is also a command to clear out one or more lines in a filter and
3019   one to show you what you have set. They are:-
3020
3021   clear/spots 1 clear/spots all
3022
3023   and
3024
3025   show/filter
3026
3027   There is clear/xxxx command for each type of filter.
3028
3029   For now we are going to use spots for the examples, but you can apply
3030   the principles to all types of filter.
3031
3032   There are two main types of filter 'accept' or 'reject'; which you use
3033   depends entirely on how you look at the world and what is least
3034   writing to achieve what you want. Each filter has 10 lines (of any
3035   length) which are tried in order. If a line matches then the action
3036   you have specified is taken (ie reject means ignore it and accept
3037   means gimme it).
3038
3039   The important thing to remember is that if you specify a 'reject'
3040   filter (all the lines in it say 'reject/spots' (for instance) then if
3041   a spot comes in that doesn't match any of the lines then you will get
3042   it BUT if you specify an 'accept' filter then any spots that don't
3043   match are dumped. For example if I have a one line accept filter:-
3044
3045   accept/spots on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
3046
3047   then automatically you will ONLY get VHF spots from or to CQ zones 14
3048   15 and 16.  If you set a reject filter like:
3049
3050   reject/spots on hf/cw
3051
3052   Then you will get everything EXCEPT HF CW spots, If you am interested
3053   in IOTA and will work it even on CW then you could say:-
3054
3055   reject/spots on hf/cw and not info iota
3056
3057   But in that case you might only be interested in iota and say:-
3058
3059   accept/spots not on hf/cw or info iota
3060
3061   which is exactly the same. You should choose one or the other until
3062   you are confortable with the way it works. Yes, you can mix them
3063   (actually you can have an accept AND a reject on the same line) but
3064   don't try this at home until you can analyse the results that you get
3065   without ringing up the sysop for help.
3066
3067   You can arrange your filter lines into logical units, either for your
3068   own understanding or simply convenience. I have one set frequently:-
3069
3070   reject/spots 1 on hf/cw reject/spots 2 on 50000/1400000 not (by_zone
3071   14,15,16 or call_zone 14,15,16)
3072
3073   What this does is to ignore all HF CW spots (being a class B I can't
3074   read any CW and couldn't possibly be interested in HF :-) and also
3075   rejects any spots on VHF which don't either originate or spot someone
3076   in Europe.
3077
3078   This is an exmaple where you would use the line number (1 and 2 in
3079   this case), if you leave the digit out, the system assumes '1'. Digits
3080
3081   You can leave the word 'and' out if you want, it is implied. You can
3082   use any number of brackets to make the 'expression' as you want it.
3083   There are things called precedence rules working here which mean that
3084   you will NEED brackets in a situation like line 2 because, without it,
3085   will assume:-
3086
3087   (on 50000/1400000 and by_zone 14,15,16) or call_zone 14,15,16
3088
3089   annoying, but that is the way it is. If you use OR - use brackets.
3090   Whilst we are here CASE is not important. 'And BY_Zone' is just 'and
3091   by_zone'.
3092
3093   If you want to alter your filter you can just redefine one or more
3094   lines of it or clear out one line. For example:-
3095
3096   reject/spots 1 on hf/ssb
3097
3098   or
3099
3100   clear/spots 1
3101
3102
3103   To remove the filter in its entirty:-
3104
3105   clear/spots all
3106
3107   There are similar CLEAR commands for the other filters:-
3108
3109   clear/announce clear/wcy clear/wwv
3110
3111   ADVANCED USERS:-
3112
3113   Once you are happy with the results you get, you may like to
3114   experiment.
3115
3116   my example that filters hf/cw spots and accepts vhf/uhf spots from EU
3117   can be written with a mixed filter, eg:
3118
3119   rej/spot on hf/cw acc/spot on 0/30000 acc/spot 2 on 50000/1400000 and
3120   (by_zone 14,15,16 or call_zone 14,15,16)
3121
3122   each filter slot actually has a 'reject' slot and an 'accept' slot.
3123   The reject slot is executed BEFORE the accept slot.
3124
3125   It was mentioned earlier that after a reject test that doesn't match,
3126   the default for following tests is 'accept', the reverse is true for
3127   first, any non hf/cw spot is passed to the accept line, which lets
3128   thru everything else on HF.
3129
3130   The next filter line lets through just VHF/UHF spots from EU.
3131
3132
3133   9.39.  forward/latlong (8)
3134
3135   forward/latlong <node_call> Send latitude and longitude information to
3136   another cluster
3137
3138
3139   This command sends all the latitude and longitude information that
3140   your cluster is holding against callsigns.  One advantage of recieving
3141   this information is that more locator information is held by you.
3142   This means that more locators are given on the DX line assuming you
3143   have set/dxgrid enabled.  This could be a LOT of information though,
3144   so it is not recommended on slow links.
3145
3146
3147   9.40.  forward/opername (1)
3148
3149   forward/opername <call> Send out information on this <call> to all
3150   clusters
3151
3152
3153   This command sends out any information held in the user file which can
3154   be broadcast in PC41 protocol packets. This information is Name, QTH,
3155   Location and Homenode. PC41s are only sent for the information that is
3156   available.
3157
3158
3159   9.41.  help (0)
3160
3161   help <cmd> Get help on a command
3162
3163
3164   All commands can be abbreviated, so SHOW/DX can be abbreviated to
3165   SH/DX, ANNOUNCE can be shortened to AN and so on.
3166
3167   Look at the APROPOS <string> command which will search the help
3168   database for the <string> you specify and give you a list of likely
3169   commands to look at with HELP.
3170
3171
3172   9.42.  init (5)
3173
3174   init <node call> Re-initialise a link to an AK1A compatible node
3175
3176
3177   This command attempts to re-initialise a link to a (usually) AK1A node
3178   that has got confused, usually by a protocol loop of some kind. It may
3179   work - but you usually will be better off simply disconnecting it (or
3180   better, if it is a real AK1A node, doing an RCMD <node> DISC/F <your
3181   node>).
3182
3183   Best of luck - you will need it.
3184
3185
3186   9.43.  kill (0)
3187
3188   kill <msgno> [<msgno> ..] Delete a message from the local system
3189
3190
3191   Delete a message from the local system. You will only be able to
3192   delete messages that you have originated or been sent (unless you are
3193   the sysop).
3194
3195
3196   9.44.  kill (5)
3197
3198   kill <msgno> [<msgno> ...] Remove or erase a message from the system
3199   kill from <call> Remove all messages from a callsign
3200   kill to <call> Remove all messages to a callsign
3201
3202
3203   You can get rid of any message to or originating from your callsign
3204   using this command. You can remove more than one message at a time.
3205
3206   As a sysop you can kill any message on the system.
3207
3208
3209   9.45.  kill full (5)
3210
3211   kill full <msgno> [<msgno>] Delete a message from the whole cluster
3212
3213
3214   Delete a message (usually a 'bulletin') from the whole cluster system.
3215
3216   This uses the subject field, so any messages that have exactly the
3217   same subject will be deleted. Beware!
3218
3219
3220   9.46.  kill/expunge (6)
3221
3222   kill/expunge <msgno> [<msgno>..]Expunge a message
3223
3224
3225   Deleting a message using the normal KILL commands only marks that
3226   message for deletion. The actual deletion only happens later (usually
3227   two days later).
3228
3229   The KILL EXPUNGE command causes the message to be truly deleted more
3230   or less immediately.
3231
3232   It otherwise is used in the same way as the KILL command.
3233
3234
3235   9.47.  links (0)
3236
3237   links Show which nodes are physically connected
3238
3239
3240   This is a quick listing that shows which links are connected and some
3241   information about them. See WHO for a list of all connections.
3242
3243
3244
3245   9.48.  load/aliases (9)
3246
3247   load/aliases Reload the command alias table
3248
3249
3250   Reload the /spider/cmd/Aliases file after you have editted it. You
3251   will need to do this if you change this file whilst the cluster is
3252   running in order for the changes to take effect.
3253
3254
3255   9.49.  load/badmsg (9)
3256
3257   load/badmsg Reload the bad message table
3258
3259
3260   Reload the /spider/msg/badmsg.pl file if you have changed it manually
3261   whilst the cluster is running. This table contains a number of perl
3262   regular expressions which are searched for in the fields targetted of
3263   each message.  If any of them match then that message is immediately
3264   deleted on receipt.
3265
3266
3267   9.50.  load/badwords (9)
3268
3269   load/badwords Reload the bad words table
3270
3271
3272   Reload the /spider/data/badwords file if you have changed it manually
3273   whilst the cluster is running. This file contains a list of words
3274   which, if found on certain text portions of PC protocol, will cause
3275   those protocol frames to be rejected. It will all put out a message if
3276   any of these words are used on the announce, dx and talk commands. The
3277   words can be one or more on a line, lines starting with '#' are
3278   ignored.
3279
3280
3281   9.51.  load/bands (9)
3282
3283   load/bands Reload the band limits table
3284
3285
3286   Reload the /spider/data/bands.pl file if you have changed it manually
3287   whilst the cluster is running.
3288
3289
3290   9.52.  load/cmd_cache (9)
3291
3292   load/cmd_cache Reload the automatic command cache
3293
3294
3295   Normally, if you change a command file in the cmd or local_cmd tree it
3296   will automatially be picked up by the cluster program. Sometimes it
3297   can get confused if you are doing a lot of moving commands about or
3298   delete a command in the local_cmd tree and want to use the normal one
3299   again. Execute this command to reset everything back to the state it
3300   was just after a cluster restart.
3301   9.53.  load/forward (9)
3302
3303   load/forward Reload the msg forwarding routing table
3304
3305   Reload the /spider/msg/forward.pl file if you have changed it manually
3306   whilst the cluster is running.
3307
3308
3309   9.54.  load/messages (9)
3310
3311   load/messages Reload the system messages file
3312
3313
3314   If you change the /spider/perl/Messages file (usually whilst
3315   fiddling/writing ne commands) you can have them take effect during a
3316   cluster session by executing this command. You need to do this if get
3317   something like :-
3318
3319   unknown message 'xxxx' in lang 'en'
3320
3321
3322   9.55.  load/prefixes (9)
3323
3324   load/prefixes Reload the prefix table
3325
3326
3327   Reload the /spider/data/prefix_data.pl file if you have changed it
3328   manually whilst the cluster is running.
3329
3330
3331   9.56.  merge (5)
3332
3333   merge <node> [<no spots>/<no wwv>] Ask for the latest spots and WWV
3334
3335
3336   MERGE allows you to bring your spot and wwv database up to date. By
3337   default it will request the last 10 spots and 5 WWVs from the node you
3338   select. The node must be connected locally.
3339
3340   You can request any number of spots or wwv and although they will be
3341   appended to your databases they will not duplicate any that have
3342   recently been added (the last 2 days for spots and last month for WWV
3343   data).
3344
3345
3346   9.57.  msg (9)
3347
3348   msg <cmd> <msgno> [data ...] Alter various message parameters
3349
3350
3351   Alter message parameters like To, From, Subject, whether private or
3352   bulletin or return receipt (RR) is required or whether to keep this
3353   message from timing out.
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367     MSG TO <msgno> <call>     - change TO callsign to <call>
3368     MSG FRom <msgno> <call>   - change FROM callsign to <call>
3369     MSG PRrivate <msgno>      - set private flag
3370     MSG NOPRrivate <msgno>    - unset private flag
3371     MSG RR <msgno>            - set RR flag
3372     MSG NORR <msgno>          - unset RR flag
3373     MSG KEep <msgno>          - set the keep flag (message won't be deleted ever)
3374     MSG NOKEep <msgno>        - unset the keep flag
3375     MSG SUbject <msgno> <new> - change the subject to <new>
3376     MSG WAittime <msgno>      - remove any waitting time for this message
3377     MSG NOREad <msgno>        - mark message as unread
3378     MSG REad <msgno>          - mark message as read
3379     MSG QUeue                 - queue any outstanding bulletins
3380     MSG QUeue 1               - queue any outstanding private messages
3381
3382
3383
3384
3385   You can look at the status of a message by using:-
3386
3387   STAT/MSG <msgno>
3388
3389   This will display more information on the message than DIR does.
3390
3391
3392   9.58.  pc (8)
3393
3394   pc <call> <text> Send text (eg PC Protocol) to <call>
3395
3396
3397   Send some arbitrary text to a locally connected callsign. No
3398   processing is done on the text. This command allows you to send PC
3399   Protocol to unstick things if problems arise (messages get stuck etc).
3400   eg:-
3401
3402   pc gb7djk PC33^GB7TLH^GB7DJK^400^
3403
3404   You can also use in the same way as a talk command to a connected user
3405   but without any processing, added of "from <blah> to <blah>" or
3406   whatever.
3407
3408   pc G1TLH Try doing that properly!!!
3409
3410
3411   9.59.  ping (1)
3412
3413   ping <node> Check the link quality between nodes
3414
3415
3416   his command allows you to send a frame to another cluster node on the
3417   network and get a return frame.  The time it takes to do this is a
3418   good indication of the quality of the link.  The actual time it takes
3419   is output to the console in seconds.  Any visible cluster node can be
3420   PINGed.
3421
3422
3423
3424   9.60.  rcmd (1)
3425
3426   rcmd <node call> <cmd> Send a command to another DX cluster
3427
3428
3429   This command allows you to send nearly any command to another DX
3430   Cluster node that is connected to the system.
3431
3432
3433   Whether you get any output is dependant on a) whether the other system
3434   knows that the node callsign of this cluster is in fact a node b)
3435   whether the other system is allowing RCMDs from this node and c)
3436   whether you have permission to send this command at all.
3437
3438
3439   9.61.  read (0)
3440
3441   read Read the next unread personal message addressed to you
3442   read <msgno> Read the specified message
3443
3444
3445   You can read any messages that are sent as 'non-personal' and also any
3446   message either sent by or sent to your callsign.
3447
3448
3449
3450   9.62.  read (extended for sysops) (5)
3451
3452   read <msgno> Read a message on the system
3453
3454
3455   As a sysop you may read any message on the system
3456
3457
3458   9.63.  reject/announce
3459
3460   reject/announce [0-9] <pattern> Set a reject filter for announce
3461
3462
3463   Create an 'reject this announce' line for a filter.
3464
3465   An reject filter line means that if the announce matches this filter
3466   it is passed onto the user. See HELP FILTERS for more info. Please
3467   read this to understand how filters work - it will save a lot of grief
3468   later on.
3469
3470   You can use any of the following things in this line:-
3471
3472
3473
3474          info <string>            eg: iota or qsl
3475          by <prefixes>            eg: G,M,2
3476          origin <prefixes>
3477          origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
3478          origin_itu <numbers>
3479          origin_zone <numbers>
3480          by_dxcc <numbers>
3481          by_itu <numbers>
3482          by_zone <numbers>
3483          channel <prefixes>
3484          wx 1                     filter WX announces
3485          dest <prefixes>          eg: 6MUK,WDX      (distros)
3486
3487
3488
3489
3490   some examples:-
3491
3492
3493
3494          rej/ann by_zone 14,15,16 and not by G,M,2
3495
3496
3497
3498
3499   You can use the tag 'all' to reject everything eg:
3500
3501
3502
3503          rej/ann all
3504
3505
3506
3507
3508   but this probably for advanced users...
3509
3510
3511   9.64.  reject/announce (extended for sysops) (8)
3512
3513   reject/announce <call> [input] [0-9] <pattern> Announce filter sysop
3514   version
3515
3516
3517   This version allows a sysop to set a filter for a callsign as well as
3518   the default for nodes and users eg:-
3519
3520
3521
3522          reject/ann by G,M,2
3523          reject/ann input node_default by G,M,2
3524          reject/ann user_default by G,M,2
3525
3526
3527
3528
3529
3530   9.65.  reject/route (8)
3531
3532   reject/route <call> [0-9] <pattern> Set an 'reject' filter line for
3533   routing
3534
3535
3536   Create an 'reject this routing PC Protocol' line for a filter.
3537
3538
3539   An reject filter line means that if a PC16/17/19/21/24/41/50 matches
3540   this filter it is NOT passed thru that interface. See HELP FILTERING
3541   for more info. Please read this to understand how filters work - it
3542   will save a lot of grief later on.  You can use any of the following
3543   things in this line:-
3544
3545
3546
3547          call <prefixes>        the callsign of the thingy
3548          call_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
3549          call_itu <numbers>
3550          call_zone <numbers>
3551          origin <prefixes>      really the interface it came in on
3552          origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
3553          origin_itu <numbers>
3554          origin_zone <numbers>
3555
3556
3557
3558
3559
3560   some examples:-
3561
3562
3563
3564
3565     rej/route gb7djk call_dxcc 61,38 (everything except  UK+EIRE nodes)
3566
3567
3568
3569
3570
3571   You can use the tag 'all' to reject everything eg:
3572
3573
3574
3575          rej/route all     (equiv to [very] restricted mode)
3576
3577
3578
3579
3580
3581   9.66.  reject/spots (0)
3582
3583   reject/spots [0-9] <pattern> Set a reject filter line for spots
3584
3585
3586   Create a 'reject this spot' line for a filter.
3587
3588   A reject filter line means that if the spot matches this filter it is
3589   dumped (not passed on). See HELP FILTERS for more info. Please read
3590   this to understand how filters work - it will save a lot of grief
3591   later on.
3592
3593   You can use any of the following things in this line:-
3594
3595
3596
3597          freq <range>           eg: 0/30000 or hf or hf/cw or 6m,4m,2m
3598          on <range>             same as 'freq'
3599          call <prefixes>        eg: G,PA,HB9
3600          info <string>          eg: iota or qsl
3601          by <prefixes>
3602          call_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
3603          call_itu <numbers>
3604          call_zone <numbers>
3605          by_dxcc <numbers>
3606          by_itu <numbers>
3607          by_zone <numbers>
3608          origin <prefixes>
3609          channel <prefixes>
3610
3611
3612
3613
3614   For frequencies, you can use any of the band names defined in
3615   SHOW/BANDS and you can use a subband name like: cw, rtty, data, ssb -
3616   thus: hf/ssb. You can also just have a simple range like: 0/30000 -
3617   this is more efficient than saying simply: on HF (but don't get too
3618   hung up about that)
3619
3620   some examples:-
3621
3622
3623
3624          rej/spot 1 on hf
3625          rej/spot 2 on vhf and not (by_zone 14,15,16 or call_zone 14,15,16)
3626
3627
3628
3629
3630
3631   You can use the tag 'all' to reject everything eg:
3632
3633
3634
3635          rej/spot 3 all
3636
3637
3638
3639
3640   but this probably for advanced users...
3641
3642
3643   9.67.  reject/spots (extended for sysops) (8)
3644
3645   reject/spots <call> [input] [0-9] <pattern> Reject spot filter sysop
3646   version
3647
3648
3649   This version allows a sysop to set a filter for a callsign as well as
3650   the default for nodes and users eg:-
3651
3652
3653
3654          reject/spot db0sue-7 1 by_zone 14,15,16
3655          reject/spot node_default all
3656          set/hops node_default 10
3657
3658          reject/spot user_default by G,M,2
3659
3660
3661
3662
3663
3664   9.68.  reject/wcy (0)
3665
3666   reject/wcy [0-9] <pattern> Set a reject WCY filter
3667
3668
3669   It is unlikely that you will want to do this, but if you do then you
3670   can filter on the following fields:-
3671
3672
3673
3674          by <prefixes>            eg: G,M,2
3675          origin <prefixes>
3676          origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
3677          origin_itu <numbers>
3678          origin_zone <numbers>
3679          by_dxcc <numbers>
3680          by_itu <numbers>
3681          by_zone <numbers>
3682          channel <prefixes>
3683
3684
3685
3686
3687   There are no examples because WCY Broadcasts only come from one place
3688   and you either want them or not (see UNSET/WCY if you don't want
3689   them).
3690
3691   This command is really provided for future use.
3692
3693   See HELP FILTER for information.
3694
3695
3696
3697   9.69.  reject/wcy (extended for sysops) (8)
3698
3699   reject/wcy <call> [input] [0-9] <pattern> WCY reject filter sysop
3700   version
3701
3702
3703   This version allows a sysop to set a filter for a callsign as well as
3704   the default for nodes and users eg:-
3705
3706   reject/wcy gb7djk all
3707
3708
3709   9.70.  reject/wwv (0)
3710
3711   reject/wwv [0-9] <pattern> Set a reject WWV filter
3712
3713
3714   It is unlikely that you will want to do this, but if you do then you
3715   can filter on the following fields:-
3716
3717
3718
3719          by <prefixes>            eg: G,M,2
3720          origin <prefixes>
3721          origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
3722          origin_itu <numbers>
3723          origin_zone <numbers>
3724          by_dxcc <numbers>
3725          by_itu <numbers>
3726          by_zone <numbers>
3727          channel <prefixes>
3728
3729
3730
3731
3732   for example
3733
3734
3735
3736          reject/wwv by_zone 14,15,16
3737
3738
3739
3740
3741   is probably the only useful thing to do (which will only show WWV
3742   broadcasts by stations in the US).
3743
3744   See HELP FILTER for information.
3745
3746
3747   9.71.  reject/wwv (extended for sysops) (8)
3748
3749   reject/wwv <call> [input] [0-9] <pattern> WWV reject filter sysop
3750   version
3751
3752
3753   This version allows a sysop to set a filter for a callsign as well as
3754   the default for nodes and users eg:-
3755
3756
3757
3758          reject/wwv db0sue-7 1 by_zone 4
3759          reject/wwv node_default all
3760
3761          reject/wwv user_default by W
3762
3763   9.72.  reply (0)
3764
3765   reply Reply (privately) to the last message that you have read
3766   reply <msgno> Reply (privately) to the specified message
3767   reply B <msgno> Reply as a Bulletin to the specified message
3768   reply NOPrivate <msgno> Reply as a Bulletin to the specified message
3769   reply RR <msgno> Reply to the specified message with read receipt
3770
3771
3772   You can reply to a message and the subject will automatically have
3773   "Re:" inserted in front of it, if it isn't already present.
3774
3775   You can also use all the extra qualifiers such as RR, PRIVATE,
3776   NOPRIVATE, B that you can use with the SEND command (see SEND for
3777   further details)
3778
3779
3780   9.73.  send (0)
3781
3782   send <call> [<call> ...] Send a message to one or more callsigns
3783   send RR <call> Send a message and ask for a read receipt
3784   send COPY <msgno> <call> Send a copy of a  message to someone
3785   send PRIVATE <call> Send a personal message
3786   send NOPRIVATE <call> Send a message to all stations
3787
3788
3789   All the SEND commands will create a message which will be sent either
3790   to an individual callsign or to one of the 'bulletin' addresses.
3791
3792   SEND <call> on its own acts as though you had typed SEND PRIVATE, that
3793   is it will mark the message as personal and send it to the cluster
3794   node that that callsign is connected to.
3795
3796   You can have more than one callsign in all of the SEND commands.
3797
3798   You can have multiple qualifiers so that you can have for example:-
3799
3800
3801
3802          SEND RR COPY 123 PRIVATE G1TLH G0RDI
3803
3804
3805
3806
3807   which should send a copy of message 123 to G1TLH and G0RDI and you
3808   will receive a read receipt when they have read the message.
3809
3810   SB is an alias for SEND NOPRIVATE (or send a bulletin in BBS speak) SP
3811   is an alias for SEND PRIVATE
3812
3813
3814   9.74.  set/address (0)
3815
3816   set/address <your_address> Record your postal address
3817
3818
3819   Literally, record your address details on the cluster.
3820
3821
3822   9.75.  set/announce (0)
3823
3824   set/announce Allow announce messages
3825
3826
3827   Allow announce messages to arrive at your terminal.
3828
3829   9.76.  set/arcluster (5)
3830
3831   set/arcluster <node_call> [<node_call> ...] Make the node_call an AR-
3832   Cluster type node
3833
3834
3835   Set the node_call as an AR-Cluster type node
3836
3837
3838   9.77.  set/baddx (8)
3839
3840   set/baddx <call> Stop words we do not wish to see in the callsign
3841   field of a dx spot being propagated
3842
3843
3844   Setting a word as 'baddx' will prevent spots with that word in the
3845   callsign field of a DX spot from going any further. They will not be
3846   displayed and they will not be sent onto other nodes.
3847
3848   The word must be wriiten in full, no wild cards are allowed eg:-
3849
3850
3851
3852          set/baddx FORSALE VIDEO FR0G
3853
3854
3855
3856
3857   To allow a word again, use the following command ...
3858
3859
3860
3861          unset/baddx VIDEO
3862
3863
3864
3865
3866
3867   9.78.  set/badnode (6)
3868
3869   set/badnode <node_call> Stop spots from this node_call being
3870   propagated
3871
3872
3873   Setting a callsign as a 'badnode' will prevent spots from that node
3874   going any further. They will not be displayed and they will not be
3875   sent onto other nodes.
3876
3877   The call can be a full or partial call (or a prefix), eg:-
3878
3879
3880
3881          set/badnode K1TTT
3882
3883
3884
3885
3886   will stop anything from K1TTT (including any SSID's)
3887
3888
3889
3890          unset/badnode K1TTT
3891
3892
3893
3894
3895   will allow spots from him again.
3896
3897   Use with extreme care. This command may well be superceded by
3898   FILTERing.
3899
3900
3901   9.79.  set/badspotter (8)
3902
3903   set/badspotter <call> Stop spots from this callsign being propagated
3904
3905
3906   Setting a callsign as a 'badspotter' will prevent spots from this
3907   callsign going any further. They will not be displayed and they will
3908   not be sent onto other nodes.
3909
3910   The call must be written in full, no wild cards are allowed eg:-
3911
3912
3913
3914          set/badspotter VE2STN
3915
3916
3917
3918
3919   will stop anything from VE2STN. If you want SSIDs as well then you
3920   must enter them specifically.
3921
3922
3923
3924          unset/badspotter VE2STN
3925
3926
3927
3928
3929   will allow spots from him again.
3930
3931   Use with extreme care. This command may well be superceded by
3932   FILTERing.
3933
3934
3935   9.80.  set/badword (8)
3936
3937   set/badword <word> Stop things with this word being propogated
3938
3939
3940   Setting a word as a 'badword' will prevent things like spots,
3941   announces or talks with this word in the the text part from going any
3942   further. They will not be displayed and they will not be sent onto
3943   other nodes.
3944
3945   The word must be written in full, no wild cards are allowed eg:-
3946
3947   set/badword annihilate annihilated annihilation
3948
3949   will stop anything with these words in the text.
3950
3951   unset/badword annihilated
3952
3953   will allow text with this word again.
3954
3955
3956
3957   9.81.  set/beep (0)
3958
3959   set/beep Add beeps to terminal messages
3960
3961   Add a beep to DX and other terminal messages.
3962
3963
3964   9.82.  set/bbs (5)
3965
3966   set/bbs <call> [<call>..]Make <call> a BBS
3967
3968
3969   9.83.  set/clx (5)
3970
3971   set/clx <node_call> [<node_call> ...] Make the node_call a CLX type
3972   node
3973
3974
3975   Set the node_call as a CLX type node
3976
3977
3978   9.84.  set/debug (9)
3979
3980   set/debug <name> Add a debug level to the debug set
3981
3982
3983   You can choose to log several different levels.  The levels are
3984
3985   chan state msg cron connect
3986
3987   You can show what levels you are logging with the show/debug command.
3988
3989   You can remove a debug level with unset/debug <name>
3990
3991
3992   9.85.  set/dx (0)
3993
3994   set/dxAllow DX messages to arrive at your terminal
3995
3996
3997   You can stop DX messages with the unset/dx command
3998
3999
4000   9.86.  set/dxgrid (0)
4001
4002   set/dxgridAllow grid squares on the end of DX messages
4003
4004
4005   Some logging programs do not like the additional information at the
4006   end of a DX spot.  If this is the case, use the unset/dxgrid command
4007   to remove the grid squares.
4008
4009
4010   9.87.  set/dxnet (5)
4011
4012   set/dxnet <node_call> [<node_call> ...] Make the node_call a DXNet
4013   type node
4014
4015
4016   Set the node_call as a DXNet type node
4017
4018
4019   9.88.  set/echo (0)
4020
4021   set/echo Make the cluster echo your input
4022
4023
4024   If you are connected via a telnet session, different implimentations
4025   of telnet handle echo differently depending on whether you are
4026   connected via port 23 or some other port. You can use this command to
4027   change the setting appropriately.
4028
4029   You can remove the echo with the unset/echo command
4030
4031   The setting is stored in your user profile.
4032
4033   YOU DO NOT NEED TO USE THIS COMMAND IF YOU ARE CONNECTED VIA AX25.
4034
4035
4036   9.89.  set/email (0)
4037
4038   set/email <email_address> Set email address(es) and forward your
4039   personals
4040
4041
4042   If any personal messages come in for your callsign then you can use
4043   these commands to control whether they are forwarded onto your email
4044   address. To enable the forwarding do something like:-
4045
4046   SET/EMAIL mike.tubby@somewhere.com
4047
4048   You can have more than one email address (each one separated by a
4049   space).  Emails are forwarded to all the email addresses you specify.
4050
4051   You can disable forwarding by:-
4052
4053   UNSET/EMAIL
4054
4055
4056   9.90.  set/here (0)
4057
4058   set/here Set the here flag
4059
4060
4061   Let others on the cluster know you are here by only displaying your
4062   callsign.  If you are away from your terminal you can use the
4063   unset/here command to let people know you are away.  This simply puts
4064   brackets around your callsign to indicate you are not available.
4065
4066
4067   9.91.  set/homenode (0)
4068
4069   set/homenode <node_call> Set your home cluster
4070
4071
4072   Tell the cluster system where you normally connect to. Any Messages
4073   sent to you will normally find their way there should you not be
4074   connected.  eg:-
4075
4076
4077
4078          SET/HOMENODE gb7djk
4079
4080
4081
4082
4083
4084   9.92.  set/hops (8)
4085
4086   set/hops <node_call> ann|spots|wwv|wcy <n> Set hop count
4087
4088
4089   Set the hop count for a particular type of broadcast for a node.
4090
4091   This command allows you to set up special hop counts for a node for
4092   currently: announce, spots, wwv and wcy broadcasts.
4093        eg:
4094          set/hops gb7djk ann 10
4095          set/hops gb7mbc spots 20
4096
4097
4098
4099
4100   Set SHOW/HOPS for information on what is already set. This command
4101   creates a filter and works in conjunction with the filter system.
4102
4103
4104   9.93.  set/isolate (9)
4105
4106   set/isolate <node call> Isolate a node from the rest of the network
4107
4108
4109   Connect a node to your system in such a way that you are a full
4110   protocol member of its network and can see all spots on it, but
4111   nothing either leaks out from it nor goes back into from the rest of
4112   the nodes connected to you.
4113
4114   You can potentially connect several nodes in this way.
4115
4116   You can see which nodes are isolated with the show/isolate (1)
4117   command.
4118
4119   You can remove the isolation with the command unset/isolate.
4120
4121
4122   9.94.  set/language (0)
4123
4124   set/language <language> Set the language you wish to use
4125
4126
4127   You can select the language that you want the cluster to use.
4128   Currently the languages available are en (English) and nl (Dutch).
4129
4130
4131   9.95.  set/location (0)
4132
4133   set/location <lat and long> Set your latitude and longitude
4134
4135
4136   You can set your latitude and longitude manually or alternatively use
4137   the set/qra command which will do the conversion for you.
4138
4139
4140
4141          set/location 54 04 N 2 02 E
4142
4143
4144
4145
4146
4147
4148   9.96.  set/sys_location (9)
4149
4150   set/sys_location <lat & long> Set your cluster latitude and longitude
4151
4152
4153   In order to get accurate headings and such like you must tell the
4154   system what your latitude and longitude is. If you have not yet done a
4155   SET/QRA then this command will set your QRA locator for you. For
4156   example:-
4157
4158
4159          SET/LOCATION 52 22 N 0 57 E
4160
4161
4162
4163
4164
4165   9.97.  set/logininfo (0)
4166
4167   set/logininfo Show logins and logouts of nodes and users
4168
4169
4170   Show users and nodes when they log in and out of the local cluster.
4171   You can stop these messages by using the unset/logininfo command.
4172
4173
4174
4175   9.98.  set/lockout (9)
4176
4177   set/lockout <call> Stop a callsign connecting to the cluster
4178
4179
4180   You can show who is locked out with the show/lockout command.  To
4181   allow the user to connect again, use the unset/lockout command.
4182
4183
4184   9.99.  set/name (0)
4185
4186   set/name <your_name> Set your name
4187
4188
4189   Tell the cluster what your name is, eg:-
4190
4191
4192
4193          set/name Dirk
4194
4195
4196
4197
4198
4199   9.100.  set/node (9)
4200
4201   set/node <call> [<call> ...] Make the callsign an AK1A cluster
4202
4203
4204   Tell the system that the call(s) are to be treated as AK1A cluster and
4205   fed PC Protocol rather normal user commands.
4206
4207   From version 1.41 you can also set the following types of cluster
4208
4209
4210
4211          set/spider
4212          set/dxnet
4213          set/clx
4214          set/arcluster
4215
4216
4217
4218
4219   To see what your nodes are set to, use the show/nodes command.
4220
4221
4222
4223
4224
4225   9.101.  set/obscount (9)
4226
4227   set/obscount <count> <node call> Set the 'pump-up' obsolescence
4228   counter
4229
4230
4231   From version 1.35 onwards neighbouring nodes are pinged at regular
4232   intervals (see SET/PINGINTERVAL), usually 300 seconds or 5 minutes.
4233   There is a 'pump-up' counter which is decremented on every outgoing
4234   ping and then reset to the 'obscount' value on every incoming ping.
4235   The default value of this parameter is 2.
4236
4237   What this means is that a neighbouring node will be pinged twice at
4238   (default) 300 second intervals and if no reply has been heard just
4239   before what would be the third attempt, that node is disconnected.
4240
4241   If a ping is heard then the obscount is reset to the full value. Using
4242   default values, if a node has not responded to a ping within 15
4243   minutes, it is disconnected.
4244
4245
4246   9.102.  set/page (0)
4247
4248   set/page <n> Set the number of lines per page
4249
4250
4251   Tell the system how many lines you wish on a page when the number of
4252   lines of output from a command is more than this. The default is 20.
4253   Setting it explicitly to 0 will disable paging.
4254
4255
4256
4257          SET/PAGE 30
4258          SET/PAGE 0
4259
4260
4261
4262
4263   The setting is stored in your user profile.
4264
4265
4266   9.103.  set/password (0)
4267
4268   set/password Set your own password
4269
4270
4271   This command only works for a 'telnet' user (currently). It will only
4272   work if you have a password already set. This initial password can
4273   only be set by the sysop.
4274
4275   When you execute this command it will ask you for your old password,
4276   then ask you to type in your new password twice (to make sure you get
4277   it right). You may or may not see the data echoed on the screen as you
4278   type, depending on the type of telnet client you have.
4279
4280
4281   9.104.  set/password (9)
4282
4283   set/password <callsign> <string> Set a users password
4284
4285
4286   The password for a user can only be set by a full sysop. The string
4287   can contain any characters.
4288
4289   The way this field is used depends on context. If it is being used in
4290   the SYSOP command context then you are offered 5 random numbers and
4291   you have to supply the corresponding letters. This is now mainly for
4292   ax25 connections.
4293
4294   If it is being used on incoming telnet connections then, if a password
4295   is set or the:
4296
4297   set/var $main::passwdreq = 1
4298
4299   command is executed in the startup script, then a password prompt is
4300   given after the normal 'login: ' prompt.
4301
4302   The command "unset/password" is provided to allow a sysop to remove a
4303   users password completely in case a user forgets or loses their
4304   password.
4305
4306
4307   9.105.  set/pinginterval (9)
4308
4309   set/pinginterval <time> <node call> Set the ping time to neighbouring
4310   nodes
4311
4312
4313   As from version 1.35 all neighbouring nodes are pinged at regular
4314   intervals in order to determine the rolling quality of the link and,
4315   in future, to affect routing decisions. The default interval is 300
4316   secs or 5 minutes.
4317
4318   You can use this command to set a different interval. Please don't.
4319
4320   But if you do the value you enter is treated as minutes up 60 and
4321   seconds for numbers greater than that.
4322
4323   This is used also to help determine when a link is down at the far end
4324   (as certain cluster software doesn't always notice), see SET/OBSCOUNT
4325   for more information.
4326
4327
4328   9.106.  set/privilege (9)
4329
4330   set/privilege <n> <call> [<call> ...] Set the privilege level on a
4331   call
4332
4333
4334   Set the privilege level on a callsign. The privilege levels that
4335   pertain to commands are as default:-
4336
4337
4338
4339          0 - normal user
4340          1 - allow remote nodes normal user RCMDs
4341          5 - various privileged commands (including shutdown, but not disc-
4342              connect), the normal level for another node.
4343          8 - more privileged commands (including disconnect)
4344          9 - local sysop privilege. DO NOT SET ANY REMOTE USER OR NODE TO THIS
4345              LEVEL.
4346
4347
4348
4349
4350   If you are a sysop and you come in as a normal user on a remote
4351   connection your privilege will automatically be set to 0.
4352
4353
4354
4355
4356
4357   9.107.  set/spider (5)
4358
4359   set/spider <node_call> [<node_call> ...] Make the node_call a DXSpider
4360   type node
4361
4362
4363   Set the node_call as a DXSpider type node
4364
4365
4366   9.108.  set/sys_qra (9)
4367
4368   set/sys_qra <locator> Set your cluster QRA locator
4369
4370
4371   9.109.  set/qra (0)
4372
4373   set/qra <locator> Set your QRA locator
4374
4375
4376   Tell the system what your QRA (or Maidenhead) locator is. If you have
4377   not done a SET/LOCATION then your latitude and longitude will be set
4378   roughly correctly (assuming your locator is correct ;-). For example:-
4379
4380
4381
4382          SET/QRA JO02LQ
4383
4384
4385
4386
4387
4388   9.110.  set/qth (0)
4389
4390   set/qth <your QTH> Set your QTH
4391
4392
4393   Tell the system where your are.  For example:-
4394
4395
4396
4397          set/qth East Dereham, Norfolk
4398
4399
4400
4401
4402
4403   9.111.  set/register (9)
4404
4405   set/register <call> Mark a user as registered
4406
4407
4408   Registration is a concept that you can switch on by executing the
4409
4410   set/var $main::regreq = 1
4411
4412   command (usually in your startup file)
4413
4414   If a user is NOT registered then, firstly, instead of the normal motd
4415   file (/spider/data/motd) being sent to the user at startup, the user
4416   is sent the motd_nor file instead. Secondly, the non registered user
4417   only has READ-ONLY access to the node. The non-registered user cannot
4418   use DX, ANN etc.
4419
4420   The only exception to this is that a non-registered user can TALK or
4421   SEND messages to the sysop.
4422
4423   To unset a user use the 'unset/register' command
4424
4425
4426   9.112.  set/talk (0)
4427
4428   set/talk Allow talk messages to be seen at your console
4429
4430
4431   Allow talk messages to arrive at your console.  You can switch off
4432   talks with the unset/talk command.
4433
4434
4435   9.113.  set/wcy (0)
4436
4437   set/wcy Allow WCY messages to be seen at your console
4438
4439
4440   Allow WCY information to be seen at your console.  You can switch off
4441   WCY messages with the unset/wcy command.
4442
4443
4444   9.114.  set/wwv (0)
4445
4446   set/wwv Allow WWV messages to be seen at your console
4447
4448
4449   Allow WWV information to be seen at your console.  You can switch off
4450   WWV messages with the unset/wwv command.
4451
4452
4453   9.115.  set/wx (0)
4454
4455   set/wx Allow WX messages to be seen at your console
4456
4457
4458   Allow WX information to be seen at your console.  You can switch off
4459   WX messages with the unset/wx command.
4460
4461
4462   9.116.  show/baddx (1)
4463
4464   show/baddxShow all the bad dx calls in the system
4465
4466
4467   Display all the bad dx callsigns in the system, see SET/BADDX for more
4468   information.
4469
4470
4471   9.117.  show/badnode (6)
4472
4473   show/badnode Show all the bad nodes in the system
4474
4475
4476   Display all the bad node callsigns in the system, see SET/BADNODE for
4477   more information.
4478
4479
4480   9.118.  show/badspotter (1)
4481
4482   show/badspotter Show all the bad spotters in the system
4483
4484
4485   Display all the bad spotter's callsigns in the system, see
4486   SET/BADSPOTTER for more information.
4487
4488
4489   9.119.  show/badword (1)
4490
4491   show/badword Show all the bad words in the system
4492
4493
4494   Display all the bad words in the system, see SET/BADWORD for more
4495   information.
4496
4497
4498   9.120.  show/configuration (0)
4499
4500   show/configuration [<node>] Show all visible nodes and their users
4501
4502
4503   This command allows you to see all the users that can be seen and the
4504   nodes to which they are connected.  With the optional node, you can
4505   specify a particular node to look at.
4506
4507   This command is normally abbreviated to: sh/c
4508
4509   BE WARNED: the list that is returned can be VERY long
4510
4511
4512   9.121.  show/configuration/node (0)
4513
4514   show/configuration/node Show all the nodes connected
4515
4516
4517   Show all the nodes connected locally and the nodes they have
4518   connected.
4519
4520
4521   9.122.  show/connect (1)
4522
4523   show/connect Show all the active connections
4524
4525
4526   This command shows information on all the active connections known to
4527   the node. This command gives slightly more information than WHO.
4528
4529
4530   9.123.  show/date (0)
4531
4532   show/date [<prefix>|<callsign>] Show the local time
4533
4534
4535   This is very nearly the same as SHOW/TIME, the only difference the
4536   format of the date string if no arguments are given.
4537
4538   If no prefixes or callsigns are given then this command returns the
4539   local time and UTC as the computer has it right now. If you give some
4540   prefixes then it will show UTC and UTC + the local offset (not
4541   including DST) at the prefixes or callsigns that you specify.
4542
4543
4544   9.124.  show/debug (9)
4545
4546   show/debug Show what levels of debug you are logging
4547
4548
4549   The levels can be set with set/debug
4550
4551
4552
4553
4554
4555   9.125.  show/dx (0)
4556
4557   show/dx [options] interrogate the spot database
4558
4559
4560   If you just type SHOW/DX you will get the last so many spots (sysop
4561   configurable, but usually 10).
4562
4563   In addition you can add any number of these options in very nearly any
4564   order to the basic SHOW/DX command, they are:-
4565
4566
4567
4568
4569        on <band>       - eg 160m 20m 2m 23cm 6mm
4570        on <region>     - eg hf vhf uhf shf      (see SHOW/BANDS)
4571
4572        <number>        - the number of spots you want
4573        <from>-<to>     - <from> spot no <to> spot no in
4574                          the selected list
4575
4576        <prefix>        - for a spotted callsign beginning with <prefix>
4577        *<suffix>       - for a spotted callsign ending in <suffix>
4578        *<string>*      - for a spotted callsign containing <string>
4579
4580        day <number>    - starting <number> days ago
4581        day <from>-<to> - <from> days <to> days ago
4582
4583        info <text>     - any spots containing <text> in the info or remarks
4584
4585        by <call>       - any spots spotted by <call> (spotter <call>
4586                                is the same).
4587
4588        qsl             - this automatically looks for any qsl info on the call
4589                          held in the spot database.
4590
4591        iota [<iota>]   - If the iota island number is missing it will
4592                          look for the string iota and anything which looks like
4593                          an iota island number. If you specify then it will look
4594                          for that island.
4595
4596        qra [<locator>] - this will look for the specific locator if
4597                          you specify one or else anything that looks like a locator.
4598
4599
4600
4601
4602   e.g.
4603
4604
4605
4606
4607           SH/DX 9m0
4608           SH/DX on 20m info iota
4609           SH/DX 9a on vhf day 30
4610           SH/DX rf1p qsl
4611           SH/DX iota
4612           SH/DX iota eu-064
4613           SH/DX qra jn86
4614
4615
4616
4617
4618
4619
4620
4621   9.126.  show/dxcc (0)
4622
4623   show/dxcc <prefix> Interrogate the spot database by country
4624
4625
4626   This command takes the <prefix> (which can be a full or partial
4627   callsign if desired), looks up which internal country number it is and
4628   then displays all the spots as per SH/DX for that country.
4629
4630   The options for SHOW/DX also apply to this command.  e.g.
4631
4632
4633
4634
4635           SH/DXCC G
4636           SH/DXCC W on 20m info iota
4637
4638
4639
4640
4641
4642   9.127.  sh/dxstats (0)
4643
4644   sh/dxstats Show the DX Statistics for last 31 days
4645
4646
4647   Show the total DX spots for the last 31 days
4648
4649
4650
4651   9.128.  show/files (0)
4652
4653   show/files [<filearea> [<string>]] List the contents of a filearea
4654
4655
4656   SHOW/FILES on its own will show you a list of the various fileareas
4657   available on the system. To see the contents of a particular file area
4658   type:-
4659
4660
4661
4662           SH/FILES <filearea>
4663
4664
4665
4666
4667   where <filearea> is the name of the filearea you want to see the
4668   contents of.
4669
4670   You can also use shell globbing characters like '*' and '?' in a
4671   string to see a selection of files in a filearea eg:-
4672
4673
4674
4675           SH/FILES bulletins arld*
4676
4677
4678
4679
4680   See also TYPE - to see the contents of a file.
4681
4682
4683   9.129.  show/filter (0)
4684
4685   show/filter Show the filters you have set
4686
4687   Show the contents of all the filters that are set by you. This command
4688   displays all the filters set - for all the various categories.
4689
4690
4691   9.130.  show/filter (extended for sysops) (5)
4692
4693   show/filter <callsign> Show the filters set by <callsign>
4694
4695
4696   A sysop can look at any filters that have been set.
4697
4698
4699   9.131.  show/hfstats (0)
4700
4701   show/hfstats Show the HF DX Statistics for last 31 days
4702
4703
4704   Show the HF DX spots breakdown by band for the last 31 days
4705
4706
4707   9.132.  show/hftable (0)
4708
4709   show/hftable Show the HF DX Spotter Table for your country
4710
4711
4712   Show the HF DX Spotter table for your country for the last 31 days
4713
4714
4715   9.133.  show/hops (8)
4716
4717   show/hops <node_call> [ann|spots|wcy|wwv|] Show the hop counts for a
4718   node
4719
4720
4721   This command shows the hop counts set up for a node. You can specify
4722   which category you want to see. If you leave the category out then all
4723   the categories will be listed.
4724
4725
4726   9.134.  show/isolate (1)
4727
4728   show/isolate Show a list of isolated nodes
4729
4730
4731   Show which nodes are currently set to be isolated.
4732
4733
4734   9.135.  show/lockout (9)
4735
4736   show/lockout Show a list of excluded callsigns
4737
4738
4739   Show a list of callsigns that have been excluded (locked out) of the
4740   cluster locally with the set/lockout command
4741
4742
4743   9.136.  show/log (8)
4744
4745   show/log [<callsign>] Show excerpts from the system log
4746
4747
4748   This command outputs a short section of the system log.  On its own it
4749   will output a general logfile.  With the optional callsign it will
4750   show output from the log associated with that callsign.
4751
4752
4753   9.137.  show/moon (0)
4754
4755   show/moon [<prefix>|<callsign>] Show moon rise and set times
4756
4757
4758   Show the Moon rise and set times for a (list of) prefixes or
4759   callsigns, together with the azimuth and elevation of the sun
4760   currently at those locations.
4761
4762   If you don't specify any prefixes or callsigns, it will show the times
4763   for your QTH (assuming you have set it with either SET/LOCATION or
4764   SET/QRA), together with the current azimuth and elevation.
4765
4766   In addition, it will show the gain or loss dB relative to the nominal
4767   distance of 385,000Km due to the ellipsoidal nature of the orbit.
4768
4769   If all else fails it will show the Moonrise and set times for the node
4770   that you are connected to.
4771
4772   For example:-
4773
4774
4775
4776          SH/MOON
4777          SH/MOON G1TLH W5UN
4778
4779
4780
4781
4782
4783   9.138.  show/muf (0)
4784
4785   show/muf <prefix> [<hours>][long] Show the likely propagation to
4786   <prefix>
4787
4788
4789   This command allow you to estimate the likelihood of you contacting a
4790   station with the prefix you have specified. The output assumes a
4791   modest power of 20dBW and receiver sensitivity of -123dBm (about
4792   0.15muV/10dB SINAD)
4793
4794   The result predicts the most likely operating frequencies and signal
4795   levels for high frequency (shortwave) radio propagation paths on
4796   specified days of the year and hours of the day. It is most useful for
4797   paths between 250 km and 6000 km, but can be used with reduced
4798   accuracy for paths shorter or longer than this.
4799
4800   The command uses a routine MINIMUF 3.5 developed by the U.S. Navy and
4801   used to predict the MUF given the predicted flux, day of the year,
4802   hour of the day and geographic coordinates of the transmitter and
4803   receiver. This routine is reasonably accurate for the purposes here,
4804   with a claimed RMS error of 3.8 MHz, but much smaller and less complex
4805   than the programs used by major shortwave broadcasting organizations,
4806   such as the Voice of America.
4807
4808   The command will display some header information detailing its
4809   assumptions, together with the locations, latitude and longitudes and
4810   bearings. It will then show UTC (UT), local time at the other end
4811   (LT), calculate the MUFs, Sun zenith angle at the midpoint of the path
4812   (Zen) and the likely signal strengths. Then for each frequency for
4813   which the system thinks there is a likelihood of a circuit it prints a
4814   value.
4815
4816   The value is currently a likely S meter reading based on the
4817   conventional 6dB / S point scale. If the value has a '+' appended it
4818   means that it is 1/2 an S point stronger. If the value is preceeded by
4819   an 'm' it means that there is likely to be much fading and by an 's'
4820   that the signal is likely to be noisy.
4821
4822   By default SHOW/MUF will show the next two hours worth of data. You
4823   can specify anything up to 24 hours worth of data by appending the no
4824   of hours required after the prefix. For example:-
4825
4826
4827
4828          SH/MUF W
4829
4830
4831
4832
4833   produces:
4834
4835
4836
4837          RxSens: -123 dBM SFI: 159   R: 193   Month: 10   Day: 21
4838          Power :   20 dBW    Distance:  6283 km    Delay: 22.4 ms
4839          Location                       Lat / Long           Azim
4840          East Dereham, Norfolk          52 41 N 0 57 E         47
4841          United-States-W                43 0 N 87 54 W        299
4842          UT LT  MUF Zen  1.8  3.5  7.0 10.1 14.0 18.1 21.0 24.9 28.0 50.0
4843          18 23 11.5 -35  mS0+ mS2   S3
4844          19  0 11.2 -41  mS0+ mS2   S3
4845
4846
4847
4848
4849   indicating that you will have weak, fading circuits on top band and
4850   80m but usable signals on 40m (about S3).
4851
4852   inputting:-
4853
4854
4855
4856          SH/MUF W 24
4857
4858
4859
4860
4861   will get you the above display, but with the next 24 hours worth of
4862   propagation data.
4863
4864
4865
4866          SH/MUF W L 24
4867          SH/MUF W 24 Long
4868
4869
4870
4871
4872   Gives you an estimate of the long path propagation characterics. It
4873   should be noted that the figures will probably not be very useful, nor
4874   terrible accurate, but it is included for completeness.
4875
4876
4877   9.139.  show/newconfiguration (0)
4878
4879   show/newconfiguration [<node>] Show all the nodes and users visible
4880
4881
4882   This command allows you to see all the users that can be seen and the
4883   nodes to which they are connected.
4884
4885   This command produces essentially the same information as
4886   SHOW/CONFIGURATION except that it shows all the duplication of any
4887   routes that might be present It also uses a different format which may
4888   not take up quite as much space if you don't have any loops.
4889
4890   BE WARNED: the list that is returned can be VERY long
4891
4892
4893   9.140.  show/newconfiguration/node (0)
4894
4895   show/newconfiguration/node Show all the nodes connected locally
4896
4897
4898   Show all the nodes connected to this node in the new format.
4899
4900
4901   9.141.  show/node (1)
4902
4903   show/node [<node_call> ...] Show the type and version number of nodes
4904
4905
4906   Show the type and version (if connected) of the nodes specified on the
4907   command line. If no callsigns are specified then a sorted list of all
4908   the non-user callsigns known to the system will be displayed.
4909
4910
4911   9.142.  show/prefix (0)
4912
4913   show/prefix <callsign> Interrogate the prefix database
4914
4915
4916   This command takes the <callsign> (which can be a full or partial
4917   callsign or a prefix), looks up which internal country number it is
4918   and then displays all the relevant prefixes for that country together
4919   with the internal country no, the CQ and ITU regions.
4920
4921   See also SHOW/DXCC
4922
4923
4924
4925   9.143.  show/program (5)
4926
4927   show/program Show the locations of all the included program modules
4928
4929
4930   Show the name and location where every program module was load from.
4931   This is useful for checking where you think you have loaded a .pm file
4932   from.
4933
4934
4935   9.144.  show/qra (0)
4936
4937   show/qra <locator> [<locator>] Show the distance between locators
4938   show/qra <lat> <long> Convert latitude and longitude to a locator
4939
4940
4941   This is a multipurpose command that allows you either to calculate the
4942   distance and bearing between two locators or (if only one locator is
4943   given on the command line) the distance and beraing from your station
4944   to the locator. For example:-
4945
4946
4947
4948        SH/QRA IO92QL
4949        SH/QRA JN06 IN73
4950
4951   The first example will show the distance and bearing to the locator
4952   from yourself, the second example will calculate the distance and
4953   bearing from the first locator to the second. You can use 4 or 6
4954   character locators.
4955
4956   It is also possible to convert a latitude and longitude to a locator
4957   by using this command with a latitude and longitude as an argument,
4958   for example:-
4959
4960
4961
4962        SH/QRA 52 41 N 0 58 E
4963
4964
4965
4966
4967
4968   9.145.  show/qrz (0)
4969
4970   show/qrz <callsign> Show any callbook details on a callsign
4971
4972
4973   This command queries the QRZ callbook server on the internet and
4974   returns any information available for that callsign. This service is
4975   provided for users of this software by http://www.qrz.com
4976
4977
4978   9.146.  show/registered (9)
4979
4980   show/registered [<prefix>[ Show the registered users
4981
4982
4983   9.147.  show/route (0)
4984
4985   show/route <callsign> Show the route to <callsign>
4986
4987
4988   This command allows you to see to which node the callsigns specified
4989   are connected. It is a sort of inverse sh/config.
4990
4991
4992
4993          sh/route n2tly
4994
4995
4996
4997
4998
4999   9.148.  show/satellite (0)
5000
5001   show/satellite <name> [<hours> <interval>] Show satellite tracking
5002   data
5003
5004
5005   Show the tracking data from your location to the satellite of your
5006   choice from now on for the next few hours.
5007
5008   If you use this command without a satellite name it will display a
5009   list of all the satellites known currently to the system.
5010
5011   If you give a name then you can obtain tracking data of all the passes
5012   that start and finish 5 degrees below the horizon. As default it will
5013   give information for the next three hours for every five minute
5014   period.
5015
5016
5017   You can alter the number of hours and the step size, within certain
5018   limits.
5019
5020   Each pass in a period is separated with a row of '-----' characters
5021
5022   So for example:-
5023
5024
5025
5026        SH/SAT AO-10
5027        SH/SAT FENGYUN1 12 2
5028
5029
5030
5031
5032
5033   9.149.  show/sun (0)
5034
5035   show/sun [<prefix>|<callsign>] Show sun rise and set times
5036
5037
5038   Show the sun rise and set times for a (list of) prefixes or callsigns,
5039   together with the azimuth and elevation of the sun currently at those
5040   locations.
5041
5042   If you don't specify any prefixes or callsigns, it will show the times
5043   for your QTH (assuming you have set it with either SET/LOCATION or
5044   SET/QRA), together with the current azimuth and elevation.
5045
5046   If all else fails it will show the sunrise and set times for the node
5047   that you are connected to.
5048
5049   For example:-
5050
5051
5052
5053          SH/SUN
5054          SH/SUN G1TLH K9CW ZS
5055
5056
5057
5058
5059
5060   9.150.  show/time (0)
5061
5062   show/time [<prefix>|<callsign>] Show the local time
5063
5064
5065   If no prefixes or callsigns are given then this command returns the
5066   local time and UTC as the computer has it right now. If you give some
5067   prefixes then it will show UTC and UTC + the local offset (not
5068   including DST) at the prefixes or callsigns that you specify.
5069
5070
5071   9.151.  show/vhfstats (0)
5072
5073   show/vhfstats Show the VHF DX Statistics for last 31 days
5074
5075
5076   Show the VHF DX spots breakdown by band for the last 31 days
5077
5078
5079   9.152.  show/vhftable (0)
5080
5081   show/vhftable Show the VHF DX Spotter Table for your country
5082
5083   Show the VHF DX Spotter table for your country for the last 31 days
5084
5085
5086   9.153.  show/wcy (0)
5087
5088   show/wcy Show the last 10 WCY broadcasts
5089   show/wcy <n> Show the last <n> WCY broadcasts
5090
5091
5092   Display the most recent WCY information that has been received by the
5093   system
5094
5095
5096   9.154.  show/wwv (0)
5097
5098   show/wwv Show the last 10 WWV broadcasts
5099   show/wwv <n> Show the last <n> WWV broadcasts
5100
5101
5102   Display the most recent WWV information that has been received by the
5103   system
5104
5105
5106
5107   9.155.  shutdown (5)
5108
5109   shutdown Shutdown the cluster
5110
5111
5112   Shutdown the cluster and disconnect all the users.  If you have Spider
5113   set to respawn in /etc/inittab it will of course restart.
5114
5115
5116   9.156.  spoof (9)
5117
5118   spoof <callsign> <command> Run commands as another user
5119
5120
5121   This is a very simple yet powerful command for the sysop.  It allows
5122   you to issue commands as if you were a different user.  This is very
5123   useful for the kind of things that users seem to always get wrong..
5124   like home_node for example.
5125
5126
5127   9.157.  stat/db (5)
5128
5129   stat/db <dbname> Show the status of a database
5130
5131
5132   Show the internal status of a database descriptor.
5133
5134   Depending on your privilege level you will see more or less
5135   information.  This command is unlikely to be of much use to anyone
5136   other than a sysop.
5137
5138
5139   9.158.  stat/channel (5)
5140
5141   stat/channel <callsign> Show the status of a channel on the cluster
5142
5143
5144   Show the internal status of the channel object either for the channel
5145   that you are on or else for the callsign that you asked for.
5146
5147   Only the fields that are defined (in perl term) will be displayed.
5148
5149   9.159.  stat/msg (5)
5150
5151   stat/msg <msgno> Show the status of a message
5152
5153
5154   This command shows the internal status of a message and includes
5155   information such as to whom it has been forwarded, its size, origin
5156   etc etc.
5157
5158
5159   If no message number is given then the status of the message system is
5160   displayed.
5161
5162
5163   9.160.  stat/route_node (5)
5164
5165   stat/route_node <callsign> Show the data in a Route::Node object
5166
5167
5168   9.161.  stat/route_user (5)
5169
5170   stat/route_user <callsign> Show the data in a Route::User object
5171
5172
5173   9.162.  stat/user (5)
5174
5175   stat/user <callsign> Show the full status of a user
5176
5177
5178   Shows the full contents of a user record including all the secret
5179   flags and stuff.
5180
5181   Only the fields that are defined (in perl term) will be displayed.
5182
5183
5184   9.163.  sysop (0)
5185
5186   sysop Regain your privileges if you login remotely
5187
5188
5189   The system automatically reduces your privilege level to that of a
5190   normal user if you login in remotely. This command allows you to
5191   regain your normal privilege level. It uses the normal system: five
5192   numbers are returned that are indexes into the character array that is
5193   your assigned password (see SET/PASSWORD). The indexes start from
5194   zero.
5195
5196   You are expected to return a string which contains the characters
5197   required in the correct order. You may intersperse those characters
5198   with others to obscure your reply for any watchers. For example (and
5199   these values are for explanation :-):
5200
5201
5202
5203          password = 012345678901234567890123456789
5204          > sysop
5205          22 10 15 17 3
5206
5207
5208
5209
5210   you type:-
5211
5212
5213
5214
5215    aa2bbbb0ccc5ddd7xxx3n
5216    or 2 0 5 7 3
5217    or 20573
5218
5219
5220
5221
5222   They will all match. If there is no password you will still be offered
5223   numbers but nothing will happen when you input a string. Any match is
5224   case sensitive.
5225
5226
5227   9.164.  talk (0)
5228
5229   talk <callsign> Enter talk mode with <callsign>
5230   talk <callsign> <text> Send a text message to <callsign>
5231   talk <callsign> > <node_call> [<text>] Send a text message to
5232   <callsign> via <node_call>
5233
5234
5235   Send a short message to any other station that is visible on the
5236   cluster system. You can send it to anyone you can see with a
5237   SHOW/CONFIGURATION command, they don't have to be connected locally.
5238
5239   The second form of TALK is used when other cluster nodes are connected
5240   with restricted information. This usually means that they don't send
5241   the user information usually associated with logging on and off the
5242   cluster.
5243
5244   If you know that G3JNB is likely to be present on GB7TLH, but you can
5245   only see GB7TLH in the SH/C list but with no users, then you would use
5246   the second form of the talk message.
5247
5248   If you want to have a ragchew with someone you can leave the text
5249   message out and the system will go into 'Talk' mode. What this means
5250   is that a short message is sent to the recipient telling them that you
5251   are in a 'Talking' frame of mind and then you just type - everything
5252   you send will go to the station that you asked for.
5253
5254   All the usual announcements, spots and so on will still come out on
5255   your terminal.
5256
5257   If you want to do something (such as send a spot) you precede the
5258   normal command with a '/' character, eg:-
5259
5260
5261
5262           /DX 14001 G1TLH What's a B class licensee doing on 20m CW?
5263           /HELP talk
5264
5265
5266
5267
5268   To leave talk mode type:
5269
5270
5271
5272           /EX
5273
5274
5275
5276
5277
5278
5279
5280
5281   9.165.  type (0)
5282
5283   type <filearea>/<name> Look at a file in one of the fileareas
5284
5285
5286   Type out the contents of a file in a filearea. So, for example, in
5287   filearea 'bulletins' you want to look at file 'arld051' you would
5288   enter:-
5289
5290
5291
5292           TYPE bulletins/arld051
5293
5294
5295
5296
5297   See also SHOW/FILES to see what fileareas are available and a list of
5298   content.
5299
5300
5301   9.166.  who (0)
5302
5303   who Show who is physically connected locally
5304
5305
5306   This is a quick listing that shows which callsigns are connected and
5307   what sort of connection they have
5308
5309
5310   9.167.  wx (0)
5311
5312   wx <text> Send a weather message to local users
5313   wx full <text>  Send a weather message to all cluster users
5314
5315
5316   Weather messages can sometimes be useful if you are experiencing an
5317   extreme that may indicate enhanced conditions
5318
5319
5320   9.168.  wx (enhanced for sysops) (5)
5321
5322   wx sysop <text> Send a weather message to other clusters only
5323
5324
5325   Send a weather message only to other cluster nodes and not to general
5326   users.
5327
5328
5329
5330
5331
5332
5333
5334
5335
5336
5337
5338
5339
5340
5341
5342
5343
5344
5345
5346