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