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