home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
rtsi.com
/
2014.01.www.rtsi.com.tar
/
www.rtsi.com
/
OS9
/
OSK
/
TELECOM
/
OSKBox.lzh
/
MAILBOX
/
CC
/
DOCS
/
msgproc.doc
< prev
next >
Wrap
Text File
|
1993-03-02
|
5KB
|
129 lines
NAME:
msgproc - packet BBS message processor
AUTHOR:
Eric Williams WD6CMU, wd6cmu@netcom.com
SYSTEM CONFIGURATION:
OS9/68K, MW C v2.0
SYNTAX:
msgproc [<options>] <message #> ...
DESCRIPTION:
msgproc is executed each time a new message is received by the OSKbox BBS
system. It is forked by either mailbox or suck and is normally run detached
from the parent process at a reduced priority of 100.
Options to msgproc are:
-b Sender is a BBS
-s Sender is a sysop
-q Supress output of messages
-d[d...] Provide debugging output (more d's yield added info)
msgproc obsoletes the following programs: redirect, dateusa, bidscan,
killer.
msgproc provides several different message processing functions and can
be modified for site-specific requirements. Listed below are typical
operations:
MESSAGE COPYING
Certain messages may require production of duplicate messages. A common
example is that of a message to all local sysops which would be copied to the
sysop's call.
MESSAGE HEADER PROCESSING
Several types of processing need to be done on the basis of the
forwarding headers added to the message by other BBSs. Some of these
functions are:
If a bulletins is missing a BID, reconstruct one using the originating
BBSs callsign and message number.
If a message has passed through this BBS more than once before,
place it on hold for sysop review. Send a notifying message to sysop.
If a bulletin has already passed through some of the BBSs in the
bulletin's distribution list, mark the message so forwarding is not
attempted to those BBSs.
If a message is of a particular type and its age as determined by the
origination date is beyond a set limit, kill the message.
MESSAGE FIELD EDITING
The sysop can specify the characteristics of messages of interest,
as well as the modifications to be made to its various fields. The file
"hold.lst" in the DISDIR directory is read to obtain the parameters for
selecting and editing: each line in the file contains one or more tests,
and one or more field modification specifications. All of the tests
must succeed for the specified modification(s) to take place. Each test
consists of a single word separated by white space. The following tests
are available:
>ADDR The TO field of the message matches ADDR
<ADDR The FROM field of the message matches ADDR
@ADDR The BBS field (stripped of H-address) matches ADDR
TC The message type matches C (single letter)
$PREFIX The prefix of the BID field matches PREFIX
LWORD The title field contains the word WORD (case insensitive)
-B The station sending the message is a BBS
-S The station sending the message is a sysop
The tests above can also be preceeded by the character '!', in which
case the test is negated. One or more test fields are followed on a
line by the separating symbol ":", followed by one or more modification
specifications, which may be any of the following:
>ADDR Modify the TO field of the message to ADDR
<ADDR Modify the FROM field of the message to ADDR
@ADDR Modify the BBS field of the message to ADDR
TC Modify the message type field to C (single letter)
RC Modify the message status field to C (single letter)
More than one modification specification can be on a line, separated by
white space. Changing a message's status to 'X' will kill the message.
Changing the status to 'H' will place it on hold, and a message to
<MYCALL> notifying the sysop of the hold is sent by msgproc under the
callsign "MPROC". An example hold.lst might be:
<WA6LID TB : RH
>FBB : RX
$RTDX : RX
$ARL !>ARRL : >ARRL
>4SALE : >SALE
>SELL : >SALE
TB @ALLUS LSALE : >SALE
WHITE PAGES LOOKUP
When the White Pages (WP) system is available, messages that have a blank BBS
field are checked against the WP database for correct address.
HIERARCHICAL ADDRESS BUILDING
If the BBS field of a message does not contain a hierarchical address
(eg: WD6CMU.#NOCAL.CA.USA.NA), the list of BBSs in the files in the
/dd/MAILBOX/STATEBBS directory are scanned. (The files contain one
callsign per line starting in the first column, the rest of the line is
ignored.) If found, the BBSs H-address is built using the filename of
the STATEBBS file it was found in. The character '_' in the filename
will be translated into the local address designator character '#'. In
the above example, the callsign "WD6CMU" would appear on its own line in
the file "_nocal.ca.usa.na" in the STATEBBS directory.
BUGS: