pre 1.13 release
[spider.git] / html / connect.html
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
2 <html>
3   <head>
4     <title>Connecting to other Clusters</title>
5         <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">
6         <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">
7         <meta name="Author" content="Dirk Koopman G1TLH">
8   </head>
9
10   <body TEXT="#000000" LINK="#0000ff" VLINK="#800080" BGCOLOR="#FFFFFF">
11         <FONT COLOR="#606060"> 
12           <hr>
13           <h2>Connecting to other Clusters</h2>
14           <hr>
15         </font>
16         
17         
18         <address><a href="mailto:djk@tobit.co.uk">Dirk Koopman G1TLH</a></address>
19         <p>
20           <!-- Created: Sun Dec 13 20:25:14 GMT 1998 -->
21           <!-- hhmts start -->
22 Last modified: Sun Dec 20 17:04:05 GMT 1998
23 <!-- hhmts end -->
24         <p>At the moment, anybody can connect inwards at any time from outside, either by ax25 or by
25           telnet (assuming you have followed the instructions in <a href="install.html">installation</a>
26           instructions. However, in order to connect outwards, you will need to create <em>connect</em> scripts.
27           
28         <p><em>Connect</em> scripts live in the <tt>/spider/connect</tt> directory and are simple ascii scripts
29           that are written using a normal editor. There are a couple of examples in the issue directory.
30           
31         <p>Here are a couple of basic types, first a telnet connection:-
32         <pre>
33     timeout 15
34     # this is a comment
35     connect telnet dirkl.tobit.co.uk
36     'login' 'gb7djk'
37     'word' 'gb7djk'
38     client gb7djk-1 telnet
39         </pre>
40         <p>and an ax25 example:-
41         <pre>
42     timeout 60
43     abort (Busy|Sorry|Fail)
44     # don't forget to chmod 4775 netrom_call!
45     connect ax25 /usr/sbin/netrom_call bbs gb7djk g1tlh
46     'Connect' ''
47     'Connect' 'c np7'
48     'Connect' 'c gb7dxm'
49     'Connect' ''
50     client gb7dxm ax25
51         </pre>
52         
53         <p>A connection is started manually by typing in <tt>connect <scriptname></tt> on a sysop enabled
54           <tt>client.pl</tt> session. For example:-
55         <pre>
56     G1TLH de GB7DJK 13-Dec-1998 2041Z > connect gb7djk-1
57     connection to GB7DJK-1 started
58     G1TLH de GB7DJK 13-Dec-1998 2043Z > 
59         </pre>
60         
61     <p>You can watch the progress of the connection (if you have the standard debugging enabled) on the
62           <tt>cluster.pl</tt> screen and you should see something like this:-
63         <pre>
64     &lt;- D G1TLH connect gb7djk-1
65     -> D G1TLH connection to GB7DJK-1 started
66     -> D G1TLH G1TLH de GB7DJK 13-Dec-1998 2046Z >
67     timeout set to 15
68     CONNECT sort: telnet command: dirkl.tobit.co.uk
69     CHAT "login" -> "gb7djk"
70     received "
71     Red Hat Linux release 5.1 (Manhattan)
72     Kernel 2.0.35 on an i586
73     "
74     received "login: "
75     sent "gb7djk"
76     CHAT "word" -> "gb7djk"
77     received "gb7djk
78  
79     "
80     received "Password: "
81     sent "gb7djk"
82     Connected to GB7DJK-1, starting normal protocol
83     &lt;- O GB7DJK-1 telnet
84     -> B GB7DJK-1 0
85     GB7DJK-1 channel func  state 0 -> init
86     &lt;- D GB7DJK-1 
87     &lt;- D GB7DJK-1 Last login: Sun Dec 13 17:59:56 from dirk1
88     &lt;- D GB7DJK-1 PC38^GB7DJK-1^~
89     &lt;- D GB7DJK-1 PC18^ 1 nodes, 0 local / 1 total users  Max users 0  Uptime 0 00:00^5447^~
90     etc
91         </pre>
92         
93         <p>The connect scripts consist of lines which start with the
94         following keywords or symbols:-
95
96         <ul>
97
98                 <p><li><b>#</b> All lines starting with a <b>#</b> are
99                 ignored, as are wholly blank lines.
100
101                 <p><li><b>timeout</b> followed by a number is the number of
102                 seconds to wait for a command to complete. If there is no
103                 <b>timeout</b> specified in the script then the default is 60
104                 seconds.
105
106                 <P><li><b>abort</b> is a regular expression containing one or
107                 more strings to look for to abort a connection. This is a perl
108                 regular expression and is executed ignoring case.
109
110                 <p><li><b>connect</b> followed by <b>ax25</b> or <b>telnet</b>
111                 and some type dependent information. In the case of a
112                 <b>telnet</b> connection, there can be up to two parameters,
113                 the first is the ip address or hostname of the computer you
114                 wish to connect to and the second is the port number you want
115                 to use (this can be left out if it is a normal telnet
116                 session).
117
118                 <p>In the case of an <b>ax25</b> session then this would
119                 normally be a call to <tt>ax25_call</tt> or
120                 <tt>netrom_call</tt> as in the example above. It is your
121                 responsibility to get your node and other ax25 parameters to
122                 work before going down this route!
123
124                 <p><li><b>'</b> is the delimiting character for a word or
125                 phrase of an expect/send line in a <tt>chat</tt> type
126                 script. The words/phrases normally come in pairs, either can
127                 be empty. Each line reads input from the connection until it
128                 sees the string (or perl regular expression) contained in the
129                 left hand string. If the left hand string is empty then it
130                 doesn't read or wait for anything. The comparison is done
131                 ignoring case.
132
133                 <p>When the left hand string has found what it is looking (if
134                 it is) then the right hand string is sent to the connection.
135
136                 <p>This process is repeated for every line of <tt>chat</tt> script. 
137
138                 <p><li><b>client</b> starts the connection, put the arguments
139                 you would want here if you were starting the client program
140                 manually. You only need this if the script has a different
141                 name to the callsign you are trying to connect to (i.e. you
142                 have a script called <tt>other</tt> which actually connects to
143                 <tt>GB7DJK-1</tt> [instead of a script called
144                 <tt>gb7djk-1</tt>]).
145
146         </ul>
147
148 <!-- Standard Footer!! -->
149         <p>&nbsp;</p>
150         <p>
151           <FONT COLOR="#606060"><hr></font>
152         <font color="#FF0000" size=-2>
153           Copyright &copy; 1998 by Dirk Koopman G1TLH. All Rights Reserved<br>
154         </font>
155         <font color="#000000" size=-2>$Id$</font>
156   </body>
157 </html>