DELSYS.EXE 2.1 by C-Cubed Software

One of the programs in this archive (DELSYS.EXE) uses the excellent
API for PowerBASIC for DOS 3.5 written and released by Gary Price of
Freejack's Software, the Home of the TriBBS BBS software. This API
(PBAPI10.ZIP) is released as freeware by Mr. Price. Two of the programs
in this archive (DELSYS.EXE and PREPARE.EXE) use routines from the
PowerBASIC for DOS 3.5 add-on library called "Quik Pak Pro." Mr. Price's
API may be downloaded on the Internet by going to: www.tribbs.com
The QPP Library is commercial software, and must be purchased from
PowerBASIC, Inc.

WARRANTY: None! This software is guaranteed to do nothing but take up
space on your hard drive. Clay C. Clear, and anybody else affiliated
or associated with C-Cubed Software, shall NOT be held liable or
responsible for any damages arising out of the use or misuse of this
software. To use this software, you must accept this disclaimer. You
use this software solely at your own risk.

REGISTRATION: None! Like all of my software, this program is released
as Freeware. This software does not use or require a registration
code or key file to work.

NOTE: This version is a bugfix to DELSYS.EXE 2.0A. The bug I found
through my own usage of the program is that, if a caller logged on
to my BBS and he was specified in the Node's configuration file, then
his calls were deleted. That's fine, and how it should be. BUT, *if*
somebody then logged on and dropped carrier right at the beginning of
their logon, or pressed <ENTER> five times in a row when the BBS was
asking for their First and Last Name, DELSYS.EXE 20A would go blithely
along and delete their calls from the BBS's data records. This is
because DELSYS.EXE uses the DOOR.SYS drop file. Well, since the last
caller never actually finished logging on, DELSYS.EXE read the drop
file from the LAST caller, who was specified to have his calls deleted.
This resulted in pretty strange results. For example, if the BBS hadn't
had any calls from regular users, and the Calls For Today was at "0",
DELSYS.EXE would set the Total Calls artifically back one call, and would
set the Calls For Today to "-1"! It would do the same for the caller's
records, if the sysop had selected that option. So, I recoded DELSYS.EXE
so it uses files to keep track of the last DOOR.SYS accessed. It keeps
this information in the files "NODE1.DAT" through "NODE???.DAT". This
has resulted in a change in the configuration files, so make sure you
read ALL of the docs! I also added PREPARE.EXE, which prepares these
.DAT files for first time use. Further information is given below.

WHAT IT DOES: This software is for TriBBS sysops who do not want their
logons logged by the BBS. The sysop may specify up to 20 individuals
that he does not want logged. This program will delete the specified
callers' calls from the Total Number Of Calls and the Total Number Of
Calls Today records. This is done on a per call basis (i.e., it doesn't
go through the callers.log or anything and subtract all the calls by the
specified callers). The sysop may also optionally specify that the
callers calls are deleted from the callers' Total Number Of Calls
and Calls For Today in the callers' records in the user databases.
This archive includes four executables: DELSYS.EXE (the main program),
DEl-LOG.EXE, which deletes the specified callers' temporary callers.log's
found in the Nodes' \NWORK directories, PREPARE.EXE, which prepares the
.DAT files for initial use, and SETCALLS.EXE, which allows the sysop
to manually set the Total Number Of Calls and Calls For Today for the
BBS, individual users, or all users. More detailed descriptions are
given below. DELSYS.EXE, PREPARE.EXE, and DEL-LOG.EXE all use the same
configuration files; you don't have to worry about having to make a
separate config file for each program.

CONFIGURATION FILES:

Each Node requires its own configuration file. The configuration files
can have any valid DOS 8.3 name. The format of the CFG files are as
follows:
Line 1: <path to the Main Node>
Line 2: <path to the Node In Use>
Line 3: <whether or not to also delete the users' calls from their
         records in the user databases, not just the BBS's calls>
Line 4: <Node number>
Lines 5 - 24: <names of people whose calls are to be not logged>

Example:
d:\tribbs\node1
d:\tribbs\node2
yes
2
Clay Clear
none
none
none
none
none
none
none
none
none
none
none
none
none
none
none
none
none
none
none

NOTE: ALL 24 lines MUST be there! If you don't have 20 users to put in
Lines 5 -24, enter "none" for those lines for which you don't want to
put anything. Please note that DELSYS.EXE will stop processing when it
reaches the first "none". Please note that the names of the users whose
calls are to be not logged MUST be their real names, NOT their aliases!
Also, the names for the calles as entered in the config files MUST
exactly match their names as recorded in the user databases!

DELSYS.EXE:

This must be run in the BETWEEN.BAT. To run it, place something like
the following in the batch file:

.
..
...
cd\utils\delsys    ;change to whatever directory you have placed your
                    config files & executables in
delsys node1.cfg   ;use whatever the config's file name is for the Node
                    that's running DELSYS.EXE
...
..
.

DELSYS.EXE will automatically maintain the .DAT files after PREPARE.EXE
is run.

Depending on the names specified in the config file, and who it was that
logged on, DELSYS.EXE will delete the caller's call from the BBS's
Total Number Of Calls and Calls For Today. If it were specified in the
Node's config file, it will also delete the caller's call from his
Total Number Of Calls and Calls for Today as recorded in the user
databases.

DEL-LOG.EXE:

This MUST be run in the GOODBYE.BAT file. This is because, after that batch
file is executed, the temporary callers.log found in the Node's \NWORK
directory is appended to the main callers.log found in Node 1's \MWORK
directory. In other words, by the time BETWEEN.BAT is run, it's too late
to delete the temporary callers.log. To use this program, put something
like the following in your GOODBYE.BAT file:

.
..
...
cd\utils\delsys     ;change to whatever directory you put the executables
                     and config files in
del-log node1.cfg   ;use whatever name you gave the config file for this
                     particular node
...
..
.


PREPARE.EXE:

This must be run in the same direcotry as the config files. Because of
this, I *highly* recommend that you put all the contents of this
archive in their own directory, so there is no confusion caused by
"stray" configuration files!

To run it, enter something like the following at the DOS Prompt:

prepare node1.cfg
prepare node2.cfg
etc.

You may also use DOS wildcards when specifying the configuration file
names.This will cause PREPARE.EXE to process all the config files in
one shot.

EXAMPLE:

prepare node*.cfg
prepare node?.cfg
prepare cfg.*
etc.

Please note that, once you have run PREPARE.EXE, you do NOT need to run it
again! The only exception would be if you put up a new Node. In all cases,
make SURE that there is a valid DOOR.SYS file in each Node's main directory!
If there isn't, the program will still work, but, the .DAT files for the
Nodes without them won't be created! the best thing to do before running
this program is to do a Local Logon to each of your Nodes so you KNOW
that there's a valid DOOR.SYS in each of them. If you add a new Node,
do a local logon to that Node, then run PREPARE.EXE again, but ONLY for that
Node! For example, say you just created Node 4, you would logon to Node 4
then run PREPARE.EXE as follows:

prepare node4.cfg
prepare cfg.4
etc.

Note that PREPARE.EXE *must* be run for the new DELSYS.EXE to work *if* you
don't want the old bug to appear one more time! If you're SURE that you're
not going to get the previously mentioned logon aberrations, then DELSYS.EXE
will create its own .DAT files the first time th new version is run. However,
I *strongly* recommend that you run PREPARE.EXE, to cover all eventualities!

SETCALLS.EXE:

This is a utility I wrote to let sysops manually set the Total Number Of
Calls and Calls For Today for the BBS, individual users, and all users,
in preparation for using DELSYS.EXE.

To use SETCALLS.EXE, it may be run from the DOS Path. Enter the following
at the DOS Prompt:

setcalls <path to Node 1's main directory> <whose records to adjust>
         <total calls> <calls for today>

EXAMPLE:

setcalls d:\tribbs\node1 "bbs" 316 0    ;sets BBS number of calls
setcalls d:\tribbs\node1 "clay clear" 1 0  ;sets individual user's calls
setcalls d:\tribbs\node1 "all" 1 0   ;sets ALL users' number of calls

Please note that the quotation marks around the recipient of the action
are required. Also note that it will nto except a number less than zero
for Calls for Today or a number less than 1 for Total Number Of Calls.

ADDITIONAL NOTES:

Make sure your BBS is completely down before running PREPARE.EXE, otherwise
the results may be unpredictable.

If you need to contact me to report bugs, etc., please refer to
CONTACT.DOC, also included in this archive.

Peace,

Clay C. Clear
C-Cubed Software

