Category : BBS Programs+Doors
Archive   : PCBV403.ZIP
Filename : PCBV40.DOC

 
Output of file : PCBV40.DOC contained in archive : PCBV403.ZIP





PCBVerify 4.00

Callback verification door software

Copyright (c) 1987-1992 By Curtis Kowalski

ALL RIGHTS RESERVED



INTRODUCTION
------------

PCBVerify is a door program written for PCBoard and other
bulletin board software which alleviates a Sysop's need to verify
his users by phone. PCBVerify takes over this job, calling users
while they are online at giving instantaneous verification and
access. Now your callers needn't wait for you to call them -
they can have PCBVerify do it automatically and raise their
access levels on their first call.

STANDARD "DEMO" LICENSE
-----------------------

PCBVerify is a Shareware program, and uploading of the code
to various bulletin boards and Shareware libraries is encouraged.
Several limitations must be implied, however:

1) Under no circumstances should the code be modified or
distributed in any other form than what it was originally
supplied by the author. The exception is that PCBVerify may be
compressed using techniques other than ZIP, but the de-compressed
form of PCBVerify must remain intact.

2) PCBVerify may not be redistributed in any manner other than
electronic file transfer unless cleared with the author
beforehand. No money may be received for PCBVerify except to
cover for telecommunications / service charges, and in such a
case the cost may not exceed $5.00 US.

PCBVerify may be run for a period of time adequate to allow
for full testing of the software. If, after running the code for
one month, you decide not to purchase the registration license
and number, you must forfeit this license and remove PCBVerify
from operation on your system(s). You may keep a copy online for
distribution purposes only.
PCBVerify may not be hacked or modified in ANY manner,
including but not limited to modifications leading to the use of
features intended for registered users only. These features are
marked in this documentation as "Registered Version Only." Also,
the registration license in non-transferrable and under no
circumstance may the registration number of another individual be
used to enable these features or for any other purpose.

REGISTRATION LICENSE
--------------------

1) Once purchasing the registration license, several features
are added and the license is extended for life. All future
releases of PCBVerify will be made available, registered, for no




additional charge. In any event that PCBVerify does not work
properly, the author, Curtis Kowalski, shall be liable for no
more than $20.00 US, and then only if an honest attempt was made
to contact the author and the situation remained unresolved.

2) Registering PCBVerify entitles the registering party access
to Premier BBS or whatever location that support is being
maintained. This privilege is guaranteed for as long as the
program is being developed and supported. Access may be
terminated if any rules or regulations of the bulletin board are
broken by the registering party.

3) The registration license is non-refundable and non-
transferrable without prior consent of the author, Curtis
Kowalski. The name of the bulletin board may be changed if
evidence is given that the board is truly changing names and in
such a case the old registration number may not be used under any
circumstances.

DISCLAIMER
----------

The author, Curtis Kowalski, takes no responsibility nor
liability for any data loss, incurred costs, or equipment damage
resulting from the use of PCBVerify, unless evidence can be given
to show that the code was written to do so intentionally.

BETA TESTING
------------

Beta testing is open to the general public. For all beta
copies the above disclaimer applies, since the purpose behind
beta testing software is to insure that no problems exist with
the software. Each version is extensively beta tested by the
general public, and alpha tested by the author on his own system.
Care is taken that PCBVerify is not released with any problems,
but please keep in mind that with the variety of configurations
possible it is difficult to catch some bugs. If you discover a
bug in PCBVerify, please contact the author and notify him
immediately.

CONFIGURING PCBVERIFY
---------------------

With version 4.0, no setup program has been prepared. The
reason is that usually it caused more problems than it solved and
because there was so much push for this new version. To
configure PCBVerify from scratch, see the below outline of the
PCBV.CNF file -- then use your favorite text editor to edit the
file. A sample file has been provided along with another that
you can use to create the file without the need to refer to the
documentation.
A new version of PCBVSET is being worked on which will allow
modification of the PCBVAL, PCBVNAL, etc. files in addition to
the .CNF file. This new PCBVSET will probably be called PCBVUTIL
and will include many options, such as purging the PCBVVER file
and so forth. Some serious enhancements are being planned for
PCBVUTIL.




PCBVERIFY CONFIGURATION FILE
----------------------------

Line Description Example
---- --------------------------------- ------------------------
1 Configuration file identifier PCBVerify 4.0 Config file
2 Comport to use COM1
3 Baud rate locking option N
4 SYS file location/name D:\PCB\PCBOARD.SYS
5 System type mode PCB14
6 Board name Premier BBS
7 Registration number 0
8 USERS (or RESULTS) file location D:\PCB\MAIN\USERS
9 LOG file location D:\PCB\MAIN\CALLER1
10 New user security level 10
11 Level to raise user to 40
12 Minutes to add to time limit 45
13 New D/L Byte limit to give user 32767
14 PCBVVER file enable? Y
15 Add ldist #s not verified to
PCBVVER? Y
16 External registration prg option N
17 Callback mode enable Y
18 Expiration date adjustment +365.25
19 New expired security level 10
20 Sysop maintained cmnt fld option Y
21 Standard phone number input mode Y
22 Delay time betw. hangup & dialout 12
23 Prompt for user name instead of
password? N
24 Callerid file user.tn
25 Status line foreground color 0
26 Status line background color 15
27 Default foreground color 7
28 Prompt input foreground color 7
29 Non-error correcting dial string AT&Q0DT
30 Error correcting dial string ATDT
----------------------------------------------------------------

Comport to use?
---------------

Tells PCBVerify which comport to use. Presently values valid are
COM1, COM2, COM3, and COM4. Also, xxxx:y format is supported,
where xxxx is the base address and y is the IRQ. Note that
FOSSIL drivers are not presently supported, as PCBVerify makes
use of Jeff Sumberg's (many thanks for Jeff for these drivers)
QBSERIAL routines which access hardware directly. Fossil support
is planned for the next version.

Baud rate locking option
------------------------

Tells PCBVerify if you want to lock in at a specific baud rate.
This option will be used if you are running PCB12SYS or PCB12
modes. Otherwise, the baud rate to open the port at will be read
from the .SYS file.





This field will accept "N" which means DO NOT lock in at a
specific baud rate. If you are locking the comport at a specific
baud rate, place the baud rate in this field. Baud rates from
300-115200 are supported.

SYS file location/name
----------------------

This tells PCBVerify where to find the .SYS file, whether it be
PCBOARD.SYS, DOOR.SYS, or PCBV.SYS.

System type
-----------

BE CAREFUL WITH THIS FIELD! IF YOU SET IT UP WRONG, YOU COULD
MESS UP YOUR FILES!

This tells PCBoard what type of system you are using. For non-
PCBoard systems, this tells PCBVerify whether you are using the a
PCBOARD.SYS file or a PCBV.SYS converter. System types are
listed below:

PCB12 - PCBoard 12.x
PCB14 - PCBoard 14.x
PCBSYS14 - PCBoard 14.x, with only the SYS file.
Users file is not used.
PCBOARD SYSTEMS, DO NOT USE!
THIS IS FOR NON-PCB SYSTEMS USING A CONVERTER.
PCBSYS12 - PCBoard 12.x, with only the SYS file.
Users file is not used.
PCBOARD SYSTEMS, DO NOT USE!
THIS IS FOR NON-PCB SYSTEMS USING A CONVERTER.

** NOTE **
Door.Sys support is not included in version 4.0 due to code space
difficulties. A program has been included to all conversion to
and from PCBV.SYS, however. See seperate file and docs for more
info. Use PCBVSYS if you are using a DOOR.SYS file and see
DOORSYS.DOC.

PCBVSYS - PCBV.Sys file.

Board name
----------

This is your BBS name. Enter it here EXACTLY as you want it to
appear on screen. This field is used when determining whether
your registration number is valid, so do not change it unless you
have acquired a new registration number or have not registered.
Note that PCBVerify uses this field to tell the user what system
is calling whenever a connection is made. For example, it will
say: "This is PREMIER BBS calling to verify..."




Registration number
-------------------

If this number matches the bulletin board name, registered
features are enabled. Note that if you have not paid the
registration fee, only a 0 may be entered here. This field is
keyed to the board name and will not work unless the board name
is the same as was used to generate the registration number.
Note that any combination of upper/lower case for the board name
may be used.

Location / name of USERS or RESULTS file
----------------------------------------

If you are running a PCBoard system, either PCB12 or PCB14 mode,
this field tells PCBVerify where your USERS file is located so
that it may update the user record.

If you are running in PCBSYS14, PCBSYS12, PCBVSYS, or DOORSYS
modes, this field tells PCBVerify what file to create if the user
is successfully verified. You may then use an external program
to check for the existence of this file and update the user
record if it exists.

Location / name of LOG file
---------------------------

This is the location and name of the file you want PCBVerify to
log its activity to. If running PCBoard, this should point to
the callers' log. Otherwise, this should be a file used
exclusively for PCBVerify, and the name must be different for
each node you are operating. Also, the log file that PCBVerify
creates SHOULD NOT be modified using a text editor as it will
disturb the record structure PCBVerify uses to read and write to
the file. The file is written in random access mode, with 62
characters per line plus CR/LF, for a total record length of 64
characters.

New user security level
-----------------------

This is the level the user must be in order to use PCBVerify's
verification mode. If the user is ANY other level, PCBVerify
will put him in the callback mode, meaning that his access will
not be modified. On systems where PCBVerify cannot acquire the
user security level (PCBSYS12 or PCBSYS14), it will assume that
the user is a new user. If callback mode is disabled, and the
user is not a new user, he will be returned to the board.

Security level of a VERIFIED user
---------------------------------

This is the level PCBVerify will raise the user to if his number
is successfully verified. On PCBSYS12 and PCBSYS14 systems, this
option will be ignored since there is no way for PCBVerify to
notify the BBS software of the new security since PCBOARD.SYS
does not have an entry for security level.





Minutes to add if user if verified
----------------------------------

PCBVerify will add this number of minutes to the users allowed
time on the system if verified. This will be written to either
PCBOARD.SYS, PCBV.SYS, or DOOR.SYS depending on which mode you
are running in.

New D/L Byte limit of user
--------------------------

This number will be substituted directly into the .SYS file you
are using if the user is verified. If your system takes the D/L
byte limit in K, enter this number in K. If it takes the D/L
byte limit in bytes, enter this number in bytes. For example, if
you are using PCBoard 12.x, and wish to set the d/l byte limit to
unlimited, enter 9999. For PCBoard 14.x, you would enter 32767.


Add number to PCBVVER after verifying?
(REGISTERED VERSION ONLY)
--------------------------------------

This option allows you to add each number verified to the PCBVVER
file, preventing a number from being verified more than once by
PCBVerify. This option will be ignored if you are running the
demo version of PCBVerify.

Add long distance number to PCBVVER even if not verified?
(REGISTERED VERSION ONLY)
---------------------------------------------------------

This option allows you to add numbers to PCBVVER that are long
distance if the user was not verified on the first attempt, to
prevent someone long distance from entering a number repeatedly
and running your bill up while attempting to get verified.

External registration program option
------------------------------------

Enter "N" in this field if you do not want PCBVerify to branch to
another program if the users' phone number is included in your
PCBVAL file. Otherwise, enter the name of the file you wish to
create when branching is necessary. See the section on 'external
registration doors' later in this documentation for further
details.

Callback mode option
--------------------

If a Y is placed in this field, PCBVerify will allow local
callers who are not new users to use the 'callback mode' which
simply allows the user to be called back. Reversing the
originating and receiving modem often will clear up line noise
problems.





Expire date adjust
------------------

If you are using a system which uses expiration dates, you may
set PCBVerify to add a certain number of days to the current
expiration date or you may hard-code an expiration date in this
field. Whenever a user is verified, his expiration date will be
updated with the information contained in this field. Either
enter +[number of days to add to expdate] or [yymmdd] in the
field.

New expired security level
--------------------------

This fields holds the new expired security level to give the user
upon verification.

Sysop maintained comment field
------------------------------

This field is for PCBoard 12.x and 14.x systems only. If you
place a "Y" in this field, PCBVerify will write the phone number
the user was verified at and "PCBVERIFY" in the Sysop maintained
comment field in the USERS file.

Separate phone number entry prompting
-------------------------------------

This field, if it contains a "Y", causes PCBVerify to prompt for
the areacode, prefix, and suffix separately. If you wish for
PCBVerify to prompt for the number in one prompt, enter "N" in
this field. Note that an explanation of where to place dashes
should be included in your WELCOME and CALLBACK files if you
place "N" in this field. The "N" option is generally for systems
not located in North America which use something other than the
3-digit area code, 7-digit phone number.

Delay time before dialing out
-----------------------------

This is the time, in seconds, that PCBVerify will between hanging
up and dialing out. In most phone systems, the caller usually
must hang up first. If the receiver of the call hangs up first,
and the caller stays on the line, it may take up to 15 seconds
for the call to be disconnected. If PCBVerify were to
immediately pick up the line to call out, it would be possible
for the caller to stay on the line and play a recording of a dial
tone, then hit ATA on their modem and fool PCBVerify and your
modem into thinking a call had actually been placed when the
first had actually never been disconnected. To prevent this,
check with your phone company and find out how long it would take
to disconnect a call if the receiver of the call hung up first
and the originator stayed on the line. You should place that
amount in this field to insure that the call has been
disconnected before the modem picks back up on the line again.
Generally, this is 12 seconds, but may vary with newer and older
phone systems.





Password / name prompt
----------------------

Some systems cannot supply the users' password to PCBVerify. If
this is the case, you can set PCBVerify to prompt for the user's
first and last name instead of his password. Enter Y in this
field if you want PCBVerify to ask the user's first and last
name, otherwise enter N to have PCBVerify prompt for the
password.

Callerid file
-------------

If you have a driver setup on your system which supports
callerid, PCBVerify can communicate with it using a simple file,
which you should place in this field if available. An example of
a way to implement this would be to have a callerid unit attached
to a second serial port with a TSR running and checking it
constantly for a phone number. If a phone number is found on an
incoming call, the file is created and contains a single line
with the phone number info (as it would normally be entered into
PCBVerify, e.g. 615-588-9407). If no phone number was detected
(for example, a long distance call coming in) the file should be
deleted. Place N on this line if you do not use CALLERID.

Colors
------

PCBVerify allows color settings for both the status line
foreground and background, and for default text and input colors.
These are pretty self-explanatory, see the above list for the
order they appear in the config file.

Dial strings
------------

The last two entries are PCBV's dial strings, which are no longer
placed in PCBVAL. The first is used when a call is non-error-
correcting. If you have an error-correcting modem, you may have
noticed that when calling a non-error-correcting modem, alot of
garbage shows up on the receiving end. By placing a command to
disable error-correction, the garbage can be avoided. On a Hayes
modem, for example, the first command would be AT&Q0DT. The &Q0
command turns off the error-correction, so that the user would
not receive garbage. Once the system recycles for the next call,
be sure that it turns this back on, either by doing a modem reset
or by forcing the command AT&Q5 (or whatever the two commands
might be for your modem).

The second line is for error-correcting modems -- it should be a
plain simple ATDT and anything else you might want to add.





OPERATING PCBVERIFY
-------------------

To call up PCBVerify, several options may/must be used.
Generally, the command is as follows:

PCBV40 [config file]

If you are running under a network or multi-tasking environment,
add the "/NETWORK" switch after the config file.

If you are running under a system where PCBVerify cannot locate
the user's security level, you can set up a separate copy of
PCBVerify invoked with the "/CBMODE" switch which will force
callback mode and inhibit updating of security level/time limit
etc.

Examples:

PCBV40 PCBV.CNF
PCBV40 PCBV.CNF /NETWORK
PCBV40 PCBV.CNF /NETWORK /CBMODE


PCBVERIFY BATCH FILE
--------------------

When calling up PCBVerify, you may want to include several other
lines in addition to actual command to bring up PCBVerify. For
example:

1. if exist XREG1 del XREG1
2. if exist RESULT1 del RESULT1
3. PCBV310 PCBV.CNF /NETWORK
4. if exist RESULT1 UPDATE
5. if exist XREG1 XREGDOOR

Lines 1 & 5 are used if you are running with the external
registration door option. If the file XREG1 is left over from
the last time in the door, line 1 deletes it. Line five runs a
program called XREGDOOR if PCBVerify has created the file XREG1,
signalling the batch file that the external registration program
should be run. If the user's phone number were not allowed for
some reason, XREGDOOR could be run to allow the user to fill out
a script, etc.

Lines 2 and 4 are used only for non-PCBoard/PCBV.SYS systems.
If PCBVerify cannot update the users security level using
PCBV.SYS, DOOR.SYS, or USERS (PCBOARD.SYS does not support the
security level field) PCBVerify creates a file called RESULT1,
which is deleted at line 2 if left over from a previous
verification. If the file is created by PCBVerify, line 4 runs a
program called update which would then update the users security
level. The name of this file is controlled by CNF entry #8.





PCBV.SYS FILE INFORMATION
-------------------------

PCBVerify has a special file format that can be used to interface
with it that allows all information needed to be transferred
easily. By writing a two-way conversion utility which reads from
and writes to PCBV.SYS, PCBVerify can pass and retrieve all
necessary information from the bulletin board package being used.
A number of utilities for RBBS have already been written,
allowing PCBVerify to do a full upgrade of security, time limit,
and expiration date and security levels. The conversion package
reads in the necessary info from the doors information file,
writes it to PCBV.SYS. PCBVerify then reads PCBV.SYS and
proceeds as usual. When exiting, PCBVerify writes the new
information to PCBV.SYS. The conversion utility is then invoked
again and this time reads PCBV.SYS and writes the information to
the USER database, etc. to reflect any new changes.

PCBV.SYS is a sequential text file in the following format:

Line Description
---- -----------
1 CPU to modem baud rate (or the word "LOCAL")
2 Modem to mode baud rate (or the word "LOCAL")
3 Graphics mode (Y or N, or 7 for 7-e-1 operation)
4 First name of caller
5 Caller's first and last name
6 Caller's password
7 Page length of caller
8 Caller's security level
9 Caller's time available on system
10 Caller's D/L byte limit
11 Caller's EXPIRED security level
12 Caller's expiration date in yymmdd format


MULTI-NODE OPERATION
--------------------

PCBVerify performs share-compatible read/writes with all files
unless specified as being non-network compatible files. In the
event the files are not network compatible, your configuration
for each node must specify a different filename. Usually, the
best method of doing so is to pick a base filename and append a
1,2,3 etc. to designate the node that file belongs to. The files
non-network compatible are listed below:

SYS file (PCBoard.Sys, PCBV.SYS, etc.)
LOG file (PCBV.LOG, CALLER1, CALLER2, etc.)
RESULT file (non-PCB systems)
XREG file (external registration file)

Each node requires a different .CNF file, so you should run
PCBVSET for each node you have in operation. Be sure to include
the /NETWORK switch after the configuration filename when
invoking PCBVerify.





FILENAMES
---------

PCBVerify requires that several files reside in its home
directory for it to operate properly. They are:

WELCOME - Initial user instructions (verification)
CALLBACK - Initial user instructions (callback mode)
IDVERIFY - Initial user instructions (verification by callerid)
IDCALLBK - Initial user instructions (callback w/callerid)
DIALOUT - Last instructions before PCBV hangs up to call
GOODBYE - Goodbye message (informs user of new sec. level)
PCBVTEXT - File containing all text messages that appear

If you are running PCBoard in the multi-lingual mode, you may
translate the above four files for each language as well. For
example, if you are running French and have translated the above
files into French, store the files in the PCBVerify directory
under [filename].FRE.

*NOTE* If you are capable of translating the above files into
any other language besides English, it would be greatly
appreciated if you would send these files to Premier BBS (615)
588-9407. By the same token, if you are looking for
translations, you are welcome to check Premier BBS. I have, as
of right now, only German and Finnish translations, but am
looking for more, especially French. I am also looking for
updated translations, as the ones I have are for older versions
and newer prompts have been added.

PCBVAL - Allowed numbers file
PCBVNAL - Not allowed numbers file
PCBVTIME - Time formats file
PCBVVER - Verified numbers file

The above files are described in detail below.


PCBVVER FILE
------------

No initial setup is required for the PCBVVER file. This file is
where PCBVerify stores all numbers which have been verified.
They are stored as follows:

"[number]","[name of user]","[date] [other notes]"

Please note that this file does not accept wildcard characters as
did the old PCBVTC file. This was done in order to speed up
verified number checking. If you had entries in your PCBVTC file
that contained wilcards, they should be moved into the PCBVNAL
file (explained below).





PCBVNAL FILE
------------

The PCBVNAL file is used to store numbers that you do not want
PCBVerify to dial. Here you should place your own BBS numbers as
well as the numbers of other local boards and computer services,
etc. Also, it is recommended that you place an entry in this
file for the 976 and 1-900 numbers. Wildcard characters (?
marks) can be used for any digit of the number or for the second
parameter (the user's response when asked if the number is long
distance).
The file works as follows:

[number],[ldist flag]

Examples:

615-522-2498,Y (615-522-2498, if user says long dist)
615-522-2499,N (615-522-2499, if user says local)
615-123-4567,? (615-123-4567, local or long dist)
615-???-????,N (any 615 number if user says local)
900-???-????,? (blocks out all 900 numbers)

Usually you will want to use the question mark in the ldist flag
field.

PCBVAL FILE
-----------

The PCBVAL is the most complicated file that PCBVerify uses. It
helps PCBVerify determine whether or not to dial a certain
number, when that number can be dialed, and how to handle that
call once connected.

PCBVAL should always be built with most specific entries at the
beginning. For example, if you wanted PCBVAL to handle a
specific number in area code 615 seperate from all others, you
would want to do the following:

615-555-1212,N,N,A,"%2-%3"
615-???-????,N,N,B,"%2-%3"

In this case, PCBVerify reaches a match for the 555-1212 number
first, so it handles it differently than the second line, which
would be used for ANY 615 number.

Load your favorite editor and edit the file PCBVAL. Here's an
example to help explain how PCBVAL is used and set up:

???-???-????,N,N,A,"%2%3"
--- --- ---- - - - -----
| | | | | | |
| | | | | | +--------- 7. How to dial number
| | | | | +------------ 6. Time letter
| | | | +-------------- 5. User ldist flag (Y/N/?/?Y/?N)
| | | +---------------- 4. Disconnect flag (Y/N)
| | +--------------------- 3. Number parm. 3
| +------------------------- 2. Number parm. 2
+----------------------------- 1. Number parm. 1





The above is a sample of the USA/Canada phone number conventions.
International setup is only slightly different and samples are
given below. Listed below is a description of each field.

1. Area code. First section of the phone number entered by the
user. In international mode, all the digits up to the first "-".

2. Prefix. Second section of the phone number entered by the
user. In international mode, all digits after the first "-" and
before the second "-".

3. Suffix. Third section of the phone number. In international
mode, all digits from the second "-" to the third, or in this
entry's case, all digits from the second "-" to the end.

You may have up to nine parameters in your phone number entries
in PCBVAL. Each field is seperated by a dash. If you are using
PCBVerify in the USA or Canada, you needn't worry about this.
Otherwise, you will need to customize your PCBVAL file to reflect
the way phone numbers would look in your country.

4. Disconnect flag. This flag tells PCBVerify whether to hang
up after verifying this number or return the user to the board.
If you are being charged by the minute for the phone call to this
number, you should place Y here to disconnect the user and force
him to call back on his dime - otherwise he would be returned to
the board where he could download a meg. of files and you would
end up paying the bill. Placing an N here would return the user
to the board. Also, in callback mode, PCBVerify will only allow
numbers which have a disconnect flag of "N" to be called, since
the purpose in callback mode would be defeated if PCBVerify
simply hung up and the user had to call back again.

5. User-entered long distance flag. Aids you in hitting the
correct entry in PCBVAL. For example, if you lived in Tennessee,
you might have two entries as below:

615-???-????,N,N,A,"%2%3"
615-???-????,N,Y,A,"1-%2%3"

PCBVerify would dial prefix-suffix if the user said it was local,
otherwise it would dial a 1 before the prefix and suffix of the
phone number.

Using the ?/?Y/?N conventions, you can set PCBVerify up to skip
asking the user if the call is long distance. For example,
consider the below:

615-588-????,N,?,A,"%2-%3"
615-522-????,N,?,A,"%2-%3"
615-???-????,Y,Y,B,"1-%2-%3"





After the user entered the phone number, but before he/she is
asked if long distance or not, the file is checked for a match in
the number field with a ?/?N/?Y in the user-entered ldist flag
field. If a ? is found, the number is assumed either local or
long distance depending on the disconnect flag. If a ?Y is
there, the call is displayed as being long distance regardless of
the disconnect flag. ?N does the opposite. Note that use of the
?N/?Y flags are solely for displaying the number back to the
user, and have nothing to do with how the call is handled.

In the above setup, if a user entered something like 615-232-
2345, PCBVerify would reach the third line before finding a
match. Once it did, it would note the "Y" in the ldist field, in
which case it would stop and ask the user. You could also make
the last line as follows:

615-???-????,Y,?,B,"1-%2-%3"

That would force any number that began with 615 and anything
other than 588 or 522 to be long distance. I would recommend
using this only if you are certain your entries listing valid
prefixes for your area is complete. Otherwise, a local caller
whose number was not found above this line would not be able to
get a callback because PCBVAL told PCBVerify the # was long
distance when in fact it was local.

A good way to set up your PCBVAL file is as follows:

aaa-ppp-????,N,?N,A,"%2-%3"
aaa-???-????,N,N,A,"%2-%3"
aaa-???-????,Y,Y,B,"1-%2-%3"
???-???-????,Y,?Y,B,"1-%1-%2-%3"

The first line is repeated for however many prefixes you have in
your local calling area. The second and third line allow
PCBVerify to ask the user if the call is long distance, in case
his number wasn't listed in the prefixes above. The 2nd line
handles the call if the user said it wasn't long distance, the
third handles it if he said it was. The fourth line handles
anything else, and assumes automatically that it is long distance
and out of your area code.

I would, of course, add 800-???-????,N,?N,A,"1-800-%2-%3" to the
file to handle 1-800 numbers as a local call and without asking
the user.

6. Time letter. This letter (A-Z) tells PCBVerify what times to
allow this number to be dialed. See the section on the PCBVTIME
file later in this documentation.

7. Dial command. This is the dial string to use for numbers
matching this PCBVAL entry. Each field in the phoe number is
seperated by a dash. USA/Canada numbers have an area code,
prefix, and suffix, for a total of three fields. Field 1 is area
code, etc. To send a part of the phone number in your dial
command, use % followed by the field number. For example, %2%3
would dial prefix-suffix. 1-%1%2%3 would dial 1-areacode,
prefix, suffix.





The new PCBVAL format allows PCBVerify to operate with a number
of different phone systems. You can even set PCBVerify up to
allow entry of extension numbers. For example, if you are on a
PBX system, you can set PCBVerify up to take phone number entry
on one line (line 21 of PCBV.CNF file) and include instructions
in the WELCOME and CALLBACK files telling users to simply enter
their extension number if they are within your business/company,
etc. For example:

Number? 1456 User is at extension 1456, so he enters that.

PCBVAL file:

????,N,N,A,"%1"
615-???-????,N,N,A,"99-%2-%3"

PCBVerify finds line one, which matches the user's entry, and
dials the extension number straight out. If the user enters a
regular phone number, such as 615-595-8108 in the format ac-pfx-
sfx, PCBVerfify dials 99 followed by the prefix and suffix.

Thoroughly confused? Here's a couple of examples to help you
through this. Believe me, it's as hard to explain as it is to
understand !!

Case 1 : Sysop in US, East Tennessee (I'm familiar with this one)

* This example is for those who do not care to keep a list of
local prefixes

If the Sysop wanted only to call local callers, and none others,
he would enter:

615-???-????,N,N,A,"ATDT %2-%3"

The 615-???-???? and N in the long distance field tells PCBVerify
to use any number in the 615 area code in which case the user
enters "no" to the question as to whether or not his number is
long distance. PCBVerify would then return the user to the
board, use time letter A, and would dial the second and third
fields in the phone number (prefix-suffix).

If I wanted to add long distance callers inside of 615, I could
add this line:

615-???-????,Y,Y,A,"ATDT 1-%2-%3"

If a user enters any 615 number and says "yes" it is long
distance, PCBVerify will stop at this line. This line tells
PCBVerify to disconnect after verifying, use time letter A, and
dial the number as 1-prefix-suffix.

To add long distance outside of Tennessee, the final line would
be:

???-???-????,Y,Y,A,"ATDT 1-%1-%2-%3"

This line tells PCBVerify to take any number in any area code, if
they said it was long distance, and disconnect the call after




verification is completed. It will use time letter A, and would
dial the phone number as 1-areacode-prefix-suffix.

You can change the ATDT to include any strings you wanted. For
example, if you wanted to dial a long distance company access
code before dialing an out-of-state number, the above line could
be as follows:

???-???-????,Y,Y,A,"ATDT 10288-1-%1-%2-%3"


Case 2: A sysop outside of the USA/Canada

Okay, now, lets take a case where your phone system is a bit
different from that in the USA/Canada area...

First of all, you will need to set PCBVerify up to take the phone
number in one prompt. This question is asked in PCBVSET. If you
accidentally set PCBVerify up to prompt for the USA/Canada 3
digit areacode, 7 digit number, you can change this option.
Simply load your favorite editor and edit your configuration file
line 21 to say "N". Then modify the WELCOME and CALLBACK files
to tell your callers to carefully enter their phone number in the
format that you will set up your PCBVAL file to take. In this
example, it would be [two digit city code]-[five digit number].

Say you have a five digit phone number, and a two digit city code
to deal with. You live in city code 21, and all calls made
inside of that area are toll-free. To call someone in your own
city/area, you simply dial their five digit number. Your first
line would be:

21-?????,N,N,A,"ATDT %2

PCBVerify will use this entry if the user said the call was local
and entered a 21 followed by a dash and any five numbers. It
would stay online and return the user to the board after
verifying, and would simply send ATDT [five digit #] to the
modem.

Now, let's say that the other city codes are toll calls, but you
want to include them as well. To dial someone in another city,
you simply dial [city code]-[phone #]. Your next line would be:

??-?????,Y,Y,B,"ATDT %1-%2"

PCBVerify would take any number the user entered if it started
with any two digits, followed by a dash, and then any five
digits. It would dial the number as [first two digits]-[last
five digits] and would disconnect the user after verification was
complete.

PCBVAL includes many, many possibilities for configuration. If
you have any questions at all about setting up PCBVAL or any part
of PCBVerify, please leave a message at Premier BBS through
RelayNet DOORS conference (node id ->PREMIER) or on the board
direct @ (615) 522-2498.





PCBVTIME file
-------------

The PCBVTIME file is used to define periods of time in which
various phone numbers may be dialed. In PCBVTIME you assign a
letter, A-Z, to a period of time. That letter is used in PCBVAL
to tell PCBVerify when that phone number can be dialed. The file
is laid out as follows:

[letter],[weekday start],[weekday end],[weekend start],[weekend
stop]

For example:

A,00:00,24:00,00:00,24:00
B,23:00,07:00,23:00,17:00
- ----- ----- ----- -----
| | | | |
| | | | +------ Weekend stop (Sunday)
| | | +------------ Weekend start (Friday)
| | +------------------ Weekday stop
| +------------------------ Weekday start
+---------------------------- Letter used in PCBVAL

Line 1 allows any PCBVAL entry with time letter A to be dialed 24
hours. Note that for midnight, the start time should be 00:00
while the stop time should be 24:00. This will help PCBVerify
determine exactly when to stop and start allowing the numbers
with that letter to be dialed. Times should always be entered in
24 hour format.

Line 2 allows PCBVAL entries with letter B to be dialed between
11:00 PM and 7:00 AM through the week, and from 11:00 PM Friday
through 5:00 PM Sunday, and starting again Sunday night at 11:00
PM. This entry allows the number to be dialed only when the
rates are cheapest.

Note that on the unregistered copy, PCBVerify will not read the
second line of the PCBVTIME file.

PURGE UTILITY
-------------

PCBVerify now has a small purge utility for PCBoard sysops who
would like to clear the PCBVVER file of any users that no longer
exist in the USERS file. First, the USERS file for PCBoard must
be purged to insure that all deleted users have been removed.
Then, from the PCBVerify directory (where your PCBVVER must
reside) run PURGE as follows:

PURGE [index file directory]

Example: PURGE D:\PCB\MAIN

This tells PCBVerify to remove any users from PCBVVER that are
not found in the index files in the D:\PCB\MAIN directory. Note
that if the index files are not found, the entire PCBVVER file
would be purged. A backup file is made, however, so if you give
it the wrong directory, don't worry.





REGISTERING PCBVERIFY
---------------------

In order to register PCBVerify, either fill out the registration
form at the end of this document and send it with a check or
money order for $20.00 to the address given below, or call
Premier BBS at (615) 522-2498/99 and register by credit card.
Visa, Mastercard, Discover, and American Express are accepted.

PCBVerify's price has increased and the new price of $20 will
take effect on March 1.

To register on Premier BBS, type DOOR 5 at the Main Board Command
prompt. Then follow the prompts entering your board name,
address, phone numbers, etc. You will be given a registration
number while you are online.

Why register? PCBVerify is Shareware program, meaning you are
licensed to use it for a limited period of time, after which you
must stop using it or register your copy. If you register, the
enhanced features will be activated, you'll have a clear
conscience, and lifetime technical support. Once you've
registered PCBVerify, you will be given a registration number
which activates the registered copy of the software. No
downloading of additional software is required. Also, once you
have registered, you will be able to use all new features and
future releases of PCBVerify as well.

PREMIER BBS
-----------

Premier BBS has once again changed phone numbers, and I have
changed addresses as well. The new information is listed below:

Premier BBS / PCBVerify Tech Support
(615) 588-9407 (2400, rings both nodes)
(615) 588-9425 (14400 baud v.32bis)

The new address is:

Curtis Kowalski
PCBVerify Registration
2312 Vincinda Circle
Knoxville, Tn. 37924

To gain access or register online, you will need to call between
5PM and 8AM or on the weekend, and use PCBVerify to get verified
first. Unfortunately, this had to be done because of a few
dishonest individuals.




PCBVERIFY REGISTRATION FORM



Sysop name: ___________________________________________

Address : ___________________________________________

___________________________________________

Home phone: __________________

Board(s) to register: (EXACTLY as you want it to appear on screen)

____________________________________ Phone: _______________

____________________________________ Phone: _______________

____________________________________ Phone: _______________


May your check / money order payable to Curtis Kowalski for $20
(US funds only please) and mail to:

Curtis Kowalski
PCBVerify Registration
2312 Vincinda Circle
Knoxville, Tn. 37924

You will receive your registration number by mail in a few days
after I receive your form. If you do not hear anything after
approximately 3 weeks, please contact me at Premier BBS,
(615)588-9407/25.



  3 Responses to “Category : BBS Programs+Doors
Archive   : PCBV403.ZIP
Filename : PCBV40.DOC

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/