Automated Verification Algorithm A true callback verification door for QBBS (c) 1989 by Cat Miller This program is supported by: Cat Miller Off-The-Wall Programming 13610 N. Scottsdale RD. STE 146 Scottsdale, Arizona 85254 A.V.A. which is an acronym for Automated Verification Algorithm is a SysOp utility which will call back and automatically verify a bbs user. The following files were included in the .ZIP archive: AVA.Exe..............................The Main Program AVA.Doc..............................This documention text file AVA.Cfg..............................A sample configuration file To run A.V.A. you must use a TYPE 15 menu command and set an errorlevel. Please refer to your QBBS documentation regarding menu setup. The main program, the configuration file and Instruct.Txt must all be in the same directory. It is prefered that you place AVA.Exe and accompanying files in your QBBS root directory. This is because A.V.A. utilizes PhoneDupe.Log and Phonenum.Ctl. Please refer to the QBBS documentation regarding these two files QBBS. However, if you do place AVA in its own directory then you must ensure that EXITINFO.BBS, DORINFO1.DEF, PhoneDupe.Log and Phonenum.Ctl are copied into that directory. You must also copy those files back into the QBBS main directory before loading QuickBBS. QuickBBS uses the information stored in EXITINFO.BBS to reinstate itself. Batch File ---------- To add AVA to your QBBS batch file you must set an ErrorLevel with your TYPE 15 menu option. Here is an example of a batch file: Echo Off Cls Echo ***** Loading QBBS Now ***** :Start QuickBBS :After_Quick If ErrorLevel 10 Goto AVA If ErrorLevel 2 Goto RightHere If ErrorLevel 1 Goto Somewhere If ErrorLevel 0 Goto Quote :AVA AVA AVA.Cfg Goto Restart :RightHere REM Doing something here :Somewhere REM Do something else here :Quote Ezquoted Quote.Cfg Copy GoodBye.Asc+HitEnter.Asc Copy GoodBye.Asc F: Goto Start :Restart QuickBBS -r Goto After_Quick The above is a crude example. But you see that on an ErrorLevel 10 the batch file jumps to the label AVA and runs A.V.A. When A.V.A. is completed the batch file jumps to the label Restart to reinstate the bbs. The following example shows what to expect if you place A.V.A. in its own directory. :AVA cd c:\qbbs\Ava Copy c:\qbbs\exitinfo.BBS Copy c:\qbbs\dorinfo1.def Copy c:\qbbs\phone*.* AVA AVA.CFG cd c:\qbbs copy c:\qbbs\ava\exitinfo.bbs copy c:\qbbs\ava\phone*.* goto Restart Whew! What a pain and it would cause somewhat of a lull if set up this way. But, this is just an example. A.V.A. Configuration file ------------------------- A.V.A. requires a configuration file. The configuration file contains information that A.V.A. will use during the course of verifying a user. The syntax to invoke A.V.A. is as follows: d:\> AVA AVA.Cfg The configuration file consists of 13 lines and can be created with your favorite word processor. Here is an explanation for each line. Line 1: Place the name of your BBS here. Line 2: This line tells A.V.A. whether or not to allow long distance or toll calling. Place a no here if you do not wish to run up your phone bill or place a yes here to support this option. Line 3: Place a no here if you do not wish to grant minimum access or yes if you do. * Note * If Line 2 is set to no then A.V.A. will look at line 3 and act accordinly. Line 4: This line contains the security level granted to callers who completed verification. Line 5: This line contains the download bytes granted after verification has been completed. * Note * The download byte should match what you have defined in your Limits.Ctl file. Line 6: This line contains the time limit granted after verification has been completed. * Note * The time lime should match what you have defined in your Limits.Ctl file. Line 7: This is the minimum security level granted to long distance or toll callers. This feature is active only if Line 3 is yes. However, it must still be defined even if you do not support minimum access. A numeric value is expected here. Line 8: This is the minimum download byte granted to long distance or toll callers. This feature is active only if Line 3 is yes. However, it must still be defined even if you do not support minimum access. A numeric value is expected here. * Note * The download byte should match what you have defined in your Limits.Ctl file. Line 9: This is the minimum daily time limit granted to long distance or toll callers. This feature is active only if Line 3 is yes. However, it still must be defined even if you do not support minimum access. The daily time limit is expressed in minutes. * Note * The time limit should match what you have defined in your Limits.Ctl file. Line 10: Place your area code here Line 11: If you want to allow callers to edit their phone numbers before verification can begin then put a yes here. Place a no here if you do not want to support this option. Line 12: Place a yes here to allow duplicate phone numbers or no to not allow duplicate phone numbers. Line 13: Place the SysOp's security level here. This is so the SysOp will be able to access A.V.A. for whatever reason. Sample configuration file: The Alternate Choice <--- BBS Name no <--- Long distance or toll calls not allowed yes <--- Grant minimum access to ld callers 20 <--- Verified security level 720 <--- Verified download bytes 45 <--- Verified time limit per day 10 <--- Minimum access level 320 <--- Minimum access download bytes 35 <--- Minimum access time limit per day 602 <--- My area code no <--- Editing/changing numbers not allowed no <--- Duplicate phone numbers are not allowed 100 <--- SysOp's security level * I must state here that the configuration file consists of thirteen lines. A.V.A. expects to find data in every line. * What you the SysOp can expect from A.V.A. ----------------------------------------- When a new caller uses AVA he will be presented with a screen of information. This information explains what he can expect from AVA and what AVA expects from him. His option here is to proceed with the verification or return to the BBS. The options available to the SysOp are: [F6] Twit <--- Disconnect the caller completely [F7] DOS <--- Shell to DOS [F8] Return caller to bbs <--- Take caller out of the door [F9] Display On/Off <--- Active only while the door is running [F10] Chat <--- SysOp chat with caller AVA retrieves the phone number(s) and caller's password from EXITINFO.BBS. If you have elected to asked for both Data and Home phone numbers then AVA will ask the caller which number it should dial. It will then ask if the number is a long distance or toll call. Depending on the answer and on the configuration file, AVA will act accordingly. If the answer to this question was a NO then the program proceeds to the actual verification process. The caller is presented with a screen of last minute instructions and waits for the caller to press [Enter] to proceed or Q to quit. Upon pressing [Enter] AVA will hang up the phone. AVA will then perform a master reset and reseed the baud rate generator with the caller's baud rate. AVA will attempt to re-establish connection 3 times. If after the third call modem connection was not re-established AVA will make a note of it in the log then terminate its run and pass control back to the bbs. Once connection is re-established AVA will clear its buffers, synchronize the modems and announce itself to the caller. At this point the caller is expected to answer 2 questions. The first question asks for his first and last name and the second question asks for his password. The caller will have 2 chances each to answer both questions. If either one of the questions are not answered correctly, verification will fail. If both questions are answered correctly then verification was successful and the new information will be written to EXITINFO.BBS. The caller is returned to the BBS verified and with a higher access level. AVA keeps a log of activities in AVA.LOG. This file keeps a running record of what occured and did not occur during the verification process. The log is appended to each time AVA is accessed. Delete it when it gets too large. Another data file generated and maintained by AVA is AVA.DAT. This is a random access file which keeps callers' names, phone numbers and the date they were verified. The same holds true for long distance callers who are granted minimum access. Information of callers' who failed verification are not stored in this file. This is so they may have another chance to be verified at some later time. In addition to these two files, AVA accesses PhoneDupe.Log and Phonenum.Ctl. If for some reason a duplicate phone number was not detected by QBBS it will not be written to PhoneDupe.Log. However, because AVA keeps track of phone numbers it has already verified this file is always checked for duplicate numbers. ---------------- Version 1.0 is a BETA version. However, every option discussed in this documentation are fully functional. AVA has been fully tested on a US Robotics MicroLink 2400. As a result, the maximum baud rate supported is 2400. Faster baud rates will be supported in a future release. The dip switches are set as follows: 1 2 3 4 5 6 7 8 9 10 OFF ON OFF ON ON OFF OFF ON OFF ON Switch # Description -------- ----------- 1 Date terminal read overide OFF = DTR Normal; Pin 20 controls modem ON = DTR is always on 2 Verbal, numeric result codes OFF = Verbal (word) messages ON = Numeric result codes 3 Result code display OFF = Quiet mode, no display ON = Result codes displayed 4 Modem echo OFF = Modem echoes commands sent from keyboard ON = Modem does not echo 5 Auto Answer OFF = Modem answrers on first ring ON = Auto answer suppressed 6 RS-232 Carrier Detect Pin OFF = Pin 8 controls carrier detect ON = Carrier detect signal is always on 7 Single/Multi-line installation OFF = Single phone ON = Multiple phones 8 AT command set recognition OFF = AT command set disabled ON = Normal operations 9 Escape Code Operations OFF = Modem disconnects when +++ is entered. ON = Modem returns to command state when +++ is entered. 10 Volume control OFF = Low volume ON = High volume AVA uses DTR to hang up the remote caller. The command string ATM1Q0X5 is sent to your modem before it attempts a call. Be sure that your modem recognizes these commands. AVA is also being BETA tested on The Alternate Choice. So far, so good. Disclaimer ---------- You shall use this program and accompanying files at your own risk. You accept these programs AS IS and there are no warranties written or implied. I shall not be held liable for alleged damages real or consequental including but not limited to, loss of time, lack of sleep, financial responsibilities and improper use. BBS Support ----------- New releases can be downloaded from The Alternate Choice (602)788-0838 300/1200/2400 24 hours a day, PCPable. Questions, gripes and suggestions may be left to Cat Miller in the OTW Support message base.