<html>
<head>
<title>Connecting to other Clusters</title>
+ <meta name="Keywords" content="DX Cluster, DXSpider, Spider, Packet Cluster, DXCluster, Pavillion Software, AK1A, AX25, AX.25, WWV, Packet Radio, Amateur Radio, Propagation, DX, DXing, G1TLH, GB7TLH, Dirk Koopman, Mailing list, Linux, RedHat, PERL">
+ <meta name="Description" content="Software and systems for realtime digital communications between amateur radio stations for the provision of information on propagation conditions and stations operating">
+ <meta name="Author" content="Dirk Koopman G1TLH">
</head>
- <body>
- <h2>Connecting to other Clusters</h2>
-
- <hr>
- <address><a href="mailto:djk@tobit.co.uk">Dirk Koopman G1TLH</a></address>
+ <body TEXT="#000000" LINK="#0000ff" VLINK="#800080" BGCOLOR="#FFFFFF">
+ <FONT COLOR="#606060">
+ <hr>
+ <h2>Connecting to other Clusters</h2>
+ <hr>
+ </font>
+
+
+ <address><a href="mailto:djk@tobit.co.uk">Dirk Koopman G1TLH</a></address>
<p>
-<!-- Created: Sun Dec 13 20:25:14 GMT 1998 -->
-<!-- hhmts start -->
-Last modified: Sun Dec 13 22:31:33 GMT 1998
+ <!-- Created: Sun Dec 13 20:25:14 GMT 1998 -->
+ <!-- hhmts start -->
+Last modified: Fri Jan 8 14:27:18 GMT 1999
<!-- hhmts end -->
<p>At the moment, anybody can connect inwards at any time from outside, either by ax25 or by
telnet (assuming you have followed the instructions in <a href="install.html">installation</a>
instructions. However, in order to connect outwards, you will need to create <em>connect</em> scripts.
-
+
<p><em>Connect</em> scripts live in the <tt>/spider/connect</tt> directory and are simple ascii scripts
that are written using a normal editor. There are a couple of examples in the issue directory.
-
- <p>Here are a couple of basic types, first a telnet connection:-
+
+ <p>Here are a few of basic types, first a telnet connection where the
+ client is set up in the passwd file thus:-
+ <pre>
+ gb7djk:x:1372:1291::/home/gb7djk:/usr/bin/perl /spider/perl/client.pl gb7djk telnet
+ </pre>
+ and the connect script would be:-
<pre>
timeout 15
# this is a comment
connect telnet dirkl.tobit.co.uk
'login' 'gb7djk'
'word' 'gb7djk'
- client /usr/bin/perl /spider/perl/client.pl gb7djk-1 telnet
+ client gb7djk telnet
+ </pre>
+ <p>For a connect that requires a login and execution of the programs
+ from a normal shell, do:-
+
+ <pre>
+ timeout 15
+ connect telnet dirkl.tobit.co.uk
+ 'login' 'gb7djk'
+ 'word' 'gb7djk'
+ '\$' 'cd /spider/perl'
+ # set the line to prevent echoing, leaving this out will
+ # confuse whole networks for hours!
+ '\$' 'stty -echo raw'
+ # tell GB7DJK that you are GB7DJK-1
+ '\$' 'client.pl gb7djk-1 telnet'
+ # tell GB7DJK-1 that it is connected to GB7DJK
+ # you can leave this out if you call this script 'gb7djk'
+ client gb7djk telnet
</pre>
- <p>and an ax25 example:-
+
+ <p>and finally an ax25 example:-
<pre>
timeout 60
abort (Busy|Sorry|Fail)
'Connect' 'c np7'
'Connect' 'c gb7dxm'
'Connect' ''
- client /usr/bin/perl /spider/perl/client.pl gb7dxm ax25
+ # you can leave this out if you call the script 'gb7dxm'
+ client gb7dxm ax25
</pre>
-
+
<p>A connection is started manually by typing in <tt>connect <scriptname></tt> on a sysop enabled
<tt>client.pl</tt> session. For example:-
<pre>
G1TLH de GB7DJK 13-Dec-1998 2041Z > connect gb7djk-1
connection to GB7DJK-1 started
G1TLH de GB7DJK 13-Dec-1998 2043Z >
- </pre>
-
+ </pre>
+
<p>You can watch the progress of the connection (if you have the standard debugging enabled) on the
<tt>cluster.pl</tt> screen and you should see something like this:-
<pre>
<- D GB7DJK-1 PC38^GB7DJK-1^~
<- D GB7DJK-1 PC18^ 1 nodes, 0 local / 1 total users Max users 0 Uptime 0 00:00^5447^~
etc
- </pre>
+ </pre>
+
+ <p>The connect scripts consist of lines which start with the
+ following keywords or symbols:-
- <p>The connect scripts consist of lines which start with the following keywords or symbols:-
<ul>
- <p><li><b>#</b> All lines starting with a <b>#</b> are ignored, as are wholly blank lines.
- <p><li><b>timeout</b> followed by a number is the number of seconds to wait for a command
- to complete. If there is no <b>timeout</b> specified in the script then the default is 60 seconds.
- <P><li><b>abort</b> is a regular expression containing one or more strings to look for to abort a
- connection. This is a perl regular expression and is executed ignoring case.
- <p><li><b>connect</b> followed by <b>ax25</b> or <b>telnet</b> and some type dependent information. In
- the case of a <b>telnet</b> connection, there can be up to two parameters, the first is the ip
- address or hostname of the computer you wish to connect to and the second is the port number you
- want to use (this can be left out if it is a normal telnet session).
- <p>In the case of an <b>ax25</b> session then this would normally be a call to <tt>ax25_call</tt>
- or <tt>netrom_call</tt> as in the example above. It is your responsibility to get your node
- and other ax25 parameters to work before going down this route!
- <p><li><b>'</b> or <b>"</b> are the delimiting characters for a <tt>chat</tt> type script. They normally
- come in pairs, either can be empty. Each line reads input from the connection until it sees the string
- (or perl regular expression) contained in the left hand string. If the left hand string is empty then
- it doesn't read or wait for anything. The comparison is done ignoring case.
- <p>When the left hand string has found what it is looking (if it is) then the right hand string is
- sent to the connection.
+
+ <p><li><b>#</b> All lines starting with a <b>#</b> are
+ ignored, as are wholly blank lines.
+
+ <p><li><b>timeout</b> followed by a number is the number of
+ seconds to wait for a command to complete. If there is no
+ <b>timeout</b> specified in the script then the default is 60
+ seconds.
+
+ <P><li><b>abort</b> is a regular expression containing one or
+ more strings to look for to abort a connection. This is a perl
+ regular expression and is executed ignoring case.
+
+ <p><li><b>connect</b> followed by <b>ax25</b> or <b>telnet</b>
+ and some type dependent information. In the case of a
+ <b>telnet</b> connection, there can be up to two parameters,
+ the first is the ip address or hostname of the computer you
+ wish to connect to and the second is the port number you want
+ to use (this can be left out if it is a normal telnet
+ session).
+
+ <p>In the case of an <b>ax25</b> session then this would
+ normally be a call to <tt>ax25_call</tt> or
+ <tt>netrom_call</tt> as in the example above. It is your
+ responsibility to get your node and other ax25 parameters to
+ work before going down this route!
+
+ <p><li><b>'</b> is the delimiting character for a word or
+ phrase of an expect/send line in a <tt>chat</tt> type
+ script. The words/phrases normally come in pairs, either can
+ be empty. Each line reads input from the connection until it
+ sees the string (or perl regular expression) contained in the
+ left hand string. If the left hand string is empty then it
+ doesn't read or wait for anything. The comparison is done
+ ignoring case.
+
+ <p>When the left hand string has found what it is looking (if
+ it is) then the right hand string is sent to the connection.
+
<p>This process is repeated for every line of <tt>chat</tt> script.
- <p><li><b>client</b> starts the client program and should be exactly as you would want it with an incoming
- connection.
+
+ <p><li><b>client</b> starts the connection, put the arguments
+ you would want here if you were starting the client program
+ manually. You only need this if the script has a different
+ name to the callsign you are trying to connect to (i.e. you
+ have a script called <tt>other</tt> which actually connects to
+ <tt>GB7DJK-1</tt> [instead of a script called
+ <tt>gb7djk-1</tt>]).
+
</ul>
- <hr>
- <h5>$Id</h5>
+
+<!-- Standard Footer!! -->
+ <p> </p>
+ <p>
+ <FONT COLOR="#606060"><hr></font>
+ <font color="#FF0000" size=-2>
+ Copyright © 1998 by Dirk Koopman G1TLH. All Rights Reserved<br>
+ </font>
+ <font color="#000000" size=-2>$Id$</font>
</body>
</html>