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