add more routing code together with associated commands
[spider.git] / cmd / Commands_en.hlp
1 #
2 # please put your help in in alphabetical order
3 #
4 # a string search is done in the command field (case is ignored)
5 # and all commands matching the asked for command are printed out
6 #
7 # the order of the fields in each header is 
8 #   privilege, command, Description 
9 # if the command ends in a - then that line isn't printed, but any
10 # subsequent lines are
11 #
12 # Comment lines are indented before printing
13 #
14 === 0^ACCEPT/ANNOUNCE [0-9] <pattern>^Set an 'accept' filter line for announce
15 Create an 'accept this announce' line for a filter. 
16
17 An accept filter line means that if the announce matches this filter it is
18 passed onto the user. See HELP FILTERING for more info. Please read this
19 to understand how filters work - it will save a lot of grief later on.
20
21 You can use any of the following things in this line:-
22
23   info <string>            eg: iota or qsl
24   by <prefixes>            eg: G,M,2         
25   origin <prefixes>
26   origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
27   origin_itu <numbers>
28   origin_zone <numbers>
29   by_dxcc <numbers>
30   by_itu <numbers>
31   by_zone <numbers>
32   channel <prefixes>
33   wx 1                     filter WX announces
34   dest <prefixes>          eg: 6MUK,WDX      (distros)
35
36 some examples:-
37
38   acc/ann dest 6MUK
39   acc/ann 2 by_zone 14,15,16
40   (this could be all on one line: acc/ann dest 6MUK or by_zone 14,15,16)
41 or
42   acc/ann by G,M,2 
43
44 You can use the tag 'all' to accept everything eg:
45
46   acc/ann all
47
48 but this probably for advanced users...
49
50 === 8^ACCEPT/ANNOUNCE <call> [input] [0-9] <pattern>^Announce filter sysop version
51 This version allows a sysop to set a filter for a callsign as well as the
52 default for nodes and users eg:-
53
54   accept/ann by G,M,2
55   accept/ann input node_default by G,M,2
56   accept/ann user_default by G,M,2
57
58 === 0^ACCEPT/SPOTS [0-9] <pattern>^Set an 'accept' filter line for spots
59 Create an 'accept this spot' line for a filter. 
60
61 An accept filter line means that if the spot matches this filter it is
62 passed onto the user. See HELP FILTERING for more info. Please read this
63 to understand how filters work - it will save a lot of grief later on.
64
65 You can use any of the following things in this line:-
66
67   freq <range>           eg: 0/30000 or hf or hf/cw or 6m,4m,2m
68   on <range>             same as 'freq'
69   call <prefixes>        eg: G,PA,HB9
70   info <string>          eg: iota or qsl
71   by <prefixes>            
72   call_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
73   call_itu <numbers>
74   call_zone <numbers>
75   by_dxcc <numbers>
76   by_itu <numbers>
77   by_zone <numbers>
78   origin <prefixes>
79   channel <prefixes>
80
81 For frequencies, you can use any of the band names defined in
82 SHOW/BANDS and you can use a subband name like: cw, rtty, data, ssb -
83 thus: hf/ssb. You can also just have a simple range like: 0/30000 -
84 this is more efficient than saying simply: freq HF (but don't get
85 too hung up about that)
86
87 some examples:-
88
89   acc/spot 1 on hf/cw
90   acc/spot 2 on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
91
92 You can use the tag 'all' to accept everything, eg:
93
94   acc/spot 3 all
95
96 but this probably for advanced users...
97
98 === 8^ACCEPT/SPOTS <call> [input] [0-9] <pattern>^Spot filter sysop version
99 This version allows a sysop to set a filter for a callsign as well as the
100 default for nodes and users eg:-
101
102   accept/spot db0sue-7 1 by_zone 14,15,16
103   accept/spot node_default all
104   set/hops node_default 10
105
106   accept/spot user_default by G,M,2
107
108 === 0^ACCEPT/WCY [0-9] <pattern>^set an 'accept' WCY filter
109 It is unlikely that you will want to do this, but if you do then you can
110 filter on the following fields:-
111
112   by <prefixes>            eg: G,M,2         
113   origin <prefixes>
114   origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
115   origin_itu <numbers>
116   origin_zone <numbers>
117   by_dxcc <numbers>
118   by_itu <numbers>
119   by_zone <numbers>
120   channel <prefixes>
121
122 There are no examples because WCY Broadcasts only come from one place and
123 you either want them or not (see UNSET/WCY if you don't want them).
124
125 This command is really provided for future use.
126
127 See HELP FILTER for information.
128
129 === 8^ACCEPT/WCY <call> [input] [0-9] <pattern>^WCY filter sysop version
130 This version allows a sysop to set a filter for a callsign as well as the
131 default for nodes and users eg:-
132
133   accept/wcy node_default all
134   set/hops node_default 10
135
136 === 0^ACCEPT/WWV [0-9] <pattern>^set an 'accept' WWV filter
137 It is unlikely that you will want to do this, but if you do then you can
138 filter on the following fields:-
139
140   by <prefixes>            eg: G,M,2         
141   origin <prefixes>
142   origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
143   origin_itu <numbers>
144   origin_zone <numbers>
145   by_dxcc <numbers>
146   by_itu <numbers>
147   by_zone <numbers>
148   channel <prefixes>
149
150 for example 
151
152   accept/wwv by_zone 4
153
154 is probably the only useful thing to do (which will only show WWV broadcasts
155 by stations in the US).
156
157 See HELP FILTER for information.
158
159 === 8^ACCEPT/WWV <call> [input] [0-9] <pattern>^WWV filter sysop version
160 This version allows a sysop to set a filter for a callsign as well as the
161 default for nodes and users eg:-
162
163   accept/wwv db0sue-7 1 by_zone 4
164   accept/wwv node_default all
165   set/hops node_default 10
166
167   accept/wwv user_default by W,K
168
169 === 0^ANNOUNCE <text>^Send an announcement to LOCAL users only
170 <text> is the text of the announcement you wish to broadcast 
171
172 === 0^ANNOUNCE FULL <text>^Send an announcement cluster wide
173 This will send your announcement cluster wide
174
175 === 5^ANNOUNCE SYSOP <text>^Send an announcement to Sysops only
176
177 === 0^APROPOS <string>^Search help database for <string>
178 Search the help database for <string> (it isn't case sensitive), and print
179 the names of all the commands that may be relevant.
180
181 === 0^BYE^Exit from the cluster
182 This will disconnect you from the cluster
183
184 === 5^CATCHUP <node call> All|[<msgno> ...]^Mark a message as sent
185 === 5^UNCATCHUP <node call> All|[msgno> ...]^Unmark a message as sent
186 When you send messages the fact that you have forwarded it to another node 
187 is remembered so that it isn't sent again. When you have a new partner
188 node and you add their callsign to your /spider/msg/forward.pl file, all
189 outstanding non-private messages will be forwarded to them. This may well
190 be ALL the non-private messages. You can prevent this by using these 
191 commmands:-
192
193   catchup GB7DJK all
194   catchup GB7DJK 300 301 302 303 500-510
195         
196 and to undo what you have just done:-
197   
198   uncatchup GB7DJK all
199   uncatchup GB7DJK 300 301 302 303 500-510
200
201 which will arrange for them to be forward candidates again.
202
203 Order is not important.
204
205 === 0^CLEAR/SPOTS [1|all]^Clear a spot filter line
206 This command allows you to clear (remove) a line in a spot filter or to 
207 remove the whole filter.
208
209 If you have a filter:-
210
211   acc/spot 1 on hf/cw
212   acc/spot 2 on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
213
214 and you say:-
215
216   clear/spot 1
217
218 you will be left with:-
219
220   acc/spot 2 on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
221
222 If you do:
223
224   clear/spot all
225
226 the filter will be completely removed.
227
228 === 5^CONNECT <callsign>^Start a connection to another DX Cluster
229 Start a connection process that will culminate in a new connection to the
230 DX cluster <callsign>. This process creates a new 'client' process which will
231 use the script in /spider/connect/<callsign> to effect the 'chat' exchange
232 necessary to traverse the network(s) to logon to the cluster <callsign>.
233
234 === 0^DBAVAIL^Show a list of all the Databases in the system
235 Title says it all really, this command lists all the databases defined
236 in the system. It is also aliased to SHOW/COMMAND.
237
238 === 9^DBCREATE <name>^Create a database entry
239 === 9^DBCREATE <name> chain <name> [<name>..]^Create a chained database entry
240 === 9^DBCREATE <name> remote <node>^Create a remote database entry
241 DBCREATE allows you to define a database in the system. It doesn't actually
242 create anything, just defines it.
243
244 The databases that are created are simple DB_File hash databases, they are 
245 therefore already 'indexed'.
246
247 You can define a local database with the first form of the command eg:
248
249   DBCREATE oblast
250
251 You can also chain databases with the addition of the 'chain' keyword. 
252 This will search each database one after the other. A typical example 
253 is:
254
255   DBCREATE sdx_qsl chain sql_ad
256
257 No checking is done to see if the any of the chained databases exist, in
258 fact it is usually better to do the above staement first then do each of
259 the chained databases.
260
261 Databases can exist offsite. To define a database that lives on another 
262 node do:
263
264   DBCREATE buckmaster remote gb7dxc
265
266 Remote databases cannot be chained; however, the last database in a 
267 a chain can be a remote database eg:
268
269   DBCREATE qsl chain gb7dxc
270
271 To see what databases have been defined do:
272
273   DBAVAIL (or it will have been aliased to SHOW/COMMAND)
274
275 It would be normal for you to add an entry into your local Aliases file
276 to allow people to use the 'SHOW/<dbname>' style syntax. So you would
277 need to add a line like:-
278
279   's' => [
280     ..
281     ..
282     '^sh\w*/buc', 'dbshow buckmaster', 'dbshow',
283     ..
284     ..
285    ],
286
287 to allow 
288  
289   SH/BUCK g1tlh
290
291 to work as they may be used to.
292
293 See DBIMPORT for the importing of existing AK1A format data to databases.
294 See DBSHOW for generic database enquiry
295  
296 === 9^DBIMPORT <dbname> <filename>^Import AK1A data into a database
297 If you want to import or update data in bulk to a database you can use
298 this command. It will either create or update entries into an existing
299 database. For example:-
300
301   DBIMPORT oblast /tmp/OBLAST.FUL
302
303 will import the standard OBLAST database that comes with AK1A into the
304 oblast database held locally.
305
306 === 9^DBREMOVE <dbname>^Delete a database
307 DBREMOVE will completely remove a database entry and also delete any data
308 file that is associated with it. 
309
310 There is no warning, no comeback, no safety net. 
311
312 For example:
313
314   DBREMOVE oblast 
315
316 will remove the oblast database from the system and it will also remove
317 the associated datafile.
318
319 I repeat:
320
321 There is no warning, no comeback, no safety net.
322  
323 You have been warned.
324
325 === 0^DBSHOW <dbname> <key>^Display an entry, if it exists, in a database
326 This is the generic user interface to the database to the database system.
327 It is expected that the sysop will add an entry to the local Aliases file
328 so that users can use the more familiar AK1A style of enquiry such as:
329
330   SH/BUCK G1TLH
331
332 but if he hasn't and the database really does exist (use DBAVAIL or
333 SHOW/COMMAND to find out) you can do the same thing with:
334
335   DBSHOW buck G1TLH
336
337 === 9^DEBUG^Set the cluster program into debug mode
338 Executing this command will only have an effect if you are running the cluster
339 in debug mode i.e.
340
341         perl -d cluster.pl
342
343 It will interrupt the cluster just after the debug command has finished.
344
345 === 0^DIRECTORY^List messages 
346 === 0^DIRECTORY ALL^List all messages
347 === 0^DIRECTORY OWN^List your own messages
348 === 0^DIRECTORY NEW^List all new messages
349 === 0^DIRECTORY TO <call>^List all messages to <call>
350 === 0^DIRECTORY FROM <call>^List all messages from <call>
351 === 0^DIRECTORY SUBJECT <string>^List all messages with <string> in subject
352 === 0^DIRECTORY <nn>^List last <nn> messages
353 === 0^DIRECTORY <from>-<to>^List messages <from> message <to> message 
354 List the messages in the messages directory.
355
356 If there is a 'p' one space after the message number then it is a 
357 personal message. If there is a '-' between the message number and the
358 'p' then this indicates that the message has been read.
359
360 You can use shell escape characters such as '*' and '?' in the <call>
361 fields.
362
363 You can combine some of the various directory commands together eg:-
364
365    DIR TO G1TLH 5
366 or 
367    DIR SUBJECT IOTA 200-250
368
369 You can abbreviate all the commands to one letter and use ak1a syntax:-
370
371    DIR/T G1* 10
372    DIR/S QSL 10-100 5
373
374 === 5^DIRECTORY-^
375 Sysops can see all users' messages.
376
377 === 8^DISCONNECT <call> [<call> ...]^Disconnect a user or cluster
378 Disconnect any <call> connected locally
379
380 === 0^DX [BY <call>] <freq> <call> <remarks>^Send a DX spot
381 This is how you send a DX Spot to other users. You can, in fact, now
382 enter the <freq> and the <call> either way round. 
383
384    DX FR0G 144.600
385    DX 144.600 FR0G
386    DX 144600 FR0G 
387
388 will all give the same result. You can add some remarks to the end
389 of the command and they will be added to the spot.
390
391    DX FR0G 144600 this is a test
392
393 You can credit someone else by saying:-
394
395    DX by G1TLH FR0G 144.600 he isn't on the cluster
396
397 The <freq> is compared against the available bands set up in the 
398 cluster.  See SHOW/BANDS for more information.
399
400 === 9^EXPORT <msgno> <filename>^Export a message to a file
401 Export a message to a file. This command can only be executed on a local
402 console with a fully privileged user. The file produced will be in a form
403 ready to be imported back into the cluster by placing it in the import 
404 directory (/spider/msg/import).
405
406 This command cannot overwrite an existing file. This is to provide some 
407 measure of security. Any files written will owned by the same user as the 
408 main cluster, otherwise you can put the new files anywhere the cluster can
409 access. For example:-
410
411   EXPORT 2345 /tmp/a
412
413 === 9^EXPORT_USERS [<filename>]^Export the users database to ascii
414 Export the users database to a file in ascii format. If no filename
415 is given then it will export the file to /spider/data/user_asc.
416
417 If the file already exists it will be renamed to <filename>.o. In fact
418 up to 5 generations of the file can be kept each one with an extra 'o' on the
419 suffix. 
420
421 BE WARNED: this will write to any file you have write access to. No check is
422 made on the filename (if any) that you specify.
423
424 === 0^FILTERING...^Filtering things in DXSpider
425 There are a number of things you can filter in the DXSpider system. They
426 all use the same general mechanism.
427
428 In general terms you can create a 'reject' or an 'accept' filter which
429 can have up to 10 lines in it. You do this using, for example:-
430  
431   accept/spots .....
432   reject/spots .....
433
434 where ..... are the specific commands for that type of filter. There
435 are filters for spots, wwv, announce, wcy and (for sysops)
436 connects. See each different accept or reject command reference for
437 more details.
438
439 There is also a command to clear out one or more lines in a filter and
440 one to show you what you have set. They are:-
441
442   clear/spots 1
443   clear/spots all
444
445 and 
446   
447   show/filter
448
449 There is clear/xxxx command for each type of filter.
450
451 For now we are going to use spots for the examples, but you can apply
452 the principles to all types of filter.
453
454 There are two main types of filter 'accept' or 'reject'; which you use
455 depends entirely on how you look at the world and what is least
456 writing to achieve what you want. Each filter has 10 lines (of any
457 length) which are tried in order. If a line matches then the action
458 you have specified is taken (ie reject means ignore it and accept
459 means gimme it).
460
461 The important thing to remember is that if you specify a 'reject'
462 filter (all the lines in it say 'reject/spots' (for instance) then if
463 a spot comes in that doesn't match any of the lines then you will get
464 it BUT if you specify an 'accept' filter then any spots that don't
465 match are dumped. For example if I have a one line accept filter:-
466
467   accept/spots on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
468
469 then automatically you will ONLY get VHF spots from or to CQ zones 14
470 15 and 16.  If you set a reject filter like:
471
472   reject/spots on hf/cw
473
474 Then you will get everything EXCEPT HF CW spots, If you am interested in IOTA
475 and will work it even on CW then you could say:-
476
477   reject/spots on hf/cw and not info iota
478
479 But in that case you might only be interested in iota and say:-
480
481   accept/spots not on hf/cw or info iota
482
483 which is exactly the same. You should choose one or the other until
484 you are confortable with the way it works. Yes, you can mix them
485 (actually you can have an accept AND a reject on the same line) but
486 don't try this at home until you can analyse the results that you get
487 without ringing up the sysop for help.
488
489 You can arrange your filter lines into logical units, either for your
490 own understanding or simply convenience. I have one set frequently:-
491
492   reject/spots 1 on hf/cw
493   reject/spots 2 on 50000/1400000 not (by_zone 14,15,16 or call_zone 14,15,16)  
494
495 What this does is to ignore all HF CW spots (being a class B I can't
496 read any CW and couldn't possibly be interested in HF :-) and also
497 rejects any spots on VHF which don't either originate or spot someone
498 in Europe.
499
500 This is an exmaple where you would use the line number (1 and 2 in
501 this case), if you leave the digit out, the system assumes '1'. Digits
502 '0'-'9' are available.
503
504 You can leave the word 'and' out if you want, it is implied. You can
505 use any number of brackets to make the 'expression' as you want
506 it. There are things called precedence rules working here which mean
507 that you will NEED brackets in a situation like line 2 because,
508 without it, will assume:-
509
510   (on 50000/1400000 and by_zone 14,15,16) or call_zone 14,15,16 
511
512 annoying, but that is the way it is. If you use OR - use
513 brackets. Whilst we are here CASE is not important. 'And BY_Zone' is
514 just 'and by_zone'.
515
516 If you want to alter your filter you can just redefine one or more
517 lines of it or clear out one line. For example:-
518
519   reject/spots 1 on hf/ssb
520
521 or 
522
523   clear/spots 1
524
525 To remove the filter in its entirty:-
526
527   clear/spots all
528
529 ADVANCED USERS:-
530
531 Once you are happy with the results you get, you may like to experiment. 
532
533 my example that filters hf/cw spots and accepts vhf/uhf spots from EU
534 can be written with a mixed filter, eg:
535
536   rej/spot on hf/cw
537   acc/spot on 0/30000
538   acc/spot 2 on 50000/1400000 and (by_zone 14,15,16 or call_zone 14,15,16)
539
540 each filter slot actually has a 'reject' slot and an 'accept'
541 slot. The reject slot is executed BEFORE the accept slot.
542
543 It was mentioned earlier that after a reject test that doesn't match,
544 the default for following tests is 'accept', the reverse is true for
545 'accept'. In the example what happens is that the reject is executed
546 first, any non hf/cw spot is passed to the accept line, which lets
547 thru everything else on HF.
548
549 The next filter line lets through just VHF/UHF spots from EU.
550
551 === 8^FORWARD/LATLONG <node_call>^Send latitude and longitude information to another cluster
552 This command sends all the latitude and longitude information that your
553 cluster is holding against callsigns.  One advantage of recieving this
554 information is that more locator information is held by you.  This
555 means that more locators are given on the DX line assuming you have
556 SET/DXGRID enabled.  This could be a LOT of information though, so
557 it is not recommended on slow links.
558
559 === 1^FORWARD/OPERNAM <call>^Send out information on this <call> to all clusters
560 This command sends out any information held in the user file which can 
561 be broadcast in PC41 protocol packets. This information is Name, QTH, Location
562 and Homenode. PC41s are only sent for the information that is available.
563  
564 === 0^HELP^The HELP Command
565 HELP is available for a number of commands. The syntax is:-
566
567   HELP <cmd>
568   
569 Where <cmd> is the name of the command you want help on.
570
571 All commands can be abbreviated, so SHOW/DX can be abbreviated
572 to SH/DX, ANNOUNCE can be shortened to AN and so on.
573
574 Look at the APROPOS <string> command which will search the help database
575 for the <string> you specify and give you a list of likely commands
576 to look at with HELP.
577
578 === 5^INIT <node>^Re-initialise a link to an AK1A compatible node
579 This command attempts to re-initialise a link to a (usually) AK1A node
580 that has got confused, usually by a protocol loop of some kind. It may
581 work - but you usually will be better off simply disconnecting it (or
582 better, if it is a real AK1A node, doing an RCMD <node> DISC/F <your
583 node>).
584
585 Best of luck - you will need it.
586   
587 === 0^KILL <msgno> [<msgno..]^Delete a message from the local system
588 Delete a message from the local system. You will only be able to
589 delete messages that you have originated or been sent (unless you are
590 the sysop).
591
592 === 5^KILL FULL <msgno> [<msgno..]^Delete a message from the whole cluster
593 Delete a message (usually a 'bulletin') from the whole cluster system. 
594
595 This uses the subject field, so any messages that have exactly the
596 same subject will be deleted. Beware!
597
598 === 0^LINKS^Show which nodes is physically connected
599 This is a quick listing that shows which links are connected and
600 some information about them. See WHO for a list of all connections.
601
602 === 9^LOAD/ALIASES^Reload the command alias table
603 Reload the /spider/cmd/Aliases file after you have editted it. You
604 will need to do this if you change this file whilst the cluster is
605 running in order for the changes to take effect.
606
607 === 9^LOAD/BANDS^Reload the band limits table
608 Reload the /spider/data/bands.pl file if you have changed it manually whilst
609 the cluster is running. 
610
611 === 9^LOAD/BADMSG^Reload the bad msg table
612 Reload the /spider/msg/badmsg.pl file if you have changed it manually whilst
613 the cluster is running. This table contains a number of perl regular 
614 expressions which are searched for in the fields targetted of each message. 
615 If any of them match then that message is immediately deleted on receipt. 
616
617 === 9^LOAD/BADWORDS^Reload the bad words table
618 Reload the /spider/data/badwords file if you have changed it manually whilst
619 the cluster is running. This file contains a list of words which, if found
620 on certain text portions of PC protocol, will cause those protocol frames
621 to be rejected. It will all put out a message if any of these words are
622 used on the announce, dx and talk commands. The words can be one or 
623 more on a line, lines starting with '#' are ignored.
624
625 === 9^LOAD/CMD_CACHE^Reload the automatic command cache
626 Normally, if you change a command file in the cmd or local_cmd tree it
627 will automatially be picked up by the cluster program. Sometimes it
628 can get confused if you are doing a lot of moving commands about or
629 delete a command in the local_cmd tree and want to use the normal one
630 again. Execute this command to reset everything back to the state it
631 was just after a cluster restart.
632
633 === 9^LOAD/FORWARD^Reload the msg forwarding routing table
634 Reload the /spider/msg/forward.pl file if you have changed it
635 manually whilst the cluster is running.
636
637 === 9^LOAD/MESSAGES^Reload the system messages file
638 If you change the /spider/perl/Messages file (usually whilst
639 fiddling/writing new commands) you can have them take effect during a
640 cluster session by executing this command. You need to do this if get
641 something like :-
642
643 unknown message 'xxxx' in lang 'en'
644
645 === 9^LOAD/PREFIXES^Reload the prefix table
646 Reload the /spider/data/prefix_data.pl file if you have changed it
647 manually whilst the cluster is running.
648
649 === 5^MERGE <node> [<no spots>/<no wwv>]^Ask for the latest spots and WWV 
650 MERGE allows you to bring your spot and wwv database up to date. By default
651 it will request the last 10 spots and 5 WWVs from the node you select. The 
652 node must be connected locally.
653
654 You can request any number of spots or wwv and although they will be appended
655 to your databases they will not duplicate any that have recently been added 
656 (the last 2 days for spots and last month for WWV data).
657
658 === 9^MSG <cmd> <msgno> [data ... ]^Alter various message parameters
659 Alter message parameters like To, From, Subject, whether private or bulletin
660 or return receipt (RR) is required or whether to keep this message from timing
661 out.
662
663   MSG TO <msgno> <call>     - change TO callsign to <call>
664   MSG FRom <msgno> <call>   - change FROM callsign to <call>
665   MSG PRrivate <msgno>      - set private flag
666   MSG NOPRrivate <msgno>    - unset private flag
667   MSG RR <msgno>            - set RR flag
668   MSG NORR <msgno>          - unset RR flag
669   MSG KEep <msgno>          - set the keep flag (message won't be deleted ever)
670   MSG NOKEep <msgno>        - unset the keep flag
671   MSG SUbject <msgno> <new> - change the subject to <new>
672   MSG WAittime <msgno>      - remove any waitting time for this message
673   MSG NOREad <msgno>        - mark message as unread
674   MSG REad <msgno>          - mark message as read
675   MSG QUeue                 - queue any outstanding bulletins
676   MSG QUeue 1               - queue any outstanding private messages
677
678 You can look at the status of a message by using:-
679
680   STAT/MSG <msgno>      
681
682 This will display more information on the message than DIR does.
683    
684 === 8^PC <call> <text>^Send text (eg PC Protocol) to <call>
685 Send some arbitrary text to a locally connected callsign. No
686 processing is done on the text. This command allows you to send PC
687 Protocol to unstick things if problems arise (messages get stuck
688 etc). eg:-
689
690    pc gb7djk PC33^GB7TLH^GB7DJK^400^
691 or 
692    pc G1TLH Try doing that properly!!!
693
694 === 0^KILL <msgno> [<msgno> ...]^Remove or erase a message from the system
695 You can get rid of any message to or originating from your callsign using 
696 this command. You can remove more than one message at a time.
697
698 === 5^KILL <from>-<to>^Remove a range of messages from the system
699 === 5^KILL FROM <call>^Remove all messages from a callsign
700 === 5^KILL TO <call>^Remove all messages to a callsign
701 === 5^KILL FULL <msgno> [<msgno]^Remove a message from the entire cluster
702 Remove this message from the entire cluster system as well as your node.
703
704 === 5^KILL^
705 As a sysop you can kill any message on the system.
706
707 === 8^PC <call> <text>^Send arbitrary text to a connected callsign
708 Send any text you like to the callsign requested. This is used mainly to send
709 PC protocol to connected nodes either for testing or to unstick things. 
710
711 You can also use in the same way as a talk command to a connected user but
712 without any processing, added of "from <blah> to <blah" or whatever.
713  
714 === 1^PING <node call>^Check the link quality between nodes
715 This command allows you to send a frame to another cluster node on
716 the network and get a return frame.  The time it takes to do this
717 is a good indication of the quality of the link.  The actual time
718 it takes is output to the console in seconds.
719 Any visible cluster node can be PINGed.
720
721 === 1^RCMD <node call> <cmd>^Send a command to another DX Cluster
722 This command allows you to send nearly any command to another DX Cluster
723 node that is connected to the system. 
724
725 Whether you get any output is dependant on a) whether the other system knows
726 that the node callsign of this cluster is in fact a node b) whether the
727 other system is allowing RCMDs from this node and c) whether you have
728 permission to send this command at all.
729
730 === 0^READ^Read the next unread personal message addressed to you
731 === 0^READ <msgno>^Read the specified message
732 You can read any messages that are sent as 'non-personal' and also any
733 message either sent by or sent to your callsign.
734
735 === 5^READ-^
736 As a sysop you may read any message on the system
737
738 === 0^REJECT/ANNOUNCE [0-9] <pattern>^Set a 'reject' filter line for announce
739 Create an 'reject this announce' line for a filter. 
740
741 A reject filter line means that if the announce matches this filter it is
742 passed onto the user. See HELP FILTERING for more info. Please read this
743 to understand how filters work - it will save a lot of grief later on.
744
745 You can use any of the following things in this line:-
746
747   info <string>            eg: iota or qsl
748   by <prefixes>            eg: G,M,2         
749   origin <prefixes>
750   origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
751   origin_itu <numbers>
752   origin_zone <numbers>
753   by_dxcc <numbers>
754   by_itu <numbers>
755   by_zone <numbers>
756   channel <prefixes>
757   wx 1                     filter WX announces
758   dest <prefixes>          eg: 6MUK,WDX      (distros)
759
760 some examples:-
761
762   rej/ann by_zone 14,15,16 and not by G,M,2
763  
764 You can use the tag 'all' to reject everything eg:
765
766   rej/ann all
767
768 but this probably for advanced users...
769
770 === 8^REJECT/ANNOUNCE <call> [input] [0-9] <pattern>^Announce filter sysop version
771 This version allows a sysop to set a filter for a callsign as well as the
772 default for nodes and users eg:-
773
774   reject/ann by G,M,2
775   reject/ann input node_default by G,M,2
776   reject/ann user_default by G,M,2
777
778 === 0^REJECT/SPOTS [0-9] <pattern>^Set a 'reject' filter line for spots
779 Create a 'reject this spot' line for a filter. 
780
781 A reject filter line means that if the spot matches this filter it is
782 dumped (not passed on). See HELP FILTERING for more info. Please read this
783 to understand how filters work - it will save a lot of grief later on.
784
785 You can use any of the following things in this line:-
786
787   freq <range>           eg: 0/30000 or hf or hf/cw or 6m,4m,2m
788   on <range>             same as 'freq'
789   call <prefixes>        eg: G,PA,HB9
790   info <string>          eg: iota or qsl
791   by <prefixes>            
792   call_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
793   call_itu <numbers>
794   call_zone <numbers>
795   by_dxcc <numbers>
796   by_itu <numbers>
797   by_zone <numbers>
798   origin <prefixes>
799   channel <prefixes>
800
801 For frequencies, you can use any of the band names defined in
802 SHOW/BANDS and you can use a subband name like: cw, rtty, data, ssb -
803 thus: hf/ssb. You can also just have a simple range like: 0/30000 -
804 this is more efficient than saying simply: on HF (but don't get
805 too hung up about that)
806
807 some examples:-
808
809   rej/spot 1 on hf
810   rej/spot 2 on vhf and not (by_zone 14,15,16 or call_zone 14,15,16)
811
812 You can use the tag 'all' to reject everything eg:
813
814   rej/spot 3 all
815
816 but this probably for advanced users...
817
818 === 8^REJECT/SPOTS <call> [input] [0-9] <pattern>^Spot filter sysop version
819 This version allows a sysop to set a filter for a callsign as well as the
820 default for nodes and users eg:-
821
822   reject/spot db0sue-7 1 by_zone 14,15,16
823   reject/spot node_default all
824   set/hops node_default 10
825
826   reject/spot user_default by G,M,2
827
828 === 0^REJECT/WCY [0-9] <pattern>^set a 'reject' WCY filter
829 It is unlikely that you will want to do this, but if you do then you can
830 filter on the following fields:-
831
832   by <prefixes>            eg: G,M,2         
833   origin <prefixes>
834   origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
835   origin_itu <numbers>
836   origin_zone <numbers>
837   by_dxcc <numbers>
838   by_itu <numbers>
839   by_zone <numbers>
840   channel <prefixes>
841
842 There are no examples because WCY Broadcasts only come from one place and
843 you either want them or not (see UNSET/WCY if you don't want them).
844
845 This command is really provided for future use.
846
847 See HELP FILTER for information.
848
849 === 8^REJECT/WCY <call> [input] [0-9] <pattern>^WCY filter sysop version
850 This version allows a sysop to set a filter for a callsign as well as the
851 default for nodes and users eg:-
852
853   reject/wcy gb7djk all
854
855 === 0^REJECT/WWV [0-9] <pattern>^set a 'reject' WWV filter
856 It is unlikely that you will want to do this, but if you do then you can
857 filter on the following fields:-
858
859   by <prefixes>            eg: G,M,2         
860   origin <prefixes>
861   origin_dxcc <numbers>    eg: 61,62 (from eg: sh/pre G)
862   origin_itu <numbers>
863   origin_zone <numbers>
864   by_dxcc <numbers>
865   by_itu <numbers>
866   by_zone <numbers>
867   channel <prefixes>
868
869 for example 
870
871   reject/wwv by_zone 14,15,16
872
873 is probably the only useful thing to do (which will only show WWV broadcasts
874 by stations in the US).
875
876 See HELP FILTER for information.
877
878 === 8^REJECT/WWV <call> [input] [0-9] <pattern>^WWV filter sysop version
879 This version allows a sysop to set a filter for a callsign as well as the
880 default for nodes and users eg:-
881
882   reject/wwv db0sue-7 1 by_zone 4
883   reject/wwv node_default all
884
885   reject/wwv user_default by W
886
887 === 0^REPLY^Reply (privately) to the last message that you have read
888 === 0^REPLY <msgno>^Reply (privately) to the specified message
889 === 0^REPLY B <msgno>^Reply as a Bulletin to the specified message
890 === 0^REPLY NOPrivate <msgno>^Reply as a Bulletin to the specified message
891 === 0^REPLY RR <msgno>^Reply to the specified message with read receipt
892 You can reply to a message and the subject will automatically have
893 "Re:" inserted in front of it, if it isn't already present.
894
895 You can also use all the extra qualifiers such as RR, PRIVATE, 
896 NOPRIVATE, B that you can use with the SEND command (see SEND
897 for further details)
898
899 === 0^SEND <call> [<call> ...]^Send a message to one or more callsigns
900 === 0^SEND RR <call>^Send a message and ask for a read receipt
901 === 0^SEND COPY <msgno> <call>^Send a copy of a  message to someone
902 === 0^SEND PRIVATE <call>^Send a personal message
903 === 0^SEND NOPRIVATE <call>^Send a message to all stations
904 All the SEND commands will create a message which will be sent either to
905 an individual callsign or to one of the 'bulletin' addresses. 
906
907 SEND <call> on its own acts as though you had typed SEND PRIVATE, that is
908 it will mark the message as personal and send it to the cluster node that
909 that callsign is connected to.
910
911 You can have more than one callsign in all of the SEND commands.
912
913 You can have multiple qualifiers so that you can have for example:-
914
915   SEND RR COPY 123 PRIVATE G1TLH G0RDI
916
917 which should send a copy of message 123 to G1TLH and G0RDI and you will
918 receive a read receipt when they have read the message.
919
920 SB is an alias for SEND NOPRIVATE (or send a bulletin in BBS speak)
921 SP is an alias for SEND PRIVATE
922
923 === 0^SET/ADDRESS <your address>^Record your postal address
924
925 === 0^SET/ANNOUNCE^Allow announce messages to come out on your terminal
926 === 0^UNSET/ANNOUNCE^Stop announce messages coming out on your terminal
927
928 === 5^SET/ARCLUSTER <call> [<call>..]^Make the callsign an AR-Cluster node
929
930 === 8^SET/BADDX <call>..^Stop words we do not wish to see in the callsign field
931 of a dx spot being propagated
932 === 8^UNSET/BADDX <call>..^Allow a word to be seen again in a DX spot
933 Setting a word as 'baddx' will prevent spots with that word in the 
934 callsign field of a DX spot from going any further. They will not be 
935 displayed and they will not be sent onto other nodes.
936
937 The word must be wriiten in full, no wild cards are allowed eg:-
938
939   set/baddx FORSALE VIDEO FR0G
940
941 To allow a word again, use the following command ...
942
943   unset/baddx VIDEO
944
945 === 8^SET/BADNODE <call>..^Stop spots from this node being propagated
946 === 8^UNSET/BADNODE <call>..^Allow spots from this node again
947 Setting a callsign as a 'badnode' will prevent spots from that node 
948 going any further. They will not be displayed and they will not be 
949 sent onto other nodes.
950
951 The call must be a full eg:-
952
953   set/badnode K1TTT 
954
955 will stop anything from K1TTT. If you want SSIDs as well then you must
956 enter them specifically.
957
958   unset/badnode K1TTT
959
960 will allow spots from him again.
961
962 Use with extreme care. This command may well be superceeded by FILTERing.
963
964 === 8^SET/BADSPOTTER <call>..^Stop spots from this callsign being propagated
965 === 8^UNSET/BADSPOTTER <call>..^Allow spots from this callsign again
966 Setting a callsign as a 'badspotter' will prevent spots from this callsign 
967 going any further. They will not be displayed and they will not be 
968 sent onto other nodes.
969
970 The call must be written in full, no wild cards are allowed eg:-
971
972   set/badspotter VE2STN 
973
974 will stop anything from VE2STN. If you want SSIDs as well then you must
975 enter them specifically.
976
977   unset/badspotter VE2STN
978
979 will allow spots from him again.
980
981 Use with extreme care. This command may well be superceded by FILTERing.
982
983 === 0^SET/BEEP^Add a beep to DX and other messages on your terminal
984 === 0^UNSET/BEEP^Stop beeps for DX and other messages on your terminal
985
986 === 5^SET/BBS <call> [<call>..]^Make the callsign a BBS
987
988 === 5^SET/CLX <call> [<call>..]^Make the callsign an CLX node
989
990 === 9^SET/DEBUG <name>^Add a debug level to the debug set
991 === 9^UNSET/DEBUG <name>^Remove a debug level from the debug set
992 You can choose to log several different levels.  The levels are
993
994 chan
995 state
996 msg
997 cron
998 connect
999
1000 You can show what levels you are logging with SHOW/DEBUG
1001
1002 === 0^SET/DX^Allow DX messages to come out on your terminal
1003 === 0^UNSET/DX^Stop DX messages coming out on your terminal
1004
1005 === 0^SET/DXGRID^Allow Grid Squares on the end of DX announcements
1006 === 0^UNSET/DXGRID^Stop Grid Squares on the end of DX announcements
1007 A standard feature which is enabled in version 1.43 and above is 
1008 that if the spotter's grid square is known it is output on the end
1009 of a DX announcement (there is just enough room). Some user programs
1010 cannot cope with this. You can use this command to reset (or set)
1011 this feature.
1012
1013 === 5^SET/DXNET <call> [<call>..]^Make the callsign an DXNet node
1014
1015 === 0^SET/ECHO^Make the cluster echo your input
1016 === 0^UNSET/ECHO^Stop the cluster echoing your input
1017 If you are connected via a telnet session, different implimentations
1018 of telnet handle echo differently depending on whether you are 
1019 connected via port 23 or some other port. You can use this command
1020 to change the setting appropriately. 
1021
1022 The setting is stored in your user profile.
1023
1024 YOU DO NOT NEED TO USE THIS COMMAND IF YOU ARE CONNECTED VIA AX25.
1025
1026 === 0^SET/HERE^Tell the system you are present at your terminal
1027 === 0^UNSET/HERE^Tell the system you are absent from your terminal
1028
1029 === 0^SET/HOMENODE <node> ^Set your normal cluster callsign
1030 Tell the cluster system where you normally connect to. Any Messages sent
1031 to you will normally find their way there should you not be connected.
1032 eg:-
1033   SET/HOMENODE gb7djk
1034
1035 === 8^SET/HOPS <call> ann|spots|wwv|wcy <n>^Set hop count  
1036 Set the hop count for a particular type of broadcast for a node.
1037
1038 This command allows you to set up special hop counts for a node 
1039 for currently: announce, spots, wwv and wcy broadcasts.
1040
1041 eg:
1042   set/hops gb7djk ann 10
1043   set/hops gb7mbc spots 20
1044
1045 Set SHOW/HOPS for information on what is already set. This command
1046 creates a filter and works in conjunction with the filter system. 
1047
1048 === 9^SET/ISOLATE^Isolate a node from the rest of the network
1049 Connect a node to your system in such a way that you are a full protocol
1050 member of its network and can see all spots on it, but nothing either leaks
1051 out from it nor goes back into from the rest of the nodes connected to you.
1052
1053 You can potentially connect several nodes in this way.
1054  
1055 === 9^UNSET/ISOLATE^Stop Isolation of a node from the rest of the network
1056 Remove isolation from a node - SET/ISOLATE
1057
1058 === 0^SET/LANGUAGE <lang>^Set the language you want to use
1059 You can select the language that you want the cluster to use. Currently
1060 the languages available are en (english) and nl (dutch).
1061
1062 === 0^SET/LOCATION <lat & long>^Set your latitude and longitude
1063 === 9^SET/SYS_LOCATION <lat & long>^Set your cluster latitude and longitude
1064 In order to get accurate headings and such like you must tell the system
1065 what your latitude and longitude is. If you have not yet done a SET/QRA
1066 then this command will set your QRA locator for you. For example:-
1067   SET/LOCATION 52 22 N 0 57 E
1068
1069 === 0^SET/LOGININFO^Inform when a station logs in locally
1070 === 0^UNSET/LOGININFO^Inform when a station logs out locally
1071
1072 === 9^SET/LOCKOUT <call>^Stop a callsign connecting to the cluster
1073 === 9^UNSET/LOCKOUT <call>^Allow a callsign to connect to the cluster
1074
1075 === 0^SET/NAME <your name>^Set your name
1076 Tell the system what your name is eg:-
1077   SET/NAME Dirk
1078
1079 === 5^SET/NODE <call> [<call>..]^Make the callsign an AK1A cluster
1080 Tell the system that the call(s) are to be treated as AK1A cluster and
1081 fed PC Protocol rather normal user commands.
1082
1083 === 8^SET/OBSCOUNT <count> <nodecall>^Set the 'pump-up' obscelence counter 
1084 From 1.35 onwards neighbouring nodes are pinged at regular intervals (see
1085 SET/PINGINTERVAL), usually 300 seconds or 5 minutes. There is a 'pump-up'
1086 counter which is decremented on every outgoing ping and then reset to
1087 the 'obscount' value on every incoming ping. The default value of this
1088 parameter is 2. 
1089
1090 What this means is that a neighbouring node will be pinged twice at 
1091 (default) 300 second intervals and if no reply has been heard just before
1092 what would be the third attempt, that node is disconnected.
1093
1094 If a ping is heard then the obscount is reset to the full value. Using
1095 default values, if a node has not responded to a ping within 15 minutes,
1096 it is disconnected.
1097
1098 You can set this parameter between 1 and 9.
1099
1100 It is STRONGLY recommended that you don't change the default.
1101
1102 === 0^SET/PAGE <lines per page>^Set the lines per page
1103 Tell the system how many lines you wish on a page when the number of line
1104 of output from a command is more than this. The default is 20. Setting it
1105 explicitly to 0 will disable paging. 
1106   SET/PAGE 30
1107   SET/PAGE 0
1108
1109 The setting is stored in your user profile.
1110
1111 === 9^SET/PINGINTERVAL <time> <nodecall>^Set ping time to neighbouring nodes 
1112 As from release 1.35 all neighbouring nodes are pinged at regular intervals
1113 in order to determine the rolling quality of the link and, in future, to
1114 affect routing decisions. The default interval is 300 secs or 5 minutes.
1115
1116 You can use this command to set a different interval. Please don't. 
1117
1118 But if you do the value you enter is treated as minutes up 30 and seconds
1119 for numbers greater than that.
1120
1121 This is used also to help determine when a link is down at the far end
1122 (as certain cluster software doesn't always notice), see SET/OBSCOUNT
1123 for more information.
1124
1125 If you must change it (and it may be useful for internet connected nodes
1126 on dynamic IP addresses that go away after a set time of usage) the time
1127 can be specified as:-
1128
1129   5      which if less than 30 is converted to minutes otherwise is 
1130          taken as the no of seconds between pings. 
1131   120s   120 seconds
1132   5m     5 minutes
1133   1h     1 hour
1134
1135 Please be aware that this causes traffic to occur on the link, setting 
1136 this value too low may annoy your neighbours beyond the point of 
1137 endurance!
1138
1139 You can switch this off by setting it to 0.
1140
1141 === 9^SET/PRIVILEGE <n> <call> [<call..]^Set privilege level on a call
1142 Set the privilege level on a callsign. The privilege levels that pertain
1143 to commands are as default:-
1144   0 - normal user
1145   1 - allow remote nodes normal user RCMDs
1146   5 - various privileged commands (including shutdown, but not disc-
1147       connect), the normal level for another node.
1148   8 - more privileged commands (including disconnect)
1149   9 - local sysop privilege. DO NOT SET ANY REMOTE USER OR NODE TO THIS
1150       LEVEL.
1151 If you are a sysop and you come in as a normal user on a remote connection
1152 your privilege will automatically be set to 0.
1153
1154 === 9^SET/PASSWORD <callsign> <string>^Set a users password
1155 The password for a user can only be set by a full sysop. The string
1156 can contain any characters but any spaces are removed (you can type in
1157 spaces - but they won't appear in the password). You can see the
1158 result with STAT/USER.
1159
1160 === 5^SET/SPIDER <call> [<call>..]^Make the callsign an DXSpider node
1161 Tell the system that the call(s) are to be treated as DXSpider node and
1162 fed new style DX Protocol rather normal user commands.
1163
1164 === 9^SET/SYS_QRA <locator>^Set your cluster QRA locator
1165 === 0^SET/QRA <locator>^Set your QRA locator
1166 Tell the system what your QRA (or Maidenhead) locator is. If you have not
1167 done a SET/LOCATION then your latitude and longitude will be set roughly
1168 correctly (assuming your locator is correct ;-). For example:-
1169   SET/QRA JO02LQ
1170
1171 === 0^SET/QTH <your qth>^Set your QTH
1172 Tell the system where you are. For example:-
1173   SET/QTH East Dereham, Norfolk
1174
1175 === 0^SET/TALK^Allow TALK messages to come out on your terminal
1176 === 0^UNSET/TALK^Stop TALK messages coming out on your terminal
1177
1178 === 0^SET/WCY^Allow WCY messages to come out on your terminal
1179 === 0^UNSET/WCY^Stop WCY messages coming out on your terminal
1180
1181 === 0^SET/WWV^Allow WWV messages to come out on your terminal
1182 === 0^UNSET/WWV^Stop WWV messages coming out on your terminal
1183
1184 === 0^SET/WX^Allow WX messages to come out on your terminal
1185 === 0^UNSET/WX^Stop WX messages coming out on your terminal
1186
1187 === 1^SHOW/BADDX^Show all the bad dx calls in the system
1188 Display all the bad dx callsigns in the system, see SET/BADDX
1189 for more information.
1190
1191 === 1^SHOW/BADNODE^Show all the bad nodes in the system
1192 Display all the bad node callsigns in the system, see SET/BADNODE
1193 for more information.
1194
1195 === 1^SHOW/BADSPOTTER^Show all the bad spotters in the system
1196 Display all the bad spotter's callsigns in the system, see SET/BADSPOTTER
1197 for more information.
1198
1199 === 0^SHOW/CONFIGURATION [<node>]^Show all the nodes and users visible
1200 This command allows you to see all the users that can be seen
1201 and the nodes to which they are connected.
1202
1203 This command is normally abbreviated to: sh/c
1204
1205 BE WARNED: the list that is returned can be VERY long
1206
1207 === 0^SHOW/CONFIGURATION/NODE^Show all the nodes connected locally
1208 Show all the nodes connected to this node.
1209
1210 === 1^SHOW/CONNECT^Show all the active connections
1211 This command shows information on all the active connections known to
1212 the node. This command gives slightly more information than WHO.
1213
1214 === 0^SHOW/DATE [<prefix>|<callsign>]^Show the local time 
1215 This is very nearly the same as SHOW/TIME, the only difference the format
1216 of the date string if no arguments are given.
1217
1218 If no prefixes or callsigns are given then this command returns the local
1219 time and UTC as the computer has it right now. If you give some prefixes
1220 then it will show UTC and UTC + the local offset (not including DST) at
1221 the prefixes or callsigns that you specify.
1222
1223 === 9^SHOW/DEBUG^Show what levels of debug information you are logging
1224
1225 === 0^SHOW/DX^Interrogate the spot database
1226 If you just type SHOW/DX you will get the last so many spots
1227 (sysop configurable, but usually 10).
1228    
1229 In addition you can add any number of these commands in very nearly
1230 any order to the basic SHOW/DX command, they are:-
1231    
1232 on <band>       - eg 160m 20m 2m 23cm 6mm
1233 on <region>     - eg hf vhf uhf shf      (see SHOW/BANDS)
1234    
1235 <number>        - the number of spots you want
1236 <from>-<to>     - <from> spot no <to> spot no in the selected list
1237    
1238 <prefix>        - for a spotted callsign beginning with <prefix>
1239 *<suffix>       - for a spotted callsign ending in <suffix>
1240 *<string>*      - for a spotted callsign containing <string>
1241    
1242 day <number>    - starting <number> days ago
1243 day <from>-<to> - <from> days <to> days ago
1244    
1245 info <text>     - any spots containing <text> in the info or remarks
1246    
1247 by <call>       - any spots spotted by <call> (spotter <call> is the 
1248                   same).
1249
1250 qsl             - this automatically looks for any qsl info on the call
1251                   held in the spot database.
1252
1253 iota [<iota>]   - If the iota island number is missing it will look for
1254                   the string iota and anything which looks like an iota
1255                   island number. If you specify then it will look for  
1256                   that island.
1257
1258 qra [<locator>] - this will look for the specific locator if you specify
1259                   one or else anything that looks like a locator.
1260    
1261 e.g. 
1262    
1263    SH/DX 9m0
1264    SH/DX on 20m info iota
1265    SH/DX 9a on vhf day 30
1266    SH/DX rf1p qsl
1267    SH/DX iota 
1268    SH/DX iota eu-064
1269    SH/DX qra jn86
1270   
1271 === 0^SHOW/DXCC <prefix>^Interrogate the spot database by country
1272 This command takes the <prefix> (which can be a full or partial 
1273 callsign if desired), looks up which internal country number it is
1274 and then displays all the spots as per SH/DX for that country.
1275    
1276 The options for SHOW/DX also apply to this command.   
1277 e.g. 
1278    
1279    SH/DXCC G
1280    SH/DXCC W on 20m info iota
1281
1282 === 0^SHOW/FILES [<filearea> [<string>]]^List the contents of a filearea
1283 SHOW/FILES on its own will show you a list of the various fileareas
1284 available on the system. To see the contents of a particular file
1285 area type:-
1286    SH/FILES <filearea>
1287 where <filearea> is the name of the filearea you want to see the 
1288 contents of.
1289
1290 You can also use shell globbing characters like '*' and '?' in a
1291 string to see a selection of files in a filearea eg:-
1292    SH/FILES bulletins arld*
1293
1294 See also TYPE - to see the contents of a file.
1295
1296 === 0^SHOW/FILTER^Show the contents of all the filters you have set
1297 Show the contents of all the filters that are set. This command displays
1298 all the filters set - for all the various categories.
1299
1300 === 8^SHOW/HOPS <call> [ann|spots|wcy|wwv]^Show the hop counts for a node
1301 This command shows the hop counts set up for a node. You can specify
1302 which category you want to see. If you leave the category out then 
1303 all the categories will be listed.
1304  
1305 === 1^SHOW/ISOLATE^Show list of ISOLATED nodes
1306
1307 === 9^SHOW/LOCKOUT^Show the list of locked out or excluded callsigns
1308
1309 === 8^SHOW/LOG [<callsign>]^Show excerpts from the system log
1310 This command outputs a short section of the system log.  On its own
1311 it will output a general logfile.  With the optional callsign it will
1312 show output from the log associated with that callsign.
1313
1314 === 0^SHOW/MOON [<prefix>|<callsign>]^Show Moon rise and set times
1315 Show the Moon rise and set times for a (list of) prefixes or callsigns, 
1316 together with the azimuth and elevation of the sun currently at those
1317 locations.
1318
1319 If you don't specify any prefixes or callsigns, it will show the times for
1320 your QTH (assuming you have set it with either SET/LOCATION or SET/QRA),
1321 together with the current azimuth and elevation.
1322
1323 In addition, it will show the gain or loss dB relative to the nominal 
1324 distance of 385,000Km due to the ellipsoidal nature of the orbit.
1325
1326 If all else fails it will show the Moonrise and set times for the node
1327 that you are connected to. 
1328
1329 For example:-
1330
1331   SH/MOON
1332   SH/MOON G1TLH W5UN
1333
1334 === 0^SHOW/MUF <prefix> [<hours>][long]^Show the likely propagation to a prefix
1335 This command allow you to estimate the likelihood of you contacting
1336 a station with the prefix you have specified. The output assumes a modest
1337 power of 20dBW and receiver sensitivity of -123dBm (about 0.15muV/10dB SINAD)
1338
1339 The result predicts the most likely operating frequencies and signal
1340 levels for high frequency (shortwave) radio propagation paths on
1341 specified days of the year and hours of the day. It is most useful for
1342 paths between 250 km and 6000 km, but can be used with reduced accuracy
1343 for paths shorter or longer than this.
1344
1345 The command uses a routine MINIMUF 3.5 developed by the U.S. Navy and
1346 used to predict the MUF given the predicted flux, day of the year,
1347 hour of the day and geographic coordinates of the transmitter and
1348 receiver. This routine is reasonably accurate for the purposes here,
1349 with a claimed RMS error of 3.8 MHz, but much smaller and less complex
1350 than the programs used by major shortwave broadcasting organizations,
1351 such as the Voice of America.
1352
1353 The command will display some header information detailing its
1354 assumptions, together with the locations, latitude and longitudes and
1355 bearings. It will then show UTC (UT), local time at the other end
1356 (LT), calculate the MUFs, Sun zenith angle at the midpoint of the path
1357 (Zen) and the likely signal strengths. Then for each frequency for which
1358 the system thinks there is a likelihood of a circuit it prints a value.
1359
1360 The value is currently a likely S meter reading based on the conventional
1361 6dB / S point scale. If the value has a '+' appended it means that it is
1362 1/2 an S point stronger. If the value is preceeded by an 'm' it means that
1363 there is likely to be much fading and by an 's' that the signal is likely
1364 to be noisy.  
1365
1366 By default SHOW/MUF will show the next two hours worth of data. You
1367 can specify anything up to 24 hours worth of data by appending the no of
1368 hours required after the prefix. For example:-
1369
1370   SH/MUF W
1371
1372 produces:
1373
1374   RxSens: -123 dBM SFI: 159   R: 193   Month: 10   Day: 21
1375   Power :   20 dBW    Distance:  6283 km    Delay: 22.4 ms
1376   Location                       Lat / Long           Azim
1377   East Dereham, Norfolk          52 41 N 0 57 E         47
1378   United-States-W                43 0 N 87 54 W        299
1379   UT LT  MUF Zen  1.8  3.5  7.0 10.1 14.0 18.1 21.0 24.9 28.0 50.0
1380   18 23 11.5 -35  mS0+ mS2   S3
1381   19  0 11.2 -41  mS0+ mS2   S3
1382
1383 indicating that you will have weak, fading circuits on top band and 
1384 80m but usable signals on 40m (about S3).
1385
1386 inputing:-
1387
1388   SH/MUF W 24
1389
1390 will get you the above display, but with the next 24 hours worth of
1391 propagation data.
1392
1393   SH/MUF W L 24
1394   SH/MUF W 24 Long
1395
1396 Gives you an estimate of the long path propagation characterics. It
1397 should be noted that the figures will probably not be very useful, nor
1398 terrible accurate, but it is included for completeness.
1399
1400 === 1^SHOW/NODE [<callsign> ...]^Show the type and version number of nodes
1401 Show the type and version (if connected) of the nodes specified on the
1402 command line. If no callsigns are specified then a sorted list of all
1403 the non-user callsigns known to the system will be displayed.
1404
1405 === 0^SHOW/PREFIX <callsign>^Interrogate the prefix database 
1406 This command takes the <callsign> (which can be a full or partial 
1407 callsign or a prefix), looks up which internal country number 
1408 it is and then displays all the relevant prefixes for that country
1409 together with the internal country no, the CQ and ITU regions. 
1410
1411 See also SHOW/DXCC
1412
1413 === 5^SHOW/PROGRAM^Show the locations of all the included program modules
1414 Show the name and location where every program module was load from. This
1415 is useful for checking where you think you have loaded a .pm file from. 
1416
1417 === 0^SHOW/QRA <locator> [<locator>]^Show distance between locators
1418 === 0^SHOW/QRA <lat> <long>^Convert latitude and longitude to a locator
1419 This is a multipurpose command that allows you either to calculate the
1420 distance and bearing between two locators or (if only one locator is
1421 given on the command line) the distance and beraing from your station
1422 to the locator. For example:-
1423
1424 SH/QRA IO92QL 
1425 SH/QRA JN06 IN73
1426
1427 The first example will show the distance and bearing to the locator from
1428 yourself, the second example will calculate the distance and bearing from
1429 the first locator to the second. You can use 4 or 6 character locators.
1430
1431 It is also possible to convert a latitude and longitude to a locator by 
1432 using this command with a latitude and longitude as an argument, for
1433 example:-
1434
1435 SH/QRA 52 41 N 0 58 E
1436
1437 === 0^SHOW/QRZ <callsign>^Show any callbook details on a callsign
1438 This command queries the QRZ callbook server on the internet
1439 and returns any information available for that callsign. This service
1440 is provided for users of this software by http://www.qrz.com 
1441
1442 === 0^SHOW/ROUTE <callsign> ...^Show the route to the callsign
1443 This command allows you to see to which node the callsigns specified are
1444 connected. It is a sort of inverse sh/config.
1445
1446 sh/route n2tly
1447
1448 === 0^SHOW/SATELLITE <name> [<hours> <interval>]^Show tracking data
1449 Show the tracking data from your location to the satellite of your choice
1450 from now on for the next few hours.
1451
1452 If you use this command without a satellite name it will display a list
1453 of all the satellites known currently to the system. 
1454
1455 If you give a name then you can obtain tracking data of all the passes
1456 that start and finish 5 degrees below the horizon. As default it will
1457 give information for the next three hours for every five minute period.
1458
1459 You can alter the number of hours and the step size, within certain 
1460 limits. 
1461
1462 Each pass in a period is separated with a row of '-----' characters
1463
1464 So for example:-
1465
1466 SH/SAT AO-10 
1467 SH/SAT FENGYUN1 12 2
1468
1469 === 0^SHOW/SUN [<prefix>|<callsign>]^Show sun rise and set times
1470 Show the sun rise and set times for a (list of) prefixes or callsigns, 
1471 together with the azimuth and elevation of the sun currently at those
1472 locations.
1473
1474 If you don't specify any prefixes or callsigns, it will show the times for
1475 your QTH (assuming you have set it with either SET/LOCATION or SET/QRA),
1476 together with the current azimuth and elevation.
1477
1478 If all else fails it will show the sunrise and set times for the node
1479 that you are connected to. 
1480
1481 For example:-
1482
1483   SH/SUN
1484   SH/SUN G1TLH K9CW ZS
1485
1486 === 0^SHOW/TIME [<prefix>|<callsign>]^Show the local time 
1487 If no prefixes or callsigns are given then this command returns the local
1488 time and UTC as the computer has it right now. If you give some prefixes
1489 then it will show UTC and UTC + the local offset (not including DST) at
1490 the prefixes or callsigns that you specify.
1491
1492 === 0^SHOW/WCY^Show last 10 WCY broadcasts
1493 === 0^SHOW/WCY <n>^Show last <n> WCY broadcasts
1494 Display the most recent WCY information that has been received by the system
1495
1496 === 0^SHOW/WWV^Show last 10 WWV broadcasts
1497 === 0^SHOW/WWV <n>^Show last <n> WWV broadcasts
1498 Display the most recent WWV information that has been received by the system
1499
1500 === 5^SHUTDOWN^Shutdown the cluster
1501 Shutdown the cluster and disconnect all the users 
1502
1503 === 9^SPOOF <call> <command>^Do a command as though you are another user
1504 This command is provided so that sysops can set a user's parameters without
1505 me having to write a special 'sysop' version for every user command. It
1506 allows you to pretend that you are doing the command as the user you specify.
1507
1508 eg:-
1509
1510    SPOOF G1TLH set/name Dirk
1511    SPOOF G1TLH set/qra JO02LQ
1512
1513 === 5^STAT/DB <dbname>^Show the status of a database
1514 Show the internal status of a database descriptor.
1515
1516 Depending on your privilege level you will see more or less information. 
1517 This command is unlikely to be of much use to anyone other than a sysop.
1518
1519 === 5^STAT/CHANNEL [<callsign>]^Show the status of a channel on the cluster
1520 Show the internal status of the channel object either for the channel that 
1521 you are on or else for the callsign that you asked for.
1522
1523 Only the fields that are defined (in perl term) will be displayed.
1524
1525 === 1^STAT/MSG^Show the status of the message system
1526 === 1^STAT/MSG <msgno>^Show the status of a message
1527 This command shows the internal status of a message and includes information
1528 such as to whom it has been forwarded, its size, origin etc etc.
1529
1530 If no message number is given then the status of the message system is 
1531 displayed.
1532
1533 === 5^STAT/ROUTE_NODE <callsign>^Show the data in a Route::Node object
1534
1535 === 5^STAT/ROUTE_USER <callsign>^Show the data in a Route::User object
1536
1537 === 5^STAT/USER [<callsign>]^Show the full status of a user
1538 Shows the full contents of a user record including all the secret flags
1539 and stuff.
1540
1541 Only the fields that are defined (in perl term) will be displayed.
1542
1543 === 0^SYSOP^Regain your privileges if you login remotely
1544 The system automatically reduces your privilege level to that of a
1545 normal user if you login in remotely. This command allows you to
1546 regain your normal privilege level. It uses the normal system: five
1547 numbers are returned that are indexes into the character array that is
1548 your assigned password (see SET/PASSWORD). The indexes start from
1549 zero.
1550
1551 You are expected to return a string which contains the characters
1552 required in the correct order. You may intersperse those characters
1553 with others to obscure your reply for any watchers. For example (and
1554 these values are for explanation :-):
1555
1556   password = 012345678901234567890123456789
1557   > sysop
1558   22 10 15 17 3
1559 you type:-
1560  aa2bbbb0ccc5ddd7xxx3n
1561  or 2 0 5 7 3
1562  or 20573
1563
1564 They will all match. If there is no password you will still be offered
1565 numbers but nothing will happen when you input a string. Any match is
1566 case sensitive.
1567
1568 === 0^TALK <call> [<text>]^Send a text message to another station
1569 === 0^TALK <call> > <node> [<text>]^Send a text message to another station via a node
1570 Send a short message to any other station that is visible on the cluster
1571 system. You can send it to anyone you can see with a SHOW/CONFIGURATION 
1572 command, they don't have to be connected locally.
1573
1574 The second form of TALK is used when other cluster nodes are connected
1575 with restricted information. This usually means that they don't send 
1576 the user information usually associated with logging on and off the cluster.
1577
1578 If you know that G3JNB is likely to be present on GB7TLH, but you can only
1579 see GB7TLH in the SH/C list but with no users, then you would use the
1580 second form of the talk message.
1581
1582 If you want to have a ragchew with someone you can leave the text message
1583 out and the system will go into 'Talk' mode. What this means is that a
1584 short message is sent to the recipient telling them that you are in a
1585 'Talking' frame of mind and then you just type - everything you send will
1586 go to the station that you asked for. 
1587
1588 All the usual announcements, spots and so on will still come out on your
1589 terminal.
1590
1591 If you want to do something (such as send a spot) you preceed the normal 
1592 command with a '/' character, eg:-
1593
1594    /DX 14001 G1TLH What's a B class licensee doing on 20m CW?
1595    /HELP talk
1596
1597 To leave talk mode type:
1598    
1599    /EX
1600
1601 === 0^TYPE <filearea>/<name>^Look at the contents of a file in one of the fileareas
1602 Type out the contents of a file in a filearea. So, for example, in 
1603 filearea 'bulletins' you want to look at file 'arld051' you would 
1604 enter:-
1605    TYPE bulletins/arld051
1606
1607 See also SHOW/FILES to see what fileareas are available and a 
1608 list of content.
1609
1610 === 0^WHO^Show who is physically connected
1611 This is a quick listing that shows which callsigns are connected and
1612 what sort of connection they have
1613
1614 === 0^WX <text>^Send a weather message to local users
1615 === 0^WX FULL <text>^Send a weather message to all cluster users
1616 === 5^WX SYSOP <text>^Send a weather message to other clusters only
1617 Weather messages can sometimes be useful if you are experiencing an extreme
1618 that may indicate enhanced conditions
1619