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