home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 35 Internet
/
35-Internet.zip
/
mail.zip
/
MAIL.DOC
< prev
Wrap
Text File
|
1995-09-10
|
15KB
|
349 lines
MAIL.CMD version 1.1 documentation
Written by Ruud Senden
Contents:
General Information
Description
Necessary external files
Installation
Configuration
Time-outs
Usage
Known bugs
Trouble-shooting
Support
General information:
THERE ARE NO WARRANTIES, EXPRESS OR IMPLIED, INCLUDING THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
You may distribute the program in it's original form, however, you
must distribute it with this documentation included.
You may also distribute a modified version of this program or include
(parts of) this program into your own program, however, you have to
credit the original author in both the program and in the
documentation.
Under no circumstances am I liable for any of the following:
1. third-party claims against you for losses or damages;
2. loss of, or damage to, your records or data; or
3. economic consequential damages (including lost profits or
savings) or incidental damages, even if I am informed of
their possibility.
Description:
The REXX-script will automatically log on to the Internet, exchange
mail and news and optionally hang up afterwards.
Necessary external files:
Before you can use the REXX-script, you will need some other software,
which can be found at most OS/2 BBSes/FTP-sites. This software
includes the following:
RXSOCK.ZIP The REXX-script uses some function from this package, so
it is really required.
SOUPERxx.ZIP This is a program to exchange mail and news with the
Internet in SOUP-format. You can use any other program
which can exchange mail and news with the Internet,
however, check the installation-section if you don't use
the SOUP-format.
SOUP2SQ.ZIP This program exports and imports mail and news from a
Squish message-base to the SOUP-format. If you have a
mail-reader which supports the SOUP-format, you don't
need this. If you use another message-base format, you
will have to find a similar program for your format.
PPPKILL.ZIP This is used to terminate a PPP-connection. If you use
SLIP, you can use the SLIPKILL.EXE program supplied with
the OS/2 Warp Internet Connection. You can also use a
standard process-killer to kill PPP.EXE.
Note: xx indicates a version number.
Installation:
Before you can start using MAIL.CMD, you will first have to install
and configure the programs mentioned above. I suggest you first try
to exchange your mail and news manually, before you start using the
REXX-script. This way you can first test the setup of the other
programs, if they are set up correctly, you can start using MAIL.CMD.
Before you can use MAIL.CMD, you will probably have to change some of
the variables which can be found at the top of the REXX-script.
Please see the configuration-section in this document.
Also, if you don't use the SOUP-format to exchange your mail and news,
you will have to change or delete some checks, which are somewhere
down the script. These checks are used to display informational
messages and to determine whether a given program must be started (for
example, if no new mail and news is available to send to the Internet,
the program to send mail and news doesn't need to be started). The
checks can be changed to support your own format, or they can be
deleted without any harm (the script just gets a little bit less
intelligent). To find these checks, search for "End of SOUP-part" or
"SOUP-packets". They are in lines (approximatically) 83, 174, 206 and
264.
Configuration:
This section describes the variables which can be found at the top of
the REXX-script.
logFile This variable specifies a file in which informational
messages and the output of external programs is recorded.
This has to be a valid filename, else the program will
display an error message.
newsServer This variable specifies the name of your news-server. It
is used to determine when the news-server becomes
available, so the exchange of mail and news can begin.
timeout1 This variable specifies the maximum number of seconds the
program will wait while waiting for the news-server to
become available. This timer will start almost
immediatly after the connection is initialised (eg after
PPP or SLIP is started). If the timer reaches the
time-out value, the REXX-script will be terminated. A
value of 0 will disable the timer.
timeout2 This variable is the same as the timeout1-variable,
except that this timer will start after a connect-message
is given by the modem. This feature only works if you
use a REXX login-script, and requires a change to this
login-script. See the time-outs section for more
information.
triggerFile This variable is used to specify a file which is used by
the second time-out. See the time-outs section for more
information.
prgKill This variable specifies the program which is used to
terminate the connection with the internet. Normally,
this will be a program which kills PPP.EXE or SLIP.EXE.
The following variables have one thing in common. If a prg-variable
is empty or not specified, the function will not be performed. For
example, if you use an editor which directly supports the SOUP-format,
you probably won't need the import and export-functions. This means
the prgImport and prgExport-variables can be deleted or can be set to
an empty string. If a dir-variable is empty or not specified, the
directory won't be changed during that operation. For example, if
both the prgRecv and prgImport-programs has to execute from the same
directory, you won't have to set the dirImport-variable (however, it
is safer ofcourse to do set it). Here are the variables:
prgConnect This variable specifies the program which is used to
connect to the Internet. When used with the OS/2
Internet Connection, this will normally be a command
which starts PPP.EXE or SLIP.EXE with it's necessary
parameters in the background (if you don't know the
parameters, because you normally start PPP or SLIP from
the PM Dialer, there exists a program which fetches these
variables for you, called PPPFK101.ZIP on most OS/2
BBSes).
prgExport This variable specifies the program which is used to put
new mail and news ready for sending to the Internet. In
a SOUPER/SOUP2SQ-configuration, this should be
'SOUP2SQ -s'.
prgSend This variable specifies the program which is used to send
available mail and news to the Internet. In a
SOUPER/SOUP2SQ-configuration, this should be 'SOUPER -s'.
prgRecv This variable specifies the program which is used to
receive new mail and news from the Internet. In a
SOUPER/SOUP2SQ-configuration, this should be 'SOUPER'.
prgImport This variable specifies the program which imports
received mail and news into your message-base. In a
SOUPER/SOUP2SQ- configuration, this should be
'SOUP2SQ -r'.
dirExport This variable specifies the directory from which the
prgExport-program is executed. In a SOUPER/SOUP2SQ-
configuration, this should be the directory where
SOUP2SQ.CFG resides.
dirSend This variable specifies the directory from which the
prgSend-program is executed. In a SOUPER/SOUP2SQ-
configuration, this should be the directory where the
SOUP reply-packets reside.
dirRecv This variable specifies the directory from which the
prgRecv-program is executed. In a SOUPER/SOUP2SQ-
configuration, this should be the directory where SOUP2SQ
looks for SOUP-packets which have to be imported into a
squish message-base.
dirImport This variable specifies the directory from which the
prgImport-program is executed. In a SOUPER/SOUP2SQ-
configuration, this should be the directory where
SOUP2SQ.CFG resides.
If you have configured all variables correctly and changed the
REXX-script as indicated under the installation-section if you don't
use SOUP-packets, you should be ready to automatically fetch your mail
and news from the Internet. For example, if you have a program which
can start other programs at specified times, you can fetch your mail
and news at night when the lines of your provider aren't busy and
while you are asleep.
With all error-checking and the two timers, it is almost impossible
that the connection isn't terminated if something goes wrong, so you
won't get high phone-bills because the connection wasn't terminated
because of an error. However, I don't take any responsibility for
this (I said almost impossible, not totally impossible).
time-outs:
As you can see in the configuration-sections, there are two timers
build into the REXX-script. The first one can always be used, and
requires no special changes. Normally you will want to set this
time-out to a high value, especially if you use a login-script which
features redialing when your provider is busy or something.
Normally, if something goes wrong during the login-fase, this will be
handled by the second timer (since the second timer only starts after
a CONNECT-message is received from the modem). However, to use the
second timer, you need to have a REXX login-script (as far as I know
you can't trigger the second timer from a login response-file or
something like that) and you will have to make a change to your REXX
login-script.
The second timer is started when the file specified by the
triggerFile-variable is found (note that during initialisation of
MAIL.CMD this trigger-file, if found, is deleted). So to initialise
the second timer you have to change your REXX login-script to create
the trigger-file after a CONNECT-message is received. It won't be
very difficult to find the right spot, especially if you know REXX a
little bit. Just putting the following line at the right place will
do it:
"ECHO. > <name>"
(fill in the name you specified in the triggerFile-variable instead of
<name>). The quotes have to be included. When you've done this, you
will be able to use the second timer.
Usage:
Normally you can just execute MAIL.CMD from an OS/2 command prompt (if
the directory where you placed MAIL.CMD isn't contained in your PATH,
you have to go to that directory first ofcourse). If you don't give
any parameters, it will export new mail and news from your
message-base, connect to the Internet, send and receive new mail,
terminate the connection and import the received mail and news.
You can also give a parameter on the command-line. The program
doesn't look at this parameter, but if a parameter is found, the
REXX-script won't terminate the connection after receiving mail and
news. You can use this feature if you want to use other services on
the Internet, like FTP, WWW etc. This way you won't be interupted
after MAIL.CMD has received new mail and news.
Known bugs:
I'm only aware of one bug. The output of all external programs and
some informational messages are written to a logfile. But I couldn't
find a way to redirect the output from the DETACH or START commands,
without also redirecting the output from the started or detached
program (when the output of a started program is redirected to the
logfile, the logfile can't be used by my own program anymore, because
only one process is allowed to use it).
Because of this I don't redirect the output of the program specified
in the prgConnect-variable, since this is normally a program which
has to be started in the background using START or DETACH.
This means that if you use DETACH to start PPP or SLIP, you will see
a message on your screen saying "The process identification number
is 87" or something like that.
If anybody knows a solution to this problem, please let me know (see
the addresses at the bottom of this document).
Trouble-shooting:
If you can't get MAIL.CMD to work, first try to do all the actions
manually. This means you have to execute all the commands you have
given in the prg-variables from the directory specified in the
corresponding dir-variable.
If something goes wrong, you have to check the configuration of the
other programs. If everything works all right, something is probably
wrong with the REXX-script. Please check the documentation once more
to see whether you skipped something important.
If you still can't find the error, and you know REXX, you can try to
fix the program yourself. If you fix a problem, please let me know,
so I can incorporate it into newer version of this program.
If you can't fix the problem yourself, please send a message to me
(see the bottom of this document for my addresses) containing
information about the problem, the version of MAIL.CMD you are using
and other information of which you think it can be usefull. I will
try to fix the problem as time permits.
Support:
If you like this program, I would like to hear from you. You can
either send me an email or netmail, a postcard would also be nice (my
mother likes the stamps). If you appreciate this program so much that
you want to send me (a poor student) some money, I would appreciate it
even more.
I will support this program on an as-time-permits basis, if you have
any problems, suggestions, tips etc about the program itself or this
documentation, I would like to hear from you. Also, if you create a
modified version of this program, I would like to hear this from you.
Addresses:
E-Mail: rsenden@cs.ruu.nl
Fidonet: 2:280/804.2054
Home: Ruud Senden
Nieuwendijk 72
3443 BN Woerden
The Netherlands
Europe
Giro-account:
Postbank NV
Amsterdam
The Netherlands
Account: # : 6281120
name : Ruud Senden
city : Woerden