1 <!doctype linuxdoc system>
5 <!-- Title information -->
7 <title>The DXSpider Installation and Administration Manual
8 <author>Ian Maude, G0VGS, (ianmaude@btinternet.com)
9 <date>Version 1.29 January 2001
11 A reference for SysOps of the DXSpider DXCluster program.
14 <!-- Table of contents -->
17 <!-- Begin the document -->
19 <sect>Installation (Original version by Iain Phillips, G0RDI)
22 Last modified: 13 January 2001 by Ian Maude, G0VGS
27 This section describes the installation of DX Spider v1.35 on a
28 <htmlurl url="http://www.redhat.com" name="RedHat"> Linux Distribution.
29 I do not intend to try and cover the installation of Linux or the setup
30 of the AX25 utilities. If you need help on this then read Iains original
31 HOWTO on the <htmlurl url="http://www.dxcluster.org" name="DXSpider">
35 I am assuming a general knowledge of Linux and its commands. You should
36 know how to use <em>tar</em> and how to edit files using your favourite editor.
39 The crucial ingredient for all of this is
40 <htmlurl url="http://www.perl.org" name="Perl 5.004">. Now I know Perl 5.005
41 is out and this will almost certainly work with it, but
42 <htmlurl url="http://www.redhat.com" name="RedHat 5.1"> comes with 5.004.
43 <em>Be Warned</em>, earlier versions of
44 <htmlurl url="http://www.redhat.com" name="RedHat"> <bf>do not</bf> come
45 with 5.004 as standard, you need to
46 <htmlurl url="ftp://upgrade.redhat.com" name="upgrade">
48 <P>In addition to the standard Red Hat distribution you will require the
49 following <htmlurl url="http://www.cpan.org/CPAN.html" name="CPAN"> modules: -
55 <item> Data-Dumper-2.10.tar.gz
56 <item> FreezeThaw-0.3.tar.gz
57 <item> MLDBM-2.00.tar.gz
58 <item> TimeDate-1.08.tar.gz
60 <item> Net-Telnet-3.02.tar.gz
61 <item> Curses-1.05.tar.gz
62 <item> Time-HiRes-01.20.tar.gz
68 <em>Do</em> get the latest versions of these packages and install them
69 but use the above list as the earliest versions usable.
74 I will assume that you have already downloaded the latest tarball of
75 the DXSpider software and are ready to install it. I am assuming version
76 1.35 for this section but of course you would use the latest version.
79 Login as root and create a user to run the cluster under. <bf><it>UNDER
80 NO CIRCUMSTANCES USE ROOT AS THIS USER!</it></bf>. I am going to use
81 the name <em>sysop</em>. You can call it anything you wish. Depending
82 on your security requirements you may wish to use an existing user,
83 however this is your own choice.
91 Now set a password for the user ...
96 # Retype new UNIX password:
97 passwd: all authentication tokens updated successfully
100 <sect1>Installing the software
103 Now to unpack the DX Spider distribution, set symbolic links and group
104 permissions. Copy the tarball to /home/sysop and do the following.
108 # tar xvfz spider-1.35.tar.gz
109 # ln -s ~sysop/spider /spider
110 # groupadd -g 251 spider (or another number)
113 If you do not have the command <em>groupadd</em> available to you simply
114 add a line in /etc/group by hand.
117 # vi /etc/group (or your favorite editor)
120 You also need to add some others to the group, including your own callsign
121 (this will be used as an alias) and root. The finished line in /etc/group
122 should look something like this
125 spider:x:251:sysop,g0vgs,root
129 The next step is to set the permissions on the Spider directory tree and files ....
132 # chown -R sysop.spider spider
133 # find . -type d -exec chmod 2775 {} \;
134 # find . -type f -exec chmod 775 {} \;
138 This last step allows various users of the group <em>spider</em> to have
139 write access to all the directories. This is not really needed just yet
140 but will be useful when web interfaces start to appear.
143 Finally, you need to fix the permissions on the ax25_call and netrom_call
144 programs. Check where they are with the <em>locate</em> command and alter
145 the permissions with the <em>chmod</em> command like this ..
148 # chown root ax25_call netrom_call
149 # chmod 4775 ax25_call netrom_call
152 <sect1>Setting callsigns etc
155 Now login to your machine as the user you created earlier. In my case that
156 user is called <em>sysop</em>. Once logged in, issue the following commands ....
162 $ cp perl/DXVars.pm.issue local/DXVars.pm
164 $ vi DXVars.pm (or your favourite editor)
168 Using the distributed DXVars.pm as a a template, set your cluster callsign,
169 sysop callsign and other user info to suit your own environment. Note that
170 this a perl file which will be parsed and executed as part of the cluster. If
171 you get it wrong then perl will complain when you start the cluster process.
172 It is important only to alter the text of any section. Some of the lines look
173 a little odd. Take this line for example ....
176 $myemail = "ianmaude\@btinternet.com";
180 There appears to be an extra slash in there. However this has to be there
181 for the file to work so leave it in.
183 <P><bf>PLEASE USE CAPITAL LETTERS FOR CALLSIGNS</bf>
186 DON'T alter the DXVars.pm (or any other file) in /spider/perl, they are
187 overwritten with every release. Any files or commands you place in /spider/local
188 or /spider/local_cmd will automagically be used in preference to the ones in
189 /spider/perl EVEN while the cluster is running!
192 Save the new file and change directory to ../perl ....
199 Now type the following command which creates the basic user file with you as
206 <sect1>Starting up for the first time
209 We can now bring spider up for the first time and see if all is well or not!
210 It should look something like this ...
214 DXSpider DX Cluster Version 1.35
215 Copyright (c) 1998 Dirk Koopman G1TLH
217 loading band data ...
218 loading user file system ...
219 starting listener ...
220 reading existing message headers
222 orft we jolly well go ...
226 If all is well then login on another term or console as <em>sysop</em> and
227 cd to /spider/perl. Now issue the following command ...
234 This should log you into the cluster as the sysop under the alias callsign we
235 set earlier. In this case the callsign is G0VGS. The cluster callsign is set
236 in the DXVars.pm file in /spider/local. In this case we will assume that this
237 was set as GB7MBC. You should therefore see this when you login ....
240 G0VGS de GB7MBC 19-Nov-1999 2150Z >
243 If you do, congratulations! If not, look over the instructions again, you
244 have probably missed something out. You can shut spider down again with the
252 and both the cluster and the client should return to Linux prompts.
254 <sect>The Client program
257 In earlier versions of Spider, all the processes were Perl scripts. This
258 was fine but with a lot of users your computer memory would soon be used up.
259 To combat this a new client was written in "C". This client only works for
260 <em>incoming</em> connects at the moment. Before you can use it though it
261 has to be "made". CD to /spider/src and type <em>make</em>. You
262 should see the output on your screen and hopefully now have a small C program
263 called <em>client</em>. Leave it in this directory.
267 <sect1>Allowing ax25 connects from users
270 As stated previously, the aim of this document is not to tell you how to
271 configure Linux or the ax25 utilities. However, you do need to add a line
272 in your ax25d.conf to allow connections to DXSpider for your users. For
273 each interface that you wish to allow connections on, use the following format ...
276 default * * * * * * - sysop /spider/src/client client %u ax25
279 <sect1>Allowing telnet connects from users
282 Allowing telnet connections is quite simple. Firstly you need to add a line
283 in /etc/services to allow connections to a port number, like this ....
286 spdlogin 8000/tcp # spider anonymous login port
289 Then add a line in /etc/inetd.conf like this ....
292 spdlogin stream tcp nowait root /usr/sbin/tcpd /spider/src/client login telnet
296 This needs to be added above the standard services such as ftp, telnet etc.
297 Once this is done, you need to restart inetd like this ....
304 <P>Now login as <em>sysop</em> and cd spider/perl. You can test that spider
305 is accepting telnet logins by issuing the following command ....
308 client.pl login telnet
311 You should get a login prompt and on issuing a callsign, you will be given
312 access to the cluster. Note, you will not get a password login. There seems
313 no good reason for a password prompt to be given so it is not asked for.
316 Assuming all is well, then try a telnet from your linux console ....
319 telnet localhost 8000
323 You should now get the login prompt and be able to login as before.
325 <sect1>Setting up node connects
328 In order to allow cluster node connections, spider needs to know that the
329 connecting callsign is a cluster node. This is the case whether the connect
330 is incoming or outgoing. In spider this is a simple task and can be done in
334 Later versions of Spider can distinguish different software and treat them
335 differently. For example, the WCY beacon cannot be handles by AK1A type
336 nodes as AK1A does not know what to do with PC73. There are 4 different
337 types of node at present and although they may not have any major
338 differences at the moment, it allows for compatibility. The 4 types are ...
348 For now, we will assume that the cluster we are going to connect to is an
352 Start up the cluster as you did before and login as the sysop with client.pl.
353 The cluster node I am wanting to make a connection to is GB7BAA but you would
354 obviously use whatever callsign you required. At the prompt type ...
361 The case does not matter as long as you have a version of DXSpider later than
362 1.33. Earlier versions required the callsign to be in upper case.
365 That is now set, it is as simple as that. To prove it, login on yet another
366 console as sysop and issue the command ...
369 client.pl gb7baa (using the callsign you set as a node)
373 You should get an initialisation string from DXSpider like this ...
380 If the callsign you just set up as a cluster node is for an incoming connect,
381 this is all that needs to be done. If the connection is to be outgoing then
382 a connection script needs to be written.
384 <sect1>Connection scripts
387 Because DXSpider operates under Linux, connections can be made using just about
388 any protocol; AX25, NETRom, tcp/ip, ROSE etc are all possible examples.
389 Connect scripts live in the /spider/connect directory and are simple ascii files.
390 Writing a script for connections is therefore relatively simple.
393 The connect scripts consist of lines which start with the following keywords
398 # All lines starting with a # are ignored, as are completely
401 timeout timeout followed by a number is the number of seconds to wait for a
402 command to complete. If there is no timeout specified in the script
403 then the default is 60 seconds.
405 abort abort is a regular expression containing one or more strings to look
406 for to abort a connection. This is a perl regular expression and is
407 executed ignoring case.
409 connect connect followed by ax25 or telnet and some type dependent
410 information. In the case of a telnet connection, there can be up to
412 The first is the ip address or hostname of the computer you wish to
413 connect to and the second is the port number you want to use (this
414 can be left out if it is a normal telnet session).
415 In the case of an ax25 session then this would normally be a call to
416 ax25_call or netrom_call as in the example above. It is your
417 responsibility to get your node and other ax25 parameters to work
418 before going down this route!
420 ' ' is the delimiting character for a word or phrase of an expect/send
421 line in a chat type script. The words/phrases normally come in pairs,
422 either can be empty. Each line reads input from the connection until
423 it sees the string (or perl regular expression) contained in the
424 left hand string. If the left hand string is empty then it doesn't
425 read or wait for anything. The comparison is done ignoring case.
426 When the left hand string has found what it is looking for (if it is)
427 then the right hand string is sent to the connection.
428 This process is repeated for every line of chat script.
430 client client starts the connection, put the arguments you would want here
431 if you were starting the client program manually. You only need this
432 if the script has a different name to the callsign you are trying to
433 connect to (i.e. you have a script called other which actually
434 connects to GB7DJK-1 [instead of a script called gb7djk-1]).
438 There are many possible ways to configure the script but here are two examples,
439 one for a NETRom/AX25 connect and one for tcp/ip.
443 abort (Busy|Sorry|Fail)
444 # don't forget to chmod 4775 netrom_call!
445 connect ax25 /usr/sbin/netrom_call bbs gb7djk g1tlh
449 # you can leave this out if you call the script 'gb7dxm'
457 connect telnet dirkl.tobit.co.uk
460 # tell GB7DJK-1 that it is connected to GB7DJK
461 # you can leave this out if you call this script 'gb7djk'
466 Both these examples assume that everything is set up properly at the other end.
467 You will find other examples in the /spider/examples directory.
469 <sect1>Starting the connection
472 You start the connection, from within a sysop enabled cluster login, by typing
473 in the word <em>connect</em> followed by a script name like this ....
476 G0VGS de GB7MBC 13-Dec-1998 2041Z >connect gb7djk-1
477 connection to GB7DJK-1 started
478 G0VGS de GB7MBC 13-Dec-1998 2043Z >
481 This will start a connection using the script called <em>gb7djk-1</em>. You can
482 follow the connection by watching the term or console from where you started
483 <em>cluster.pl</em>. You should see something like this ...
486 <- D G1TLH connect gb7djk-1
487 -> D G1TLH connection to GB7DJK-1 started
488 -> D G1TLH G1TLH de GB7DJK 13-Dec-1998 2046Z >
490 CONNECT sort: telnet command: dirkl.tobit.co.uk
491 CHAT "login" -> "gb7djk"
493 Red Hat Linux release 5.1 (Manhattan)
494 Kernel 2.0.35 on an i586
498 CHAT "word" -> "gb7djk"
500 received "Password: "
502 Connected to GB7DJK-1, starting normal protocol
505 GB7DJK-1 channel func state 0 -> init
507 <- D GB7DJK-1 Last login: Sun Dec 13 17:59:56 from dirk1
508 <- D GB7DJK-1 PC38^GB7DJK-1^~
509 <- D GB7DJK-1 PC18^ 1 nodes, 0 local / 1 total users Max users 0 Uptime
516 With later versions of Spider there is a set/login command for users. This
517 tells them when a user or node logs in or out. If you do not add a line to
518 your scripts after the final line (or before the client line which should always
519 be last if needed) then the login/logout information will be sent to users
520 <it>before</it> the login actually completes. This means if a node is
521 unreachable, it will continue sending logins and logouts to users even though it
522 is not actually connecting. To avoid this use the following line ...
529 In a script, this might look like ...
533 abort (Busy|Sorry|Fail)
534 connect telnet mary 3000
536 '>' 'telnet 44.131.93.96 7305'
543 Cluster links in particular suffer greatly from the presence of telnet echo.
544 This is caused by the telnet negotiation itself and can create at worst severe
545 loops. At best it creates unnecessary bandwidth and large logfiles! There are
546 things that can be done to limit this problem but will not always work dependent
547 on the route taken to connect.
550 Telnet echo itself should only be a problem if the connection is being made to
551 the telnet port (23). This port uses special rules that include echo negotiation.
552 If the connection is to a different port, such as 8000, this negotiation does
553 not happen and therefore no echo should be present.
556 Sometimes it is not possible to make a direct connection to another node and this
557 can cause problems. There is a way of trying to suppress the telnet echo but
558 this will not always work, unfortunately it is difficult to be more specific.
559 Here is an example of what I mean ...
563 abort (Busy|Sorry|Fail)
564 connect telnet mary.lancs.ac.uk
567 '\$' 'stty -echo raw'
568 '\$' 'telnet 44.131.93.96'
572 So, the first connection is made by Spider. This is fine as Spider uses the
573 Net_Telnet script from within perl. This actually uses TCP rather than TELNET
574 so no negotiation will be done on the first connection. Once connected to
575 mary.lancs.ac.uk, the command is sent to suppress echo. Now a telnet is made
576 to a cluster node that is accepting connections on port 23. The problem with
577 this link is that the negotiation is made by the remote machine, therefore you
578 have no control over it. The chances are that this link will create echo and
579 there will be no way you can stop it.
582 <sect>Automating things
585 Ok, you should now have DXSpider running nicely and allowing connects by cluster
586 nodes or users. However, it has to be shutdown and restarted manually and if
587 connection scripts fail they have to be started again manually too, not much use
588 if you are not at the console! So, in this section we will automate both.
589 Firstly starting the cluster.
591 <sect1>Autostarting the cluster
594 This is not only a way to start the cluster automatically, it also works as a
595 watchdog, checking the sanity of DXSpider and respawning it should it crash for
596 any reason. Before doing the following, shutdown the cluster as you did earlier.
599 Login as root and bring up the /etc/inittab file in your favourite editor. Add
600 the following lines to the file near the end ...
603 ##Start DXSpider on bootup and respawn it should it crash
604 DX:3:respawn:/bin/su -c "/usr/bin/perl -w /spider/perl/cluster.pl" sysop >/dev/tty7
608 This will automatically start DXSpider on tty7 (ALT-F7) on bootup and restart
609 it should it crash for any reason.
612 As root type the command <em>telinit q</em>. DXSpider should start up
613 immediately. You will see the output on tty7 and if you login as <em>sysop</em>
614 you should find everything running nicely.
617 So far so good, now to automate script connections...
619 <sect1>The crontab file
622 Login as <em>sysop</em> and create a file in /spider/local_cmd called crontab.
623 Edit it with your favourite editor and add a line like this (I have included
627 # check every 10 minutes to see if gb7xxx is connected and if not
628 # start a connect job going
630 0,10,20,30,40,50 * * * * start_connect('gb7xxx') if !connected('gb7xxx')
634 The callsign involved will be the callsign of the cluster node you are
635 going to connect to. This will now check every 10 minutes to see if
636 gb7xxx is connected, if it is then nothing will be done. If it is not,
637 then a connect attempt will be started.
640 There are probably lots of other things you could use this crontab file for.
641 If you want to know more about it, look at the
642 <htmlurl url="http://www.dxcluster.org/cron.html" name="DXSpider"> website
643 at the cron page where it is explained more fully.
648 Starting with version 1.13 there is simple hop control available on a per
649 node basis. Also it is possible to isolate a network completely so that you
650 get all the benefits of being on that network, but can't pass on information
651 from it to any other networks you may be connected to (or vice versa).
653 <sect1>Basic hop control
656 In /spider/data you will find a file called hop_table.pl. This is the file
657 that controls your hop count settings. It has a set of default hops on the
658 various PC frames and also a set for each node you want to alter the hops for.
659 You may be happy with the default settings of course, but this powerful tool
660 can help to protect and improve the network. The file will look something
665 # hop table construction
670 # default hopcount to use
673 # some variable hop counts based on message type
684 # the per node hop control thingy
716 Each set of hops is contained within a pair of curly braces and contains a
717 series of PC frame types. PC11 for example is a DX spot. The figures here
718 are not exhaustive but should give you a good idea of how the file works.
721 You can alter this file at any time, including whilst the cluster is running.
722 If you alter the file during runtime, the command <em>load/hops</em> will
723 bring your changes into effect.
725 <sect1>Isolating networks
728 It is possible to isolate networks from each other on a "gateway" node using the
729 <em>set/isolate <node_call></em> command.
732 The effect of this is to partition an isolated network completely from another
733 nodes connected to your node. Your node will appear on and otherwise behave
734 normally on every network to which you are connected, but data from an isolated
735 network will not cross onto any other network or vice versa. However all the
736 spot, announce and WWV traffic and personal messages will still be handled
737 locally (because you are a real node on all connected networks), that is locally
738 connected users will appear on all networks and will be able to access and
739 receive information from all networks transparently. All routed messages will
740 be sent as normal, so if a user on one network knows that you are a gateway for
741 another network, he can still still send a talk/announce etc message via your
742 node and it will be routed across.
745 The only limitation currently is that non-private messages cannot be passed down
746 isolated links regardless of whether they are generated locally. This will change
747 when the bulletin routing facility is added.
750 If you use isolate on a node connection you will continue to receive all
751 information from the isolated partner, however you will not pass any information
752 back to the isolated node. There are times when you would like to forward only
753 spots across a link (maybe during a contest for example). To do this, isolate
754 the node in the normal way and put in a filter in the /spider/filter/spots
755 directory to override the isolate. This filter can be very simple and consists
756 of just one line ....
760 [ 1, 0, 'd', 0, 3] # The last figure (3) is the hop count
765 There is a lot more on filtering in the next section.
767 <sect>Filtering (Old Style upto v1.44)
770 Filters can be set for spots, announcements and WWV. You will find the
771 directories for these under /spider/filter. You will find some examples in
772 the directories with the suffix <em>.issue</em>. There are two types of
773 filter, one for incoming information and one for outgoing information.
774 Outgoing filters are in the form <em>CALLSIGN.pl</em> and incoming filters
775 are in the form <em>in_CALLSIGN.pl</em>. Filters can be set for both nodes
779 All filters work in basically the same way. There are several elements
780 delimited by commas. There can be many lines in the filter and they are
781 read from the top by the program. When writing a filter you need to think
782 carefully about just what you want to achieve. You are either going to write
783 a filter to <em>accept</em> or to <em>reject</em>. Think of a filter as
784 having 2 main elements. For a reject filter, you would have a line or multiple
785 lines rejecting the things you do not wish to receive and then a default line
786 accepting everything else that is not included in the filter. Likewise, for an
787 accept filter, you would have a line or multiple lines accepting the things you
788 wish to receive and a default line rejecting everthing else.
791 In the example below, a user requires a filter that would only return SSB spots
792 posted in Europe on the HF bands. This is achieved by first rejecting the CW
793 section of each HF band and rejecting all of VHF, UHF etc based on frequency.
794 Secondly, a filter rule is set based on CQ zones to only accept spots posted in
795 Europe. Lastly, a default filter rule is set to reject anything outside the filter.
799 [ 0, 0, 'r', # reject all CW spots
809 30000.0, 49000000000.0,
811 [ 1, 11, 'n', [ 14, 15, 16, 20, 33, ], 15 ], #accept EU
812 [ 0, 0, 'd', 0, 1 ], # 1 = want, 'd' = everything else
817 The actual elements of each filter are described more fully in the following
823 The elements of the Spot filter are ....
826 [action, field_no, sort, possible_values, hops]
830 There are 3 elements here to look at. Firstly, the action element. This is
831 very simple and only 2 possible states exist, accept (1) or drop (0).
834 The second element is the field_no. There are 13 possiblities to choose from
840 2 = date in unix format
843 5 = spotted dxcc country
844 6 = spotter's dxcc country
850 12 = callsign of the channel on which the spot has appeared
854 The third element tells us what to expect in the fourth element. There are
858 n - numeric list of numbers e.g. [ 1,2,3 ]
859 r - ranges of pairs of numbers e.g. between 2 and 4 or 10 to 17 - [ 2,4, 10,17 ]
860 a - an alphanumeric regex
865 The fifth element is simply the hops to set in this filter. This would only
866 be used if the filter was for a node of course and overrides the hop count in
870 So, let's look at an example spot filter. It does not matter in the example
871 who the filter is to be used for. So, what do we need in the filter? We need
872 to filter the spots the user/node requires and also set a default rule for
873 anything else outside the filter. Below is a simple filter that stops spots
874 arriving from outside Europe.
876 <tscreen><verb>$in = [
877 [ 0, 4, 'a', '^(K|N|A|W|VE|VA|J)'], # 0 = drop, 'a' = alphanumeric
878 [ 1, 0, 'd', 0, 1 ], # 1 = want, 'd' = everything else
883 So the filter is wrapped in between a pair of square brackets. This tells
884 Spider to look in between these limits. Then each line is contained within
885 its own square brackets and ends with a comma. Lets look carefully at the first
886 line. The first element is 0 (drop). Therefore anything we put on this line
887 will not be accepted. The next element is 4. This means we are filtering by
888 the spotter. The third element is the letter "a" which tells the program to
889 expect an alphanumeric expression in the fourth element. The fourth element
890 is a list of letters separated by the pipe symbol.
893 What this line does is tell the program to drop any spots posted by anyone in
894 the USA, Canada or Japan.
897 The second line is the default rule for anything else. The "d" tells us this
898 and the line simply reads... accept anything else.
901 You can add as many lines as you need to complete the filter but if there are
902 several lines of the same type it is neater to enclose them all as one line.
903 An example of this is where specific bands are set. We could write this like
907 [ 0,0,'r',[1800.0, 2000.0], 1],
908 [ 0,0,'r',[10100.0, 10150.0], 1],
909 [ 0,0,'r',[14000.0, 14350.0], 1],
910 [ 0,0,'r',[18000.0, 18200.0], 1],
914 But the line below achieves the same thing and is more efficient ....
919 1800.0, 2000.0, # top band
920 10100.0, 10150.0, # WARC
921 14000.0, 14350.0, # 20m
922 18000.0, 18200.0, # WARC
932 # This is an example announce or filter allowing only West EU announces
934 # The element list is:-
935 # 0 - callsign of announcer
936 # 1 - destination * = all, <callsign> = routed to the node
938 # 3 - * - sysop, <some text> - special list eg 6MUK, ' ', normal announce
940 # 5 - 0 - announce, 1 - wx
941 # 6 - channel callsign (the interface from which this spot came)
944 [ 1, 0, 'a', '^(P[ABCDE]|DK0WCY|G|M|2|EI|F|ON)' ],
949 In this example, only the prefixes listed will be allowed. It is possible to
950 be quite specific. The Dutch prefix "P" is followed by several secondary
951 identifiers which are allowed. So, in the example, "PA" or "PE" would be ok
952 but not "PG". It is even possible to allow information from a single callsign.
953 In the example this is DK0WCY, to allow the posting of his Aurora Beacon.
960 # This is an example WWV filter
962 # The element list is:-
963 # 0 - nominal unix date of spot (ie the day + hour:13)
971 # 8 - incoming interface callsign
973 # this one doesn't filter, it just sets the hop count to 6 and is
974 # used mainly just to override any isolation from WWV coming from
984 It should be noted that the filter will start to be used only once a user/node
985 has logged out and back in again.
987 I am not going to spend any more time on these filters now as they will become
988 more "comprehensive" in the near future.
990 <sect>Filtering (New Style v1.45 and later)
992 <sect1>General filter rules
995 Upto v1.44 it was not possible for the user to set their own filters. From
996 v1.45 though that has all changed. It is now possible to set filters for just
997 about anything you wish. If you have just updated from an older version of
998 DXSpider you will need to update your new filters. You do not need to do
999 anything with your old filters, they will be renamed as you update.
1002 There are 3 basic commands involved in setting and manipulating filters. These
1003 are <em>accept</em>, <em>reject</em> and <em>clear</em>. First we will look
1004 generally at filtering. There are a number of things you can filter in the
1005 DXSpider system. They all use the same general mechanism.
1008 In general terms you can create a 'reject' or an 'accept' filter which can have
1009 up to 10 lines in it. You do this using, for example ...
1016 where ..... are the specific commands for that type of filter. There are filters
1017 for spots, wwv, announce, wcy and (for sysops) connects. See each different
1018 accept or reject command reference for more details.
1020 There is also a command to clear out one or more lines in a filter. They are ...
1027 There is clear/xxxx command for each type of filter.
1030 and you can check that your filters have worked by the command ...
1037 For now we are going to use spots for the examples, but you can apply the same
1038 principles to all types of filter.
1040 <sect1>Types of filter
1043 There are two main types of filter, <em>accept</em> or <em>reject</em>. You
1044 can use either to achieve the result you want dependent on your own preference
1045 and which is more simple to do. It is pointless writing 8 lines of reject
1046 filters when 1 accept filter would do the same thing! Each filter has 10
1047 lines (of any length) which are tried in order. If a line matches then the
1048 action you have specified is taken (ie reject means ignore it and accept
1052 If you specify reject filters, then any lines that arrive that match the filter
1053 will be dumped but all else will be accepted. If you use an accept filter,
1054 then ONLY the lines in the filter will be accepted and all else will be dumped.
1055 For example if you have a single line <em>accept</em> filter ...
1058 accept/spots on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
1061 then you will <em>ONLY</em> get VHF spots <em>from</em> or <em>to</em> CQ zones
1065 If you set a reject filter like this ...
1068 reject/spots on hf/cw
1071 Then you will get everything <em>EXCEPT</em> HF CW spots. You could make this
1072 single filter even more flexible. For example, if you are interested in IOTA
1073 and will work it even on CW even though normally you are not interested in
1074 CW, then you could say ...
1077 reject/spots on hf/cw and not info iota
1080 But in that case you might only be interested in iota and say:-
1083 accept/spots not on hf/cw or info iota
1086 which achieves exactly the same thing. You should choose one or the other
1087 until you are comfortable with the way it works. You can mix them if you
1088 wish (actually you can have an accept AND a reject on the same line) but
1089 don't attempt this until you are sure you know what you are doing!
1092 You can arrange your filter lines into logical units, either for your own
1093 understanding or simply convenience. Here is an example ...
1096 reject/spots 1 on hf/cw
1097 reject/spots 2 on 50000/1400000 not (by_zone 14,15,16 or call_zone 14,15,16)
1100 What this does is to ignore all HF CW spots and also rejects any spots on VHF
1101 which don't either originate or spot someone in Europe.
1104 This is an example where you would use a line number (1 and 2 in this case), if
1105 you leave the digit out, the system assumes '1'. Digits '0'-'9' are available.
1106 This make it easier to see just what filters you have set. It also makes it
1107 more simple to remove individual filters, during a contest for example.
1110 You will notice in the above example that the second line has brackets. Look
1111 at the line logically. You can see there are 2 separate sections to it. We
1112 are saying reject spots that are VHF or above <em>APART</em> from those in
1113 zones 14, 15 and 16 (either spotted there or originated there). If you did
1114 not have the brackets to separate the 2 sections, then Spider would read it
1115 logically from the front and see a different expression entirely ...
1118 (on 50000/1400000 and by_zone 14,15,16) or call_zone 14,15,16
1121 The simple way to remember this is, if you use OR - use brackets. Whilst we are
1122 here CASE is not important. 'And BY_Zone' is just the same as 'and by_zone'.
1124 As mentioned earlier, setting several filters can be more flexible than
1125 simply setting one complex one. Doing it in this way means that if you want
1126 to alter your filter you can just redefine or remove one or more lines of it or
1127 one line. For example ...
1130 reject/spots 1 on hf/ssb
1133 would redefine our earlier example, or
1139 To remove all the filter lines in the spot filter ...
1145 <sect1>Filter options
1148 You can filter in several different ways. The options are listed in the
1149 various helpfiles for accept, reject and filter.
1151 <sect1>Default filters
1154 Sometimes all that is needed is a general rule for node connects. This can
1155 be done with a node_default filter. This rule will always be followed, even
1156 if the link is isolated, unless another filter is set specifically. Default
1157 rules can be set for nodes and users. They can be set for spots, announces,
1158 WWV and WCY. They can also be used for hops. An example might look like
1162 accept/spot node_default by_zone 14,15,16,20,33
1163 set/hops node_default spot 50
1166 This filter is for spots only, you could set others for announce, WWV and WCY.
1167 This filter would work for ALL nodes unless a specific filter is written to
1168 override it for a particular node. You can also set a user_default should
1169 you require. It is important to note that default filters should be
1170 considered to be "connected". By this I mean that should you override the
1171 default filter for spots, you need to add a rule for the hops for spots also.
1173 <sect1>Advanced filtering
1176 Once you are happy with the results you get, you may like to experiment.
1179 The previous example that filters hf/cw spots and accepts vhf/uhf spots from EU
1180 can be written with a mixed filter, for example ...
1185 acc/spot 2 on 50000/1400000 and (by_zone 14,15,16 or call_zone 14,15,16)
1188 Note that the first filter has not been specified with a number. This will
1189 automatically be assumed to be number 1. In this case, we have said <em>reject all
1190 HF spots in the CW section of the bands but accept all others at HF. Also
1191 accept anything in VHF and above spotted in or by operators in the zones
1192 14, 15 and 16</em>. Each filter slot actually has a 'reject' slot and
1193 an 'accept' slot. The reject slot is executed BEFORE the accept slot.
1196 It was mentioned earlier that after a reject test that doesn't match, the default
1197 for following tests is 'accept', the reverse is true for 'accept'. In the example
1198 what happens is that the reject is executed first, any non hf/cw spot is passed
1199 to the accept line, which lets through everything else on HF. The next filter line
1200 lets through just VHF/UHF spots from EU.
1205 <sect1>Filtering Mail
1208 In the /spider/msg directory you will find a file called badmsg.pl.issue. Rename
1209 this to badmsg.pl and edit the file. The original looks something like this ....
1213 # the list of regexes for messages that we won't store having
1214 # received them (bear in mind that we must receive them fully before
1218 # The format of each line is as follows
1220 # type source pattern
1221 # P/B/F T/F/O/S regex
1223 # type: P - private, B - bulletin (msg), F - file (ak1a bull)
1224 # source: T - to field, F - from field, O - origin, S - subject
1225 # pattern: a perl regex on the field requested
1227 # Currently only type B and P msgs are affected by this code.
1229 # The list is read from the top down, the first pattern that matches
1230 # causes the action to be taken.
1232 # The pattern can be undef or 0 in which case it will always be selected
1233 # for the action specified
1251 I think this is fairly self explanatory. It is simply a list of subject
1252 headers that we do not want to pass on to either the users of the cluster or
1253 the other cluster nodes that we are linked to. This is usually because of
1254 rules and regulations pertaining to items for sale etc in a particular country.
1256 <sect1>Filtering DX callouts (Depricated)
1259 <bf><it>From version 1.47, this method is replaced by the command set/baddx</it></bf>
1262 In the same way as mail, there are some types of spot we do not wish to pass on
1263 to users or linked cluster nodes. In the /spider/data directory you will find
1264 a file called baddx.pl.issue. Rename this to baddx.pl and edit the file. The
1265 original looks like this ....
1269 # the list of dx spot addresses that we don't store and don't pass on
1290 Again, this is simply a list of names we do not want to see in the spotted
1291 field of a DX callout.
1294 <sect1>Filtering words from text fields in Announce, Talk and DX spots
1297 Create a file in /spider/data called <em>badwords</em>. The format is quite
1298 simple. Lines beginning with # are ignored so comments can be added. An
1299 example file is below ...
1302 # Below is a list of words we do not wish to see on the cluster
1303 grunge grunged grunging
1304 splodge splodger splodging
1309 Multiple words can be used on the same line as shown. Obviously these
1310 are just examples :-)
1313 You can reload the file from the cluster prompt as sysop with load/badwords.
1315 <sect>Information, files and useful programs
1320 One of the more important things a cluster sysop needs to do is to get
1321 information to his users. The simplest way to do this is to have a banner
1322 that is sent to the user on login. This is know as a "message of the day"
1323 or "motd". To set this up, simply create a file in /spider/data called motd
1324 and edit it to say whatever you want. It is purely a text file and will be
1325 sent automatically to anyone logging in to the cluster.
1327 <sect1>Downtime message
1330 If for any reason the cluster is down, maybe for upgrade or maintenance but
1331 the machine is still running, a message can be sent to the user advising them
1332 of the fact. This message lives in the /spider/data directory and is called
1333 "offline". Simply create the file and edit it to say whatever you wish.
1334 This file will be sent to a user attempting to log into the cluster when
1335 DXSpider is not actually running.
1337 <sect1>Other text messages
1340 You can set other text messages to be read by the user if they input the file
1341 name. This could be for news items or maybe information for new users.
1342 To set this up, make a directory under /spider called <em>packclus</em>.
1343 Under this directory you can create files called <em>news</em> or <em>newuser</em>
1344 for example. In fact you can create files with any names you like. These can
1345 be listed by the user with the command ....
1351 They can be read by the user by typing the command ....
1357 If the file they want to read is called <em>news</em>. You could also set
1358 an alias for this in the Alias file to allow them just to type <em>news</em>
1361 You can also store other information in this directory, either directly or
1362 nested under directories. One use for this would be to store DX bulletins
1363 such as the OPDX bulletins. These can be listed and read by the user.
1364 To keep things tidy, make a directory under /spider/packclus called
1365 <em>bulletins</em>. Now copy any OPDX or similar bulletins into it. These
1366 can be listed by the user in the same way as above using the <em>show/files</em>
1367 command with an extension for the bulletins directory you have just created,
1371 show/files bulletins
1375 An example would look like this ....
1379 bulletins DIR 20-Dec-1999 1715Z news 1602 14-Dec-1999 1330Z
1382 You can see that in the files area (basically the packclus directory) there is a
1383 file called <em>news</em> and a directory called <em>bulletins</em>. You can
1384 also see that dates they were created. In the case of the file <em>news</em>,
1385 you can also see the time it was last modified, a good clue as to whether the
1386 file has been updated since you last read it. To read the file called
1387 <em>news</em> you would simply issue the command ....
1393 To look what is in the bulletins directory you issue the command ....
1396 show/files bulletins
1397 opdx390 21381 29-Nov-1999 1621Z opdx390.1 1670 29-Nov-1999 1621Z
1398 opdx390.2 2193 29-Nov-1999 1621Z opdx391 25045 29-Nov-1999 1621Z
1399 opdx392 35969 29-Nov-1999 1621Z opdx393 15023 29-Nov-1999 1621Z
1400 opdx394 33429 29-Nov-1999 1621Z opdx394.1 3116 29-Nov-1999 1621Z
1401 opdx395 24319 29-Nov-1999 1621Z opdx396 32647 29-Nov-1999 1621Z
1402 opdx396.1 5537 29-Nov-1999 1621Z opdx396.2 6242 29-Nov-1999 1621Z
1403 opdx397 18433 29-Nov-1999 1621Z opdx398 19961 29-Nov-1999 1621Z
1404 opdx399 17719 29-Nov-1999 1621Z opdx400 19600 29-Nov-1999 1621Z
1405 opdx401 27738 29-Nov-1999 1621Z opdx402 18698 29-Nov-1999 1621Z
1406 opdx403 24994 29-Nov-1999 1621Z opdx404 15685 29-Nov-1999 1621Z
1407 opdx405 13984 29-Nov-1999 1621Z opdx405.1 4166 29-Nov-1999 1621Z
1408 opdx406 28934 29-Nov-1999 1621Z opdx407 24153 29-Nov-1999 1621Z
1409 opdx408 15081 29-Nov-1999 1621Z opdx409 23234 29-Nov-1999 1621Z
1410 Press Enter to continue, A to abort (16 lines) >
1413 You can now read any file in this directory using the type command, like this ....
1416 type bulletins/opdx391
1417 Ohio/Penn DX Bulletin No. 391
1418 The Ohio/Penn Dx PacketCluster
1422 Editor Tedd Mirgliotta, KB8NW
1423 Provided by BARF-80 BBS Cleveland, Ohio
1424 Online at 440-237-8208 28.8k-1200 Baud 8/N/1 (New Area Code!)
1425 Thanks to the Northern Ohio Amateur Radio Society, Northern Ohio DX
1426 Association, Ohio/Penn PacketCluster Network, K1XN & Golist, WB2RAJ/WB2YQH
1427 & The 59(9) DXReport, W3UR & The Daily DX, K3TEJ, KN4UG, W4DC, NC6J, N6HR,
1428 Press Enter to continue, A to abort (508 lines) >
1431 The page length will of course depend on what you have it set to!
1433 <sect1>The Aliases file
1436 You will find a file in /spider/cmd/ called Aliases. First, copy this file to
1437 /spider/local_cmd/Aliases and edit this file. You will see something like this ...
1443 # provide some standard aliases for commands for terminally
1444 # helpless ak1a user (helpless in the sense that they never
1445 # read nor understand help files)
1447 # This file is automagically reloaded if its modification time is
1448 # later than the one stored in CmdAlias.pm
1450 # PLEASE make this file consistant with reality! (the patterns MUST
1451 # match the filenames!)
1453 # Don't alter this file, copy it into the local_cmd tree and modify it.
1454 # This file will be replaced everytime I issue a new release.
1456 # You only need to put aliases in here for commands that don't work as
1457 # you desire naturally, e.g sh/dx on its own just works as you expect
1458 # so you need not add it as an alias.
1466 '^\?', 'apropos', 'apropos',
1469 '^ann.*/full', 'announce full', 'announce',
1470 '^ann.*/sysop', 'announce sysop', 'announce',
1471 '^ann.*/(.*)$', 'announce $1', 'announce',
1478 '^del', 'kill', 'kill',
1479 '^del\w*/fu', 'kill full', 'kill',
1480 '^di\w*/a\w*', 'directory all', 'directory',
1481 '^di\w*/b\w*', 'directory bulletins', 'directory',
1482 '^di\w*/n\w*', 'directory new', 'directory',
1483 '^di\w*/o\w*', 'directory own', 'directory',
1484 '^di\w*/s\w*', 'directory subject', 'directory',
1485 '^di\w*/t\w*', 'directory to', 'directory',
1486 '^di\w*/f\w*', 'directory from', 'directory',
1487 '^di\w*/(\d+)', 'directory $1', 'directory',
1504 '^l$', 'directory', 'directory',
1505 '^ll$', 'directory', 'directory',
1506 '^ll/(\d+)', 'directory $1', 'directory',
1511 '^news', 'type news', 'type',
1521 '^r$', 'read', 'read',
1522 '^rcmd/(\S+)', 'rcmd $1', 'rcmd',
1525 '^s/p$', 'send', 'send',
1526 '^sb$', 'send noprivate', 'send',
1527 '^set/home$', 'set/homenode', 'set/homenode',
1528 '^set/nobe', 'unset/beep', 'unset/beep',
1529 '^set/nohe', 'unset/here', 'unset/here',
1530 '^set/noan', 'unset/announce', 'unset/announce',
1531 '^set/nodx', 'unset/dx', 'unset/dx',
1532 '^set/nota', 'unset/talk', 'unset/talk',
1533 '^set/noww', 'unset/wwv', 'unset/wwv',
1534 '^set/nowx', 'unset/wx', 'unset/wx',
1535 '^sh$', 'show', 'show',
1536 '^sh\w*/buck', 'dbshow buck', 'dbshow',
1537 '^sh\w*/bu', 'show/files bulletins', 'show/files',
1538 '^sh\w*/c/n', 'show/configuration nodes', 'show/configuration',
1539 '^sh\w*/c$', 'show/configuration', 'show/configuration',
1540 '^sh\w*/com', 'dbavail', 'dbavail',
1541 '^sh\w*/dx/(\d+)-(\d+)', 'show/dx $1-$2', 'show/dx',
1542 '^sh\w*/dx/(\d+)', 'show/dx $1', 'show/dx',
1543 '^sh\w*/dx/d(\d+)', 'show/dx from $1', 'show/dx',
1544 '^sh\w*/email', 'dbshow email', 'dbshow',
1545 '^sh\w*/hftest', 'dbshow hftest', 'dbshow',
1546 '^sh\w*/vhftest', 'dbshow vhftest', 'dbshow',
1547 '^sh\w*/qsl', 'dbshow qsl', 'dbshow',
1548 '^sh\w*/tnc', 'who', 'who',
1549 '^sh\w*/up', 'show/cluster', 'show/cluster',
1550 '^sh\w*/w\w*/(\d+)-(\d+)', 'show/wwv $1-$2', 'show/wwv',
1551 '^sh\w*/w\w*/(\d+)', 'show/wwv $1', 'show/wwv',
1552 '^sp$', 'send', 'send',
1556 '^ta$', 'talk', 'talk',
1557 '^t$', 'talk', 'talk',
1564 '^wx/full', 'wx full', 'wx',
1565 '^wx/sysop', 'wx sysop', 'wx',
1576 You can create aliases for commands at will. Beware though, these may not
1577 always turn out as you think. Care is needed and you need to test the
1578 results once you have set an alias.
1583 DXSpider receives all and any mail sent to it without any alterations needed
1584 in files. Because personal and bulletin mail are treated differently, there
1585 is no need for a list of accepted bulletin addresses. It is necessary, however,
1586 to tell the program which links accept which bulletins. For example, it is
1587 pointless sending bulletins addresses to "UK" to any links other than UK
1588 ones. The file that does this is called forward.pl and lives in /spider/msg.
1589 At default, like other spider files it is named forward.pl.issue. Rename it
1590 to forward.pl and edit the file to match your requirements.
1591 The format is below ...
1595 # this is an example message forwarding file for the system
1597 # The format of each line is as follows
1599 # type to/from/at pattern action destinations
1600 # P/B/F T/F/A regex I/F [ call [, call ...] ]
1602 # type: P - private, B - bulletin (msg), F - file (ak1a bull)
1603 # to/from/at: T - to field, F - from field, A - home bbs, O - origin
1604 # pattern: a perl regex on the field requested
1605 # action: I - ignore, F - forward
1606 # destinations: a reference to an array containing node callsigns
1608 # if it is non-private and isn't in here then it won't get forwarded
1610 # Currently only type B msgs are affected by this code.
1612 # The list is read from the top down, the first pattern that matches
1613 # causes the action to be taken.
1615 # The pattern can be undef or 0 in which case it will always be selected
1616 # for the action specified
1618 # If the BBS list is undef or 0 and the action is 'F' (and it matches the
1619 # pattern) then it will always be forwarded to every node that doesn't have
1620 # it (I strongly recommend you don't use this unless you REALLY mean it, if
1621 # you allow a new link with this on EVERY bull will be forwarded immediately
1622 # on first connection)
1628 'B', 'T', 'LOCAL', 'F', [ qw(GB7MBC) ],
1629 'B', 'T', 'ALL', 'F', [ qw(GB7BAA GB7ADX PA4AB-14) ],
1630 'B', 'T', 'UK', 'F', [ qw(GB7BAA GB7ADX) ],
1631 'B', 'T', 'QSL', 'F', [ qw(GB7BAA GB7ADX PA4AB-14) ],
1632 'B', 'T', 'QSLINF', 'F', [ qw(GB7BAA GB7ADX PA4AB-14) ],
1633 'B', 'T', 'DX', 'F', [ qw(GB7BAA GB7ADX PA4AB-14) ],
1634 'B', 'T', 'DXINFO', 'F', [ qw(GB7BAA GB7ADX PA4AB-14) ],
1635 'B', 'T', 'DXNEWS', 'F', [ qw(GB7BAA GB7ADX PA4AB-14) ],
1636 'B', 'T', 'DXQSL', 'F', [ qw(GB7BAA GB7ADX PA4AB-14) ],
1637 'B', 'T', 'SYSOP', 'F', [ qw(GB7BAA GB7ADX) ],
1638 'B', 'T', '50MHZ', 'F', [ qw(GB7BAA GB7ADX PA4AB-14) ],
1642 Simply insert a bulletin address and state in the brackets where you wish
1643 that mail to go. For example, you can see here that mail sent to "UK" will
1644 only be sent to the UK links and not to PA4AB-14.
1647 To force the cluster to reread the file use load/forward
1649 <sect1>Distribution lists
1652 Distribution lists are simply a list of users to send certain types of
1653 mail to. An example of this is mail you only wish to send to other
1654 sysops. In /spider/msg there is a directory called <em>distro</em>. You
1655 put any distibution lists in here. For example, here is a file called
1656 SYSOP.pl that caters for the UK sysops.
1659 qw(GB7TLH GB7DJK GB7DXM GB7CDX GB7BPQ GB7DXN GB7MBC GB7MBC-6 GB7MDX
1660 GB7NDX GB7SDX GB7TDX GB7UDX GB7YDX GB7ADX GB7BAA GB7DXA GB7DXH
1661 GB7DXK GB7DXI GB7DXS)
1664 Any mail sent to "sysop" would only be sent to the callsigns in this list.
1669 In later versions of Spider a simple console program is provided for the sysop.
1670 This has a type ahead buffer with line editing facilities and colour for spots,
1671 announces etc. To use this program, simply use console.pl instead of client.pl.
1674 To edit the colours, copy /spider/perl/Console.pl to /spider/local and edit the
1675 file with your favourite editor.
1680 CVS stands for "Concurrent Versions System" and the CVS for DXSpider is held
1681 at <htmlurl url="http://www.sourceforge.net" name="Sourceforge">. This means
1682 that it is possible to update your DXSpider installation to the latest
1683 sources by using a few simple commands.
1686 THIS IS NOT FOR THE FAINT HEARTED!!! ONLY DO THIS IF YOU HAVE A TEST
1687 INSTALLATION OR ARE WILLING TO HAVE YOUR CLUSTER CRASH ON YOU!!!
1688 THIS MUST BE CONSIDERED AT LEAST BETA TESTING AND MAYBE EVEN ALPHA!!
1689 YOU HAVE BEEN WARNED!!!
1692 DID I MENTION..... ONLY DO THIS IF YOU ARE WILLING TO ACCEPT THE
1696 I am of course assuming that you have a machine with both DXSpider and
1697 Internet access running.
1700 BEFORE YOU EVEN CONSIDER STARTING WITH THIS MAKE A BACKUP OF YOUR
1701 ENTIRE SPIDER TREE!!
1704 Assuming you are connected to the Internet, you need to login to the
1705 CVS repository and then update your Spider source. There are several
1706 steps which are listed below ...
1709 First login as the user <em>sysop</em>. Next you need to connect to the CVS
1710 repository. You do this with the command below ...
1713 cvs -d:pserver:anonymous@cvs.DXSpider.sourceforge.net:/cvsroot/dxspider login
1716 You will get a password prompt. Simply hit return here and your machine should
1717 return to a normal linux prompt.
1720 What happens next depends on whether you have an existing installation that
1721 you want to update with the latest and greatest or whether you just want
1722 to see what is there and/or run it on a new machine for testing.
1723 Either way you will want to change directory to a new place, if you want to
1724 update an existing installation then I suggest /tmp, otherwise choose a
1725 suitable place according to the normal installation instructions.
1728 The next step will create a brand new 'spider' directory in your current
1732 cvs -z3 -d:pserver:anonymous@cvs.DXSpider.sourceforge.net:/cvsroot/dxspider co spider
1735 This command is all on one line.
1738 Hopefully your screen should show you downloading files. The -z3 simply compresses
1739 the download to improve speed.
1740 When this has finished, you will have exactly the same as if you had untarred a full
1741 tarball PLUS some extra directories and files that CVS needs to do the magic that
1745 Now if you are doing a new installation, that's it. Carry on as if you have
1746 just downloaded and untarred the lastest tarball.
1749 If you want to upgrade your current installation then do this ...
1752 tar cvfz /tmp/s.tgz spider
1754 tar xvfzp /tmp/s.tgz
1757 This is assuming you downloaded to the /tmp directory of course.
1760 NOTE: the 'p' on the end of the 'xvfz' is IMPORTANT! It keeps the permissions
1761 correct. YOU WERE LOGGED IN AS THE USER SYSOP WEREN'T YOU?????
1763 Remember to recompile the C client (cd /spider/src; make)
1766 At this point the files have been upgraded. You can (usually) restrt the cluster
1767 in your own time. However, if you attempt to use any new commands or features
1768 expect it to be fatal! At least your cluster will have been restarted then so it
1769 will be too late to worry about it!
1772 Now the magic part! From now on when you want to update, simply connect to the
1773 Internet and then, as the user <em>sysop</em> ...
1780 and your files will be updated. As above, remember to recompile the "C" client
1781 if it has been updated (CVS will tell you) and restart if any of the perl scripts
1782 have been altered or added, again, CVS will tell you.
1785 You will find any changes documented in the /spider/Changes file.
1787 <sect>The DXSpider command set
1790 Below is a complete list of commands available from the cluster prompt.
1791 Most maintenance tasks are automatic but there are some commands that are useful
1792 for a sysop. These are listed below in alphabetical order. The number in
1793 brackets following the command name is the permissions level needed to use
1796 <sect1>accept/announce (0)
1800 <bf>accept/announce [0-9] <pattern></bf> Set an accept filter
1805 Create an 'accept this announce' line for a filter.
1807 An accept filter line means that if the announce matches this filter it is
1808 passed onto the user. See HELP FILTERS for more info. Please read this
1809 to understand how filters work - it will save a lot of grief later on.
1811 You can use any of the following things in this line:-
1814 info <string> eg: iota or qsl
1815 by <prefixes> eg: G,M,2
1817 origin_dxcc <numbers> eg: 61,62 (from eg: sh/pre G)
1818 origin_itu <numbers>
1819 origin_zone <numbers>
1824 wx 1 filter WX announces
1825 dest <prefixes> eg: 6MUK,WDX (distros)
1832 acc/ann 2 by_zone 14,15,16
1833 (this could be all on one line: acc/ann dest 6MUK or by_zone 14,15,16)
1842 This filter would only allow announces that were posted buy UK stations.
1843 You can use the tag 'all' to accept everything eg:
1849 but this probably for advanced users...
1851 <sect1>accept/announce (extended for sysops) (8)
1855 <bf>accept/announce <call> [input] [0-9]<pattern></bf> Announce filter sysop version
1859 This version allows a sysop to set a filter for a callsign as well as the
1860 default for nodes and users eg:-
1864 accept/ann input node_default by G,M,2
1865 accept/ann user_default by G,M,2
1868 <sect1>accept/spots (0)
1872 <bf>accept/announce [0-9] <pattern></bf> Set an accept filter
1877 Create an 'accept this spot' line for a filter.
1880 An accept filter line means that if the spot matches this filter it is
1881 passed onto the user. See HELP FILTERS for more info. Please read this
1882 to understand how filters work - it will save a lot of grief later on.
1884 You can use any of the following things in this line:-
1887 freq <range> eg: 0/30000 or hf or hf/cw or 6m,4m,2m
1888 on <range> same as 'freq'
1889 call <prefixes> eg: G,PA,HB9
1890 info <string> eg: iota or qsl
1892 call_dxcc <numbers> eg: 61,62 (from eg: sh/pre G)
1903 For frequencies, you can use any of the band names defined in
1904 SHOW/BANDS and you can use a subband name like: cw, rtty, data, ssb -
1905 thus: hf/ssb. You can also just have a simple range like: 0/30000 -
1906 this is more efficient than saying simply: freq HF (but don't get
1907 too hung up about that)
1913 acc/spot 2 on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
1916 You can use the tag 'all' to accept everything, eg:
1922 but this probably for advanced users...
1924 <sect1>accept/spots (extended for sysops) (8)
1928 <bf>accept/spots <call> [input] [0-9] <pattern></bf> Spot filter sysop version
1932 This version allows a sysop to set a filter for a callsign as well as the
1933 default for nodes and users eg:-
1936 accept/spot db0sue-7 1 by_zone 14,15,16
1937 accept/spot node_default all
1938 set/hops node_default 10
1940 accept/spot user_default by G,M,2
1943 <sect1>accept/wcy (0)
1947 <bf>accept/wcy [0-9] <pattern></bf> set an accept WCY filter
1951 It is unlikely that you will want to do this, but if you do then you can
1952 filter on the following fields:-
1955 by <prefixes> eg: G,M,2
1957 origin_dxcc <numbers> eg: 61,62 (from eg: sh/pre G)
1958 origin_itu <numbers>
1959 origin_zone <numbers>
1967 There are no examples because WCY Broadcasts only come from one place and
1968 you either want them or not (see UNSET/WCY if you don't want them).
1970 This command is really provided for future use.
1972 See HELP FILTER for information.
1974 <sect1>accept/wcy (extended for sysops) (8)
1978 <bf>accept/wcy <call> [input] [0-9] <pattern></bf>
1979 WCY filter sysop version
1983 This version allows a sysop to set a filter for a callsign as well as the
1984 default for nodes and users eg:-
1987 accept/wcy node_default all
1988 set/hops node_default 10
1991 <sect1>accept/wwv (0)
1995 <bf>accept/wwv [0-9] <pattern></bf> Set an accept WWV filter
1999 It is unlikely that you will want to do this, but if you do then you can
2000 filter on the following fields:-
2003 by <prefixes> eg: G,M,2
2005 origin_dxcc <numbers> eg: 61,62 (from eg: sh/pre G)
2006 origin_itu <numbers>
2007 origin_zone <numbers>
2017 accept/wwv by_zone 4
2020 is probably the only useful thing to do (which will only show WWV broadcasts
2021 by stations in the US).
2023 See HELP FILTER for information.
2025 <sect1>accept/wwv (extended for sysops) (8)
2029 <bf>accept/wwv <call> [input] [0-9] <pattern></bf>
2030 WWV filter sysop version
2034 This version allows a sysop to set a filter for a callsign as well as the
2035 default for nodes and users eg:-
2038 accept/wwv db0sue-7 1 by_zone 4
2039 accept/wwv node_default all
2040 set/hops node_default 10
2042 accept/wwv user_default by W,K
2049 <bf>announce <text></bf> Send an announcement to local users
2053 Send an announcement to LOCAL users only, where <text> is the text
2054 of the announcement you wish to broadcast
2056 <sect1>announce full (0)
2060 <bf>announce full <text></bf> Send an announcement cluster wide
2064 This command will send your announcement across the whole cluster
2068 <sect1>announce sysop (5)
2072 <bf>announce sysop <text></bf>
2076 Send an announcement to Sysops only
2082 <bf>apropos <string></bf> Search the help database
2086 Search the help database for <string> (it isn't case sensitive),
2087 and print the names of all the commands that may be relevant.
2093 <bf>bye</bf> Exit from the cluster
2097 This will disconnect you from the cluster
2103 <bf>catchup <node_call> All|[<msgno> ...]</bf>
2104 Mark a message as sent
2108 When you send messages the fact that you have forwarded it to another node
2109 is remembered so that it isn't sent again. When you have a new partner
2110 node and you add their callsign to your /spider/msg/forward.pl file, all
2111 outstanding non-private messages will be forwarded to them. This may well
2112 be ALL the non-private messages. You can prevent this by using these
2117 catchup GB7DJK 300 301 302 303 500-510
2120 and to undo what you have just done:-
2123 uncatchup GB7DJK all
2124 uncatchup GB7DJK 300 301 302 303 500-510
2127 which will arrange for them to be forward candidates again.
2129 Order is not important.
2131 <sect1>clear/spots (0)
2135 <bf>clear/spots [1|all]</bf> Clear a spot filter line
2139 This command allows you to clear (remove) a line in a spot filter or to
2140 remove the whole filter.
2142 If you have a filter:-
2146 acc/spot 2 on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
2155 you will be left with:-
2158 acc/spot 2 on vhf and (by_zone 14,15,16 or call_zone 14,15,16)
2167 the filter will be completely removed.
2174 <bf>connect <callsign></bf> Start a connection to another DX Cluster
2178 Start a connection process that will culminate in a new connection to the
2179 DX cluster <callsign>. This process creates a new 'client' process which will
2180 use the script in /spider/connect/<callsign> to effect the 'chat' exchange
2181 necessary to traverse the network(s) to logon to the cluster <callsign>.
2187 <bf>dbavail</bf> Show a list of all the databases in the system
2191 The title says it all really, this command lists all the databases defined
2192 in the system. It is also aliased to SHOW/COMMAND.
2198 <bf>dbcreate <name></bf> Create a database entry<newline>
2199 <bf>dbcreate <name> chain <name> [<name>..]</bf> Create a
2200 chained database entry<newline>
2201 <bf>dbcreate <name> remote <node></bf> Create a remote database
2206 DBCREATE allows you to define a database in the system. It doesn't actually
2207 create anything, just defines it.
2209 The databases that are created are simple DB_File hash databases, they are
2210 therefore already 'indexed'.
2212 You can define a local database with the first form of the command eg:
2216 You can also chain databases with the addition of the 'chain' keyword.
2217 This will search each database one after the other. A typical example
2220 DBCREATE sdx_qsl chain sql_ad
2222 No checking is done to see if the any of the chained databases exist, in
2223 fact it is usually better to do the above statement first then do each of
2224 the chained databases.
2226 Databases can exist offsite. To define a database that lives on another
2229 DBCREATE buckmaster remote gb7dxc
2231 Remote databases cannot be chained; however, the last database in a
2232 a chain can be a remote database eg:
2234 DBCREATE qsl chain gb7dxc
2236 To see what databases have been defined do:
2238 DBAVAIL (or it will have been aliased to SHOW/COMMAND)
2240 It would be normal for you to add an entry into your local Aliases file
2241 to allow people to use the 'SHOW/<dbname>' style syntax. So you would
2242 need to add a line like:-
2248 '^sh\w*/buc', 'dbshow buckmaster', 'dbshow',
2258 to work as they may be used to.
2260 See DBIMPORT for the importing of existing AK1A format data to databases.
2261 See DBSHOW for generic database enquiry
2267 <bf>dbimport <dbname></bf> Import AK1A data into a database
2271 If you want to import or update data in bulk to a database you can use
2272 this command. It will either create or update entries into an existing
2273 database. For example:-
2275 DBIMPORT oblast /tmp/OBLAST.FUL
2277 will import the standard OBLAST database that comes with AK1A into the
2278 oblast database held locally.
2284 <bf>dbremove <dbname></bf> Delete a database
2288 DBREMOVE will completely remove a database entry and also delete any data
2289 file that is associated with it.
2291 There is no warning, no comeback, no safety net.
2297 will remove the oblast database from the system and it will also remove
2298 the associated datafile.
2302 There is no warning, no comeback, no safety net.
2304 You have been warned.
2310 <bf>dbshow <dbname> <key></bf> Display an entry, if it exists,
2315 This is the generic user interface to the database to the database system.
2316 It is expected that the sysop will add an entry to the local Aliases file
2317 so that users can use the more familiar AK1A style of enquiry such as:
2323 but if he hasn't and the database really does exist (use DBAVAIL or
2324 SHOW/COMMAND to find out) you can do the same thing with:
2335 <bf>debug</bf> Set the cluster program into debug mode
2339 Executing this command will only have an effect if you are running the cluster
2346 It will interrupt the cluster just after the debug command has finished.
2348 <sect1>directory (0)
2352 <bf>directory</bf> List messages<newline>
2353 <bf>directory all</bf> List all messages<newline>
2354 <bf>directory own</bf> List your own messages<newline>
2355 <bf>directory new</bf> List all new messages<newline>
2356 <bf>directory to <call></bf> List all messages to <call><newline>
2357 <bf>directory from <call></bf> List all messages from <call><newline>
2358 <bf>directory subject <string></bf> List all messages with <string>
2360 <bf>directory <nn></bf> List last <nn> messages<newline>
2361 <bf>directory <from>-<to></bf> List messages <from> message <to> message <newline>
2365 List the messages in the messages directory.
2367 If there is a 'p' one space after the message number then it is a
2368 personal message. If there is a '-' between the message number and the
2369 'p' then this indicates that the message has been read.
2371 You can use shell escape characters such as '*' and '?' in the <call>
2374 You can combine some of the various directory commands together eg:-
2379 DIR SUBJECT IOTA 200-250
2382 You can abbreviate all the commands to one letter and use ak1a syntax:-
2390 <sect1>directory (extended for sysops) (5)
2393 Works just like the user command except that sysops can see ALL messages.
2395 <sect1>disconnect (8)
2399 <bf>disconnect <call> [<call> ...]</bf> Disconnect a user or node
2403 Disconnect any <call> connected locally
2409 <bf>dx [by <call>] <freq> <call> <remarks></bf> Send a DX spot
2413 This is how you send a DX Spot to other users. You can, in fact, now
2414 enter the <freq> and the <call> either way round.
2422 will all give the same result. You can add some remarks to the end
2423 of the command and they will be added to the spot.
2426 DX FR0G 144600 this is a test
2429 You can credit someone else by saying:-
2432 DX by G1TLH FR0G 144.600 he isn't on the cluster
2435 The <freq> is compared against the available bands set up in the
2436 cluster. See SHOW/BANDS for more information.
2442 <bf>export <msgno> <filename></bf> Export a message to a file
2446 Export a message to a file. This command can only be executed on a local
2447 console with a fully privileged user. The file produced will be in a form
2448 ready to be imported back into the cluster by placing it in the import
2449 directory (/spider/msg/import).
2451 This command cannot overwrite an existing file. This is to provide some
2452 measure of security. Any files written will owned by the same user as the
2453 main cluster, otherwise you can put the new files anywhere the cluster can
2454 access. For example:-
2458 <sect1>export_users (9)
2462 <bf>export_users [<filename>]</bf> Export the users database to ascii
2466 Export the users database to a file in ascii format. If no filename
2467 is given then it will export the file to /spider/data/user_asc.
2469 If the file already exists it will be renamed to <filename>.o. In fact
2470 up to 5 generations of the file can be kept each one with an extra 'o' on the
2473 BE WARNED: this will write to any file you have write access to. No check is
2474 made on the filename (if any) that you specify.
2476 <sect1>forward/latlong (8)
2480 <bf>forward/latlong <node_call></bf> Send latitude and longitude
2481 information to another cluster
2485 This command sends all the latitude and longitude information that your
2486 cluster is holding against callsigns. One advantage of recieving this
2487 information is that more locator information is held by you. This
2488 means that more locators are given on the DX line assuming you have
2489 <em>set/dxgrid</em> enabled. This could be a LOT of information though, so
2490 it is not recommended on slow links.
2492 <sect1>forward/opername (1)
2496 <bf>forward/opername <call></bf> Send out information on this <call>
2501 This command sends out any information held in the user file which can
2502 be broadcast in PC41 protocol packets. This information is Name, QTH, Location
2503 and Homenode. PC41s are only sent for the information that is available.
2509 <bf>help <cmd></bf> Get help on a command
2513 All commands can be abbreviated, so SHOW/DX can be abbreviated
2514 to SH/DX, ANNOUNCE can be shortened to AN and so on.
2516 Look at the APROPOS <string> command which will search the help database
2517 for the <string> you specify and give you a list of likely commands
2518 to look at with HELP.
2524 <bf>init <node call></bf> Re-initialise a link to an AK1A compatible node
2528 This command attempts to re-initialise a link to a (usually) AK1A node
2529 that has got confused, usually by a protocol loop of some kind. It may
2530 work - but you usually will be better off simply disconnecting it (or
2531 better, if it is a real AK1A node, doing an RCMD <node> DISC/F <your
2534 Best of luck - you will need it.
2540 <bf>kill <msgno> [<msgno> ..]</bf> Delete a message
2541 from the local system
2545 Delete a message from the local system. You will only be able to
2546 delete messages that you have originated or been sent (unless you are
2553 <bf>kill <msgno> [<msgno> ...]</bf> Remove or erase a message from
2555 <bf>kill from <call></bf> Remove all messages from a callsign<newline>
2556 <bf>kill to <call></bf> Remove all messages to a callsign<newline>
2560 You can get rid of any message to or originating from your callsign using
2561 this command. You can remove more than one message at a time.
2563 As a sysop you can kill any message on the system.
2565 <sect1>kill full (5)
2568 <bf>kill full <msgno> [<msgno>]</bf> Delete a message from the
2573 Delete a message (usually a 'bulletin') from the whole cluster system.
2575 This uses the subject field, so any messages that have exactly the same subject
2576 will be deleted. Beware!
2582 <bf>links</bf> Show which nodes are physically connected
2586 This is a quick listing that shows which links are connected and
2587 some information about them. See WHO for a list of all connections.
2590 <sect1>load/aliases (9)
2594 <bf>load/aliases</bf> Reload the command alias table
2598 Reload the /spider/cmd/Aliases file after you have editted it. You will need to
2599 do this if you change this file whilst the cluster is running in order for the
2600 changes to take effect.
2603 <sect1>load/baddx (9)
2605 <bf>load/baddx</bf> Reload the bad DX table
2609 Reload the /spider/data/baddx.pl file if you have changed it manually whilst
2610 the cluster is running. This table contains the DX Calls that, if spotted,
2611 will not be passed on. FR0G and TEST are classic examples.
2613 <sect1>load/badmsg (9)
2617 <bf>load/badmsg</bf> Reload the bad message table
2621 Reload the /spider/msg/badmsg.pl file if you have changed it manually whilst
2622 the cluster is running. This table contains a number of perl regular
2623 expressions which are searched for in the fields targetted of each message.
2624 If any of them match then that message is immediately deleted on receipt.
2626 <sect1>load/badwords (9)
2630 <bf>load/badwords</bf> Reload the badwords file
2634 Reload the /spider/data/badwords file if you have changed it manually whilst
2635 the cluster is running. This file contains a list of words which, if found
2636 on certain text portions of PC protocol, will cause those protocol frames
2637 to be rejected. It will all put out a message if any of these words are
2638 used on the announce, dx and talk commands. The words can be one or
2639 more on a line, lines starting with '#' are ignored.
2641 <sect1>load/bands (9)
2645 <bf>load/bands</bf> Reload the band limits table
2649 Reload the /spider/data/bands.pl file if you have changed it manually whilst
2650 the cluster is running.
2652 <sect1>load/cmd_cache (9)
2656 <bf>load/cmd_cache</bf> Reload the automatic command cache
2660 Normally, if you change a command file in the cmd or local_cmd tree it will
2661 automatially be picked up by the cluster program. Sometimes it can get confused
2662 if you are doing a lot of moving commands about or delete a command in the
2663 local_cmd tree and want to use the normal one again. Execute this command to
2664 reset everything back to the state it was just after a cluster restart.
2666 <sect1>load/forward (9)
2670 <bf>load/forward</bf> Reload the msg forwarding routing table
2673 Reload the /spider/msg/forward.pl file if you have changed it
2674 manually whilst the cluster is running.
2676 <sect1>load/messages (9)
2680 <bf>load/messages</bf> Reload the system messages file
2684 If you change the /spider/perl/Messages file (usually whilst fiddling/writing ne
2685 commands) you can have them take effect during a cluster session by executing this
2686 command. You need to do this if get something like :-
2688 unknown message 'xxxx' in lang 'en'
2690 <sect1>load/prefixes (9)
2694 <bf>load/prefixes</bf> Reload the prefix table
2698 Reload the /spider/data/prefix_data.pl file if you have changed it manually
2699 whilst the cluster is running.
2705 <bf>merge <node> [<no spots>/<no wwv>]</bf> Ask for the
2706 latest spots and WWV
2710 MERGE allows you to bring your spot and wwv database up to date. By default
2711 it will request the last 10 spots and 5 WWVs from the node you select. The
2712 node must be connected locally.
2714 You can request any number of spots or wwv and although they will be appended
2715 to your databases they will not duplicate any that have recently been added
2716 (the last 2 days for spots and last month for WWV data).
2722 <bf>msg <cmd> <msgno> [data ...]</bf> Alter various message
2727 Alter message parameters like To, From, Subject, whether private or bulletin
2728 or return receipt (RR) is required or whether to keep this message from timing
2732 MSG TO <msgno> <call> - change TO callsign to <call>
2733 MSG FRom <msgno> <call> - change FROM callsign to <call>
2734 MSG PRrivate <msgno> - set private flag
2735 MSG NOPRrivate <msgno> - unset private flag
2736 MSG RR <msgno> - set RR flag
2737 MSG NORR <msgno> - unset RR flag
2738 MSG KEep <msgno> - set the keep flag (message won't be deleted ever)
2739 MSG NOKEep <msgno> - unset the keep flag
2740 MSG SUbject <msgno> <new> - change the subject to <new>
2741 MSG WAittime <msgno> - remove any waitting time for this message
2742 MSG NOREad <msgno> - mark message as unread
2743 MSG REad <msgno> - mark message as read
2744 MSG QUeue - queue any outstanding bulletins
2745 MSG QUeue 1 - queue any outstanding private messages
2748 You can look at the status of a message by using:-
2750 STAT/MSG <msgno>
2752 This will display more information on the message than DIR does.
2758 <bf>pc <call> <text></bf> Send text (eg PC Protocol) to <call>
2762 Send some arbitrary text to a locally connected callsign. No processing is done on
2763 the text. This command allows you to send PC Protocol to unstick things if problems
2764 arise (messages get stuck etc). eg:-
2766 pc gb7djk PC33^GB7TLH^GB7DJK^400^
2768 You can also use in the same way as a talk command to a connected user but
2769 without any processing, added of "from <blah> to <blah>" or whatever.
2771 pc G1TLH Try doing that properly!!!
2777 <bf>ping <node></bf> Check the link quality between nodes
2781 his command allows you to send a frame to another cluster node on
2782 the network and get a return frame. The time it takes to do this
2783 is a good indication of the quality of the link. The actual time
2784 it takes is output to the console in seconds.
2785 Any visible cluster node can be PINGed.
2792 <bf>rcmd <node call> <cmd></bf> Send a command to another DX cluster
2796 This command allows you to send nearly any command to another DX Cluster
2797 node that is connected to the system.
2799 Whether you get any output is dependant on a) whether the other system knows
2800 that the node callsign of this cluster is in fact a node b) whether the
2801 other system is allowing RCMDs from this node and c) whether you have
2802 permission to send this command at all.
2808 <bf>read</bf> Read the next unread personal message addressed to you<newline>
2809 <bf>read <msgno></bf> Read the specified message<newline>
2813 You can read any messages that are sent as 'non-personal' and also any
2814 message either sent by or sent to your callsign.
2817 <sect1>read (extended for sysops) (5)
2821 <bf>read <msgno></bf> Read a message on the system
2825 As a sysop you may read any message on the system
2827 <sect1>reject/announce
2831 <bf>reject/announce [0-9] <pattern></bf> Set a reject filter
2836 Create an 'reject this announce' line for a filter.
2838 An reject filter line means that if the announce matches this filter it is
2839 passed onto the user. See HELP FILTERS for more info. Please read this
2840 to understand how filters work - it will save a lot of grief later on.
2842 You can use any of the following things in this line:-
2845 info <string> eg: iota or qsl
2846 by <prefixes> eg: G,M,2
2848 origin_dxcc <numbers> eg: 61,62 (from eg: sh/pre G)
2849 origin_itu <numbers>
2850 origin_zone <numbers>
2855 wx 1 filter WX announces
2856 dest <prefixes> eg: 6MUK,WDX (distros)
2862 rej/ann by_zone 14,15,16 and not by G,M,2
2865 You can use the tag 'all' to reject everything eg:
2871 but this probably for advanced users...
2873 <sect1>reject/announce (extended for sysops) (8)
2877 <bf>reject/announce <call> [input] [0-9] <pattern></bf> Announce filter sysop version
2881 This version allows a sysop to set a filter for a callsign as well as the
2882 default for nodes and users eg:-
2886 reject/ann input node_default by G,M,2
2887 reject/ann user_default by G,M,2
2890 <sect1>reject/spots (0)
2894 <bf>reject/spots [0-9] <pattern></bf> Set a reject filter
2899 Create a 'reject this spot' line for a filter.
2901 A reject filter line means that if the spot matches this filter it is
2902 dumped (not passed on). See HELP FILTERS for more info. Please read this
2903 to understand how filters work - it will save a lot of grief later on.
2905 You can use any of the following things in this line:-
2908 freq <range> eg: 0/30000 or hf or hf/cw or 6m,4m,2m
2909 on <range> same as 'freq'
2910 call <prefixes> eg: G,PA,HB9
2911 info <string> eg: iota or qsl
2913 call_dxcc <numbers> eg: 61,62 (from eg: sh/pre G)
2923 For frequencies, you can use any of the band names defined in
2924 SHOW/BANDS and you can use a subband name like: cw, rtty, data, ssb -
2925 thus: hf/ssb. You can also just have a simple range like: 0/30000 -
2926 this is more efficient than saying simply: on HF (but don't get
2927 too hung up about that)
2933 rej/spot 2 on vhf and not (by_zone 14,15,16 or call_zone 14,15,16)
2936 You can use the tag 'all' to reject everything eg:
2942 but this probably for advanced users...
2944 <sect1>reject/spots (extended for sysops) (8)
2948 <bf>reject/spots <call> [input] [0-9] <pattern></bf>
2949 Reject spot filter sysop version
2953 This version allows a sysop to set a filter for a callsign as well as the
2954 default for nodes and users eg:-
2957 reject/spot db0sue-7 1 by_zone 14,15,16
2958 reject/spot node_default all
2959 set/hops node_default 10
2961 reject/spot user_default by G,M,2
2964 <sect1>reject/wcy (0)
2968 <bf>reject/wcy [0-9] <pattern></bf> Set a reject WCY filter
2972 It is unlikely that you will want to do this, but if you do then you can
2973 filter on the following fields:-
2976 by <prefixes> eg: G,M,2
2978 origin_dxcc <numbers> eg: 61,62 (from eg: sh/pre G)
2979 origin_itu <numbers>
2980 origin_zone <numbers>
2987 There are no examples because WCY Broadcasts only come from one place and
2988 you either want them or not (see UNSET/WCY if you don't want them).
2990 This command is really provided for future use.
2992 See HELP FILTER for information.
2994 <sect1>reject/wcy (extended for sysops) (8)
2998 <bf>reject/wcy <call> [input] [0-9] <pattern></bf>
2999 WCY reject filter sysop version
3003 This version allows a sysop to set a filter for a callsign as well as the
3004 default for nodes and users eg:-
3006 reject/wcy gb7djk all
3008 <sect1>reject/wwv (0)
3012 <bf>reject/wwv [0-9] <pattern></bf> Set a reject WWV filter
3016 It is unlikely that you will want to do this, but if you do then you can
3017 filter on the following fields:-
3020 by <prefixes> eg: G,M,2
3022 origin_dxcc <numbers> eg: 61,62 (from eg: sh/pre G)
3023 origin_itu <numbers>
3024 origin_zone <numbers>
3034 reject/wwv by_zone 14,15,16
3037 is probably the only useful thing to do (which will only show WWV broadcasts
3038 by stations in the US).
3040 See HELP FILTER for information.
3042 <sect1>reject/wwv (extended for sysops) (8)
3046 <bf>reject/wwv <call> [input] [0-9] <pattern></bf>
3047 WWV reject filter sysop version
3050 <P>This version allows a sysop to set a filter for a callsign as well as the
3051 default for nodes and users eg:-
3054 reject/wwv db0sue-7 1 by_zone 4
3055 reject/wwv node_default all
3057 reject/wwv user_default by W
3064 <bf>reply</bf> Reply (privately) to the last message that you have read<newline>
3065 <bf>reply <msgno></bf> Reply (privately) to the specified message<newline>
3066 <bf>reply B <msgno></bf> Reply as a Bulletin to the specified message<newline>
3067 <bf>reply NOPrivate <msgno></bf> Reply as a Bulletin to the specified
3069 <bf>reply RR <msgno></bf> Reply to the specified message with read
3074 You can reply to a message and the subject will automatically have
3075 "Re:" inserted in front of it, if it isn't already present.
3077 You can also use all the extra qualifiers such as RR, PRIVATE,
3078 NOPRIVATE, B that you can use with the SEND command (see SEND
3079 for further details)
3085 <bf>send <call> [<call> ...]</bf> Send a message to
3086 one or more callsigns<newline>
3087 <bf>send RR <call></bf> Send a message and ask for a read receipt<newline>
3088 <bf>send COPY <msgno> <call></bf> Send a copy of a message
3090 <bf>send PRIVATE <call></bf> Send a personal message<newline>
3091 <bf>send NOPRIVATE <call></bf> Send a message to all stations<newline>
3095 All the SEND commands will create a message which will be sent either to
3096 an individual callsign or to one of the 'bulletin' addresses.
3098 SEND <call> on its own acts as though you had typed SEND PRIVATE, that is
3099 it will mark the message as personal and send it to the cluster node that
3100 that callsign is connected to.
3102 You can have more than one callsign in all of the SEND commands.
3104 You can have multiple qualifiers so that you can have for example:-
3107 SEND RR COPY 123 PRIVATE G1TLH G0RDI
3110 which should send a copy of message 123 to G1TLH and G0RDI and you will
3111 receive a read receipt when they have read the message.
3113 SB is an alias for SEND NOPRIVATE (or send a bulletin in BBS speak)
3114 SP is an alias for SEND PRIVATE
3116 <sect1>set/address (0)
3120 <bf>set/address <your_address></bf> Record your postal address
3124 Literally, record your address details on the cluster.
3126 <sect1>set/announce (0)
3130 <bf>set/announce</bf> Allow announce messages
3134 Allow announce messages to arrive at your terminal.
3136 <sect1>set/arcluster (5)
3140 <bf>set/arcluster <node_call> [<node_call> ...]</bf> Make
3141 the node_call an AR-Cluster type node
3145 Set the node_call as an AR-Cluster type node
3147 <sect1>set/baddx (8)
3151 <bf>set/baddx <call></bf> Stop words we do not wish to see in the callsign field
3152 of a dx spot being propagated
3156 Setting a word as 'baddx' will prevent spots with that word in the callsign
3157 field of a DX spot from going any further. They will not be displayed and they
3158 will not be sent onto other nodes.
3160 The word must be wriiten in full, no wild cards are allowed eg:-
3163 set/baddx FORSALE VIDEO FR0G
3166 To allow a word again, use the following command ...
3172 <sect1>set/badnode (6)
3176 <bf>set/badnode <node_call></bf> Stop spots from this node_call
3181 Setting a callsign as a 'badnode' will prevent spots from that node
3182 going any further. They will not be displayed and they will not be
3183 sent onto other nodes.
3185 The call can be a full or partial call (or a prefix), eg:-
3191 will stop anything from K1TTT (including any SSID's)
3197 will allow spots from him again.
3199 Use with extreme care. This command may well be superceded by FILTERing.
3201 <sect1>set/badspotter (8)
3205 <bf>set/badspotter <call></bf> Stop spots from this callsign being propagated
3209 Setting a callsign as a 'badspotter' will prevent spots from this callsign
3210 going any further. They will not be displayed and they will not be
3211 sent onto other nodes.
3213 The call must be written in full, no wild cards are allowed eg:-
3216 set/badspotter VE2STN
3219 will stop anything from VE2STN. If you want SSIDs as well then you must
3220 enter them specifically.
3223 unset/badspotter VE2STN
3226 will allow spots from him again.
3228 Use with extreme care. This command may well be superceded by FILTERing.
3234 <bf>set/beep</bf> Add beeps to terminal messages
3238 Add a beep to DX and other terminal messages.
3244 <bf>set/clx <node_call> [<node_call> ...]</bf> Make
3245 the node_call a CLX type node
3249 Set the node_call as a CLX type node
3251 <sect1>set/debug (9)
3255 <bf>set/debug <name></bf> Add a debug level to the debug set
3259 You can remove this level with unset/debug <name>
3265 <bf>set/dx</bf>Allow DX messages to arrive at your terminal
3269 You can stop DX messages with the <em>unset/dx</em> command
3271 <sect1>set/dxgrid (0)
3275 <bf>set/dxgrid</bf>Allow grid squares on the end of DX messages
3279 Some logging programs do not like the additional information at
3280 the end of a DX spot. If this is the case, use the <em>unset/dxgrid</em>
3281 command to remove the grid squares.
3283 <sect1>set/dxnet (5)
3287 <bf>set/dxnet <node_call> [<node_call> ...]</bf> Make
3288 the node_call a DXNet type node
3292 Set the node_call as a DXNet type node
3298 <bf>set/echo</bf> Make the cluster echo your input
3302 If you are connected via a telnet session, different implimentations
3303 of telnet handle echo differently depending on whether you are
3304 connected via port 23 or some other port. You can use this command
3305 to change the setting appropriately.
3307 You can remove the echo with the <em>unset/echo</em> command
3309 The setting is stored in your user profile.
3311 YOU DO NOT NEED TO USE THIS COMMAND IF YOU ARE CONNECTED VIA AX25.
3317 <bf>set/here</bf> Set the here flag
3321 Let others on the cluster know you are here by only displaying your
3322 callsign. If you are away from your terminal you can use the <em>unset/here</em>
3323 command to let people know you are away. This simply puts brackets
3324 around your callsign to indicate you are not available.
3326 <sect1>set/homenode (0)
3330 <bf>set/homenode <node_call></bf> Set your home cluster
3334 Tell the cluster system where you normally connect to. Any Messages sent
3335 to you will normally find their way there should you not be connected.
3346 <bf>set/hops <node_call> ann|spots|wwv|wcy <n></bf>
3351 Set the hop count for a particular type of broadcast for a node.
3353 This command allows you to set up special hop counts for a node
3354 for currently: announce, spots, wwv and wcy broadcasts.
3358 set/hops gb7djk ann 10
3359 set/hops gb7mbc spots 20
3362 Set SHOW/HOPS for information on what is already set. This command
3363 creates a filter and works in conjunction with the filter system.
3365 <sect1>set/isolate (9)
3369 <bf>set/isolate <node call></bf> Isolate a node from the rest of the network
3373 Connect a node to your system in such a way that you are a full protocol
3374 member of its network and can see all spots on it, but nothing either leaks
3375 out from it nor goes back into from the rest of the nodes connected to you.
3377 You can potentially connect several nodes in this way.
3379 You can see which nodes are isolated with the show/isolate (1) command.
3381 You can remove the isolation with the command unset/isolate.
3383 <sect1>set/language (0)
3387 <bf>set/language <language></bf> Set the language you wish to use
3391 You can select the language that you want the cluster to use. Currently
3392 the languages available are <em>en</em> (English) and <em>nl</em> (Dutch).
3394 <sect1>set/location (0)
3398 <bf>set/location <lat and long></bf> Set your latitude and longitude
3402 You can set your latitude and longitude manually or alternatively use the
3403 <em>set/qra</em> command which will do the conversion for you.
3406 set/location 54 04 N 2 02 E
3410 <sect1>set/sys_location (9)
3414 <bf>set/sys_location <lat & long></bf> Set your cluster latitude and longitude
3418 In order to get accurate headings and such like you must tell the system
3419 what your latitude and longitude is. If you have not yet done a SET/QRA
3420 then this command will set your QRA locator for you. For example:-
3423 SET/LOCATION 52 22 N 0 57 E
3426 <sect1>set/logininfo (0)
3430 <bf>set/logininfo</bf> Show logins and logouts of nodes and users
3434 Show users and nodes when they log in and out of the local cluster. You
3435 can stop these messages by using the <em>unset/logininfo</em> command.
3438 <sect1>set/lockout (9)
3442 <bf>set/lockout <call></bf> Stop a callsign connecting to the cluster
3446 You can show who is locked out with the <em>show/lockout</em> command.
3447 To allow the user to connect again, use the <em>unset/lockout</em> command.
3453 <bf>set/name <your_name></bf> Set your name
3457 Tell the cluster what your name is, eg:-
3467 <bf>set/node <call> [<call> ...]</bf> Make the callsign an AK1A cluster
3471 Tell the system that the call(s) are to be treated as AK1A cluster and
3472 fed PC Protocol rather normal user commands.
3474 From version 1.41 you can also set the following types of cluster
3483 To see what your nodes are set to, use the <em>show/nodes</em> command.
3485 <sect1>set/obscount (9)
3489 <bf>set/obscount <count> <node call></bf> Set the 'pump-up'
3490 obsolescence counter
3494 From version 1.35 onwards neighbouring nodes are pinged at regular intervals (see
3495 SET/PINGINTERVAL), usually 300 seconds or 5 minutes. There is a 'pump-up'
3496 counter which is decremented on every outgoing ping and then reset to
3497 the 'obscount' value on every incoming ping. The default value of this
3500 What this means is that a neighbouring node will be pinged twice at
3501 (default) 300 second intervals and if no reply has been heard just before
3502 what would be the third attempt, that node is disconnected.
3504 If a ping is heard then the obscount is reset to the full value. Using
3505 default values, if a node has not responded to a ping within 15 minutes,
3512 <bf>set/page <n></bf> Set the number of lines per page
3516 Tell the system how many lines you wish on a page when the number of lines
3517 of output from a command is more than this. The default is 20. Setting it
3518 explicitly to 0 will disable paging.
3525 The setting is stored in your user profile.
3528 <sect1>set/password (9)
3532 <bf>set/password <callsign> <string></bf> Set a users password
3536 The password for a user can only be set by a full sysop. The string
3537 can contain any characters but any spaces are removed (you can type in
3538 spaces - but they won't appear in the password). You can see the
3539 result with STAT/USER. The password is the usual 30 character baycom
3542 <sect1>set/pinginterval (9)
3546 <bf>set/pinginterval <time> <node call></bf> Set the ping time
3547 to neighbouring nodes
3551 As from version 1.35 all neighbouring nodes are pinged at regular intervals
3552 in order to determine the rolling quality of the link and, in future, to
3553 affect routing decisions. The default interval is 300 secs or 5 minutes.
3555 You can use this command to set a different interval. Please don't.
3557 But if you do the value you enter is treated as minutes up 60 and seconds
3558 for numbers greater than that.
3560 This is used also to help determine when a link is down at the far end
3561 (as certain cluster software doesn't always notice), see SET/OBSCOUNT
3562 for more information.
3564 <sect1>set/privilege (9)
3568 <bf>set/privilege <n> <call> [<call> ...]</bf> Set the
3569 privilege level on a call
3573 Set the privilege level on a callsign. The privilege levels that pertain
3574 to commands are as default:-
3578 1 - allow remote nodes normal user RCMDs
3579 5 - various privileged commands (including shutdown, but not disc-
3580 connect), the normal level for another node.
3581 8 - more privileged commands (including disconnect)
3582 9 - local sysop privilege. DO NOT SET ANY REMOTE USER OR NODE TO THIS
3586 If you are a sysop and you come in as a normal user on a remote connection
3587 your privilege will automatically be set to 0.
3589 <sect1>set/spider (5)
3593 <bf>set/spider <node_call> [<node_call> ...]</bf> Make
3594 the node_call a DXSpider type node
3598 Set the node_call as a DXSpider type node
3600 <sect1>set/sys_qra (9)
3604 <bf>set/sys_qra <locator></bf> Set your cluster QRA locator
3611 <bf>set/qra <locator></bf> Set your QRA locator
3615 Tell the system what your QRA (or Maidenhead) locator is. If you have not
3616 done a SET/LOCATION then your latitude and longitude will be set roughly
3617 correctly (assuming your locator is correct ;-). For example:-
3627 <bf>set/qth <your QTH></bf> Set your QTH
3631 Tell the system where your are. For example:-
3634 set/qth East Dereham, Norfolk
3641 <bf>set/talk</bf> Allow talk messages to be seen at your console
3645 Allow talk messages to arrive at your console. You can switch off
3646 talks with the <em>unset/talk</em> command.
3652 <bf>set/wcy</bf> Allow WCY messages to be seen at your console
3656 Allow WCY information to be seen at your console. You can switch off
3657 WCY messages with the <em>unset/wcy</em> command.
3663 <bf>set/wwv</bf> Allow WWV messages to be seen at your console
3667 Allow WWV information to be seen at your console. You can switch off
3668 WWV messages with the <em>unset/wwv</em> command.
3674 <bf>set/wx</bf> Allow WX messages to be seen at your console
3678 Allow WX information to be seen at your console. You can switch off
3679 WX messages with the <em>unset/wx</em> command.
3681 <sect1>show/baddx (1)
3685 <bf>show/baddx</bf>Show all the bad dx calls in the system
3689 Display all the bad dx callsigns in the system, see SET/BADDX
3690 for more information.
3692 <sect1>show/badnode (6)
3696 <bf>show/badnode</bf> Show all the bad nodes in the system
3700 Display all the bad node callsigns in the system, see SET/BADNODE
3701 for more information.
3703 <sect1>show/badspotter (1)
3707 <bf>show/badspotter</bf>Show all the bad spotters in the system
3711 Display all the bad spotter's callsigns in the system, see SET/BADSPOTTER
3712 for more information.
3714 <sect1>show/date (0)
3718 <bf>show/date [<prefix>|<callsign>]</bf> Show
3723 This is very nearly the same as SHOW/TIME, the only difference the format
3724 of the date string if no arguments are given.
3726 If no prefixes or callsigns are given then this command returns the local
3727 time and UTC as the computer has it right now. If you give some prefixes
3728 then it will show UTC and UTC + the local offset (not including DST) at
3729 the prefixes or callsigns that you specify.
3735 <bf>show/dx [options]</bf> interrogate the spot database
3739 If you just type SHOW/DX you will get the last so many spots
3740 (sysop configurable, but usually 10).
3742 In addition you can add any number of these options in very nearly
3743 any order to the basic SHOW/DX command, they are:-
3746 on <band> - eg 160m 20m 2m 23cm 6mm
3747 on <region> - eg hf vhf uhf shf (see SHOW/BANDS)
3749 <number> - the number of spots you want
3750 <from>-<to> - <from> spot no <to> spot no in
3753 <prefix> - for a spotted callsign beginning with <prefix>
3754 *<suffix> - for a spotted callsign ending in <suffix>
3755 *<string>* - for a spotted callsign containing <string>
3757 day <number> - starting <number> days ago
3758 day <from>-<to> - <from> days <to> days ago
3760 info <text> - any spots containing <text> in the info or remarks
3762 by <call> - any spots spotted by <call> (spotter <call>
3765 qsl - this automatically looks for any qsl info on the call
3766 held in the spot database.
3768 iota [<iota>] - If the iota island number is missing it will
3769 look for the string iota and anything which looks like
3770 an iota island number. If you specify then it will look
3773 qra [<locator>] - this will look for the specific locator if
3774 you specify one or else anything that looks like a locator.
3781 SH/DX on 20m info iota
3782 SH/DX 9a on vhf day 30
3789 <sect1>show/dxcc (0)
3793 <bf>show/dxcc <prefix></bf> Interrogate the spot database by country
3797 This command takes the <prefix> (which can be a full or partial
3798 callsign if desired), looks up which internal country number it is
3799 and then displays all the spots as per SH/DX for that country.
3801 The options for SHOW/DX also apply to this command.
3806 SH/DXCC W on 20m info iota
3809 <sect1>show/files (0)
3813 <bf>show/files [<filearea> [<string>]]</bf> List
3814 the contents of a filearea
3818 SHOW/FILES on its own will show you a list of the various fileareas
3819 available on the system. To see the contents of a particular file
3823 SH/FILES <filearea>
3826 where <filearea> is the name of the filearea you want to see the
3829 You can also use shell globbing characters like '*' and '?' in a
3830 string to see a selection of files in a filearea eg:-
3833 SH/FILES bulletins arld*
3836 See also TYPE - to see the contents of a file.
3838 <sect1>show/filter (0)
3842 <bf>show/filter</bf> Show the filters you have set
3846 Show the contents of all the filters that are set by you. This command
3847 displays all the filters set - for all the various categories.
3849 <sect1>show/filter (extended for sysops) (5)
3853 <bf>show/filter <callsign></bf> Show the filters set by <callsign>
3857 A sysop can look at any filters that have been set.
3859 <sect1>show/hops (8)
3863 <bf>show/hops <node_call> [ann|spots|wcy|wwv|]</bf> Show the hop
3868 This command shows the hop counts set up for a node. You can specify
3869 which category you want to see. If you leave the category out then
3870 all the categories will be listed.
3872 <sect1>show/isolate (1)
3876 <bf>show/isolate</bf> Show a list of isolated nodes
3880 Show which nodes are currently set to be isolated.
3882 <sect1>show/lockout (9)
3886 <bf>show/lockout</bf> Show a list of excluded callsigns
3890 Show a list of callsigns that have been excluded (locked out) of the
3891 cluster locally with the <em>set/lockout</em> command
3893 <sect1>show/moon (0)
3897 <bf>show/moon [<prefix>|<callsign>]</bf> Show moon
3902 Show the Moon rise and set times for a (list of) prefixes or callsigns,
3903 together with the azimuth and elevation of the sun currently at those
3906 If you don't specify any prefixes or callsigns, it will show the times for
3907 your QTH (assuming you have set it with either SET/LOCATION or SET/QRA),
3908 together with the current azimuth and elevation.
3910 In addition, it will show the gain or loss dB relative to the nominal
3911 distance of 385,000Km due to the ellipsoidal nature of the orbit.
3913 If all else fails it will show the Moonrise and set times for the node
3914 that you are connected to.
3927 <bf>show/muf <prefix> [<hours>][long]</bf> Show
3928 the likely propagation to <prefix>
3932 This command allow you to estimate the likelihood of you contacting
3933 a station with the prefix you have specified. The output assumes a modest
3934 power of 20dBW and receiver sensitivity of -123dBm (about 0.15muV/10dB SINAD)
3936 The result predicts the most likely operating frequencies and signal
3937 levels for high frequency (shortwave) radio propagation paths on
3938 specified days of the year and hours of the day. It is most useful for
3939 paths between 250 km and 6000 km, but can be used with reduced accuracy
3940 for paths shorter or longer than this.
3942 The command uses a routine MINIMUF 3.5 developed by the U.S. Navy and
3943 used to predict the MUF given the predicted flux, day of the year,
3944 hour of the day and geographic coordinates of the transmitter and
3945 receiver. This routine is reasonably accurate for the purposes here,
3946 with a claimed RMS error of 3.8 MHz, but much smaller and less complex
3947 than the programs used by major shortwave broadcasting organizations,
3948 such as the Voice of America.
3950 The command will display some header information detailing its
3951 assumptions, together with the locations, latitude and longitudes and
3952 bearings. It will then show UTC (UT), local time at the other end
3953 (LT), calculate the MUFs, Sun zenith angle at the midpoint of the path
3954 (Zen) and the likely signal strengths. Then for each frequency for which
3955 the system thinks there is a likelihood of a circuit it prints a value.
3957 The value is currently a likely S meter reading based on the conventional
3958 6dB / S point scale. If the value has a '+' appended it means that it is
3959 1/2 an S point stronger. If the value is preceeded by an 'm' it means that
3960 there is likely to be much fading and by an 's' that the signal is likely
3963 By default SHOW/MUF will show the next two hours worth of data. You
3964 can specify anything up to 24 hours worth of data by appending the no of
3965 hours required after the prefix. For example:-
3974 RxSens: -123 dBM SFI: 159 R: 193 Month: 10 Day: 21
3975 Power : 20 dBW Distance: 6283 km Delay: 22.4 ms
3976 Location Lat / Long Azim
3977 East Dereham, Norfolk 52 41 N 0 57 E 47
3978 United-States-W 43 0 N 87 54 W 299
3979 UT LT MUF Zen 1.8 3.5 7.0 10.1 14.0 18.1 21.0 24.9 28.0 50.0
3980 18 23 11.5 -35 mS0+ mS2 S3
3981 19 0 11.2 -41 mS0+ mS2 S3
3984 indicating that you will have weak, fading circuits on top band and
3985 80m but usable signals on 40m (about S3).
3993 will get you the above display, but with the next 24 hours worth of
4001 Gives you an estimate of the long path propagation characterics. It
4002 should be noted that the figures will probably not be very useful, nor
4003 terrible accurate, but it is included for completeness.
4005 <sect1>show/node (1)
4009 <bf>show/node [<node_call> ...]</bf> Show the type and version
4014 Show the type and version (if connected) of the nodes specified on the
4015 command line. If no callsigns are specified then a sorted list of all
4016 the non-user callsigns known to the system will be displayed.
4018 <sect1>show/prefix (0)
4022 <bf>show/prefix <callsign></bf> Interrogate the prefix database
4026 This command takes the <callsign> (which can be a full or partial
4027 callsign or a prefix), looks up which internal country number
4028 it is and then displays all the relevant prefixes for that country
4029 together with the internal country no, the CQ and ITU regions.
4034 <sect1>show/program (5)
4038 <bf>show/program</bf> Show the locations of all the included program modules
4042 Show the name and location where every program module was load from. This
4043 is useful for checking where you think you have loaded a .pm file from.
4049 <bf>show/qra <locator> [<locator>]</bf> Show the distance
4050 between locators<newline>
4051 <bf>show/qra <lat> <long></bf> Convert latitude and longitude to
4056 This is a multipurpose command that allows you either to calculate the
4057 distance and bearing between two locators or (if only one locator is
4058 given on the command line) the distance and beraing from your station
4059 to the locator. For example:-
4066 The first example will show the distance and bearing to the locator from
4067 yourself, the second example will calculate the distance and bearing from
4068 the first locator to the second. You can use 4 or 6 character locators.
4070 It is also possible to convert a latitude and longitude to a locator by
4071 using this command with a latitude and longitude as an argument, for
4075 SH/QRA 52 41 N 0 58 E
4082 <bf>show/qrz <callsign></bf> Show any callbook details on a callsign
4086 This command queries the QRZ callbook server on the internet
4087 and returns any information available for that callsign. This service
4088 is provided for users of this software by http://www.qrz.com
4090 <sect1>show/route (0)
4094 <bf>show/route <callsign></bf> Show the route to <callsign>
4098 This command allows you to see to which node the callsigns specified are
4099 connected. It is a sort of inverse sh/config.
4105 <sect1>show/satellite (0)
4109 <bf>show/satellite <name> [<hours> <interval>]</bf>
4110 Show satellite tracking data
4114 Show the tracking data from your location to the satellite of your choice
4115 from now on for the next few hours.
4117 If you use this command without a satellite name it will display a list
4118 of all the satellites known currently to the system.
4120 If you give a name then you can obtain tracking data of all the passes
4121 that start and finish 5 degrees below the horizon. As default it will
4122 give information for the next three hours for every five minute period.
4124 You can alter the number of hours and the step size, within certain
4127 Each pass in a period is separated with a row of '-----' characters
4133 SH/SAT FENGYUN1 12 2
4140 <bf>show/sun [<prefix>|<callsign>]</bf> Show
4141 sun rise and set times
4145 Show the sun rise and set times for a (list of) prefixes or callsigns,
4146 together with the azimuth and elevation of the sun currently at those
4149 If you don't specify any prefixes or callsigns, it will show the times for
4150 your QTH (assuming you have set it with either SET/LOCATION or SET/QRA),
4151 together with the current azimuth and elevation.
4153 If all else fails it will show the sunrise and set times for the node
4154 that you are connected to.
4160 SH/SUN G1TLH K9CW ZS
4163 <sect1>show/time (0)
4167 <bf>show/time [<prefix>|<callsign>]</bf> Show
4172 If no prefixes or callsigns are given then this command returns the local
4173 time and UTC as the computer has it right now. If you give some prefixes
4174 then it will show UTC and UTC + the local offset (not including DST) at
4175 the prefixes or callsigns that you specify.
4181 <bf>show/wcy</bf> Show the last 10 WCY broadcasts<newline>
4182 <bf>show/wcy <n></bf> Show the last <n> WCY broadcasts
4186 Display the most recent WCY information that has been received by the system
4192 <bf>show/wwv</bf> Show the last 10 WWV broadcasts<newline>
4193 <bf>show/wwv <n></bf> Show the last <n> WWV broadcasts
4197 Display the most recent WWV information that has been received by the system
4204 <bf>shutdown</bf> Shutdown the cluster
4208 Shutdown the cluster and disconnect all the users. If you have Spider
4209 set to respawn in /etc/inittab it will of course restart.
4215 <bf>spoof <callsign> <command></bf> Run commands as another user
4219 This is a very simple yet powerful command for the sysop. It allows you to
4220 issue commands as if you were a different user. This is very useful for the
4221 kind of things that users seem to always get wrong.. like home_node for
4228 <bf>stat/db <dbname></bf> Show the status of a database
4232 Show the internal status of a database descriptor.
4234 Depending on your privilege level you will see more or less information.
4235 This command is unlikely to be of much use to anyone other than a sysop.
4237 <sect1>stat/channel (5)
4241 <bf>stat/channel <callsign></bf> Show the status of a channel on the cluster
4245 Show the internal status of the channel object either for the channel that
4246 you are on or else for the callsign that you asked for.
4248 Only the fields that are defined (in perl term) will be displayed.
4254 <bf>stat/msg <msgno></bf> Show the status of a message
4258 This command shows the internal status of a message and includes information
4259 such as to whom it has been forwarded, its size, origin etc etc.
4261 <sect1>stat/user (5)
4265 <bf>stat/user <callsign></bf> Show the full status of a user
4269 Shows the full contents of a user record including all the secret flags
4272 Only the fields that are defined (in perl term) will be displayed.
4278 <bf>sysop</bf> Regain your privileges if you login remotely
4282 The system automatically reduces your privilege level to that of a
4283 normal user if you login in remotely. This command allows you to
4284 regain your normal privilege level. It uses the normal system: five
4285 numbers are returned that are indexes into the character array that is
4286 your assigned password (see SET/PASSWORD). The indexes start from
4289 You are expected to return a string which contains the characters
4290 required in the correct order. You may intersperse those characters
4291 with others to obscure your reply for any watchers. For example (and
4292 these values are for explanation :-):
4295 password = 012345678901234567890123456789
4303 aa2bbbb0ccc5ddd7xxx3n
4308 They will all match. If there is no password you will still be offered
4309 numbers but nothing will happen when you input a string. Any match is
4316 <bf>talk <callsign></bf> Enter talk mode with <callsign><newline>
4317 <bf>talk <callsign> <text></bf> Send a text message to <callsign><newline>
4318 <bf>talk <callsign> > <node_call> [<text>]</bf>
4319 Send a text message to <callsign> via <node_call>
4323 Send a short message to any other station that is visible on the cluster
4324 system. You can send it to anyone you can see with a SHOW/CONFIGURATION
4325 command, they don't have to be connected locally.
4327 The second form of TALK is used when other cluster nodes are connected
4328 with restricted information. This usually means that they don't send
4329 the user information usually associated with logging on and off the cluster.
4331 If you know that G3JNB is likely to be present on GB7TLH, but you can only
4332 see GB7TLH in the SH/C list but with no users, then you would use the
4333 second form of the talk message.
4335 If you want to have a ragchew with someone you can leave the text message
4336 out and the system will go into 'Talk' mode. What this means is that a
4337 short message is sent to the recipient telling them that you are in a 'Talking'
4338 frame of mind and then you just type - everything you send will go to the
4339 station that you asked for.
4341 All the usual announcements, spots and so on will still come out on your
4344 If you want to do something (such as send a spot) you precede the normal
4345 command with a '/' character, eg:-
4348 /DX 14001 G1TLH What's a B class licensee doing on 20m CW?
4352 To leave talk mode type:
4362 <bf>type <filearea>/<name></bf> Look at a file in one of the fileareas
4366 Type out the contents of a file in a filearea. So, for example, in
4367 filearea 'bulletins' you want to look at file 'arld051' you would
4371 TYPE bulletins/arld051
4374 See also SHOW/FILES to see what fileareas are available and a
4381 <bf>who</bf> Show who is physically connected locally
4385 This is a quick listing that shows which callsigns are connected and
4386 what sort of connection they have
4392 <bf>wx <text></bf> Send a weather message to local users<newline>
4393 <bf>wx full <text> </bf> Send a weather message to all cluster users
4397 Weather messages can sometimes be useful if you are experiencing an extreme
4398 that may indicate enhanced conditions
4400 <sect1>wx (enhanced for sysops) (5)
4404 <bf>wx sysop <text></bf> Send a weather message to other clusters only
4408 Send a weather message only to other cluster nodes and not to general users.