home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
World of Ham Radio 1997
/
WOHR97_AmSoft_(1997-02-01).iso
/
packet
/
pbbs
/
w0rli
/
w0rli_03
/
amsoft.iii
next >
Wrap
Text File
|
1997-02-01
|
8KB
|
180 lines
RLIMAIL Version 2.10 05/15/90
(C) 1990 R. J. Farrell, WB2COY - All Rights Reserved Page 1 of 3
RLIMAIL is a program written in BASIC which will analyze the MAIL.MB
file from a W0RLI PBBS system (Version 6.05 and above), generate a
report, and send it to the display, printer, or save it to a file.
Note: If you want to run the BASIC code under the BASIC interpreter,
you MUST specify the following when starting BASICA:
BASICA /S:512
Then LOAD"RLIMAIL and RUN
The compiled program can be run by simply specifying RLIMAIL
at the DOS prompt.
This program was born out of a desire to be able to get a printout of
the entire message header database for the purpose of doing some
housekeeping. There is no provision in the W0RLI code to have the
message list sent to a file or to the printer. RLIMAIL simulates the
BBS environment offline and provides this function.
You should run the program offline using a backup copy of your MAIL.MB
file (you do make backups regularly, right?). The program will prompt
for a Mail database filename. The default is MAIL.MB, so just hitting
<Enter> will give you the default. You may also specify a filename and
extension, if you save your backup copies using a different naming
convention.
The program will support the listing of messages in the following ways:
(A)ctive ------- all active (unkilled) messages
(K)illed -------- killed messages only
(D)ate ---------- all active messages on a specified Date
(R)ead ---------- all messages that have been read (Status of Y)
(O)ld ----------- all messages flagged as OLD
(H)eld ---------- all messages flagged as HOLD (Status of H)
(F)orwarded ----- all messages flagged as Forwarded (F)
(B)ulletins ----- all messages marked as 'B' type messages
(T) NTS Traffic - NTS traffic messages only
(>) TO ---------- Messages addressed TO Callsign
(<) FROM -------- Messages addressed FROM Callsign
(@) AT ---------- Messages addressed AT Callsign
(?) Find Text --- Messages containing text string in Subject field.
A secondary prompt for a Callsign will be made in the case of the (<),(>)
and (@) search types. This may be a valid callsign, or a Mnemonic, such
as ALL, RLIBBS, etc.
The (D)ate option will prompt for the date in the format MMDD.
For the (?) Find Text search type, you will prompted to enter the text
to search for. This entry is case Insensitive.
You will then be prompted to choose the output device type:
<H>ardcopy <F>ile or <D>isplay (H F or D) ?
RLIMAIL Version 2.10 05/15/90
(C) 1990 R. J. Farrell, WB2COY - All Rights Reserved Page 2 of 3
The default is Display, so just hitting <Enter> will provide a display
to the screen only. Answering H will result in a hardcopy printout only,
(make sure your printer is on), while answering F will save the output
into a filename using the following table:
Active Messages - RLI-ACT.RPT
Killed Messages - RLI-KILL.RPT
Read Messages - RLI-READ.RPT
Old Messages - RLI-OLD.RPT
Held Messages - RLI-HELD.RPT
Forwarded Messages - RLI-FWD.RPT
Bulletins - RLI-BULL.RPT
NTS Messages - RLI-NTS.RPT
Messages TO, FROM or @ a callsign or mnemonic will be saved with a
filename matching what was entered at the Callsign prompt. For example,
if you answered the prompt with AMSAT, then the filename AMSAT.RPT will
contain the output report. Find Text will save into RLI-MAIL.RPT
RLIMAIL will generate a report using the following header:
Msg # NR Stat Size To From @ BBS Date Subject
Msg # = message number
NR = Number of times this message has been Read
Stat = message statistics (see example)
Size = size of the message file in bytes
To = whom the message was addressed TO
From = whom the message was FROM
@ BBS = whom the message was addressed AT
Date = date the message was left on the system (MMDD)
Subject = first 32 bytes of subject field
Some typical output would look like the following: (This example shows
Killed messages)
W0RLI Mail File Read Utility - WB2COY - 12-19-1988 - 14:18:30
Msg # NR Stat Size To From @ BBS Date Subject
8861 1 BKF 785 ALL N1API N1CUI 0211 ARRL SB 354
8849 3 BK 1138 ALL W3IWI MBLBBS 0210 It's a Girl
8767 2 BK 1740 ALL W1AW ARL 0206 ARRL Propagation Forecast
8542 15 BK 444 ALL WA2MMX 0204 FOR SALE
I find the 'NR' field very useful when determining if an old bulletin or
message should be deleted for cleanup purposes, and in determining how
much activity certain types of messages have. If nobody is reading
bulletins addressed @FINOGA, then why continue to keep them around?
The program BASIC source code is included. Feel free to modify it in
any way. I will make an attempt at keeping the program functional for
later releases of the W0RLI PBBS code. I would be interested in
receiving any major functional enhancements that are made by other
Sysops. I do not profess to be an expert in BASIC. Others may find
better or more efficient methods for accomplishing the same results.
To quote an old saying: "There's more than one way to skin a cat."
RLIMAIL Version 2.10 05/15/90
(C) 1990 R. J. Farrell, WB2COY - All Rights Reserved Page 3 of 3
The following information may be useful to others who want to modify or
enhance this program. Most of this info was determined by trial and
error. There are no published functional specs for the database.
For purposes of this program, I am concerned with only the first 132
bytes of each record. Additional information, such as BID, Distribution
list data, etc., will be found in the remainder of the record.
-
- The MAIL.MB database consists of 512 byte records
- The database is structured such that the most recent entry is
at the end of the file.
- The first record of the database does not contain any message
data.
- For each valid record, the following structure is found:
Byte(s)
0,1 - database relative record number (*)
2,3 - # times message has been read (*)
4,5 - actual message number (*)
6,7 - message size in bytes (*)
8 - message type (B,T,P - plain text)
9 - message status (coded HEX) see table in source code
10-15 - TO field (plain text)
16 - null (00) separator
17-22 - FROM field (plain text)
23 - null (00) separator
24-29 - @BBS field (plain text)
30 - null (00) separator
31-36 - Date (YYMMDD)
37 - null (00) separator
38-41 - Time (HHMM)
42 - null (00) separator
43-48 - Originating BBS
49 - null (00) separator
50-51 - message number at Originating BBS (*)
52 - null (00) separator
53-132 - subject field (80 bytes)
(*) stored as a string variable
73 - Bob, WB2COY @ WB2COY - Poughkeepsie, NY