updated documentation a bit
[spider.git] / html / adminmanual-4.html
index 2123702246721e41ec0c6234a672b5d283fc1a60..37ff648b53ad8efaf2a2bd64c8a4b50cff9364ab 100644 (file)
@@ -2,7 +2,7 @@
 <HTML>
 <HEAD>
  <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
- <TITLE>The DXSpider Installation and Administration Manual : Automating things</TITLE>
+ <TITLE>The DXSpider Administration Manual v1.48: Scripts</TITLE>
  <LINK HREF="adminmanual-5.html" REL=next>
  <LINK HREF="adminmanual-3.html" REL=previous>
  <LINK HREF="adminmanual.html#toc4" REL=contents>
 <A HREF="adminmanual-3.html">Previous</A>
 <A HREF="adminmanual.html#toc4">Contents</A>
 <HR>
-<H2><A NAME="s4">4. Automating things</A></H2>
+<H2><A NAME="s4">4. Scripts</A></H2>
 
-<P>Ok, you should now have DXSpider running nicely and allowing connects by cluster
-nodes or users.  However, it has to be shutdown and restarted manually and if
-connection scripts fail they have to be started again manually too, not much use 
-if you are not at the console!  So, in this section we will automate both.  
-Firstly starting the cluster.
+<P>From 1.48 onwards it will become increasingly possible to control DXSpider's
+operation with scripts of various kinds.
 <P>
-<H2><A NAME="ss4.1">4.1 Autostarting the cluster</A>
-</H2>
-
-<P>This is not only a way to start the cluster automatically, it also works as a
-watchdog, checking the sanity of DXSpider and respawning it should it crash for 
-any reason.  Before doing the following, shutdown the cluster as you did earlier.
-<P>
-<P>Login as root and bring up the /etc/inittab file in your favourite editor.  Add 
-the following lines to the file near the end ...
+<P>In the first instance, in 1.48, the sysop can create, with their favorite 
+text editor, files in the directory <EM>/spider/scripts</EM> which contain
+any legal command for a callsign or class of connection which will be executed
+at logon.
 <P>
-<BLOCKQUOTE><CODE>
-<PRE>
-##Start DXSpider on bootup and respawn it should it crash
-DX:3:respawn:/bin/su -c "/usr/bin/perl -w /spider/perl/cluster.pl" sysop >/dev/tty7
-</PRE>
-</CODE></BLOCKQUOTE>
-<P>
-<P>This line works fine for RedHat distributions. It is also fine for SuSE up to
-7.0.  From Suse 7.1 you need to add runlevels 2 and 5 like this ...
-<P>
-<BLOCKQUOTE><CODE>
-<PRE>
-DX:235:respawn:/bin/su -c "/usr/bin/perl -w /spider/perl/cluster.pl" sysop >/dev/tty7
-</PRE>
-</CODE></BLOCKQUOTE>
+<P> 
+The filename are the callsign of the connection that you want the script to 
+operate on, eg: <EM>/spider/scripts/g1tlh</EM>. The filenames are always in 
+lower case on those architectures where this makes a difference.
 <P>
-<P>The line required for Slackware distributions is slightly different.  My thanks to 
-Aurelio, PA3EZL for this information.
+<P>In addition to the callsign specific scripts there are three others:-
 <P>
 <BLOCKQUOTE><CODE>
 <PRE>
-DX:23:respawn:/bin/su - sysop -c "/usr/bin/perl -w /spider/perl/cluster.pl" >/dev/tty7
+startup
+user_default
+node_default
 </PRE>
 </CODE></BLOCKQUOTE>
+<P>The <EM>startup</EM> script is executed immediately after all
+initialisation of the node is done, but before any connections are
+possible.
 <P>
-<P>This will automatically start DXSpider on tty7 (ALT-F7) on bootup and restart 
-it should it crash for any reason.
-<P>
-<P>As root type the command <EM>telinit q</EM>.  DXSpider should start up 
-immediately.  You will see the output on tty7 and if you login as <EM>sysop</EM> 
-you should find everything running nicely.
-<P>
-<P>So far so good, now to automate script connections...
-<P>
-<H2><A NAME="ss4.2">4.2 The crontab file</A>
-</H2>
-
-<P>Login as <EM>sysop</EM> and create a file in /spider/local_cmd called crontab.  
-Edit it with your favourite editor and add a line like this (I have included 
-a comment)
-<P>
-<BLOCKQUOTE><CODE>
-<PRE>
-# check every 10 minutes to see if gb7xxx is connected and if not
-# start a connect job going
-
-0,10,20,30,40,50 * * * * start_connect('gb7xxx') if !connected('gb7xxx')
-</PRE>
-</CODE></BLOCKQUOTE>
+<P>The <EM>user_default</EM> script is executed for every user that does
+<B>NOT</B> already have a specific script.
 <P>
-<P>The callsign involved will be the callsign of the cluster node you are 
-going to connect to.  This will now check every 10 minutes to see if 
-gb7xxx is connected, if it is then nothing will be done.  If it is not, 
-then a connect attempt will be started.
+<P>The <EM>node_default</EM> script is executed for every node that doesn't
+have a specific script.
 <P>
-<P>There are probably lots of other things you could use this crontab file for.  
-If you want to know more about it, look at the
-<A HREF="http://www.dxcluster.org/cron.html">DXSpider</A> website 
-at the cron page where it is explained more fully.
+<P>There are a couple of examples in the <EM>/spider/scripts</EM> directory.
 <P>
 <HR>
 <A HREF="adminmanual-5.html">Next</A>