home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 2 BBS / 02-BBS.zip / scid120.zip / sentry.doc < prev    next >
Text File  |  1996-10-22  |  47KB  |  1,147 lines

  1.  
  2.  
  3.  
  4.  
  5.   ▄█████▄ ▄██████ ▄█████▄ ███████ ██████▄ ██   ██     ▄█████▄ ▐██▌ ██████▄ ██
  6.   ██▄▄▄▄  ██▄▄▄▄  ██   ██   ▐█▌   ██   ██ ██▄ ▄██ ▄▄▄ ██       ██  ██   ██ ██
  7.    ▀▀▀▀██ ██▀▀▀▀  ██   ██   ▐█▌   ██████   ▀███▀  ▀▀▀ ██       ██  ██   ██ ▀▀
  8.   ▀█████▀ ▀██████ ██   ██   ▐█▌   ██  ▀██   ▐█▌       ▀█████▀ ▐██▌ ██████▀ ██
  9.  
  10.  
  11.                B B S     C A L L E R - I D     I N T E R F A C E
  12.  
  13.                                  VERSION 1.20
  14.  
  15.  
  16.  
  17.                      Copyright (c) 1996 by Jason Hendriks
  18.  
  19.                               ALL RIGHTS RESERVED
  20.  
  21.                        "Power Software for Lazy People"
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.      S E N T R Y - C I D                                                   1
  31.  
  32.      _______________________________________________________________________
  33.  
  34.  
  35.  
  36.      Sentry-CID (or "Scid" for short) is a Caller-ID-to-BBS interface.
  37.      Sentry-CID will read your mailer's logfile for caller-id information
  38.      (either American standard format or Canadian multi-page format) and
  39.      after extensive verification, automatically log the user onto the bbs
  40.      (MAXIMUS systems only).  SCID also provides information for on-line
  41.      validation of new users, eliminating the need for kludgy call-back
  42.      verifiers.  Sentry-CID is even smart enough to set your system clock!
  43.  
  44.      Skip ahead to section [3] to get set-up and running.  Please refer to
  45.      README.TXT for information on other utilities (bbs and otherwise) that
  46.      I have produced.  Please refer to REGISTER.TXT to find out how to
  47.      register SCID.
  48.  
  49.      Sentry-CID was tested on the original Caller-ID BadBoy, the SupraFAX
  50.      14.4 modem (with "J" ROMs) and is compatible with standard CID from the
  51.      United States and multi-page caller-id (hex data) used up here in the
  52.      Great White North.  SCID should work with all other Rockwell-based
  53.      caller-id capable modems, such as the Zoom, non-Rockwell modems such as
  54.      the ZyXel, and the new series of caller-id modems offered by USR.
  55.  
  56.  
  57.  
  58.      ┌═════════════┐
  59.      │ [1.1] INDEX │
  60.      └═════════════┘
  61.  
  62.  
  63.                1 Sentry-CID
  64.                     1.1 Index
  65.                     1.2 Why Sentry-CID over some other?
  66.                     1.3 Features
  67.                     1.4 Requirements
  68.                     1.5 Contents of the Sentry-CID archive
  69.                     1.6 Registration
  70.  
  71.                2 Legal-Type Stuff
  72.                     2.1 Disclaimer
  73.                     2.2 Warranty
  74.                     2.3 License
  75.                     2.4 Copyrights
  76.  
  77.                3 Setup and Operation
  78.                     3.1 Configuring Your System
  79.                     3.2 Running Sentry-CID
  80.                     3.3 PhoneList
  81.                     3.4 Running Sentry-CID Validator
  82.                     3.5 Configuring Sentry-CID
  83.  
  84.                4 Maximus BBS
  85.                     4.1 Auto-Login
  86.                     4.2 OnLine Validation
  87.                     4.3 After Validation
  88.                     4.4 Ensuring the number is kept accurate
  89.  
  90.                5 Miscellaneous Information
  91.                     5.1 Future Plans
  92.                     5.2 Release History
  93.                     5.3 Software Updates and Support
  94.                     5.4 Contacting the Author
  95.  
  96.  
  97.  
  98.      ┌═══════════════════════════════════════┐
  99.      │ [1.2] WHY SENTRY-CID OVER SOME OTHER? │
  100.      └═══════════════════════════════════════┘
  101.  
  102.  
  103.      I had been using another caller-id reading program (one of the best)
  104.      called MaxCID.  Unfortunately, after I sent in my $10 to register, I
  105.      never heard a peep out of the author and saw no new updates to the
  106.      program in response to my bug reports.
  107.  
  108.      MaxCID was unable to recognize out-of-area callers (and we get a lot in
  109.      Kingston!), or long-distance callers using multi-page format (Canada),
  110.      had a flaky "!"  autopassword toggle which would login users with
  111.      multiple accounts if one of them used the toggle, crashed when run in a
  112.      full-screen OS/2 session and was forever logging on the wrong user
  113.      (VERY annoying) because it did not do enough verifying of the CID
  114.      information.
  115.  
  116.      Sentry-CID is so accurate that it can even update the system clock when
  117.      it feels it is appropriate (great for users with computers that seem to
  118.      gain about five minutes every day or for those who live in zones which
  119.      abide by daylight savings and can never remember when it is!).
  120.  
  121.  
  122.  
  123.      ┌════════════════┐
  124.      │ [1.3] FEATURES │
  125.      └════════════════┘
  126.  
  127.  
  128.      Here are the amazing features of Sentry-CID:
  129.  
  130.           GENERAL FEATURES
  131.              ■ DOS and OS/2 executables
  132.              ■ Can read American standard caller-id or Canadian
  133.                multi-page format (hex text)
  134.              ■ Can barricade private callers
  135.              ■ Can verify new callers using the validate caller mode
  136.                (useful with any bbs type)
  137.              ■ Can automatically synchronize the system clock with the
  138.                caller-id time (to the nearest minute)
  139.  
  140.           PHONELIST
  141.              ■ Alias "+" matching on phone numbers for the same user who
  142.                calls from different phone numbers
  143.              ■ Drop carrier on twit users by matching "-" phone numbers
  144.              ■ Can login users found ONLY in phonelist for a truly private
  145.                system
  146.  
  147.           BBS USERFILE (MAXIMUS v3)
  148.              ■ Matches caller phone number with user in the bbs userfile and
  149.                logs them on (data phone or voice phone)
  150.              ■ Will prompt for password on user's request or if SCID is
  151.                unsure of the accuracy of the CID data
  152.              ■ ALWAYS prompts for a password when asstsysop or sysops login,
  153.                when multiple users of the same number call or when a user
  154.                has not called in a long while
  155.              ■ logs on the last caller when multiple users are flagged for
  156.                the same phone number
  157.              ■ Can login users found ONLY in bbsfile for a truly private
  158.                system
  159.  
  160.           CID DATA VERIFICATION ENSURES NO LOGIN "MISTAKES"
  161.              ■ Makes sure CID time and mailer time do not differ by more
  162.                than a certain amount in case of wonky CID data
  163.              ■ Makes sure mailer time and current time do not differ by more
  164.                than a certain amount in case the mailer has "forgotten" to
  165.                resume writing to the logfile (ie. after a system crash)
  166.              ■ Makes sure CID time is within a certain distance from the end
  167.                of the logfile just for the hell of it
  168.  
  169.  
  170.  
  171.      ┌════════════════════┐
  172.      │ [1.4] REQUIREMENTS │
  173.      └════════════════════┘
  174.  
  175.  
  176.           To run SCID, you need to have:
  177.              ■ a Caller-ID (or "Ident-a-Call" or "Caller-View") service
  178.                installed on your phoneline by the local phone company.  If
  179.                yours is anything like Ma Bell, there will probably be a
  180.                set-up fee and monthly service charge
  181.              ■ a modem capable of producing caller-id data (Supra, ZyXel,
  182.                USR Sportster vi or USR Courier with the 1/23/96 firmware
  183.                flash)
  184.              ■ a mailer such as BinkleyTerm, FrontDoor or POP capable of
  185.                recording the caller-id data to a logfile
  186.              ■ Maximus bbs (to utilize the auto-login options).  This is my
  187.                preferred bbs software, because Max is extremely flexible and
  188.                is available in an OS/2 version.  Users of other bbs software
  189.                should be able to use other features of SCID, such as tracking
  190.                the phone number in the logfile, and possible new user
  191.                validation
  192.              ■ DOS or OS/2 v2.0+
  193.  
  194.  
  195.  
  196.      ┌══════════════════════════════════════════┐
  197.      │ [1.5] CONTENTS OF THE SENTRY-CID ARCHIVE │
  198.      └══════════════════════════════════════════┘
  199.  
  200.  
  201.      FILE_ID.DIZ
  202.  
  203.           Description file for BBS file databases.
  204.  
  205.      REGISTER.TXT
  206.  
  207.           Registration form.
  208.  
  209.      SENTRY.DOC
  210.  
  211.           This file
  212.  
  213.      SENTRY.EXE
  214.  
  215.           Sentry-CID DOS 16-bit executable.
  216.  
  217.      SENTRYP.EXE
  218.  
  219.           Sentry-CID/2 OS/2 (2.0+) 32-bit executable.
  220.  
  221.      SENTRY.CFG
  222.  
  223.           Sample Sentry-CID configuration file.
  224.  
  225.      SENTRY.FON
  226.  
  227.           Sample alias-matching phonelist.
  228.  
  229.      README.TXT
  230.  
  231.           Other software by me!
  232.  
  233.  
  234.  
  235.      ┌════════════════════┐
  236.      │ [1.6] REGISTRATION │
  237.      └════════════════════┘
  238.  
  239.  
  240.      As an incentive, registration of SCID enables the very useful
  241.      [AUTOSETTIME], [NOSYSOPLOGIN] and [LASTCALL_AGE] features, and also
  242.      makes Sentry-CID Validator functional.  The "please register" kludges
  243.      also disappear.  Once registered, I will be much more prone to
  244.      listening to any suggestions and bug-reports you may have. I'm a
  245.      student at Queen's University at Kingston, and I wrote this program in
  246.      my spare time.  Registration of SCID is only $10 which will help pay
  247.      for my taxi ride to the grocery store and back.  Thank-you in advance!
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.      L E G A L - T Y P E    S T U F F                                      2
  255.  
  256.      _______________________________________________________________________
  257.  
  258.  
  259.  
  260.      ┌══════════════════┐
  261.      │ [2.1] DISCLAIMER │
  262.      └══════════════════┘
  263.  
  264.  
  265.      SCID is not programmed to format your harddrive, make long-distance
  266.      calls to China with your modem while you are sleeping, or run amok in
  267.      any other mischievous manner.  However, if you manage to reduce your
  268.      your harddrive to egg salad as a result of using Sentry-CID, I will not
  269.      be held responsible for any damages incurred to your system, business
  270.      or mental state (I wouldn't have any money to give you anyway!)
  271.  
  272.      How come disclaimers always sound so grumpy?  Hey, things can always go
  273.      the OTHER way, you know.  Maybe you'll get lucky and SCID will be
  274.      responsible for increasing the accuracy of your Pentium CPU by 43%.
  275.      Funky chicken!
  276.  
  277.  
  278.  
  279.      ┌════════════════┐
  280.      │ [2.2] WARRANTY │
  281.      └════════════════┘
  282.  
  283.  
  284.      None!  I'm fairly confident that SCID will not fail when used correctly
  285.      as outlined in this document, but as a dear friend keeps reminding me,
  286.      "there is always one more bug".
  287.  
  288.  
  289.  
  290.      ┌═══════════════┐
  291.      │ [2.3] LICENSE │
  292.      └═══════════════┘
  293.  
  294.  
  295.      You are ENCOURAGED to register Sentry-CID after evaluating it for a
  296.      reasonable period of time.  You may use a registered copy of SCID on
  297.      any number of machines operated BY YOURSELF.  Any money you send will
  298.      help further my education as my rent and food budget seem to be getting
  299.      smaller and smaller everyday  ;)
  300.  
  301.  
  302.  
  303.      ┌══════════════════┐
  304.      │ [2.4] COPYRIGHTS │
  305.      └══════════════════┘
  306.  
  307.  
  308.           * MAXIMUS copyright(c) 1993, 1996 by Scott Dudley, Lanius Corp
  309.             [1:249/106]
  310.           * REMOTE ACCESS copyright(c) 1996 by somebody
  311.           * WATCOM is a trademark of WATCOM International Corp.
  312.           * MA BELL should be a trademark of Bell Canada Ltd.,
  313.             Northern Telecom
  314.           * 386i, 486i and PENTIUM are trademarks of Intel
  315.           * SUPRA copyright(c) 1996 by Supra Corp
  316.           * COURIER and SPORTSTER copyright(c) 1996 by US Robotics
  317.           * MAXCID copyright(c) 1994 by Louis LePage [1:246/66]
  318.           * CIDLOG copyright(c) 1992 by Steven L. Davis
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.      S E T U P    A N D    O P E R A T I O N                               3
  326.  
  327.      _______________________________________________________________________
  328.  
  329.  
  330.  
  331.      Sentry-CID will login, validate or barricade users after performing a
  332.      variety of checks on the CID data to determine it's accuracy.  If you
  333.      are running Maximus BBS and BinkleyTerm, you are in luck because so do
  334.      I, and I have included easy examples to help you with the setup.  For
  335.      users of other software, it should be a simple matter of changing
  336.      pathnames and filenames to obtain the desired result.  At the present
  337.      time Auto-Login works only with Maximus BBS (v3).
  338.  
  339.  
  340.  
  341.      ┌═══════════════════════════════┐
  342.      │ [3.1] CONFIGURING YOUR SYSTEM │
  343.      └═══════════════════════════════┘
  344.  
  345.  
  346.      Caller-ID use must be enabled on your modem.  For modems with the
  347.      Rockwell chipset (like the Supra) the command is:
  348.  
  349.      #CID=1
  350.  
  351.      which should be placed in your mailer's modem init string.  Second, you
  352.      must tell your front-end mailer to answer on the second ring to allow
  353.      the caller-id information to be read by the modem.
  354.  
  355.  
  356.      FRONT-END MAILER CONFIG
  357.      -----------------------
  358.  
  359.      For FRONTDOOR, tell the mailer to put modem info into the log:
  360.  
  361.           ┌─────────────────────────────────────────────────────────┐
  362.           │FDSetup -> Modem Control -> AnswerControl -> Enable LDFRS│
  363.           └─────────────────────────────────────────────────────────┘
  364.  
  365.      For INTERMAIL 2.29k, use IMSETUP:
  366.  
  367.                       ┌─────────────────────────────────┐
  368.                       │Modem > Advanced Setup > Messages│
  369.                       └─────────────────────────────────┘
  370.  
  371.                        ╔════════════════════ Messages ╗
  372.                        ║ CID - NAME  NAME =           ║
  373.                        ║ CID - NMBR  NMBR =           ║
  374.                        ║ CID - DATE  DATE =           ║
  375.                        ║ CID - TIME  TIME =           ║
  376.                        ╚══════════════════════════════╝
  377.  
  378.                    ┌────────────────────────────────────────┐
  379.                    │Modem > Advanced Setup > Command Strings│
  380.                    └────────────────────────────────────────┘
  381.  
  382.           ╔═════════════════════════════════════════ Command strings ╗
  383.           ║ Init-2         AT#CID=1|                                 ║
  384.           ╚══════════════════════════════════════════════════════════╝
  385.  
  386.  
  387.                    ┌────────────────────────────────────────┐
  388.                    │Modems > Advanced Setup > Answer Control│
  389.                    └────────────────────────────────────────┘
  390.  
  391.           ╔═════════════════════════════════════════ Answer control ╗
  392.           ║ Manual answer  Yes                                      ║
  393.           ║ Force answer   ATB0A|                                   ║
  394.           ║ Answer delay   7                                        ║
  395.           ║ Answer on ring 2                                        ║
  396.           ╚═════════════════════════════════════════════════════════╝
  397.  
  398.  
  399.      For BINKLEYTERM v2.60, proper config verbs would be:
  400.  
  401.                          ┌────────────────────────────┐
  402.                          │Answer             ATA|     │
  403.                          │Init               AT#CID=1|│
  404.                          │LogLevel           4        │
  405.                          │ModemRinging       Ring     │
  406.                          │RingTries          7        │
  407.                          │RingWait           2        │
  408.                          └────────────────────────────┘
  409.  
  410.      or, with BINKLEYTERM v2.59,
  411.  
  412.                          ┌────────────────────────────┐
  413.                          │Answer             ATA|     │
  414.                          │Init               AT#CID=1|│
  415.                          │LogLevel           4        │
  416.                          │ModemRinging       Nmbr     │
  417.                          │ModemRinging       Mesg     │
  418.                          │RingTries          7        │
  419.                          └────────────────────────────┘
  420.  
  421.      or an even older version (least recommended),
  422.  
  423.                        ┌───────────────────────────────┐
  424.                        │Answer             ~~~`````ATA|│
  425.                        │Init               AT#CID=1|   │
  426.                        │ModemRinging       Ring        │
  427.                        │LogLevel           4           │
  428.                        │RingTries          7           │
  429.                        └───────────────────────────────┘
  430.  
  431.  
  432.      RESULT CODES
  433.      ------------
  434.  
  435.      Your modem will start sending results usually including the DATE, TIME
  436.      and the calling NMBR:
  437.  
  438.                            ┌─────────────────────┐
  439.                            │DATE = 0401          │
  440.                            │TIME = 2019          │
  441.                            │NAME = HENDRIKS JASON│
  442.                            │NMBR = P             │
  443.                            │NMBR = O             │
  444.                            │NMBR = 5423120       │
  445.                            │NMBR = 16135423120   │
  446.                            │NMBR = L             │
  447.                            └─────────────────────┘
  448.  
  449.      or, if you live in Canada (multi-page format), you will get the DATE,
  450.      TIME and corresponding MESG (or NMBR for PRIVATE/OUT-OF-AREA calls):
  451.  
  452.                       ┌─────────────────────────────────┐
  453.                       │DATE = 0401                      │
  454.                       │TIME = 2019                      │
  455.                       │NMBR = P                         │
  456.                       │NMBR = O                         │
  457.                       │MESG = 030735343233313230        │
  458.                       │MESG = 030B3136313335343233313230│
  459.                       │MESG = 06014C                    │
  460.                       └─────────────────────────────────┘
  461.  
  462.  
  463.      LOADING THE BBS
  464.      ---------------
  465.  
  466.      Ordinarily, your front-end mailer probably calls a batch file with a
  467.      set of parameters to pass to the bbs.  If that file is SPAWNBBS.BAT:
  468.  
  469.         ┌───────────────────────────────────────────────────────────────┐
  470.         │@echo off                                                      │
  471.         │\max\max.exe -s%1 -b%2 -p%3 -t%4   (or ra.exe -b%2 -p%3 -t%4 ?)│
  472.         └───────────────────────────────────────────────────────────────┘
  473.  
  474.      you must change it to first run SCID, then run the batch file created
  475.      by SCID:
  476.  
  477.                        ┌───────────────────────────────┐
  478.                        │@echo off                      │
  479.                        │cd \scid                       │
  480.                        │sentry.exe                     │
  481.                        │call loadbbs.bat %1 %2 %3 %4 %5│
  482.                        └───────────────────────────────┘
  483.  
  484.  
  485.  
  486.      ┌══════════════════════════┐
  487.      │ [3.2] RUNNING SENTRY-CID │
  488.      └══════════════════════════┘
  489.  
  490.  
  491.      The included SENTRY.CFG configuration file will need only minimal
  492.      changes of various path and filenames before running SCID.
  493.  
  494.      SCID takes two optional command line parameters.  Switch to the SCID
  495.      directory and run SENTRY -? (DOS) or SENTRYP -? (OS/2) for quick help.
  496.  
  497.      The -c<filename> command line option allows you to run SCID with a
  498.      different configuration file, which is handy for multi-node systems
  499.      which need to read different log files and write to different LOADBBS
  500.      batch files.  Sentry-CID will attempt to read the default configuration
  501.      file "SENTRY.CFG" if none is specified.
  502.  
  503.      The -d command line option tells SCID to run in debug mode.  This was
  504.      mainly for me while developing SCID and runs the program a tad slower.
  505.      But you may be interested to see just what kind of numbers SCID is
  506.      crunching through or may want to verify it's operation.
  507.  
  508.      The -v command line option tells SCID to run in verify mode.  More
  509.      information on verify mode is available in section [3.4].
  510.  
  511.      Sentry-CID returns the following errorlevels:
  512.         ■ 0: No operation (fatal error), syntax displayed
  513.         ■ 1: User known, autologin, autopassword
  514.         ■ 2: User known, autologin, no autopassword
  515.         ■ 3: User known, no autologin, no autopassword
  516.         ■ 4: User unknown (not found in USER.BBS)
  517.         ■ 5: Out-of-area caller
  518.         ■ 6: Private caller
  519.         ■ 7: User barred from bbs
  520.         ■ 8: Error reading log
  521.  
  522.      Sentry-CID will always write a LOADBBS.CMD file which simply calls
  523.      the bbs if an error occurs.  If a critical error occurs (such as
  524.      not being able to read the config file, or bad arguments passed on
  525.      the command line), SCID will beep twice indicating its inability
  526.      to write the LoadBBS batch file.
  527.  
  528.  
  529.  
  530.      ┌═════════════════┐
  531.      │ [3.3] PHONELIST │
  532.      └═════════════════┘
  533.  
  534.  
  535.      Please note that the phonelist file is read sequentially, and the first
  536.      match will be the only match as far as SCID is concerned.
  537.  
  538.      If a user calls from more than one number, their other number(s) can be
  539.      "alias matched" to the phone number contained in the phonelist.  The
  540.      following:
  541.  
  542.      + (519)-740-9592 5423120 623-0186 ; calling from the office
  543.  
  544.      would search for the phone number (519) 740-9592 in the userfile if any
  545.      calls were received from 542-3120 (current area code) or 546-3844
  546.      current area code).  It is important to separate the "+" and subsequent
  547.      phone numbers and to NOT have any 'whitespace' within the phone number.
  548.  
  549.      If [FORCELIST] is active, then only numbers listed in the phonelist,
  550.      or alias-matched in the phonelist, would be allowed to login.  A single
  551.      entry on a line is also acceptable for this feature:
  552.  
  553.      + (519)6210192
  554.  
  555.      If there are twit users who you don't want calling your system, you can
  556.      include their phone numbers in the alias file as barricaded numbers.
  557.      Any phone numbers following a minus sign "-" in the phonelist will be
  558.      prevented from even entering the bbs.  The following:
  559.  
  560.      - 547-6756                                  ; go away Ian
  561.      - 613-825-1032   (613)-531-3093  791-4458    ; those other twits
  562.  
  563.      would prevent any nuisance callers from logging onto the system. Again,
  564.      lines with single entries are acceptable.
  565.  
  566.  
  567.  
  568.      ┌════════════════════════════════════┐
  569.      │ [3.4] RUNNING SENTRY-CID VALIDATOR │
  570.      └════════════════════════════════════┘
  571.  
  572.  
  573.      Sentry-CID Validator only works when SCID has been registered.  You
  574.      can run SCID and watch it compare numbers and report them as matched
  575.      or unmatched, but the semaphore file for the bbs will not be written
  576.      on successful matches (but I'm sure by now you're dying for your
  577.      registration key anyway!)
  578.  
  579.      The -d command line options tell Sentry-CID to run in validate mode.
  580.  
  581.      Sentry-CID Validator will compare the phone numbers in [OUTPUT] and
  582.      [BBSNUMBER] and if they match, will write a semaphore file
  583.      [OK_VALIDATION] which your bbs can read to determine if the user's
  584.      level should be upgraded.  See section [4.2] on an example of setting
  585.      up Maximus BBS to use this.
  586.  
  587.      Sentry-CID Validator returns the following errorlevels:
  588.         ■ 0: No operation, syntax displayed
  589.         ■ 1: User phone numbers verified
  590.         ■ 2: User phone numbers failed verification
  591.         ■ 3: Sentry is unregistered
  592.  
  593.  
  594.  
  595.      ┌══════════════════════════════┐
  596.      │ [3.5] CONFIGURING SENTRY-CID │
  597.      └══════════════════════════════┘
  598.  
  599.  
  600.      This is a detailed, alphabetical listing of commands in Sentry-CID's
  601.      config file.  Commands are not case-sensitive and semi-colons located
  602.      anywhere in the file are treated as comments.
  603.  
  604.  
  605.      Allow_Private
  606.  
  607.           Allow callers with blocked numbers to be passed to the bbs;
  608.           otherwise Sentry-CID will drop carrier (by NOT loading the bbs).
  609.           See [FORCELIST] and [FORCEUSERBBS].
  610.  
  611.      APW_KeyToggle <keys>
  612.  
  613.           This is the Maximus key (or keys) which must be set for the
  614.           current user to have the [AUTO_PASSWORD] setting *toggled*.
  615.           Thus, if you have [AUTO_PASSWORD] commented out (disabled) and
  616.           the user has the key set in [APW_KEYTOGGLE], then they will be
  617.           logged on as if [AUTO_PASSWORD] was enabled.  Vice versa,
  618.           [AUTO_PASSWORD] would be *disabled* for this user if it was
  619.           enabled in the configuration file.  I recommend using
  620.           key "L" (for login).  Valid keys range from 1-8 and A-X.
  621.  
  622.      Area_Code <area_code>
  623.  
  624.           Your region's phone area code.  See [COUNTRY_CODE].
  625.  
  626.      AutoLogin
  627.  
  628.           Determines whether the bbs is given the user's name for login.
  629.           See [AUTOPASSWORD].
  630.  
  631.      AutoPassword
  632.  
  633.           Determines whether the bbs is given the user's name *and* password
  634.           for login (ie.  *completely* logged on) after Sentry-CID performs
  635.           all it's time and user status checks, or if the user is prompted
  636.           for their password.  This command is disabled if [AUTOLOGIN] is
  637.           disabled.  This command is toggled by the key in [APW_KEYTOGGLE].
  638.           This feature is automatically disabled for users using the new
  639.           encrypted passwords in Maximus version 3.x.
  640.  
  641.      AutoSetTime
  642.  
  643.           Allow Sentry-CID to set the system time.  Sentry-CID confirms that
  644.           the CID time is accurate by checking current time difference and
  645.           log time difference.  See [CID_DIF_LOW], [CID_DIF_HIGH],
  646.           [MAILER_DIF] and [IGNORE_RESTRICTIONS].  (AVAILABLE ONLY AFTER
  647.           REGISTRATION).
  648.  
  649.      Batch <filename> [DEFAULT is LoadBBS.BAT (DOS) or LoadBBS.CMD (OS/2)]
  650.  
  651.           Path and filename of the bbs batchfile to write (I suggest
  652.           LOADBBS.BAT).  Use different names in different configuration
  653.           files for different nodes on a multi-node system.  See [LOAD_BBS].
  654.  
  655.      BBSNumber <filename>
  656.  
  657.           Path and filename of the file written by the BBS containing the
  658.           phone number supplied by the user for use with SCID Validation.
  659.           See [OUTPUT] and [OK_VALIDATION].
  660.  
  661.      CID_Dif_High <time_in_minutes> [DEFAULT is 65]
  662.  
  663.           The *maximum* time difference between the CID time and mailer log
  664.           time before setting the system clock.  Who knows, someone at the
  665.           phone company may decide to play a joke on you.  Set it greater
  666.           than 60 minutes to allow for daylight savings in your area!
  667.           [AUTOSETTIME], [CID_DIF_LOW], [MAILER_DIF] and
  668.           [IGNORE_RESTRICTIONS].
  669.  
  670.      CID_Dif_Low <time_in_minutes> [DEFAULT is 1]
  671.  
  672.           The *minimum* time difference between the CID time and mailer log
  673.           time before setting the system clock.  No need to fiddle with
  674.           the system clock if the discrepancy is only a minute or two -
  675.           this may lead to weird looking logfiles in other running
  676.           processes. See [AUTOSETTIME], [CID_DIF_HIGH], [MAILER_DIF] and
  677.           [IGNORE_RESTRICTIONS].
  678.  
  679.      Country_Code <country_code>
  680.  
  681.           Your country's phone code (1 for U.S. and Canada).  See
  682.           [AREA_CODE].
  683.  
  684.      ForceList
  685.  
  686.           Login users found only in the [PHONELIST] file.  See
  687.           [ALLOW_PRIVATE] and [FORCEUSERBBS].
  688.  
  689.      ForceUserBBS
  690.  
  691.           Login users found only in the [USER_BBS] file (disabled if
  692.           [USER_BBS] is not specified).  See [ALLOW_PRIVATE] and
  693.           [FORCELIST].
  694.  
  695.      Ignore_Restrictions
  696.  
  697.           This tells SCID to NOT verify the CID time, mailer log time or CID
  698.           position in the logfile when logging in a user or setting the
  699.           time.  This command should never be enabled except for debugging
  700.           purposes.  See [AUTOSETTIME], [CID_DIF_HIGH], [CID_DIF_LOW] and
  701.           [MAILER_DIF].
  702.  
  703.      LastCall_Age <age_in_days> [DEFAULT = disabled]
  704.  
  705.           This is the greatest amount of time (in days) to allow
  706.           auto-password for a user.  When users move or disconnect their
  707.           phone number, there is a good chance that someone else will get
  708.           that phone number and be logged in as them when they call your
  709.           board.  A setting of zero disables this feature.  (AVAILABLE
  710.           ONLY AFTER REGISTRATION).
  711.  
  712.      Load_BBS <command_line>
  713.  
  714.           The command line to load your BBS.  For Maximus system use
  715.           something like:
  716.  
  717.                \Max\Max.exe -s%1 -b%2 -p%3 -t%4 -L\Max\Logs\MAX.LOG
  718.  
  719.           For R/A systems use something like:
  720.  
  721.                \ra\ra.exe -b%2 -p%3 -t%4
  722.  
  723.           See [BATCH].
  724.  
  725.      LogLevel <log_level> [DEFAULT is level 2]
  726.  
  727.           This specifies how much information to put in SCID's status log.
  728.           Acceptable values are from 1 (minimal information) to 5 (maximum
  729.           information).  Each log entry is preceded by a character
  730.           indicating the importance of the entry, in traditional
  731.           BINKLEY/MAXIMUS style.  See [Sentry-CIDLOG].
  732.  
  733.                LogLevel  Characters That Precede Included Entries
  734.  
  735.                     1      ! *
  736.                     2      ! * +
  737.                     3      ! * + :
  738.                     4      ! * + : #
  739.                     5      ! * + : # and blank (no character)
  740.  
  741.      MailerLogFile <filename>
  742.  
  743.           Path and filename of the mailer logfile containing the Caller-ID
  744.           information to read.
  745.  
  746.      Mailer_Dif [DEFAULT is 2 minutes]
  747.  
  748.           The time discrepancy allowed between the current time and mailer
  749.           log time.  Occasionally, BinkleyTerm will decide NOT to
  750.           continue writing to it's logfile, and this setting prevents
  751.           logging the same user on over and over when the logtime fails
  752.           to lie within this time.  Increase the time if you have some
  753.           other application which runs between the mailer and Sentry-CID.
  754.  
  755.      Max_Back <number_of_lines> [DEFAULT is 12 lines]
  756.  
  757.           The number of lines from the end of the [MAILERLOGFILE] where the
  758.           CID information must lie for the data to be considered accurate.
  759.           This is in case two CID blocks are received right after
  760.           each other and the phone message of the first is unreadable.
  761.           Trust me, this HAS happened :)  See [READFROM].
  762.  
  763.      NoSound
  764.  
  765.           Disables the PC speaker in case your computer, like mine, traps
  766.           when the PC speaker is accessed or if you generally dislike
  767.           your computer beeping at you!  Sentry-CID only beeps on warnings
  768.           (*) and critical errors (!).
  769.  
  770.      NoSysOpLogin
  771.  
  772.           This feature disables [AUTOPASSWORD] for users with an access
  773.           level of asstsysop or above.  You probably don't want anyone
  774.           other than the asstsysop or sysop themselves logging in from
  775.           their line and accessing your bbs.  (AVAILABLE ONLY AFTER
  776.           REGISTRATION)
  777.  
  778.      Output [DEFAULT is CID.DAT]
  779.  
  780.           Path and filename of a file to write just the phone number to for
  781.           your own use on your bbs or in some other application.
  782.           Unregistered versions of Sentry-CID will have an "UNREGISTERED
  783.           COPY" nag written to the file.   See [BBSNUMBER] and
  784.           [OK_VALIDATION].
  785.  
  786.      PhoneList <filename>
  787.  
  788.           Path and filename of the alias-matching phonelist.  Leave
  789.           commented out to disable the reading of the [PHONELIST] file.
  790.           The first phone number following a "+" in the [PHONELIST] file
  791.           will be the [USER_BBS] entry, and all phone numbers following
  792.           it (on that line) will be matched to that number for users who
  793.           call from different phone numbers.  Phone numbers following a
  794.           "-" in the [PHONELIST] are blacklisted numbers and SCID will
  795.           drop carrier on those users (by not loading the BBS).  See
  796.           [FORCELIST].
  797.  
  798.      ReadFrom <byte_location> [DEFAULT = 1500 bytes]
  799.  
  800.           The position from the end of the mailer logfile where SCID will
  801.           begin reading.  This will probably not need to be changed
  802.           unless you have another program which runs before SCID and
  803.           adds to the mailer log file.  See [MAX_BACK].
  804.  
  805.      Registration <key>
  806.  
  807.           This is your key which activates the registered features of
  808.           Sentry-CID.
  809.  
  810.      SentryCIDLog <filename>
  811.  
  812.           Path and filename where SCID will log it's operation.  Leave
  813.           commented out to disable logging.  See [LOGLEVEL].
  814.  
  815.      SysOp <name>
  816.  
  817.           Your name!
  818.  
  819.      User_BBS <filename>
  820.  
  821.           The path and filename of the Maximus USER.BBS file to read.  Leave
  822.           commented out if you do not run a Maximus BBS.  See
  823.           [FORCEUSERBBS].
  824.  
  825.      OK_Validation <filename>
  826.  
  827.           Path and filename of the semaphore file written by Sentry-CID
  828.           Validator to indicate a successful match between the CID phone
  829.           number and the user's supplied phone number to "verify" the
  830.           user by the BBS software.  See [BBSNUMBER] and [OUTPUT].
  831.  
  832.  
  833.  
  834.  
  835.  
  836.  
  837.      M A X I M U S    B B S                                                4
  838.  
  839.      _______________________________________________________________________
  840.  
  841.  
  842.  
  843.      I am willing to implement login code for other bbs systems if it is
  844.      possible with the bbs you run.  I have looked into Remote Access and it
  845.      is not possible with that system, but if you think it is with whatever
  846.      software you are running, please let me know.  Callers of other BBS
  847.      software may be able to use the caller validation program outlined in
  848.      section [4.2].
  849.  
  850.      The following examples are VERY scaled-down versions of the scripts
  851.      that I use to control my Maximus bbs with caller-id.  They were
  852.      intended to be simple and clear.  If you have a good grip with the
  853.      MECCA Maximus script language, don't be afraid to experiment with what
  854.      you can do!
  855.  
  856.  
  857.  
  858.      ┌══════════════════┐
  859.      │ [4.1] AUTO-LOGIN │
  860.      └══════════════════┘
  861.  
  862.  
  863.      If [FORCEUSERBBS] is active, only phone numbers found in the [USER_BBS]
  864.      file (either VoicePhone or DataPhone) would be allowed to login.
  865.      Otherwise, the caller's phone number will be looked up in the BBS
  866.      userfile and the matching caller will be logged in.  Callers who have
  867.      the [APW_KEYTOGGLE] will have their [AUTOPASSWORD] action toggled from
  868.      the default.  Callers who meet the following criteria will be prompted
  869.      for a password:
  870.         ■ AsstSysOp or SysOp security level
  871.         ■ encrypted passwords
  872.         ■ multiple accounts at the same phone number
  873.         ■ haven't called in a while (in case a new caller has their number)
  874.         ■ CID data fails the time/position checks (front-end log problem)
  875.  
  876.  
  877.  
  878.      ┌══════════════════════════┐
  879.      │ [4.2] ON-LINE VALIDATION │
  880.      └══════════════════════════┘
  881.  
  882.  
  883.      Add the following to the top of your NEWUSER1.MEC file and compile it
  884.      with MECCA.EXE:
  885.  
  886.             ┌────────────────────────────────────────────────────┐
  887.             │[clear_stacked]Enable auto-logins? [[Y,n]? [menu]yn|│
  888.             │[choice]n [keyon]L                                  │
  889.             │                                                    │
  890.             └────────────────────────────────────────────────────┘
  891.  
  892.      This will prompt the new user if they would like to enable the
  893.      auto-logins and set the "L" key if they don't want the feature.
  894.      If you want to have SCID's Auto-Password feature DISABLED by
  895.      default, then comment out [AUTOPASSWORD] in the config file and
  896.      reverse the above to:
  897.  
  898.             ┌────────────────────────────────────────────────────┐
  899.             │[clear_stacked]Enable auto-logins? [[y,N]? [menu]yn|│
  900.             │[choice]y [keyon]L                                  │
  901.             │                                                    │
  902.             └────────────────────────────────────────────────────┘
  903.  
  904.      Add the following to the top of your NEWUSER2.MEC file and compile it:
  905.  
  906.    ┌──────────────────────────────────────────────────────────────────────┐
  907.    │[/Start]                                                              │
  908.    │NEW USER VALIDATION                                                   │
  909.    │                                                                      │
  910.    │Verifying your number, please wait.                                   │
  911.    │[log]!SCID: Caller attempting verification of %h                      │
  912.    │[delete]VALIDNUM.DAT                                                  │
  913.    │[delete]PHONE.DAT                                                     │
  914.    │[open]PHONE.DAT [write]%h                                             │
  915.    │[open]nul [xtern_dos]\SENTRY\SENTRY.EXE -c\SENTRY\SENTRY.CFG -d       │
  916.    │[ifexist]VALIDNUM.DAT [setpriv Normal]Passed validation![goto Done]   │
  917.    │Your number has failed validation!                                    │
  918.    │                                                                      │
  919.    │Ma Bell shows your call originating from: [link]\SENTRY\CID.DAT       │
  920.    │                                     not: [phone]                     │
  921.    │                                                                      │
  922.    │Please change your phone number, or request validation from the SysOp.│
  923.    │<C>hange number <l>eave message or <q>uit to bbs [[C,l,q]? [menu]clq| │
  924.    │[choice]q [goto Done]                                                 │
  925.    │[choice]l [leave_comment goto Done]                                   │
  926.    │[menu_cmd chg_phone]                                                  │
  927.    │[goto Start][/Done]                                                   │
  928.    └──────────────────────────────────────────────────────────────────────┘
  929.  
  930.      You may want to put the above in a separate script file and include an
  931.      option for new users to access it from your main menu in case the
  932.      validation fails the first time around.
  933.  
  934.      Also, you may want to use a similar script when users attempt to
  935.      change their phone number from the change menu to test if their phone
  936.      number really needs changing.
  937.  
  938.  
  939.  
  940.      ┌════════════════════════┐
  941.      │ [4.3] AFTER VALIDATION │
  942.      └════════════════════════┘
  943.  
  944.  
  945.      Your users may want to toggle their [AUTOPASSWORD] status themselves.
  946.      To set that up, entering the following in your CHANGE menu in
  947.      MAX\MENUS.CTL and re-SILT Max:
  948.  
  949.          ┌────────────────────────────────────────────────────────────┐
  950.          │Display_File   Misc\LogTogle   Limited   "Auto-Login Toggle"│
  951.          └────────────────────────────────────────────────────────────┘
  952.  
  953.      and create and compile the file MAX\MISC\LOGTOGLE.MEC:
  954.  
  955.                   ┌──────────────────────────────────────────┐
  956.                   │[notkey]L AUTO-LOGIN has been toggled OFF.│
  957.                   │[notkey]L [keyon]L [enter][quit]          │
  958.                   │AUTO-LOGIN has been toggled ON.           │
  959.                   │[keyoff]L [enter][quit]                   │
  960.                   └──────────────────────────────────────────┘
  961.  
  962.  
  963.  
  964.      ┌════════════════════════════════════════════┐
  965.      │ [4.4] ENSURING THE NUMBER IS KEPT ACCURATE │
  966.      └════════════════════════════════════════════┘
  967.  
  968.  
  969.      The file LOGO.MEC will not be shown to a user who is logged on by
  970.      Sentry-CID.  You can use this to catch users who start calling from a
  971.      different number (users sharing accounts?).  Place the following in
  972.      your MAX\MISC\LOGO.MEC file:
  973.  
  974.                          ┌───────────────────────────┐
  975.                          │[open]UnKnown.DAT [open]nul│
  976.                          └───────────────────────────┘
  977.  
  978.      and in MAX\MISC\WELCOME.MEC to nag users who login (and not new users):
  979.  
  980.    ┌────────────────────────────────────────────────────────────────────────┐
  981.    │[ifexist]UNKNOWN.DAT [GE Normal] You are calling from an unknown number!│
  982.    │[delete]UNKNOWN.DAT                                                     │
  983.    └────────────────────────────────────────────────────────────────────────┘
  984.  
  985.      Personally, I give users five chances (in a row) using Maximus keys to
  986.      call from a wrong number, then they are denied access.  Your
  987.      implementation should depend on the level of security your system
  988.      requires.
  989.  
  990.      Suggestion: Use SCID's errorlevels in a batch file for a more powerful
  991.      implementation of the above procedure (for example, so that legitimate
  992.      callers who show up as "Out-of-Area" are not chastised, but "Private"
  993.      callers are).
  994.  
  995.  
  996.  
  997.  
  998.  
  999.  
  1000.      M I S C E L L A N E O U S   I N F O R M A T I O N                     5
  1001.  
  1002.      _______________________________________________________________________
  1003.  
  1004.  
  1005.  
  1006.      ┌════════════════════┐
  1007.      │ [5.1] FUTURE PLANS │
  1008.      └════════════════════┘
  1009.  
  1010.  
  1011.      In future versions I plan to include:
  1012.      
  1013.         ■ cache of the most popular callers for extremely quick logins
  1014.  
  1015.         ■ using a bbs dropfile to read the user phone number and then
  1016.           upgrade the user status if it matches the caller-id number.
  1017.           The dropfile can then be re-read by the bbs, allowing new user
  1018.           validation with virtually any bbs software.
  1019.  
  1020.         ■ a MEX script for Maximus 3.0 which will automatically plug the
  1021.           caller-id data into the userfile (into the seldom used DATAPHONE
  1022.           field), perhaps eliminating the need for caller "verification"
  1023.           altogether
  1024.      
  1025.  
  1026.  
  1027.      ┌═══════════════════════┐
  1028.      │ [5.2] RELEASE HISTORY │
  1029.      └═══════════════════════┘
  1030.  
  1031.  
  1032.      v1.20  Oct 18/96  Turns out that NONE of the DOS versions were working
  1033.                          correctly, because of bad memory use and DOS not
  1034.                          initializing variables like OS/2 does.  Fixed the
  1035.                          subsequent "User Not Found" problem and added "Out
  1036.                          of Memory" error messages.  Thanks to Phil Simpson.
  1037.                        Fixed mess when COUNTRY_CODE and AREA_CODE are
  1038.                          commented out.
  1039.  
  1040.      v1.11  Jun 08/96  A BIT of ignorance (sorry), remember Jay, one's
  1041.                          complement is ~ not !, a bunch of logic errors
  1042.                          fixed.
  1043.                        Corrected trap with with non-plural words (this one
  1044.                          was nasty).
  1045.                        linesfromend wasn't showing up in log properly; added
  1046.                          linefeeds to validation log entry.
  1047.                        Couple more log entry problems.
  1048.  
  1049.      v1.10  May 17/96  MUCH Faster USER.BBS look-up (especially if you're
  1050.                          running on a clunky 386 or 486 like me) and a
  1051.                          whole bunch of other performance tweaks (no doubt
  1052.                          introducing a bunch more bugs).
  1053.                        last_call check now date and time.
  1054.                        As for the bugs, a change I made to the errorlevels
  1055.                          were causing all private callers to be dumped, and
  1056.                          SCID logfile was reporting "validated" on failed
  1057.                          validations.
  1058.  
  1059.      v1.03  Apr 11/96  Max v3 encrypted passwords are now recognized (SCID
  1060.                          will disable [AUTOPASSWORD]).
  1061.                        Max v3 second phone number (data) now recognized for
  1062.                          an easier way to let the user have an alias number
  1063.                          -- you won't need to update the phonelist file.
  1064.                        Change to current_time and last_call_date difference.
  1065.                        Out-of-Area and private now shown in log on low
  1066.                          loglevel.  Display user's city and number of calls
  1067.                          rather than phone number.
  1068.                        Fixed toggling of APW if no APW_Keytoggle is defined.
  1069.                        Properly reports "error" on logtimefail and
  1070.                          linesfromend fail.
  1071.                        CHANGED ERRORLEVELS, updates to doc and register.txt.
  1072.  
  1073.      v1.02  Apr 04/96  You'd think I'd test these before I release them.
  1074.                          Allows autopasswords even if the CID time is LESS
  1075.                          than the allowed time buffer.
  1076.  
  1077.      v1.01  Apr 02/96  Didn't notice this till the month changed.  Fixed a
  1078.                          small bug in the way I calculated last_call_date.
  1079.  
  1080.      v1.00  Apr 01/96  First release of Sentry-CID on April Fool's Day,
  1081.                          because, let's face it, I'm a fool for working
  1082.                          on this program when I should have been studying
  1083.                          for finals.
  1084.  
  1085.  
  1086.  
  1087.      ┌════════════════════════════════════┐
  1088.      │ [5.3] SOFTWARE UPDATES AND SUPPORT │
  1089.      └════════════════════════════════════┘
  1090.  
  1091.  
  1092.      I will release new versions of this software package as new ideas hit
  1093.      me or as bug reports come in (knock on silicon) :)  New releases will
  1094.      be found at the BBS or URL listed below.  Registered users of
  1095.      Sentry-CID will receive notices from me when new version are
  1096.      available.
  1097.  
  1098.  
  1099.  
  1100.      ┌═════════════════════════════┐
  1101.      │ [5.4] CONTACTING THE AUTHOR │
  1102.      └═════════════════════════════┘
  1103.  
  1104.  
  1105.      I welcome all comments, suggestions and praise.  If you are reporting a
  1106.      bug you've found, please also include a snippet of the mailer log which
  1107.      caused the error and a copy of SCID's output log in debug mode (run on
  1108.      loglevel 5).
  1109.  
  1110.      Or maybe you'll just want to write me to say hi or offer me a
  1111.      high-paying job.  When I'm not hanging out in FIDO.BINKLEY or
  1112.      FIDO.OS2PROG, I can be reached at:
  1113.  
  1114.  
  1115.             ┌────────────────────────────────────────────────────────┐
  1116.           ┌─┴──────────────────────────────────────────────────────┐ │
  1117.           │    E-Mail: 3jhh3@qlink.queensu.ca                      │ │
  1118.           │            Jason.Hendriks@cyberspace.crp.kingston.on.ca│ │
  1119.           │       URL: http://qlink.queensu.ca/~3jhh3/software/    │ │
  1120.           │                                                        │ │
  1121.           │  Net-Mail: FidoNet 1:249/117                           │ │
  1122.           │       BBS: Cyberspace/2 BBS [613-542-3120]             │ │
  1123.           │            Queen's University, Kingston/Ont, CANADA    │ │
  1124.           │                                                        │ │
  1125.           │Snail-Mail: Jason Hendriks                              │ │
  1126.           │            183 Bayne Crescent                          │ │
  1127.           │            Cambridge, Ontario                          │ │
  1128.           │            N1T 1K4                                     │ │
  1129.           │            CANADA                                      ├─┘
  1130.           └────────────────────────────────────────────────────────┘
  1131.  
  1132.  
  1133.  
  1134.      Made in Canada, eh?
  1135.  
  1136.  
  1137.      ---
  1138.  
  1139.      &:-) JtG in '96!
  1140.  
  1141.  
  1142.  
  1143.  
  1144.  
  1145.  
  1146.      Ω
  1147.