RemoteAccess v2.52 Documentation

Where do you want to go?

BULLETINS

THINGS TO DO


BBS & MAIL NETS

CONNECTIONS

INFO

[NOTE: This document has been adjusted to conform to 7bit character]





















     +---------++-------+ +------------++----------+-----------+-------+
     |  +---+  ||   +---+ |  +-+  +-+  ||  +---+   +----+  +---+   +---+
     |  |   |  ||   +---- |  | |  | |  ||  |   |   |    |  |   |   +---+
     |  +---+  ++   +---+ |  | |  | |  ++  |   |   ++   |  ++  |   +---+
     |  +----+  |   +-----+  | |  | |   |  +---+    |   |   |  |   +-----+
     |  |    |  |         |  | |  | |   |           |   |   |  |         |
     +--+    +--+---------+--+ +--+ +---+-----------+   +---+  +---------+


          +----------+------+ +------+ +-------+ +-------+ +-------+
          |  +---+   |   +--+ |   +--+ |   +---+ |   +---+ |   +---+
          |  |   |   |   |    |   |    |   +---+ |   +-----+   +-----+
          |  +---+   |   |    |   |    |   +---+ +-----+   +-----+   |
          |  +----+  |   +----+   +----+   +-----+-----+   +-----+   |
          |  |    |  |        |        |         |         |         |
          +--+    +--+--------+--------+---------+---------+---------+




                               RemoteAccess 2.52


                    Copyright (C) 1989-1998 Bruce F. Morse

                              All Rights Reserved








                                   - 1 -
                Dedicated to the memory of Fred "Levi's" Horner





















































                                   - 2 -

          ============================================================
                              Table Of Contents
          ------------------------------------------------------------

          Chapter 1..................................................4
          Introduction...............................................4
            Top Down View............................................5
            Preamble and Credits.....................................7
            Licensing Information (Shareware version)................8
            How to register..........................................9
            The key system..........................................13
            Product Support.........................................14
            Installation............................................17
          Configuration.............................................19
          RACONFIG..................................................20
            The User Interface......................................20
            Running RACONFIG........................................21
          THE FILE MENU.............................................22
            Switches................................................22
            Info....................................................22
            Exit....................................................22
            DOS Shell...............................................22
          THE SYSTEM MENU...........................................22
            Paths...................................................23
              System................................................23
              Menus.................................................23
              Text Files............................................23
              Msg Base..............................................23
              File Base.............................................23
              File attach...........................................24
              Nodelist..............................................24
              CD-ROM temp...........................................24
              Semaphore.............................................24
              Rearchive.............................................25
              RIP Icons.............................................25
              System log............................................25
            Site Info...............................................25
              Name..................................................25
              Sysop.................................................26
              Location..............................................26
              Addresses.............................................26
            Security................................................26
          THE OPTIONS MENU..........................................26
            Messages................................................27
              Check For New Mail During Log-on......................27
              Full Mail Check.......................................27
              Quote String..........................................27
              External Editor.......................................28
              Default Origin........................................29
              Reply Header..........................................29
          Expands to the time that the original message (the one....30
              Message Uploads.......................................30

          ------------------------------------------------------------

          ------------------------------------------------------------

              Echo Net Replies......................................30
              Net Kill Sent.........................................31
              Confirm Delete........................................31
              Net Crash Option......................................31
              Net Crash Force.......................................31
              Net Attach............................................31
              Group Mail............................................32
              CC Mail...............................................32
              Return Receipts.......................................33
              Net Receipts..........................................33
            Files...................................................34
              Upload Credit.........................................34
              Payback Credit........................................34
              Touch Dates...........................................34
              Show Missing..........................................34
              Upload Space..........................................35
              Logon New Files.......................................35
              New Files Tag.........................................35
              Download Start and Download End.......................35
              Download Speed........................................36
              No Dupe Extension.....................................36
              DL Description........................................36
              List Format...........................................37
              Missing Format........................................39
              Upload Scan...........................................39
              RAMGR Function Keys...................................40
              External Archive Viewer...............................40
              Archivers.............................................41
              Logoff Warning........................................42
              New CD Areas..........................................42
            Restrictions............................................42
              Log-on Speed..........................................42
              ANSI Speed............................................43
              No300 Start and No300 End.............................43
            Errorlevels.............................................43
              Fax...................................................45
            Display.................................................45
              Monochrome............................................45
              Direct Screen Write Mode..............................45
              Snow Checking.........................................46
              Display Lines (Size)..................................46
            Colors..................................................46
            Paging..................................................47
              Duration..............................................47
              Maximum Number........................................47
              Ask Why...............................................47
              Sysop Messages........................................48
              External Chat Utilities...............................48
              Suspend Time During Chat..............................48
              Automatic Logging of Chat Sessions....................48

          ------------------------------------------------------------

          ------------------------------------------------------------

              Paging Availability Schedule..........................49
            New Users...............................................49
              Security..............................................49
              Flags.................................................49
              Credit................................................51
              Group.................................................52
              ANSI..................................................52
              AVATAR................................................52
              ClrScr................................................52
              More..................................................52
              Sub Days..............................................52
              Upload Credit (number of files).......................53
              EchoMail Check........................................53
              Sex...................................................53
              Data Phone............................................53
              Voice Phone...........................................54
              One Word Names........................................54
              Handle................................................54
              Birth Date............................................54
              Hot-Keys..............................................54
              Full-Screen Message Viewer............................55
              Full-Screen Message Editor............................55
              IEMSI.................................................55
              Language..............................................56
              Date Format...........................................56
              Capitalize Location...................................57
              Upload Credit Kilobytes...............................57
              Mailing Address.......................................57
              Telephone Scan........................................57
            System..................................................58
              Fast Log-Ons..........................................58
              Check Multi-Node Access...............................58
              Remote Sysop..........................................58
              Exclude Sysop.........................................58
              Text Shells...........................................59
              Log Style.............................................59
              Multi-Node............................................60
              Environment...........................................60
              Screen Blanking.......................................60
              Pausing After System Messages.........................61
              ALT-J Swap (Shelling to DOS)..........................61
              Use XMS...............................................61
              Use EMS...............................................61
              IEMSI.................................................61
              Password Echo Character...............................61
              Automatic ANSI Detection..............................62
              Password Tries........................................62
              Password Change Forcing...............................62
              Strict Password Checking..............................62
              Minimum Password Length...............................63

          ------------------------------------------------------------

          ------------------------------------------------------------

              Log-on Time...........................................63
              User Inactivity Timeout...............................63
              Watchdog Area.........................................63
              Sysop Area............................................64
              Check DOB.............................................64
              Limit Local...........................................64
              Save Password.........................................65
              Blank Logins..........................................65
            Prompts.................................................65
              Log-on Prompt.........................................65
              Left and Right Brackets...............................65
              Language Prompt.......................................65
              Language Header.......................................66
            Printer.................................................66
              Selecting the Printer Port............................66
          THE MODEM MENU............................................66
            Options.................................................66
              Comport...............................................67
              Speed.................................................67
              Lock..................................................67
              Answer................................................67
              Delay.................................................68
              Buffer................................................68
              Break.................................................69
              Tries.................................................69
              Offhook...............................................69
            Commands................................................69
          Pause for 1/4 of a second before continuing...............70
              Initialization Strings................................70
              Busy..................................................70
              Answer................................................71
            Responses...............................................71
              Init..................................................71
              Busy..................................................71
              Ring..................................................72
              Secure................................................72
              300 - 38400...........................................73
          THE MANAGER MENU..........................................73
            Message Areas...........................................73
              Moving, Copying and Deleting..........................74
              Name..................................................75
              Origin................................................75
              Read, Write and Sysop Security........................75
              Type..................................................76
              Status................................................76
              Users.................................................77
              Days Old, Days Rcvd and Max Msgs......................77
              Echoinfo..............................................77
              Combined..............................................78
              Attaches..............................................78

          ------------------------------------------------------------

          ------------------------------------------------------------

              SoftCRs...............................................78
              Deletes...............................................79
              AKA...................................................79
              Age...................................................79
              Group.................................................79
              Area Type.............................................79
              JAMbase...............................................80
              AltGroup1, AltGroup2 and AltGroup3....................81
            Message Groups..........................................81
              Name..................................................82
            File Areas..............................................82
              Name..................................................83
              Path..................................................83
              Download, List and Upload Security....................83
              New...................................................84
              Dupes.................................................84
              CD-ROM................................................84
              Free..................................................84
              LongDesc..............................................84
              DirectDL..............................................85
              PwdUL.................................................85
              UL Scan...............................................85
              ArcType...............................................85
              DL Days...............................................85
              FD Days...............................................86
              MoveArea..............................................86
              Min Age...............................................86
              Password..............................................87
              Group.................................................87
              Def. Cost.............................................87
              Uploads...............................................88
              Alternate File Groups.................................88
              Device................................................88
              AllGroups.............................................89
            File Groups.............................................89
            Protocols...............................................89
              Name..................................................92
              Key...................................................92
              Ext Ctl File..........................................92
              Batch.................................................93
              Status................................................93
              Log File..............................................93
              Control File..........................................93
              DL and UL Command Line................................94
              DL Ctl String.........................................94
              UL Ctl String.........................................95
              DL Log Keyword and UL Log Keyword.....................95
              Log Name Keyword......................................95
              Log Desc Word.........................................95
            Languages...............................................96

          ------------------------------------------------------------

          ------------------------------------------------------------

            Alt-Function Keys.......................................99
            Events.................................................100
              Start................................................101
              Status...............................................101
              Errorlevel...........................................101
              Forced...............................................101
              Days.................................................102
            Menus..................................................102
            Control Files..........................................102
            Combined...............................................103
            Limits.................................................103
              Security.............................................104
              Time.................................................104
              Download Limits for Individual Baud Rates............104
              Local................................................104
              RatioNum.............................................105
              RatioK...............................................105
              PerMin...............................................105
              FlexTime.............................................106
              Session..............................................106
              Reset................................................106
              ResetOfs.............................................106
              ResetAmt.............................................106
          Chapter 3................................................108
          Menu Administration......................................108
            ABOUT MENUS............................................109
            MENU LAYOUT............................................109
            AUTOMATIC COMMANDS.....................................113
            TEMPLATES..............................................114
            MESSAGE AND FILE GROUPS................................116
            THE TOP MENU...........................................117
            SPECIAL SWITCHES.......................................118
            GLOBAL MENU............................................119
            CREATING MENUS.........................................119
            MENU TYPES LISTING.....................................132
          Chapter 4................................................189
          External Support Files...................................189
            OVERVIEW...............................................190
            TEXT FILES EXPLAINED...................................190
            CONTROL CODES..........................................192
            CONTROL CODES LISTING..................................195
              System Function Codes................................195
              System Data Codes....................................197
              User Data Codes......................................198
              Padding Control Codes................................200
              Color Control Codes..................................200
            TEXT FILES LISTING.....................................201
            CONTROL FILES..........................................214
              Editing Control Files................................214
            CONTROL FILES LISTING..................................216

          ------------------------------------------------------------

          ------------------------------------------------------------

          Chapter 5................................................220
          User Administration......................................220
            NEW USER DEFAULTS......................................221
            USING REMOTEACCESS MANAGER.............................221
              Modifying a User.....................................222
              Finding a User.......................................222
              Adding a User........................................222
              Deleting a User......................................222
              Account Record Fields................................223
              Guest Accounts.......................................225
            RAUSER.................................................225
          Chapter 6................................................227
          Message Database Administration..........................227
            SPECIFICATIONS.........................................228
              JAM Database Files...................................228
              Hudson Database Files................................229
              Something in Common..................................230
            LIMITATIONS............................................230
            MAINTENANCE............................................230
              Running RAMSG........................................231
              Errorlevels..........................................234
          Chapter 7................................................235
          File Database Administration.............................235
            ABOUT THE FILE DATABASE................................236
            Administration Utilities...............................237
              GENFBASE.EXE.........................................237
              RAFILE.EXE...........................................243
                RAFILE Command-line Parameter Descriptions.........244
              RAMGR.EXE............................................249
          Chapter 8................................................256
          Questionnaires...........................................256
            WHAT IS A QUESTIONNAIRE?...............................257
            Automatic Questionnaires...............................258
            Script Command Listing.................................260
            Example Questionnaires.................................270
          Chapter 9................................................275
          Multi-node Operation.....................................275
            CONFIGURATION..........................................276
              RACONFIG.............................................276
              Paths................................................276
              CONFIG.SYS and AUTOEXEC.BAT..........................277
              Individual Node Configuration........................277
            Exit and Log Files.....................................278
            Batch Files............................................279
          Chapter 10...............................................281
          Mail Networking..........................................281
          PRINCIPALS OF A MAIL NETWORK.............................282
            ADDITIONAL REQUIREMENTS................................282
            CONFIGURING REMOTEACCESS...............................283
              Node Number..........................................283

          ------------------------------------------------------------

          ------------------------------------------------------------

              Message Areas........................................284
              Origin Lines.........................................284
              NetMail Areas........................................285
            Installing the Nodelist Files..........................285
            Cost Control...........................................286
              A Sample NODECOST.CTL File...........................287
          Chapter 11...............................................289
          Reference Information....................................289
            Sysop Keys and the Status Bar..........................290
              Sysop Function Keys..................................290
              Sysop ALT Keys.......................................291
              Other Sysop Keys.....................................293
            RemoteAccess Environment Variables.....................294
            RA.EXE Command-line Parameters.........................295
            Shell to Mailer Mode...................................298
            Errorlevels Returned by RemoteAccess...................299
            Batch Files Examples...................................300
              A Single-node System.................................300
              A Multi-node System..................................302
              A Multi-node System in Shell to Mailer Mode..........304

          ============================================================.
                                   - 3 -
          Chapter 1
          Introduction
          *	
          *	
          *	
          *	
          This chapter explains how to use this manual as a procedural
          guide as well as a reference guide.  It also explains the
          icons, sidebars and procedural steps which were included to
          illustrate step-by-step procedures and highlight various
          features and functions.











































                                   - 4 -
          Top Down View
          ============================================================
          This manual was written with a twofold target audience.
          First, the novice; one who has never used RemoteAccess
          before, and second; the experienced Sysop.  For the novice,
          this manual provides clear, in-depth descriptions of
          concepts and features as well as check-list procedures to
          assist in feature implementation.  For the experienced
          Sysop, the same features are available in addition to many
          reference examples and a useful index.

          In an effort to provide comprehensive documentation, we've
          taken a top-down approach.  Each feature and concept is
          explained in the order in which it is implemented or
          configured.  The chapters themselves are laid out in order
          of implementation and usage progression.  If you start at
          the beginning of this manual and work your way through its
          chapters, you will have learned RemoteAccess from a top down
          perspective and will be on your way to setting up a unique
          system all your own.
          
          Throughout this manual, you will notice various symbols and 
          text formatting which are used to attract your attention or 
          indicate an action or reference.  The following legend gives an 
          explanation for each.

          
          The "NOTE" Symbol
           
          This symbol is used to attract your attention to important 
          notes.  Wherever you see this symbol, read the notes that 
          follow.

          
          The CHEVRON POINTER Symbol ">"

          This symbol is used within a line of text to illustrate how
          to get to a specific option or feature in the RemoteAccess
          configuration program (RACONFIG) by selecting the sub- menus
          pointed to.  Wherever you see the > symbol, you will see a
          map instructing you which pick-list menus should be selected
          to access a specific area of RACONFIG.

          Pick-list menus are pull-down or pop-up menus that contain a
          list of selections from which to choose.  Pick-list menus
          are often available from other pick-list menus.  The
          following example shows how the pointer symbol is used to
          indicate a position in RACONFIG:
          
                                 System > Paths
          
          This indicates that from the main pick-list menu in


                                   - 5 -
          RACONFIG, you should select the System pick-list menu. From
          the System pick-list menu, you should select Paths. Many
          references to specific areas of RACONFIG are made in this
          manner throughout this manual, in order to give you an
          instant indication where to find a given area in RACONFIG.
          

          CHECK LIST Procedures

          This manual guides you through several step-by- step
          check-lists that allow easy implementation of certain
          features of RemoteAccess.  Wherever you see numbered lists
          (i.e. 1), 2), 3)), you will find a check-list procedure.









































                                   - 6 -
          Preamble and Credits
          ============================================================
          It seems hard to believe, but the very first version of 
          RemoteAccess was released just over six years ago. Living in
          Europe and the United States for most of that time has been
          about the best move I ever made, in terms of my own personal
          development. When I returned to Australia, I started an
          Internet division of Wantree. I discovered that juggling
          RemoteAccess, the Internet, and a usually understanding
          girlfriend was demanding to say the least.

          As a result, I have probably not given RemoteAccess as much
          attention as I have in the past, resulting in more and more
          protracted release dates for this version. Notwithstanding
          these obstacles, it's finally finished, and I hope you find
          the result as useful as past versions.
        
          I'd like to thank the RemoteAccess support and beta groups,
          alone with everyone who has supported the product by buying
          or registering it. The size of the list of individuals who
          have contributed in other ways has become ridiculous, so 
          rather than name everyone separately, I will take the easy 
          way out and say "thanks". You know who you are.
 



                                            Andrew Milner,
                                            Perth, Western Australia
                                            ------------------------


           From the new owner of RemoteAccess.

           Through the negotiations between Andrew Milner and myself,
           I now hold all rights to RemoteAccess.

           I shall endevor to continue to bring RemoteAccess to a level
           more in tune with the current state of the art.  There will
           obviously be a learning curve for me as to how Andrew's code
           has been constructed, but in all fairness to you, the SysOps,
           I will attempt to keep that as short as humanly possible.

           In short, I look forward to maintaining or exceeding your
           expectations!
           
                
                                            Bruce F. Morse
                                            Haverhill, Massachusetts
                                            United States of America
                                            ------------------------


                                   - 7 -
          Licensing Information (Shareware version)
          ============================================================

          "RA" refers to the executable programs and documentation
          contained in RemoteAccess Bulletin Board Software distribution
          archives released by Wantree Development (shareware version).

          1. RA is the copyrighted material of Wantree Development. It
          may only be used in accordance with the conditions set out in
          this license agreement.
        
          2. You may use RA for a period of three weeks on a trial basis
          in order to determine it's suitability for your particular
          application. After this period you MUST register each copy of
          RA that you run simultaneously. Multi-line installations that
          share a common file base AND have the same name need only 
          register one copy.

          3. Registration entitles you to use RA and any future versions
          of RA for as long as you wish, subject to any special licensing
          conditions attached to future versions. For details on the 
          registration procedure, refer to the section in this document
          "HOW TO REGISTER".
             
          4. Bruce F. Morse is in no way obligated to provide future
          versions of, or support for, RA.   

          5. Site and Group registrations are available, and are dealt
          with on a case by case basis.

          6. You may not modify or otherwise reverse-engineer RA.

          7.  You are encouraged to distribute RA provided that no fee
          is charged for its distribution, and that the distribution
          archive is not modified in any way. Pay Bulletin Board Systems
          may however charge their normal fee provided that no additional
          charge for RA is levied.  

          8. RA may not be included as part of any software library
          which is distributed on a commercial basis (commercial = "for
          money") without prior written permission from Wantree
          Development.

          9. RA may not be used in any unlawful or illegal manner.

          10. Bruce F. Morse's liability resulting from your use
          or inability to use RemoteAccess is limited to the amount
          that the affected party has paid for it, or in the event that
          RA was registered with a third party for payment to Bruce F.
          Morse, liability is limited to the amount that was received
          by Bruce F. Morse from that third party.



                                   - 8 -
          How to register
          ============================================================

          SHAREWARE version:

               Systems that qualify for this category must be          
               physically run from a noncommercial site. A site is     
               considered to be noncommercial only if it is a private  
               residence at which no commercial activities are         
               conducted.

          NOTE: As of this release, the shareware version only 
          supports a maximum of TWO (2) nodes. The Professional
          version supports up to 250.

          Print or reproduce the registration form at the end of this
          section and send it with your registration payment to one of
          the following sites:


               "Registration/RA"           |
               C/- Bruce Morse             |  use this site if your
               360 Kingsbury Avenue        |  area is not listed below.
               Haverhill, MA  01835        |
               USA                         |




        
          USA: $50                             
        
               "Registration/RA"        
               C/- Ed Meloan            
               1110 Terrace Circle Drive
               North Augusta SC 29841   
               USA                      

        









        
          * You MUST fill out the registration form correctly in order 
            for your details to be processed. Not doing so will result 


                                   - 9 -
            in delays in your key arriving.
        
          * Cheques and money orders should be made payable to the     
            person at your registration site.
        
          * Please include either a FidoNet address or a stamped,      
            self-addressed envelope so that receipt of your payment    
            can be acknowledged.


          PROFESSIONAL version:
             
               If the system is physically run from a commercial site  
               (ie. the site is not a private residence, or commercial 
               activities are conducted at the site).
        
          This is professionally packaged with an expanded ring-bound
          manual and includes three modules not available in the
          shareware version:
        
          1. Real-Time Conferencing - supporting up to 250 users
          concurrently, featuring public/private/password-protected
          conferences, conference moderators and sub-conferences.
        
          2. RANETMGR -  The RemoteAccess Network Manager, a utility
          designed to give you complete control over a busy multi-node
          system. Dynamically view the status of each node as users log
          on and off, what each user is doing, broadcast messages to any
          combination of nodes and automatically take any combination of
          nodes down for maintenance.
        
          3. RAEdit - A fully functional, specially customised and
          registered version of GEdit, a premium full-screen message
          editor.

       
          The professional version supports up to 250 nodes and 100 
          languages, while the shareware version supports a maximum of
          eight languages and 2 nodes.
        
          The professional version of RemoteAccess is sold on a
          commercial basis only. It is NOT shareware. 
        








                                   - 10 -
          Enquiries for the professional version should be directed to:

          RemoteAccess Professional
          Attn: Bruce F. Morse          
          360 Kingsbury Avenue
          Haverhill, MA  01835-8373
          
          1:324/122@FidoNet
          bfmorse@compuserve.com
          pro_sales@rapro.com
        
          USA:                            Europe:
       
          
          
          
                At this time, there are no authorized other sites
                for registration of RemoteAccess (ShareWare) or
                RemoteAccess Professional.
          
          
































                                   - 11 -
                   *** RemoteAccess REGISTRATION FORM ***


          Sysop Name _________________________________________________
        
          System Name ________________________________________________
        
          [The above two items are used to generate your registration  
           key and must appear EXACTLY as they do in RACONFIG.]
        
        
          Network Address (number and network name) __________________
        
        
          Internet e-mail address ____________________________________
        
        
          Primary BBS telephone number and baud ______________________ 

        
          Voice telephone number _____________________________________
        
        
          Hours of BBS operation _____________________________________
        
        
          Postal Address :
        
          ____________________________________________________________
        
          ____________________________________________________________
  
          ____________________________________________________________
        

          Version of RemoteAccess registering ______.
        
        
          Registration amount enclosed _______, for ____ copies.
        
        
          What do you like about RemoteAccess?
        
          ____________________________________________________________
        
        
          What enhancements/changes would you like to see in our next
          release?
        
          ____________________________________________________________
        



                                   - 12 -
          The key system
          ============================================================
        
          Upon registering you will receive your uniquely generated key.
          Each key is a small file approximately 2k in size which
          contains information about your registration. To install the
          key, simply rename it (if necessary) to RA.KEY and copy it to
          your RemoteAccess system directory.
        
          When RemoteAccess detects a valid key it switches into
          registered mode, identifying itself by placing a "+" at the
          end of the version number as well as displaying the name of
          the system and sysop it is registered to in the "version
          information" menu function.
        
          For example, logging on to a registered system you would see:
        
          RemoteAccess 2.52+
          Please enter your full name:
        
          Features marked in this manual with a {+} are only available
          when RemoteAccess is running in registered mode. These bonus
          features show our appreciation of your taking the time to
          register with us.
        
          It should be made absolutely clear that RemoteAccess is still
          fully functional before it is registered; the bonus features
          are "nice" but their absence makes the system no less usable.
          RemoteAccess is not and never will be "DemoWare" or
          "ExpireWare".
        
          WARNING! Your key is unique, and under NO circumstances should
          it be made available to anyone else. Doing so is a direct
          violation of the agreement you entered into with us by
          registering.



















                                   - 13 -
          Product Support
          ============================================================
        
          You  can always get the latest shareware version of
          RemoteAccess and technical support from the following systems:


                RemoteAccess Central            The FidoNet Echos
                My Private World BBS    -and-       RA_SUPPORT
                Haverhill MA                        RA_MULTI
                978 521 1223                        RA_UTIL
                FidoNet@1:324/122          (available on the backbone)


          USA and Canada: (North American RemoteAccess Support group)
  
               Bruce Bodger 
               The TruckStop BBS
               Tulsa OK         
               918 254 6618     
               FidoNet@1:170/400
        






               Mike Ehlert             
               Pacific Coast Micro     
               Thousand Oaks CA        
               805 494 8327            
               FidoNet@1:102/1001      





















                                   - 14 -
          Europe and others: (European RemoteAccess Support Group)
                       (subject to change without notice)




                    Intentionally Blank at this time
















































                                   - 15 -
          SWRAS (Swedish RemoteAccess Support Group):
                  (Subject to change without notice)



                    Intentionally Blank at this time










          U.K. (United Kingdom RemoteAccess Support Group):
                  (Subject to change without notice)





                    Intentionally Blank at this time































                                   - 16 -
          Installation
          ============================================================

          RemoteAccess should run on any IBM 80x86 compatible computer.
          The only two programs you will need in addition to the release
          package are DOS 3.x and a FOSSIL driver. The FOSSIL is a
          memory-resident program that many communications packages use
          to communicate with the modem. Two FOSSILs that have been
          successfully tested with RemoteAccess are Ray Gwinn's X00, and
          David Nugent's BNU. Either of these should be readily available
          from any local bulletin board.

          You will also need a modem that is capable of accepting Hayes-
          type commands. The minimum memory requirement is approximately
          400K, but 512K is recommended.

          1. Ensure that your CONFIG.SYS file contains these statements:

                    FILES=20
                    BUFFERS=25
                     
             If you intend to run a multi-node system you may      
             need to increase the number of file handles that DOS
             can open at one time, by raising the "FILES" value.
             NOTE: Each additional file handle will reduce available
             memory by 50 to 60 bytes.

             The more "BUFFERS" you allocate, the faster RemoteAccess
             will run. However, each additional buffer allocated will
             reduce memory available by 500 to 600 bytes.
    
          2. Create a directory to put the main program files in.      
             The configuration examples that follow later assume that
             this directory (the SYSTEM directory) is C:\RA.

          3. Ensure that your AUTOEXEC.BAT file contains a command to
             set the environment variable RA to your SYSTEM directory,
             so that RemoteAccess can find its configuration files:

                    SET RA=C:\RA

             It is possible to increase the overall performance of
             RemoteAccess by placing the file "RA.OVR" onto a ramdrive.
             If you elect to do this you must also set the following
             environment variable (if "F:" is your RAMDRIVE):

                    SET RAOVR=F:\

           4. Copy all of the executable and overlay files from the
              RemoteAccess distribution package into the SYSTEM directory. 

           5. Create five more sub-directories:


                                   - 17 -
              C:\RA\MSGBASE          This will hold the message      
                                     files the system creates.
  
              C:\RA\MENUS            To put your menus in,
  
              C:\RA\TXTFILES         To put files such as welcome      
                                     and disconnect screens in.
        
              C:\RA\ATTACH           To hold message file attaches. 

              C:\RA\FILEBASE         To hold the file database.


          This completes the installation, and you are now ready to move
          on to the CONFIGURATION section.







































                                   - 18 -
          Chapter 2
          Configuration
          *	
          *	
          *	
          *	
	  This chapter explains the configuration of RemoteAccess
	  which is accomplished with the use of the configuration
	  program, RACONFIG. RemoteAccess can be configured almost
	  completely from within this program.	Features and options
	  are explained in the order in which they appear in RACONFIG.
	  You'll learn how each feature functions as you step through
	  this chapter.









































                                   - 19 -
          RACONFIG
          
	  In the RemoteAccess system directory (usually \RA  after an
	  initial installation), you'll find several programs which
	  are discussed throughout this manual.  One of these is the
	  very powerful, all-around configuration program called
	  RACONFIG. If you're just getting started, you'll want to
	  read this entire chapter which covers every aspect of the
	  RACONFIG program. Or, if you've already configured
	  RemoteAccess, use this chapter as a reference guide.
          
          
          The User Interface
          ============================================================
	  RACONFIG uses a full-screen user interface that is
	  completely menu-driven.  More specifically, it uses menus
	  that contain pick-lists.  A pick-list menu is one in which a
	  list of options is available for selection.  This pick-list
	  is usually contained within a small menu window or box.
	  This type of menu selection system is very common and easy
	  to use. Each menu contains a highlighted cursor-bar which is
	  used to select an item to be edited.	Throughout this
	  manual, the highlighted cursor-bar is referenced simply as
	  the cursor-bar. The cursor-bar is positioned on any item to
	  be edited or selected by using one of the two following
	  methods:
          
	  *	Pressing the first character of the menu item you wish
	  to select.  For example, if one of the pick-list menu
	  choices was File Areas, you could press F to position the
	  cursor- bar or...
          
	  *	Using the cursor positioning keys to move the
	  cursor up or down the pick-list until the cursor-bar is
	  positioned on the File Areas selection.
          
          In most instances, pressing <ENTER> with the cursor-bar
	  positioned on the field you wish to edit will place you in
	  edit mode.  However, some fields do not require any actual
          data entry and pressing <ENTER> will simply toggle these
	  fields between the selections available. The escape key
	  serves two purposes within RACONFIG.	It is used to exit
	  areas of data entry in most instances.  For example, after
          making changes to a message area, pressing <ESCAPE> exits
	  the message area screen and returns to the message area
          pick-list menu. Another function of the <ESCAPE> key is to
          abort field data entry.  For example, pressing <ESCAPE>
	  while you are actually entering data will abandon any
	  changes you may have made to that field, restoring it to its
	  original value.




                                   - 20 -
          Running RACONFIG
          ============================================================
	  RACONFIG is executed from the DOS command-line.  Four
	  command-line parameters are accepted by RACONFIG which alter
	  the mode or manner in which RACONFIG is loaded.  The
	  command-line parameters accepted are described below:
          
             -B    Forces black and white (monochrome) mode.

             -L    Use the language manager directly.

             -M    Use the menu editor directly.
          
          To run RACONFIG from the DOS prompt, type:
          
                RACONFIG <ENTER>
          
          Or if you are using a monochrome display:
          
                RACONFIG -B <ENTER>
          
	  The screen that will appear on your display shows the top-
	  level RACONFIG menu which contains five main menu options.
	  Each option has an associated pick-list menu.  The five main
	  options and the selections available under each is listed
	  below:

          
          File
          ------------------------------------------------------------
          Switches, Info, Exit and DOS shell.


          System
          ------------------------------------------------------------
          Your BBS details; Paths, Site Info, Addresses and Security.


          Options
          ------------------------------------------------------------
          Messages, files, restrictions, errorlevels, display,
          colors, paging, new users, system, prompts and printer
          options.


          Modem
          ------------------------------------------------------------
          Modem options, commands and responses.


          Manager
          ------------------------------------------------------------


                                   - 21 -
          Message and file areas and groups, protocols, languages,
          AltFN keys, events, menus, control files, combined area
          defaults and Limits.

	  The remainder of this chapter covers each and every option
	  and sub-option.  Many of these will require no modification
	  in most new installations, although it is recommended that
	  you select each option as you read through this chapter to
	  get a firsthand look at how data is input and modified with
	  this program.
          

          THE FILE MENU

	  The first of the five main menu options is the File menu.
	  It contains miscellaneous options and is the default menu
	  displayed when RACONFIG is loaded.  Step through each of
	  these options and see what they do...

          
          Switches
          ============================================================
	  This option displays the command-line parameters (also known
	  as switches) that RACONFIG accepts.  These are the same
	  parameters outlined on the previous page.

          
          Info
          ============================================================
	  This option displays the RemoteAccess version number for
	  which RACONFIG was created along with the program copyright
	  notice.

          
          Exit
          ============================================================
	  Selecting this option will end program execution and return
          you to DOS.  Pressing <ESCAPE> from a main option menu does
	  the same thing.  If any changes have been made to the
	  configuration, you will be prompted "Save changes (Y/n)?"
          before the program exits.  Pressing <ENTER> or "Y" will cause
	  all changes to be saved.  Pressing "N" causes all changes to
	  be discarded.  The program then exits to DOS.

          
          DOS Shell
          ============================================================
          When this option is selected, a DOS shell is loaded so you
	  can do other things.	To return to RACONFIG, type "EXIT"
          followed by <ENTER>, at the DOS prompt.




                                   - 22 -
          THE SYSTEM MENU

	  The System menu is where high-level options for your overall
	  BBS are configured.  File locations, site information,
	  network addresses and system security are all configured
	  here. The default settings provided are often times
	  sufficient for proper operation.   The installation program
	  inserts the necessary basic system information required.
	  Look at the individual options in the System pick-list.
	  Position the cursor- bar on System and then on Paths and
          press <ENTER>.


          Paths
          =============================================================
	  The paths shown on your display are those which you
	  specified during program installation.  These paths specify
	  where all RemoteAccess files are stored.  If a directory
	  path is entered that does not exist, you will be prompted
	  whether to create the directory.  The following directory
	  paths may be defined:

          
          System
          ------------------------------------------------------------
	  This field is used to specify where system and configuration
	  files are stored.  This directory is referred to as the
	  RemoteAccess system directory throughout this manual.

          
          Menus
          ------------------------------------------------------------
	  This field specifies the directory where default menus
	  (*.MNU files) are stored.

          
          Text Files
          ------------------------------------------------------------
	  This field specifies the directory where default text files
	  (*.A?? files) are stored.

          
          Msg Base
          ------------------------------------------------------------
	  Message and user database files are stored in this
	  directory. The only exception to this is when JAM format
	  message areas are in use and separate directories are
	  assigned to JAM message areas.






                                   - 23 -
          File Base
          ------------------------------------------------------------
	  File database files are stored in this directory.
	  RemoteAccess creates subdirectories under the directory
	  specified here, to hold file database files for each file
	  area.  The subdirectories created and maintained by
	  RemoteAccess are:
          
	  HDR	This directory contains all file database header
		files.

	  IDX	This directory contains all file database index
                files.

	  TXT	This directory contains all file database
		description text files.
          

          File attach
          ------------------------------------------------------------
	  This field specifies the directory where files attached to
	  local messages are stored.  RemoteAccess creates and
	  maintains subdirectories under this directory automatically
	  whenever files are attached to local messages.  These
	  temporary subdirectories are deleted by RemoteAccess when
	  the attached files have been downloaded or the message has
	  been deleted.
          
          
          Nodelist
          ------------------------------------------------------------
	  This field specifies the directory where mail network
	  nodelist files are stored.  If you are running RemoteAccess
	  in conjunction with a mail network and a Front End Mailer,
	  this directory is generally set to the directory containing
	  the nodelist files used by your Front End Mailer.
          
          
          CD-ROM temp
          ------------------------------------------------------------
	  When CD-ROM files are downloaded, they are temporarily
	  copied into this directory until the download is completed.
	  This ensures that the CD-ROM drive is not busy for the
	  duration of a download since the files are actually copied
	  to and downloaded from the directory specified here.
          
          
          Semaphore
          ------------------------------------------------------------
	  This field specifies the directory where temporary and
	  static files used for multi-node operations are stored.  A
	  RAM disk is highly recommended.  The Real-Time Conference


                                   - 24 -
	  feature relies heavily on the use of semaphore files for
	  passing information between nodes when NETBIOS functionality
	  is not available. If you are running in a multi-node
	  environment and do not have NETBIOS functionality available,
	  the directory specified here should be the drive and path to
	  a directory on a RAM disk.


          Rearchive
          ------------------------------------------------------------
	  This field specifies the directory used to temporarily store
	  files during an archive conversion process.  See the RAFILE
	  REARC function described in the Message Database
	  Administration chapter for information on this feature.


          RIP Icons
          ------------------------------------------------------------
          This is the path where your RIP icons are stored (if you
          use RA's built-in RIP icon support - menu command 76).
          Check the documentation supplied with your RIP painting
          software for information on creating and storing RIP icons.          

          
          System log
          ------------------------------------------------------------
	  This field specifies the full path and name of the system
	  log file.  Optionally, you may specify the *N macro which
	  expands into the current node number.  For example, if this
	  is specified as C:\RA\RA*N.LOG, node one will write to the
	  C:\RA\RA1.LOG file while node two will write to the
	  C:\RA\RA2.LOG file.  By not specifying a path, the log file
	  will be written in the current node directory.
          
          
          Site Info
          ============================================================
	  Selecting this option presents a pick-list menu which allows
	  you to configure your System and Sysop names as well as the
	  location of your BBS.  This information is displayed using
	  various text file control codes or menu items within your
	  BBS and is also used to generate your customer number, which
	  was generated during program installation. Position the
          cursor-bar on Site Info and press <ENTER>. Enter the
	  appropriate data in each of the three fields.
          
          
          Name
          ------------------------------------------------------------
	  This field specifies the name of your BBS.  The contents of
	  this field is written to all exit files created when
	  shelling or exiting to run external programs.


                                   - 25 -
          Sysop
          ------------------------------------------------------------
	  This is the name of the System Operator (Sysop).  Any
	  messages addressed to Sysop are automatically addressed to
	  the name entered here.  The contents of this field is also
	  written to all exit files created when shelling or exiting
	  to run external programs.
          
          
          Location
          ------------------------------------------------------------
	  This field specifies the location of your BBS.  For example,
	  this can be your city, state and country.


          Addresses
          ------------------------------------------------------------
	  This option is used to enter your mail network address, if
	  applicable.  Notice that in addition to a Main address, you
	  may specify up to 9 AKA addresses.  With RemoteAccess, you
	  can participate in up to a total of 10 mail networks by
	  entering alternate network addresses here. If you will be
	  participating in one or more mail networks, select your Main
	  and AKA network addresses using the format:
          
			      Zone:Net/Node_number

	  If you won't be participating in a mail network, leave these
          fields blank.  For more information on mail networking, see 
          the Mail Networking chapter later in this manual.

          
          Security
          ============================================================
	  This option allows you to select a password that would be
	  required in order to load RACONFIG, RAMGR and RANETMGR as
	  well as in order to select any Sysop Function Keys from
	  the local console. {+} Registered only.
          
	  NOTE:  The only way to remove this password is to delete the
	  file CONFIG.RA from the system directory.  Therefore, if you
	  decide to implement security at the local console, it may be
	  wise to backup CONFIG.RA prior to implementation.


          THE OPTIONS MENU

	  The third main option is the Options menu.  This menu is
	  used to configure various features related to your overall
	  system. Options available from this menu are grouped by
	  their perspective areas.  Each group has its own pick-list
	  menu. Position the cursor-bar on the Options selection.  The


                                   - 26 -
	  Options pick-list menu will be displayed automatically.  The
	  cursor-bar automatically repositions itself over the
          Messages group selection.  Press <ENTER> for the Messages
	  group pick-list menu.
          

          Messages
          ============================================================
	  The Messages group pick-list menu presents a list of
	  features that may be configured which pertain to the overall
	  message system.

          
          Check For New Mail During Log-on
          ------------------------------------------------------------
	  When enabled, this option forces RemoteAccess to scan the
	  message base for new mail addressed to the user.  This
	  option has three possible settings; Yes, No or Ask.  If set
	  to Yes, RemoteAccess will automatically check for new mail
	  during the log-on process.  If set to No, the user's mail-box
	  will not be scanned.	If set to Ask, the user will be
	  prompted whether to check for new mail during the log-on
	  process.

          
          Full Mail Check
          ------------------------------------------------------------
	  This option has two possible settings; Yes or No.  If set to
	  Yes, RemoteAccess will scan the entire message base from
	  beginning to end for mail addressed to the user that is
	  marked as unread.  If set to No, the message base is only
	  scanned from the last message that the user has read.  While
	  this is much faster there is the possibility that some mail
	  may be skipped if the user elected not to read mail during
	  the previous log-on session.
          
          
          Quote String
          ------------------------------------------------------------
	  This option is used to select the string of characters which
	  RemoteAccess will place before any message text that is
	  quoted in a reply.  This is useful for separating quoted
	  message text from reply message text within a message. For
          example, a message quote string specified as the ">"
	  character might look like this:
          
          +-----------------------------------------------+
          | > I have been using RemoteAccess for two      |
          | > months now and love it!                     |
          |                                               |
          | I have to agree with you there, John.         |
          +-----------------------------------------------+


                                   - 27 -
	  In this example, you can see that the message text that is
	  being quoted begins with the defined Quote String.  This
	  makes the message easier to understand.

	  Two macro characters are also supported within the quote
	  string.  They are:
          
	  @  This macro character is expanded within message text into
	  the upper-case initials of the person who is being quoted or
	  replied to.
          
	  #  This macro is expanded into the lower-case initials of
	  the person who is being quoted or replied to.
          
          For example, if the quote string was specified as "@>",
	  quoted message text might look something like this:
          
          +-----------------------------------------------+
          | JP> I have been using RemoteAccess for two    |
          | JP> months now and love it!                   |
          |                                               |
          | I have to agree with you there, John.         |
          +-----------------------------------------------+
          
	  This gives an even better idea of which message text is
	  being quoted.
          

          External Editor
          ------------------------------------------------------------
	  With this option, you can enable the use of an external,
	  full-screen message editor. The full-screen editor allows
          messages to be entered in a word processing type of environment
	  rather than a line-by-line text entry environment like the
	  one used with the internal message editor.  Full-screen
	  editors usually allow you to move the cursor around the full
	  screen, entering and editing text. One such editor is GEdit.

	  To configure RemoteAccess to use GEdit as the external
	  editor, follow the check-list procedure below:

	  1)	 Assuming that your RemoteAccess system directory is
	  defined as \RA, enter the following text in the External
	  Editor field:
          
			    \RA\GEDIT.EXE
          
	  As previously mentioned, any of the optional data macros
	  supported in menu function type 7 - "Run an external program
	  in a shell" can be used here.  For example, to swap
	  RemoteAccess out of memory before loading GEdit, enter the
	  following text in the External Editor field:


                                   - 28 -
			  \RA\GEDIT.EXE *M
          
	  That's all there is to it.  With this field defined, users
	  who have the full-screen editor enabled within their profile
	  will now use GEdit as their message editor.
          
	  NOTE:  Most full-screen editors require at least ANSI
	  emulation on the user's end.  RemoteAccess will warn a user
	  of this minimum requirement if the user does not have ANSI
	  emulation enabled.
          

          Default Origin
          ------------------------------------------------------------
          An origin line, which is appended to the end of EchoMail
          messages, is used in mail networks to show users of other
          systems where a message originated.  This option sets the
          default origin line which is appended to the end of all
          outgoing EchoMail messages.  This will take effect in all
          EchoMail areas except in areas where you have defined a
          specific origin line to be used.
          
          For example, if the following origin line was specified:
          
                         RemoteAccess Central
          
          When appended to an outgoing EchoMail message, would look
          something like this:
          
               * Origin: RemoteAccess Central (2:270/18)


          Reply Header
          ------------------------------------------------------------
          The reply header is displayed at the top of a message whose
          sender was not the originator or the receiver of the
          original message.  In other words, if a user replied to a
          message that was not originally addressed to him or her and
          the user was not the sender of the message being replied to,
          the reply header would be inserted at the beginning of the
          reply to indicate to other readers that the message was
          being replied to by a third party.

          The following macro characters may be used within this
          field:
          
          @  Expands into the person's name to which the original
          message was addressed.
          
          #  Expands into the person's name who posted the original
          message (the one being replied to).
          


                                   - 29 -
          `  Expands into the date that the original message (the one
          being replied to) was posted.
          
            Expands to the time that the original message (the one
          being replied to) was posted.
          
          For example, if the following reply header was specified:
          
                In a message originally to @, # said:
          
          Would expand in a message to:
          
                In a message originally to All, Joe User said:
          
          
          Message Uploads
          ------------------------------------------------------------
          The Msg uploads option is used to allow users to upload
          message text.  If set to Yes, when a user enters a message,
          the user will be prompted whether to upload a prepared
          message. This allows the user to prepare a message off-line
          using any ASCII text editor, and upload it using any of the
          available internal file transfer protocols.
          
           
          NOTE:  Only internal protocols may be used to upload a
          message since RemoteAccess does not have enough control over
          external protocols.  The maximum size of a message that may
          be uploaded is 20 kilobytes.
          

          Echo Net Replies
          ------------------------------------------------------------
          The "Echo netreplies" option is used to allow or disallow
          users to reply to EchoMail messages via private NetMail.
          When replying to an EchoMail message, users will be prompted
          whether to send the reply via NetMail, when this option is
          enabled. For example, with this option enabled, and a user
          selects to reply to an EchoMail message, the following
          prompt will be given:
          
                 Reply via personal NetMail (y/N)? _
          
          If the user presses "Y", RemoteAccess will send the saved
          reply via NetMail.  If the user presses "N" or <ENTER>, the
          saved reply will be posted in the same EchoMail area as the
          message being replied to. {+} Registered only.
          
           
          NOTE:  This option is only available when RemoteAccess can
          successfully determine where the original message came from.
          


                                   - 30 -
          Net Kill Sent
          ------------------------------------------------------------
          The "Net.killsent" option applies to NetMail sent through a
          mail network.  When a message is entered, and this option is
          set to Ask, RemoteAccess will ask the user if the message
          should be deleted after it has been sent from the message
          database.  If this option is set to Yes, NetMail messages
          will be deleted automatically after being sent from the
          message database.
          
          
          Confirm Delete
          ------------------------------------------------------------
          The "Confirm delete" option has two possible settings; Yes
          and No.  If set to Yes, users who delete a message will be
          prompted for confirmation prior to deletion.  If this field
          is set to No, RemoteAccess does not prompt for confirmation
          and the message is deleted as soon as the delete command is
          executed. Setting this option to Yes prevents users from
          accidentally deleting messages from the database.
          
          
          Net Crash Option
          ------------------------------------------------------------
          The "Net.crash" option is used to specify the minimum
          security level required for users to be able to send a
          message as CrashMail. For example, if this field is set to a
          value of 100, then any user with a security level of 100 or
          greater will be prompted whether to send a NetMail message
          with the Crash flag set.

          NOTE:  CrashMail is network mail that is not held for
          delivery as regular NetMail is.  Therefore, making this
          option available to users in general could potentially lead
          to excessive long distance charges since CrashMail messages
          are generally sent at any time of the day.
          

          Net Crash Force
          ------------------------------------------------------------
          The "Net.crash force" option is used to specify the minimum
          security level for which NetMail messages will be forced to
          be sent as CrashMail. With the "Net.crash opt" field, you
          could specify the minimum security level required for asking
          the user if a message should be sent as CrashMail.  With
          this field, the setting specifies the security level where
          CrashMail will be forced. This field might be set to a level
          higher than that of even the Sysop in order to avoid sending
          CrashMail during inappropriate times of the day.
          
          



                                   - 31 -
          Net Attach
          ------------------------------------------------------------
          The "Net.attach" option is used to specify the minimum
          security level required to attach files to NetMail messages.
          In most mail networks, this is perfectly acceptable except
          where NetMail messages are routed through other systems
          within the network.  In such cases, the systems performing
          the routing of NetMail messages would also be burdened with
          the time and cost of sending any attached files with the
          messages. Messages generally take a few seconds to send
          whereas files can take several minutes to send.  Therefore,
          this option should be used with care and consideration for
          other mail network Sysops.

          When specifying a filename to attach to a NetMail message, a
          full drive:path\filename may be given.
          
          
          Group Mail
          ------------------------------------------------------------
          This option is used to determine the minimum security level
          a user must have in order to post mail to users of a
          specific group.  Since group mail messages are actually
          individual messages addressed to each user of a given group
          or security level, it has the potential of using up a bit of
          disk space.  This is something that should be considered
          when setting this option.  Group mail is usually a feature
          that is used by the Sysop or Assistant Sysop only.

          See menu function type 27 - "Post message" in the Menu
          Administration chapter for more information on sending group
          mail.
          

          CC Mail
          ------------------------------------------------------------
          Use this option to specify the minimum security level
          required to send carbon copies of messages to other users.
          If enabled, and a user saves a message, RemoteAccess gives
          the following prompt:
          
              Send carbon copies to other users (y/N)? _
          
          If Yes is entered in response to this prompt, RemoteAccess
          prompts the user to enter another "To:" name.  For each
          valid name entered, a carbon copy of the original message is
          sent. Carbon copies contain the original message text, with
          a line inserted at the top of the message informing the
          recipient that the message is a copy:
          
              * Carbon copy, originally to:  Joe User
          


                                   - 32 -
          Return Receipts
          ------------------------------------------------------------
          Use this option to specify the minimum security level
          required to enable users to request return receipts.  Users
          having access to this feature who send messages to other
          users on your system may request return receipts which
          inform them when their messages have been read by the
          recipient.

          When this feature is enabled and a message is saved,
          RemoteAccess displays the following prompt:
          
               Would you like a return receipt (y/N)? _
          
          If the user answers Yes, RemoteAccess generates a receipt
          when the message is read by the recipient.  Messages for
          which a return receipt is requested contain the ReqRec flag
          in the message header.  This is displayed to the recipient
          of the message informing of the receipt request.
          
          Here's an example of a return receipt generated by
          RemoteAccess:
          
          
           Message #2323 - Message Area Name (Private) (RetRec)
              Date: 02-15-93 16:55
              From: RemoteAccess
                To: Joe User
           Subject: Return receipt confirmation
          
           Confirmation receipt:
           To   : Jim User
           Date : 15-Feb-93 16:50
           Rcvd : 15-Feb-93 16:55
           Subj : Hi Joe
          

          Net Receipts
          ------------------------------------------------------------
          Like the return receipts which are used locally, you can
          also specify whether or not your system will allow the use
          of the NetMail Receipt feature.  This option allows you to
          specify the minimum security level required for access to
          this feature.

          When this feature is enabled, the sender of a NetMail
          message is given the opportunity to request a return
          receipt. While this might be ideal in certain situations,
          the majority of Sysops who participate in mail networks
          frown on return receipt requests since they can cause undue
          long distance charges in order to return receipts.  For this
          same reason, many Sysops do not honor return receipt


                                   - 33 -
          requests via NetMail.
          

          Files
          ============================================================
          The next option group in the Options pick-list is the Files
          option group.  This group contains a pick-list of features
          that pertain to the RemoteAccess file transfer system.  Step
          through each option as you read the descriptions that
          follow.
          
          
          Upload Credit
          ------------------------------------------------------------
          This feature provides a way of rewarding your users for
          uploading files to you.  When this is set to a non-zero
          value, users are granted the number of seconds entered here
          for each one minute of time spent uploading.  For example,
          if this field is set to a value of 30 (seconds), and a user
          spends 10 minutes uploading, the user would be granted an
          extra 5 minutes for the current log-on session.
          
           
          NOTE:  The system timer is always disabled while an upload
          is in progress.


          Payback Credit
          ------------------------------------------------------------
          This feature allows users to be credited with the number of
          credits specified here, each time a file which a user has
          previously uploaded is downloaded by another user.  For
          example, if this field is set to a value of 1 and Joe User
          uploads the file MYFILE.ARJ, Joe will be given 1 credit each
          time MYFILE.ARJ is downloaded by another user.

          NOTE:  If this field is set to a value of 255, then the
          uploader is credited with the cost (in credits) of the file
          to the downloader.
          

          Touch Dates
          ------------------------------------------------------------
          When a file is uploaded using a batch protocol such as
          Zmodem or Ymodem, the original date of the file is normally
          preserved when the file is saved in the upload area.
          However, if this option is set to Yes, RemoteAccess will
          reset the date stamp of the file to the date on which it was
          uploaded.
          
          



                                   - 34 -
          Show Missing
          ------------------------------------------------------------
          If this option is set to Yes, RemoteAccess will display file
          database entries even if the actual file is not present
          within the file area being listed.  For example, an entry
          may exist in the file database even though the actual file
          may have been deleted or moved.  If this is the case, and
          this option is set to Yes, RemoteAccess will display the
          entry for which the file is missing using the "Missing
          format" described later in this section.
          
          
          Upload Space
          ------------------------------------------------------------
          It is possible to disable uploads when the amount of free
          space on your upload drive falls below a preset level.  For
          example, to disable uploads if there is less than 1 megabyte
          of free space available, enter 1024 (k) in this field.
          
          
          Logon New Files
          ------------------------------------------------------------
          This option has three possible settings; Yes, No or Ask and
          is used to allow or disallow users to check for new files
          since their last call during the log-on process.  The
          effects of each setting is described in the following table:
          
          Setting   Description
          ------------------------------------------------------------
          Yes       During the log-on process, RemoteAccess will
                    automatically scan the file database for files
                    that are new since the user's last log-on,
                    presenting the list to the user.

          Ask       During the log-on process, the user will be
                    prompted whether to scan the file database for new
                    files.
          
          No        No new files scan will be performed.
          
          
          New Files Tag
          ------------------------------------------------------------
          This option is used to enable or disable file tagging during
          the new files listing process.  For example, when this
          option is enabled, users may tag files for later download
          while viewing a list of files that are new since the user's
          last log-on. Each file that is tagged is stored in the
          user's tag-list which may be viewed, edited, cleared or
          downloaded during the log- on session.
          
          


                                   - 35 -
          Download Start and Download End
          ------------------------------------------------------------
          RemoteAccess allows you to define a period of time in which
          files may be downloaded by your users.  For example, you may
          not want your users to be able to download files between
          5:00pm (17:00) and 8:00pm (20:00).  In this case, Download
          Start would be set to 20:00 and Download End would be set to
          17:00, which would define the period (or window) of time in
          which files may be downloaded.

          Users who attempt to download files outside of the defined
          download schedule are presented with the DNLDHRS.A?? text
          file, if it exists.  This file is fully described later in
          the External Support Files chapter.

          To allow your users to download files at any time, set both
          of these fields to 00:00.
          
          NOTE:  Download hours are overridden by the xfer priority
          flag within a user's account record.  Users with this flag
          set may download at any time regardless of the schedule
          defined here.
          
          
          Download Speed
          ------------------------------------------------------------
          This option is used to specify the minimum BPS connect speed
          that is required by your users in order to download files
          from your system.  For example, if this field is set to a
          value of 2400, only users having a connect speed of 2400 BPS
          or greater would be permitted to download files.
          
          
          No Dupe Extension
          ------------------------------------------------------------
          RemoteAccess has the capability of checking for duplicate
          files before allowing an upload to proceed.  This eliminates
          the possibility of users uploading files which already exist
          within the file database.  However, when RemoteAccess checks
          for a duplicate filename, it may be configured to include or
          ignore the filename extensions when performing comparisons.
          This enables comparisons of different file archive types.
          For example, if the file MYFILE.LZH exists within the file
          database and a user attempts to upload the file MYFILE.ARJ,
          RemoteAccess will detect a duplicate filename when this
          option is set to Yes.
          
          






                                   - 36 -
          DL Description
          ------------------------------------------------------------
          This field has three possible settings; Yes, No or Ask and
          is used to allow or disallow your users to include file
          descriptions when downloading files.
          
          Setting   Description
          ------------------------------------------------------------
          Yes       RemoteAccess automatically includes a file
                    description list with downloaded files.
          
          Ask       Before a download is started, RemoteAccess asks
                    the user whether to include file descriptions with
                    the file being downloaded.
          
          No        RemoteAccess does not send file descriptions.
          
          
          List Format
          ------------------------------------------------------------
          Using this option, you may configure the format in which
          file database entries are displayed to your users.  This is
          accomplished using a template for the display line.  This
          method allows you to completely customize the way in which
          your file lists are presented.  The following table lists
          the macros that are supported within this field as well as
          within the "Missing format" field described in this section.
          {+} Registered only.          

          Macro   String Data Represented by This Macro
          ------------------------------------------------------------
          @NE     Filename, uppercase, with extension.
          @NN     Filename, uppercase, no extension.
          @SB     File size in bytes.
          @SK     File size in kilobytes.
          @UL     Name of the file Uploader.
          @UD     Date on which file was uploaded.
          @FD     Actual file date.
          @LD     Date on which the file was last downloaded.
          @TD     Number of times file has been downloaded.
          @Kn     Keyword [n] for the file (where n = 1 to 5).
          @CS     Cost of the file in credits (deducted from user's
                  credit).
          @DF     Formatted description of the file.
          @DU     Unformatted description of the file (also referred
                  to as user mode).
          @FR     Displays (Free) if the file is free, spaces if it is
                  not.
          @NA     Displays (NotAvail) if the file is marked as not
                  available.
          @NW     Displays an * character if the file is new, space if
                  it is not.


                                   - 37 -
          @PW     Displays (Password) if the file is password-
                  protected.
          
          Substituting a "%" character for the "@" character forces
          string type fields to lowercase.  Substituting a "^"
          character for the "@" character forces string type fields to
          uppercase. There is one additional special macro - "#nn"
          which is used to set the width for all following fields to
          "nn" characters.  When used, "nn" must be specified as two
          digits.  For example, specifying "#03" will truncate or pad
          all following fields to 3 characters in length.  Use "#00"
          to reset to default field widths.
          
          NOTE:  When used, the @DF and @DU macros must appear at the
          very end of the list format entry.
          
          When file lists contain special formatting such as boxed
          text, you should use the @DU macro to display unformatted
          file descriptions.  This user mode of display maintains any
          special formatting you may have applied to file descriptions
          and prevents RemoteAccess from automatically formatting or
          wrapping lines.

          In addition to these macros, the ^K[cc text file control
          code (change color) may also be used within this field.  See
          the External Support Files chapter for more information on
          this control code.  To obtain the hexadecimal color number
          to be used in conjunction with the ^K control code, press F1
          while editing this field.  This presents a color chart which
          can be used as a reference when selecting color numbers.

          The following example illustrates how a list format line
          might be defined.  This example includes codes which produce
          a file listing containing:
          
          *     The filename and extension, in uppercase characters
          displayed using a light yellow foreground on a black
          background.
          
          *     The date on which the file was uploaded, displayed
          using a light green foreground color on a black background.
          
          *     The size of the file in bytes displayed using a white
          foreground color on a black background.
          
          *     The number of times the file has been downloaded,
          displayed using a light magenta foreground color on a black
          background.
          
          *     An "*" character which is displayed for all new files
          since the caller's last log-on using a light red foreground
          color on a black background.


                                   - 38 -
          *     The formatted file description displayed using a gray
          foreground color on a black background.
          
             ^K[0E@NE ^K[0A@UD ^K[0F@SB ^K[0D@TD ^K[0C@NW^K[07@DF
          
          
          Missing Format
          ------------------------------------------------------------
          Like "List Format", this field allows you to configure the
          format in which file database entries with missing files are
          displayed to your users.
          
          See the "List Format" field above for information on macros
          supported within this field.
          
          NOTE:  This entry is only useful when the Show Missing
          option is set to Yes.
          
          
          Upload Scan
          ------------------------------------------------------------
          RemoteAccess allows uploaded files to be scanned, using
          external third-party software, to determine if the files
          have been infected by a computer virus.  This enables you to
          automatically detect files which contain a virus and take
          the appropriate actions before accepting the file or
          allowing its distribution.

          Position the cursor-bar on the Upload scan option and press
          <ENTER>.  A new pick-list menu will be displayed.  Press
          <ENTER> on the Scan Online option to toggle between the
          available settings.  When set to Yes, uploads will be
          scanned while the user is still on-line.  When set to No,
          uploads are scanned immediately after the user disconnects.
          When set to Ask, the text file UPLDSCAN.A?? is displayed (if
          it exists) just before the user is prompted, "Scan your
          uploads now?" which gives the user the option of waiting
          while the scan takes place or to scan the files after the
          user disconnects.
          
          NOTES:

          1.    Users are not credited for uploads until after the
          uploaded files pass the scan process.
          
          2.    To effect upload scanning you must also enable the UL
          Scan option for each file area in which this option should
          be active.
          
          Position the cursor-bar on the Failed Scan option and press
          <ENTER>.  A new pick-list menu will be displayed.  Use this
          menu to select which actions are to be taken when a file


                                   - 39 -
          fails the virus scan.  You may either delete the file or
          mark it as unlisted or unavailable.  You may additionally
          move the file to another area by specifying the area number
          in the "Move To" field.  Any of these options may be
          combined with the exception of the Delete option.

          Position the cursor-bar on the Scan Utility field and press
          <ENTER>.  Enter the command-line to activate the external
          virus scan utility.  RemoteAccess simply executes this
          command-line for each uploaded file.  The full path and
          filename of each file may be passed by specifying the @
          macro character.

          For example, to execute SCAN.EXE from the C:\UTILITY
          directory to scan a file just uploaded, this field might
          look like this:
          
                        C:\UTILITY\SCAN.EXE @
          
          If the scan utility returns a non-zero errorlevel to
          RemoteAccess, the file is assumed to be corrupt in some way
          and thus, fails the scan process.
          
          NOTE:  You must specify a full drive and path in the Scan
          Utility field.
          

          RAMGR Function Keys
          ------------------------------------------------------------
          This option allows you to configure up to 5 external program
          command-lines which may be activated using the ALT-F1
          through ALT-F5 keys from within the RAMGR file list screen.
          Any @ characters within this field will be expanded into the
          full path and filename of the file that is currently
          highlighted.  The *M macro may be used to swap RAMGR out of
          memory before shelling to the external program.

          For example, to run the program FILEVIEW.EXE from the
          C:\UTILITY directory, passing the path and filename of the
          currently-highlighted file and swapping RAMGR before the
          shell:
          
                     C:\UTILITY\FILEVIEW.EXE @ *M
          
          
          External Archive Viewer
          ------------------------------------------------------------
          RemoteAccess has an internal archive viewing utility that
          may be used to view the formatted contents of many types of
          file archives.  However, if you prefer, you can use an
          external archive viewing utility by specifying the full
          drive, path and filename of the viewer to be used, in this


                                   - 40 -
          field. See menu function type 34-"View archive" in the Menu
          Administration chapter for more information on viewing
          archives. {+} Registered only.


          Archivers
          ------------------------------------------------------------
          RemoteAccess supports the use of up to 10 archiver utility
          programs.  These are used primarily in converting archives
          from one format to another.

          When configuring file areas (later in this chapter) you can
          specify the archive format to convert all uploaded files to.
          For example, if you favor the .LZH format, you can specify
          that all uploads are to be converted to this type.  The
          conversion function is actually performed by the RAFILE
          utility which is discussed in the File Database
          Administration chapter. RAFILE uses the information entered
          here to carry out its REARC function.

          If you don't want to convert uploaded archives, you don't
          have to specify anything here.  But if you do, you'll
          probably want to include at least the most popular archiver
          utilities. These utilities are available on most any BBS
          that offers shareware software programs for download.

          Position the cursor-bar on Archivers and press <ENTER>.
          Next, position the cursor-bar on "Arc 1" and press <ENTER>
          to edit the archiver command information.
          
          It doesn't matter what order in which the archivers are
          entered.  RemoteAccess simply looks at the filename
          extension and determines which archiver is to be used.  The
          information entered includes the archive filename extension,
          the command- line used to unpack archives of this type and
          the command-line used to pack archives of this type.

          When the @ macro character is used in this field, it is
          expanded into the full path and filename of the archive
          filename that functions are being performed on. The first
          field (Arc 1) is used to enter a 3-character filename
          extension which corresponds to the archive type being
          defined.  For example, if you're entering archiver
          information for the ARJ archiver utility, enter ARJ and
          press <ENTER>. Next, you will be prompted to enter the
          unpack command- line for this archiver.  For example, to
          enter the unpack command-line for the ARJ archiver (and
          assuming that, for the sake of this example, it exists in
          the directory C:\ARJ) you might enter the following
          command-line:
          
                          C:\ARJ\ARJ.EXE e @


                                   - 41 -
          After pressing <ENTER> in this field, you will be prompted to 
          enter the pack command-line.  In keeping with our example, 
          you might enter:
          
                          C:\ARJ\ARJ.EXE a @
          
          After pressing <ENTER> in this field, you will be returned
          to the Archivers pick-list menu.  Continue entering the
          extension, unpack and pack information for all archiver
          types you wish to support.
          
           
          When entering the command-lines in the unpack and pack
          fields, you must specify a drive and path as well as the
          filename and extension.
          

          Logoff Warning
          ------------------------------------------------------------
          If enabled, this option will warn a user who is about to
          logoff that he/she has files tagged. At this point, the user
          will be given the option of returning to the system.


          New CD Areas
          ------------------------------------------------------------
          By default, file areas defined as being on a CD-ROM are not
          included in a scan for new files. It is possible to override
          this by setting this option to "Yes".


          Restrictions
          ============================================================
          The next option group is the Restrictions group.  This group
          simply offers three restriction settings that can be applied
          to your system. Position the cursor-bar on the Restrictions
          option and press <ENTER>.   Step through each of the pick-list
          options as you read the descriptions that follow.
          
          
          Log-on Speed
          ------------------------------------------------------------
          This option allows you to specify the minimum modem
          connection speed that is required in order for a user to be
          able to log-on to your system.

          For example, if this field has a setting of 2400, users
          connecting at a BPS rate less than 2400 would not be allowed
          to log-on.  Instead, the text file TOOSLOW.ASC is displayed
          just before the call is terminated.  See the External
          Support Files chapter for more information on this file.
          


                                   - 42 -
          ANSI Speed
          ------------------------------------------------------------
          This option is used to specify the minimum modem connection
          speed that is required in order for users to enable ANSI
          emulation.  Since ANSI escape codes are used to effect color
          changes and cursor positioning, they add to the
          communications overhead and can effectively slow throughput
          to callers of low BPS connection rates.

          For example, to restrict the use of ANSI emulation to
          callers with at least a 2400 BPS connect speed, set this
          field to 2400.
          
          
          No300 Start and No300 End
          ------------------------------------------------------------
          RemoteAccess allows you to configure a period (or window) of
          time in which 300 BPS callers are not allowed to log-on to
          your system.  Although faster modems have become affordable,
          we realize that there are still some 300 BPS modem Die-hards
          out there who refuse to upgrade.

          If you wish to restrict your system to allow 300 BPS callers
          only during certain times of the day, set these fields to
          the starting and ending times of this period.

          For example, to disallow 300 BPS callers between the hours
          of 5:00pm (17:00) and 8:00pm (20:00), enter 17:00 in the
          No300 Start field and 20:00 in the No300 End field.

          When a 300 BPS caller attempts to log-on during the
          restricted time frame, RemoteAccess will display the text
          file NO300.ASC (if it exists) prior to terminating the call.
          

          Errorlevels
          ============================================================
          The next option group is the Errorlevels group.  This group
          is used to specify the errorlevels that RemoteAccess will
          return when used in conjunction with a third-party Front End
          Mailer. Fax/modem support is also offered through the use of
          one of these options.

          If you won't be using a Front End Mailer or a fax/modem,
          skip ahead to the Display options group.  If you will be
          using a Front End Mailer or a fax/modem, or would like to
          understand how one is used with RemoteAccess, position the
          cursor-bar on Errorlevels and press <ENTER>.  A new
          pick-list menu will be displayed which contains a selection
          list of connect speeds and their corresponding errorlevel
          numbers.
          


                                   - 43 -
          Front End Mailer software is an application which is
          generally used to link a BBS to a mail network.  Within a
          mail network, systems exchange mail (NetMail), messages
          (EchoMail) and files.   Many Sysops participate in mail
          networks in order to provide their users with EchoMail
          message conferences which are message areas devoted to
          specific topics of all sorts.  This requires systems to
          adhere to guidelines set forth within individual mail
          networks.  It also requires systems to have the ability to
          answer an incoming call and determine whether the call is
          another node within the mail network or a human BBS caller.
          The system must then act accordingly.  If another node is
          calling, a protocol is used to exchange data between the
          nodes.  If the Front End Mailer detects a human BBS caller,
          it must be able to load the BBS. Under these conditions, you
          can probably see why separate Front End Mailer software is
          required in order to participate in a mail network.
          Although RemoteAccess does not act as a Front End Mailer to
          a mail network by itself, it does work in conjunction with
          most Front End Mailer software.

          Generally speaking, there are two basic methods of loading
          RemoteAccess while a Front End Mailer is in use.  The first
          method is to load the mailer directly from a batch file.
          The front end would then answer incoming calls and if a
          human BBS caller was detected, it would exit to the calling
          batch file with an errorlevel which is based on the caller's
          connection speed.  The calling batch file would trap the
          errorlevel and load RemoteAccess using the appropriate
          command-line parameters to set the BPS rate and other
          settings.

          The drawback to this method is that there may be long delays
          between the time the Front End Mailer detects the human BBS
          caller and the time RemoteAccess prompts the user to enter
          his or her log-on name.

          The second method greatly reduces this apparent loading time
          and sounds trickier to implement than it really is.  The
          Shell to Mailer feature permits RemoteAccess itself to be
          loaded first which, in turn, runs the Front End Mailer
          software in a DOS shell.  When a human BBS caller is
          detected by the Front End Mailer, it exits with the same DOS
          errorlevel set as in the first method.  But rather than
          control being passed back to the calling batch file, it is
          instead passed back to RemoteAccess which called the Front
          End Mailer software using the DOS shell.

          The errorlevel that the Front End Mailer software returns to
          RemoteAccess is checked against the list of errorlevels
          defined in the Errorlevel pick-list.  If a match is found,
          RemoteAccess uses the connection speed corresponding to the


                                   - 44 -
          matched errorlevel to communicate with the caller.

          The advantage of using the second method is that since
          RemoteAccess is already loaded when the DOS shell to load
          the Front End Mailer was executed, the BBS appears to load
          much faster and the caller doesn't experience a long delay
          (even if RemoteAccess is swapped to disk prior to shelling
          to the Front End Mailer software.
          
          NOTE:  When an errorlevel is passed which either does not
          match any of the errorlevels in the pick-list, or matches
          the errorlevel specified in the Fax field, RemoteAccess
          immediately exits to the calling batch file, passing the
          received errorlevel to it.
          
          For information on loading RemoteAccess in Shell to Mailer
          mode, see the RA.EXE Command-Line Parameters, Shell to
          Mailer and Batch File Examples sections of the Reference
          Information chapter.
          
          
          Fax
          ------------------------------------------------------------
          The Fax field is used to specify the errorlevel that
          RemoteAccess is to exit with when a fax connect response is
          received from the modem (see Responses in the Modem section
          below).  When RemoteAccess answers an incoming call and the
          connect response from the modem matches the Fax connect
          response, it exits to the calling batch file, passing the
          errorlevel specified here.  This enables you to use a
          fax/modem as your BBS modem and still receive incoming
          faxes. {+} Registered only.
          
          
          Display
          ============================================================
          The Display options group contains a pick-list of options
          that pertain to your computer's display monitor.   Through
          these options, RemoteAccess supports monochrome (black and
          white) and color monitors as well as 43 and 50 display line
          modes. For a list of display options, position the
          cursor-bar on Display and press <ENTER>.
          
          
          Monochrome
          ------------------------------------------------------------
          Setting this option to Yes tells RemoteAccess to use
          monochrome mode.  In this mode, RemoteAccess remaps
          (changes) all color definitions to black and white.
          




                                   - 45 -
          Direct Screen Write Mode
          ------------------------------------------------------------
          Specifies that fast direct screen writes are to be used.  If
          you are not using RemoteAccess in a multitasking
          environment, set this option to Yes.  This will cause all
          screen output to be written to video RAM directly instead of
          using your PCs BIOS functions to perform the task.  This
          results in a significantly increased screen write speed.  If
          you are using multitasking software, set this option to No.
          
          
          Snow Checking
          ------------------------------------------------------------
          Some older CGA (Color Graphics Adapter) adapters are prone
          to snowing while an application program performs display
          output functions.  This occurs when software updates the
          computer display at high rates.  RemoteAccess can counter
          this effect if the Snow Check option is set to Yes. If you
          have a CGA adapter, set this option to No.  If you discover
          the snowing effect, change it to Yes.
          
          
          Display Lines (Size)
          ------------------------------------------------------------
          The Display Lines option allows you to configure the display
          size (in lines) and has three possible settings:
          
          Setting   Description
          ------------------------------------------------------------
          25        Standard 25-line mode.
          43/50     EGA 43-line and VGA 50-line mode.
          AUTO      When this setting is specified, RemoteAccess uses
                    the mode which is active at the time it is loaded.
          
          
          Colors
          ============================================================
          The Colors option group contains a list of items that allow
          you to customize some of the more often used colors that the
          user sees.

          Select this option to display the pick-list of items that
          may be edited.  After selecting a particular item, a color
          selection pick-list menu will be displayed.  Use the UP,
          DOWN, LEFT and RIGHT keys to move the color selector within
          the pick-list.  As you move the selector, the hexadecimal
          color number located along the bottom of the menu changes to
          reflect the color at the current selector position.

          Position the color selector on the desired combination and
          press <ENTER> to save it.  The items for which colors can be
          configured are listed below.


                                   - 46 -
          Text        Default color of all text.
          Statbar     Color of the status bar.
          Highlight   Window highlight color.
          Window      Window normal color.
          Border      Window border color.
          Hiprompt    Highlighted text color.
          CRprompt    The Press <ENTER>  prompt color.
          Input       User input field color.
          Tag         Tag number (displayed in file lists) color.
          
          
          Paging
          ============================================================
          The next option group contains items related to the
          RemoteAccess Paging functions.  The items used to control
          the paging system's characteristics, as well as a paging
          schedule are configured here.

          In addition to the options that follow, RemoteAccess
          supports text file display and custom page tunes.  These are
          discussed in the chapters on Menu Administration and
          External Support files.

          Position the cursor-bar on Paging and press <ENTER>.
          
          
          Duration
          ------------------------------------------------------------
          Use this field to set the duration (in seconds) that the
          paging tune will sound at the local console.  If this time
          expires without any Sysop intervention, the user will be
          informed that the Sysop is unavailable.  The text file
          PAGED.A?? is displayed, if it exists.
          
          
          Maximum Number
          ------------------------------------------------------------
          This field specifies the maximum number of times a user can
          page the Sysop unsuccessfully during one session.  When this
          limit has been reached, the user will not be able to page
          the Sysop any more during the current session.  If a page is
          answered by the Sysop, the number of unsuccessful page
          attempts is reset to zero.
          
          
          Ask Why
          ------------------------------------------------------------
          If this field is set to Yes, users are prompted to enter a
          reason for the requested chat.  The response entered is then
          displayed on the status bar, and may be re-displayed later
          by pressing F6 on the local console keyboard.
          {+} Registered only.          


                                   - 47 -
          Sysop Messages
          ------------------------------------------------------------
          If a page attempt is unsuccessful, the user can be prompted
          to leave a message addressed to the Sysop.  To enable this
          feature, enter the desired message area number that you
          would like these messages to be stored in the Sysop Msgs
          field. Setting this field to zero disables this feature.
          {+} Registered only.          
          
          External Chat Utilities
          ------------------------------------------------------------
          The External field is used to specify the command-line of an
          external chat program.  If this field is not empty,
          RemoteAccess executes the specified program instead of using
          the built-in chat module.  All optional data macros
          supported by menu function type 7-"Run external program in
          a shell" may also be used within this field.

          For example, to use an external full-screen chat program
          called GCHAT.EXE located in the C:\RA directory, and swap
          RemoteAccess out of memory before loading the program, you
          might enter:
          
                          C:\RA\GCHAT.EXE *M
          
          Using the optional data parameter macros listed under menu
          function type 7-"Run an external program in a shell" in the
          Menu Administration chapter, you can pass any number of
          parameters that may be required by the external chat
          program. {+} Registered only.
          
          
          Suspend Time During Chat
          ------------------------------------------------------------
          If the Suspend feature is set to Yes, RemoteAccess freezes
          the system timer while the Sysop is chatting with a user.
          This means that the user will exit the chat with the same
          time remaining as when the chat was initiated.
          
          
          Automatic Logging of Chat Sessions
          ------------------------------------------------------------
          During a chat, the Sysop may press CTRL-A to record the
          conversation in an ASCII text log file.  If the Auto Log
          feature is enabled, the capture log is opened automatically
          each time a chat is initiated.

          Whether you open a capture log manually or automatically, a
          pop-up window appears on your display, prompting for the
          filename in which the chat session is to be recorded.
          
          Once a capture file is opened, it may be closed during the


                                   - 48 -
          chat session by pressing CTRL-A.
          
          
          Paging Availability Schedule
          ------------------------------------------------------------
          In each of the Sunday through Saturday fields you may define
          the start and end times during which users are permitted to
          page the Sysop on a daily basis.  The first field for each
          day determines the start time, and the second field
          determines the end time during which users may page the
          Sysop.  To disable paging completely for any given day, set
          both fields to 00:00.
          
          
          New Users
          ============================================================
          The New Users options group contains a pick-list of options
          which determine how your system will treat new users.
          

          Security
          ------------------------------------------------------------
          This field is used to specify the security level that will
          be assigned to a new user who logs-on for the first time.
          If you run a private system, and do not want to allow new
          users to log-on, set this field to zero.  When configured as
          a private system, new users are notified that the system is
          private and are disconnected immediately.  See the
          PRIVATE.ASC text file description in the External Support
          Files chapter for more information.
          
          
          Flags
          ------------------------------------------------------------
          When a new user logs-on to your system, you can assign
          default settings to the user's access flags.  Valid settings
          are ON or OFF (specified as X and -).

          You have probably already read sections boasting about the
          security system used by RemoteAccess.  The total flexibility
          and scope of the security system permits you to allow or
          deny access to various entities of your system based on
          security levels, time of day, user credits, file ratios,
          groups, user age and even user sex.  But to make this
          flexibility complete, RemoteAccess offers what are called
          access flags, also known as security flags which can be used
          individually or in combination with other restrictions to
          allow or deny access to virtually any part of your BBS.

          Before configuring access flags, it is important that you
          understand how they can be used.  Since the new user flags
          option brings forth your first encounter with access flags,


                                   - 49 -
          now would be a good time to discover them.  Are access flags
          necessary?  As a matter of fact no, they are not.  But if
          you understand how they can be used, you might just find a
          practical use for them.

          Access flag settings are stored in each user's account
          record.  Each user's access flags setting can be compared to
          the flag settings specified for individual menu items,
          message areas and file areas.  Therefore, access to these
          areas can be completely controlled using access flags.

          Think of access flags as a series of switches.  Each switch
          may be set to an ON or OFF state.  There are four sets of
          access flags which are lettered A through D.  Each set
          contains eight individual flags numbered 1 through 8.
          Individual access flags are therefore referenced by the set
          letter and flag number.  For instance, when referring to the
          first flag in the first set, we are referring to access flag
          A1.  Likewise, when referring to the last flag in the last
          set, we are referring to access flag D8.

          This series of switches, as we've called them, can be
          assigned to any of the items outlined above.  The flag
          settings contained in the user record must identically match
          the settings assigned to a given item before access is
          granted to that item.  A single access flag may be turned ON
          in a menu item, for instance.  The same flag must also be ON
          in a user's record before the user can access or even view
          the menu item. While a single access flag or switch might be
          sufficient, a series of switches may also be used.

          The following illustration shows a sample of a user record.
          Notice the access flag settings for this user.
          
  ============================================================================
      Name : Clutch Cargo                                        Flags
    Handle : Clutch Cargo                                      Uploads : 0
  Location : Tuterville, LD                                    Dnloads : 6
  Password : Not visible                                       UploadK : 0
  Security : 100              Last time : 16:52                DnloadK : 100
     Home# : 612-555-1212     Last date : 02-15-93              TodayK : 0
     Data# : 612-555-1212      1st date : 02-10-93     Messages posted : 10
   A Flags : XX------          Sub date : 02-15-93       High msg read : 623
   B Flags : --------         Birthdate : 03-25-60     Number of calls : 7
   C Flags : -------X      Time used today : 5           Last msg area : 2
   D Flags : --------        Screen length : 25         Last file area : 1
    Credit : 90            Last pwd change : 7         Last file group : 1
   Pending : 20             Last DOB check : 7          Last msg group : 1
     Group : 1                 Date format : MM-DD-YY         Protocol :
       Sex : Male                                             Language : 0

   Fwd   :


                                   - 50 -
   Addr1 : 13450 Sparrowsong court #14055
   Addr2 : Nowhere, USA
   Addr3 : 99099-9900
   Comnt : This is a test user
  ----------------------------------------------------------------------------
           
          In this record, the access flags A1, A2 and C8 are set to
          ON. In a user record, any access flag that is set to ON is
          denoted by the X character.  Inverse to this, any flag that
          is set to OFF is denoted by the - character.  Within a
          user's record, these are the only two possible settings.

          Now for the sake of example, let's say that one menu item in
          the menu MAINMENU contained access flag settings as follows:
          
          A Flag:  -X-----O
          B Flag:  --------
          C Flag:  --------
          D Flag:  --------
          
          Notice that the A flag set has two settings.  Where did that
          "O" come from?  As mentioned, only the X and - settings are
          valid within a user's flag settings.  But in a menu item,
          message area or file area, a third setting is allowed.  By
          specifying the O character in one of these areas, we are
          saying that the flag is required to be OFF (set to a -
          character) in the user's record.

          Keep in mind that a user's access flags are considered to be
          static.  That is to say that they may be modified by various
          functions (such as questionnaires and menu items).  On the
          other hand, access flags in menu items, message areas and
          file areas specify a specific requirement.  For this reason,
          a menu item, for example, may require a flag to be ON or
          OFF.  Or, it may not care what a particular flag setting is,
          in which case the neutral setting may be specified using the
          - character. So in the above example, the menu item is
          accessible by the user shown in the sample user record.  The
          menu item requires the user's A2 flag to be set to ON, and
          the A8 flag to be set to OFF.  Our sample user record
          matches this requirement and therefore access to the item is
          granted.

          Access flags work the same way in message and file areas.
          Later in this chapter you will configure message and file
          areas for your BBS.  At that time, you may specify flag
          settings required to access the areas in different ways.
          
          





                                   - 51 -
          Credit
          ------------------------------------------------------------
          This field is used to set the initial number of credits
          given to new users.  When a user performs a function which
          has an associated cost in credits, it is deducted from this
          field.
          
          
          Group
          ------------------------------------------------------------
          RemoteAccess allows you to use groups to customize and/or
          restrict your system to groups of users.  For example, one
          group of users may have access to files and messages of the
          same group.  Use this field to select the default group
          number assigned to new users.

          For more information, see Menu function 27-"Post message" in
          the Menu Administration chapter.
          
          
          ANSI
          ------------------------------------------------------------
          This setting is used to determine whether ANSI terminal
          emulation will be enabled for new users.  If set to Ask, new
          users are prompted whether to use ANSI emulation.
          
          
          AVATAR
          ------------------------------------------------------------
          This setting is used to determine whether AVATAR terminal 
          emulation will be enabled for new users.  If set to Ask, new 
          users are prompted whether to use AVATAR emulation.
          
          
          ClrScr
          ------------------------------------------------------------
          The ClrScr setting is used to determine whether new users
          will have screen clearing codes sent to their terminals.  If
          set to Yes, the user's screen will be cleared after each
          menu page. If set to Ask, users are prompted whether screen
          clearing codes should be sent.
          
          
          More
          ------------------------------------------------------------
          The More setting determines whether new users will receive a
          More(Y/n/=)? prompt after each screen page is displayed.  If
          this option is enabled, RemoteAccess will present this
          prompt each time the user's defined screen length is reached
          while information is being displayed.
          
          


                                   - 52 -
          Sub Days
          ------------------------------------------------------------
          This field is used to define an initial free subscription
          period for new users.  Valid entries are from 0 to 255 days.
          When the user's subscription expires, the questionnaire
          script file SUBDATE.Q-A is executed automatically.   This
          allows you to take actions such as modifying the user's
          security level and/or reminding the user to renew the
          subscription.  See the Questionnaires chapter for
          information on questionnaire script files.
          
          
          Upload Credit (number of files)
          ------------------------------------------------------------
          The UL Credit field allows you to define an initial upload
          credit, by number of files, that will be assigned to new
          users. This is usually used in conjunction with file ratios.
          For example, if you require your users to upload 1 file for
          every 10 files downloaded, but you want your users to be
          able to download 10 files before being required to upload a
          file, you would set this field to 1.  This would specify
          that new users are automatically credited with 1 upload.

          For more information, see Upload Credit (kilobytes) in this
          chapter.
          
          
          EchoMail Check
          ------------------------------------------------------------
          The EchoCheck option is used to determine whether EchoMail
          message areas will be included during mail-box scans.  For
          example, if set to No, RemoteAccess will not check message
          areas configured as EchoMail areas while checking a user's
          mail-box.
          
          
          Sex
          ------------------------------------------------------------
          This option allows you to query users for their sexual
          gender during the log-on process.  If this option is
          enabled, RemoteAccess can make use of this data from within
          the menu system.  For example, menu items may be restricted
          to users of a specific sex.
          
          
          Data Phone
          ------------------------------------------------------------
          If this option is set to Yes, RemoteAccess prompts new users
          to enter their business or data telephone number.  This
          information is stored in the user's permanent record and
          could be helpful if you are using an external call-back
          verification program which verifies user phone number


                                   - 53 -
          information by calling the user back.
          
          
          Voice Phone
          ------------------------------------------------------------
          If this option is set to Yes, RemoteAccess prompts new users
          to enter their voice/home telephone number.  This
          information is stored in the user's permanent record.
          
          
          One Word Names
          ------------------------------------------------------------
          If this option is set to No, new users will be required to
          enter their name as two words with a total length of at
          least three characters.  This prevents new users from
          logging-on using a one-word handle or alias.
          
          NOTE:  This restriction only applies to new users.  A user
          already in the user database may log-on using a one-word
          name or handle.
          
          
          Handle
          ------------------------------------------------------------
          If this option is set to Yes, new users will be prompted to
          choose an optional, unique handle or alias.  This is saved
          in the user's permanent record and may be used to log-on in
          subsequent sessions as well as when sending or receiving
          mail in designated message areas.  If a user elects not to
          enter a handle, RemoteAccess will substitute their real name
          for the handle entry.

          RemoteAccess allows you to configure message areas which
          allow the use of handles.  When posting messages in these
          areas, the user's handle is automatically used.
          
          
          Birth Date
          ------------------------------------------------------------
          If the Birthdate option is set to Yes, new users will be
          prompted to enter their full date of birth.  RemoteAccess
          will attempt to validate the date entered to ensure its
          legitimacy.
          
          
          Hot-Keys
          ------------------------------------------------------------
          This option is used to determine how keystrokes received
          from users are interpreted.  If the Hotkeys option is
          enabled, RemoteAccess will act on the first key pressed
          without requiring the user to press <ENTER> to send the
          command.  If set to No, RemoteAccess waits for the user to


                                   - 54 -
          press <ENTER> to signify the end of command entry.

          Setting this option to No also enables the user to enter
          multiple commands at any prompt.  This feature is known as
          command stacking.

          You can alternately set this option to Ask which allows your
          users to make the selection themselves.

          For example, in command stacking mode, if the main menu
          command to access the message menu was "M" and the read
          messages command was "R", a user could stack the commands by
          entering:  "MR <ENTER>" at the main menu prompt.
          
          
          Full-Screen Message Viewer
          ------------------------------------------------------------
          The FS Msg View option is used to allow users to read
          messages using the internal full screen message viewer.  The
          viewer uses a fixed header format, designed for enhanced
          readability.  This means that the message header information
          section at the top of each message will remain on screen as
          the user scrolls through a multiple-page message.  If this
          option is disabled, the headers will scroll off the display
          with the message.  This option is only available to users
          with ANSI or AVATAR terminal emulation enabled.

          
          Full-Screen Message Editor
          ------------------------------------------------------------
          The FS Msg Edit option is used to determine whether
          RemoteAccess will ask new users if they would like to use
          the full-screen editor.  If enabled when the user enters a
          message, the External Editor (such as GEDIT) will be used
          instead of the internal line editor.
          
          
          IEMSI
          ------------------------------------------------------------
          If this option is enabled, RemoteAccess allows new users to
          log-on automatically with the IEMSI protocol.

          Interactive EMSI (IEMSI) is a protocol which can be used by
          communications software programs to establish certain
          parameters for an interactive session, for example, a user
          logging on to a bulletin board.

          From within the IEMSI terminal's setup program, the user can
          define a number of user profiles, each of which includes a
          user name, handle, password, telephone number, location,
          etc. When IEMSI is enabled from within the terminal and the
          user calls a RemoteAccess BBS, the user's information is


                                   - 55 -
          sent to the BBS automatically, enabling the user (the
          client) to log-on to a BBS (the server) without even
          touching the keyboard.  The IEMSI terminal and RemoteAccess
          will automatically exchange information such as software
          name and version number, screen parameters and local time.

          One particularly useful feature is the ability of the server
          to temporarily modify the user's display parameters for the
          current session only.  Typically, when a user calls a BBS,
          the user's screenlength setting is used to determine when
          page pausing is to occur.  However, on one occasion the user
          may activate the IEMSI terminal in 50 line mode.
          RemoteAccess will recognize this and set the screen length
          to 50 lines for the current session only, restoring it to
          the original setting when the user disconnects.  In
          addition, RemoteAccess will automatically activate whatever
          terminal emulation that it, as well as the client, supports.

          Another benefit is the ability to chat to users using a
          full- screen chat mode.  This is accomplished by the IEMSI
          remote terminal being able to maintain the chat screen
          locally. To see if a user is connected in IEMSI mode to your
          system, press F7.  If IEMSI is active, RemoteAccess displays
          the relevant information about the client's system on the
          status bar.  At the right side of the status bar the user's
          request flags are displayed.  A request flag is an option
          that the user asked for.  RemoteAccess currently supports
          these request flags:
          
          Request Flag   Description
          ------------------------------------------------------------
          CHT            Full-screen chat mode capability indicator.
          CLR            Screen clear codes.
          NEWS           Display the NEWS.A?? file.
          MAIL           Check for new mail.
          FILE           Check for new files.
          HOT            Use hot-keys.
          HUSH           Activate do not disturb mode.
          FSED           Use the full-screen message editor.
          
          
          Language
          ------------------------------------------------------------
          This option sets the default language for new users before
          they select their preferred language.  If this option is set
          to zero, the first defined language in the language manager
          will be used, and new users will not be asked which language
          they wish to use.  For full details on languages, see the
          Language Manager section of this chapter.
          
          



                                   - 56 -
          Date Format
          ------------------------------------------------------------
          Is set to Ask, new users will be able to select the date
          format they would like to use when entering dates and when
          dates are displayed.  The available date formats are:
          
                    DD-MM-YY              MM-DD-YY
                    YY-MM-DD              DD-Mmm-YY
          
          The Sysop may choose to force a particular date format by
          selecting the format in this field.
          
          NOTE:  Users who have selected the DD-Mmm-YY format will be
          asked to supply all dates in DD-MM-YY format when prompted
          for date input.  This is normal behavior which minimizes
          errors in user input.
          
          
          Capitalize Location
          ------------------------------------------------------------
          If the Cap Location option is enabled, RemoteAccess will
          automatically capitalize the first character of each word in
          the user's location as it is entered.
          
          
          Upload Credit Kilobytes
          ------------------------------------------------------------
          The UL CreditK field allows you to define an initial upload
          credit, specified in kilobytes, that will be assigned to new
          users.  This is usually used in conjunction with file
          ratios.  For example, if you require your users to upload 1
          kilobyte for every 10 kilobytes downloaded, but you wanted
          them to be able to download 10 kilobytes before being
          required to upload, you would set this field to 1.  This
          would specify that new users are automatically credited with
          1 upload kilobyte.

          For more information, see Upload Credit (number of files) in
          this chapter.
          
          
          Mailing Address
          ------------------------------------------------------------
          If Mail Address is enabled, new users are prompted to enter
          a mailing address of up to 3 lines in length.  This
          information is then stored as a part of the user's permanent
          record.
          
          





                                   - 57 -
          Telephone Scan
          ------------------------------------------------------------
          If this field is set to Yes, RemoteAccess scans new user
          telephone numbers for duplicate entries within the user
          database.  This is usually the norm except in certain cases
          where the user database is extremely large.  In such cases,
          the scanning process may be avoided by disabling this
          option.
          

          System
          ============================================================
          The System options group contains options that pertain to
          the hardware and software environment in addition to some
          other global options.
          
          
          Fast Log-Ons
          ------------------------------------------------------------
          If this option is enabled and RemoteAccess is activated in
          local mode, it is assumed that the Sysop is the user who is
          logging on.  When this is the case, RemoteAccess prompts
          only for the log-on password for the Sysop.  If another user
          wishes to log-on at the local console, press <ENTER> at the
          "Password:" prompt and RemoteAccess will prompt for a full
          log-on name.
          
          NOTE:  When logging-on at the local console with this option
          enabled, the text file LOGO.A?? is not displayed even if it
          exists.  This is normal behavior in Fast log-on mode.
          
          
          Check Multi-Node Access
          ------------------------------------------------------------
          When running more than one node you should set the Check
          Multi option to Yes.  This will prevent a user from logging
          on to more than one line at the same time and effectively
          using all allotted time and file transfers limits on each
          line concurrently.
          
          
          Remote Sysop
          ------------------------------------------------------------
          If you never call your own BBS remotely, you might wish to
          set this option to No.  This makes it virtually impossible
          for an unknown hacker to gain access to your system via your
          own Sysop account.
          
          





                                   - 58 -
          Exclude Sysop
          ------------------------------------------------------------
          When this option is set to Yes, the Sysop's name is excluded
          from the "User List", "List of Today's Callers", "Who Else
          is On-line" and the "Last Caller" functions.
          
          
          Text Shells
          ------------------------------------------------------------
          By inserting a special control code in a text file, it is
          possible to automatically run an external program in a shell
          when the text file is displayed.  This is more fully
          explained in the External Support Files chapter.

          There are important security considerations that must be
          taken into account if this option is enabled.  For example,
          imagine the damage that could be done if the DOS FORMAT
          command was somehow embedded within a text file.  This type
          of security risk is usually only present when external
          programs which create or modify RemoteAccess text files are
          used. However, keep in mind that any external program
          written by an under-handed character might have the hidden
          ability to create a text file designed either to cause
          damage or obtain restricted data.
          
          NOTE:  As a security measure, this option should only be
          enabled if you fully intend to shell to external programs
          from within text files.  See the External Support Files
          chapter for more information on text file control codes.
          
          
          Log Style
          ------------------------------------------------------------
          The logging format which RemoteAccess uses is determined by
          the style specified with this option.  The Expanded format
          mode contains more information, including the line number in
          a multi-node environment.  The Compact format occupies much
          less space.

          Following are samples of the two types of logging formats
          supported:
          
          Expanded
          
          13-Oct  16:34:03  RA03  Ken Jones on-line at 9600 BPS
          13-Oct  16:34:07  RA03  Security level 50, 90 minutes remaining
          13-Oct  16:35:14  RA03  Browsing file area #12: BBS Software
          13-Oct  16:37:09  RA03  Download [Zmodem] W:\BBS\RA200.ARJ
          13-Oct  16:45:15  RA03  Efficiency 154% (196464 bytes), 1574 Cps.
          13-Oct  16:47:37  RA03  User requested to terminate call
          13-Oct  16:47:44  RA03  User off-line
          


                                   - 59 -
          Compact
          
          -------------  Sun 13 Oct 91, RA 2.00+ line #3
          > 16:34:03  Ken Jones on-line at 9600 BPS
          > 16:34:07  Security level 50, 90 minutes remaining
          > 16:35:14  Browsing file area #12: BBS Software
          > 16:37:09  Download [Zmodem] W:\BBS\RA200.ARJ
          > 16:45:15  Efficiency 154% (196464 bytes), 1574 Cps.
          > 16:47:37  User requested to terminate call
          > 16:47:44  User off-line
          
          
          Multi-Node
          ------------------------------------------------------------
          If you are installing RemoteAccess on a multi-node system
          (i.e. you are going to be running more than one line), you
          must set this option to Yes which enables extra file and
          message checking routines to ensure that a conflict between
          two nodes accessing the same data does not occur.  If you
          are running a single-node (one line) system, setting this
          option to No will disable this checking and slightly
          increase system speed.
          
          
          Environment
          ------------------------------------------------------------
          This option refers to the type of multitasking system that
          you will be running RemoteAccess under.  If set to
          Auto-detect, RemoteAccess will attempt to automatically
          determine the type of multitasking software (if any) that is
          being used. In some hardware/software configurations
          RemoteAccess may not be able to detect the proper
          environment.  To overcome this, you can force RemoteAccess
          to assume that it is running under a specific multitasker.
          Environments currently supported are; Microsoft Windows 3.x
          (enhanced mode), DoubleDOS, DESQview, TopView, MultiLink,
          PC-MOS/386, OS/2 and AT-BIOS.

          RemoteAccess will time-slice, or give up CPU time, to other
          tasks when it is waiting for a call or at a prompt.  The
          result is a significant overall system performance
          improvement.
          
          
          Screen Blanking
          ------------------------------------------------------------
          The Screen Blank option is used to specify the number of
          seconds that RemoteAccess will remain idle while waiting for
          an incoming call before activating the screen blanking
          function.  This avoids screen burn-in damage on display
          monitors that are susceptible to this. {+} Registered only.



                                   - 60 -
          A blanked screen may be re-displayed by pressing any key on
          the keyboard.
          
          NOTE:  This option only takes effect when Front End Mailer
          software is not used to answer incoming calls.
          
          
          Pausing After System Messages
          ------------------------------------------------------------
          After RemoteAccess displays a system message, the default
          action is to pause for one second before continuing.  You
          may alter this pause period by setting the After Msgs option
          to the desired number seconds.  Specifying a value of zero
          causes RemoteAccess to prompt the user to press <ENTER>
          before continuing.
          
          
          ALT-J Swap (Shelling to DOS)
          ------------------------------------------------------------
          If enabled, this option will cause RemoteAccess to swap
          itself out of memory before a Sysop shell to DOS (when A-J
          is pressed at the local console keyboard).  This enables
          programs which require a large amount of memory to be run
          while in the shell.  The swapping process may take a few
          seconds.
          
          
          Use XMS
          ------------------------------------------------------------
          If your computer has extended memory, RemoteAccess can use
          it when swapping out of memory.  This reduces the amount of
          time it takes to execute the swap process.  When both XMS
          and EMS options are enabled, extended (XMS) memory will be
          used, if available, before expanded (EMS) memory is used.
          
          
          Use EMS
          ------------------------------------------------------------
          If your computer has expanded memory, RemoteAccess can use
          it when swapping out of memory.  This reduces the amount of
          time it takes to execute the swap process.  When both XMS
          and EMS options are enabled, extended (XMS) memory will be
          used, if available, before expanded (EMS) memory is used.
          
          
          IEMSI
          ------------------------------------------------------------
          The IEMSI option simply allows you to enable or disable
          IEMSI capabilities within RemoteAccess.  IEMSI is fully
          explained in the New Users section earlier in this chapter.
          
          


                                   - 61 -
          Password Echo Character
          ------------------------------------------------------------
          The Pwd Echo option allows you to define the character that
          is to be echoed back to the user when typing in a password.
          If this is left blank, no character is echoed back to the
          user.
          
          
          Automatic ANSI Detection
          ------------------------------------------------------------
          When a user logs-on, and Auto ANSI is enabled, RemoteAccess
          will attempt to determine if the remote user's terminal
          supports ANSI emulation.  If ANSI is detected, the text file
          LOGO.ANS will be displayed instead of LOGO.ASC.  This text
          file is fully explained in the External Support Files
          chapter.
          
          NOTE:  Not all terminal programs that offer ANSI emulation
          support this operation.  Also, even when ANSI emulation is
          detected, once the caller logs-on the emulation setting
          within the caller's user record will override this
          determination, if necessary.
          
          
          Password Tries
          ------------------------------------------------------------
          The Pwd Tries field is used to set the maximum number of
          invalid password entries allowed at log-on.  After this
          value is exceeded, the user will be given the option to
          leave a message to the Sysop prior to being disconnected.
          
          
          Password Change Forcing
          ------------------------------------------------------------
          The Pwd Change option is used to enhance system security.
          If set to a non-zero value, all users (excluding the Sysop)
          will be forced to change their password every Pwd Change
          number of log-ons.  For example, if this field is set to 30,
          users will be forced to change their log-on passwords every
          30 log-ons.
          
          
          Strict Password Checking
          ------------------------------------------------------------
          The Pwd Strict option is an invaluable security feature
          which checks passwords that users enter against a
          Sysop-definable list of undesirable passwords which are held
          in a control file. It also prevents users from entering
          their first or last name as a log-on password.
          
          NOTE:  See the External Support Files chapter for
          information on the PWDTRASH.CTL control file.


                                   - 62 -
          Minimum Password Length
          ------------------------------------------------------------
          The Pwd length field is used to specify the minimum required
          length of passwords for all users.  Longer passwords offer
          increased security.  A value of 4 is recommended as an
          absolute minimum.
          
          
          Log-on Time
          ------------------------------------------------------------
          This option specifies how much time (in minutes) to grant to
          a user before the system knows how much time the user is
          entitled to.  You should make this long enough for users to
          complete the new user procedures and questionnaire, if
          applicable.

          For example, when a new user logs on to your system, the new
          user process might be relatively short or very lengthy,
          depending on your system configuration.  Once this process
          is completed, RemoteAccess assigns the time limit assigned
          to the user's security level (you'll set this up later in
          this chapter).  But until this happens, you must assign a
          temporary time limit to the user.  If this field is set to
          15, a user will have 15 minutes in which to complete the
          log-on process, at which point RemoteAccess will assign the
          time limit assigned to the user's security level.
          
          
          User Inactivity Timeout
          ------------------------------------------------------------
          The User Timeout field determines how long to wait during
          periods of inactivity before disconnecting.  The inactivity
          time period is measured starting from the last character
          sent to the modem.  Users are given a warning message when
          they are near timer expiration.  This feature is
          automatically disabled when a user is logged-on at the local
          console, or by setting this field to zero.
          
          
          Watchdog Area
          ------------------------------------------------------------
          When a user enters an incorrect log-on password the number
          of times specified in PwdTries, you may wish to notify the
          user that an attempt was made to gain access to his or her
          account. By specifying the message area number in the
          Watchdog Area field, RemoteAccess can notify a user of the
          security violation by addressing a message to the user using
          the date and time of the violation and inserting the ASCII
          text file WATCHDOG.MSG as the text body of the message.
          The ASCII text file must exist in the RemoteAccess system
          directory.



                                   - 63 -
          For example, if this field is set to 1 and the file
          WATCHDOG.MSG is located in the system directory, when a
          caller enters a log-on name but fails password entry, the
          text contained in WATCHDOG.MSG will be inserted into a
          message addressed to the user for which the violation
          occurred in message area 1.  The WATCHDOG.MSG file might
          look like this:
          
             "This message is to inform you that on the date
             and time this message was created, an attempt was
             made to log-on to this system using your user
             name.  However, this attempt failed due to
             incorrect password entry.  If this was you, then
             disregard this message.  If this was not you,
             then be advised that someone has tried to gain
             access to your user account."
          
          
          Sysop Area
          ------------------------------------------------------------
          When a user enters an incorrect log-on password the number
          of times specified in PwdTries, you may wish to give the
          user an opportunity to leave a message addressed to the
          Sysop prior to disconnecting the call.  By specifying the
          message area number in the Sysop Area field, users who fail
          to enter a correct log-on password will be prompted to leave
          a message to the Sysop.

          This is commonly used as a means of allowing the user to
          communicate with the Sysop in the event that he or she
          should forget their log-on password.
          
          NOTE:  See the External Support Files chapter for
          information on text files which enhance this feature.
          
          
          Check DOB
          ------------------------------------------------------------
          To enhance system security, you can require users to verify
          their date of birth periodically by specifying the number of
          log-ons between verifications in this field.

          For example, to require your users to enter their date of
          birth for verification every 10 log-ons, set this field to
          10.  If a user fails to correctly enter their date of birth,
          RemoteAccess activates a system questionnaire which gives
          you the opportunity to take actions which you specify.

          For information on files which support this feature, see the
          Questionnaires and External Support Files chapters.
          



                                   - 64 -
          Limit Local
          ------------------------------------------------------------
          This option disables the use of all sysop keys during all
          user sessions, including local logons. This effectively
          means that users who log on locally have no more power than
          those who log on remotely.

          Save Password
          ------------------------------------------------------------
          Setting this option to "Yes" will cause RemoteAccess to
          store passwords in the user database as clear text, making
          them visible to the sysop as well as any person who has 
          access to the user database. Setting the option to "No"
          forces all passwords to be stored as an encrypted CRC value.
          This makes it harder to obtain the password, but the
          passwords are not visible to the sysop, either.


          Blank Logins
          ------------------------------------------------------------
          Setting this option to a non-zero value will cause the
          system to hang-up if a user presses <ENTER> at the login
          prompt without entering a user name, after the number of
          tries defined in this setting.


          Prompts
          ============================================================
          The Prompts option group allows you to define the global
          system prompts.  The prompts contained in this section are
          common to all languages.  You can additionally customize
          specific language prompts using the Language Manager
          discussed later in this chapter.
          

          Log-on Prompt
          ------------------------------------------------------------
          This is the prompt displayed to users during the log-on
          process which prompts users to enter their log-on name.
          
          
          Left and Right Brackets
          ------------------------------------------------------------
          These two fields are used to define the brackets which
          RemoteAccess places around "Yes/No" and similar prompts.
          For example, if the characters defined here are set to "{"
          and "}", the Yes/No prompt would appear as follows:
          
                                {Y/n}?
          
          



                                   - 65 -
          Language Prompt
          ------------------------------------------------------------
          This prompt is displayed when RemoteAccess asks the user to
          select a language.
          
          
          Language Header
          ------------------------------------------------------------
          This prompt is displayed prior to the list of available
          languages when prompting the user to select a language.
          

          Printer
          ============================================================
          The Printer options group allows you to define which printer
          port is to be used with RemoteAccess when the -P command-
          line parameter is specified or the ALT-P command is issued
          from the local console keyboard during a session. For
          information on the -P command-line parameter, see the
          Reference Information chapter later in this manual.

          
          Selecting the Printer Port
          ------------------------------------------------------------
          To select a printer port, position the cursor-bar on the
          Printer options item and press <ENTER>.  A pick-list of
          valid selections will appear.  Move the cursor-bar to the
          desired printer port and press <ENTER> to select it.
          {+} Registered only.          
          
          
          THE MODEM MENU

          The fourth main option is the Modem menu.  This menu is used
          to configure various options related to your modem. Options
          available from this menu are grouped by function. Each group
          has its own pick-list menu.

          Some of these options do not apply when Front End Mailer
          software is being used.  However, if you are running in
          standalone mode (i.e. RemoteAccess answers incoming calls
          instead of a Front End Mailer), then all of these fields
          apply. Position the cursor-bar on the Modem selection.  The
          Modem pick-list menu will be displayed automatically.  The
          cursor-bar automatically repositions itself over the Options
          group selection.  Press <ENTER> for the Options group
          pick-list menu.
          






                                   - 66 -
          Options
          ============================================================
          The Options group pick-list contains items associated with
          the general configuration information for your modem.
          
          
          Comport
          ------------------------------------------------------------
          This field should be set to the communications port number
          to which your modem is connected.  Valid entries are 1 to 8
          representing COM1 through COM8 respectively.  A setting of
          zero is also valid which forces RemoteAccess into local mode
          regardless of command-line parameters.
          
          
          Speed
          ------------------------------------------------------------
          This field refers to the highest modem-to-computer speed
          that your modem supports.  If your communications driver is
          configured to communicate with your modem at a fixed BPS
          rate, the fixed rate should be entered here. For example, if
          your communications driver is locked at a fixed rate of
          19200 BPS, set this field to 19200.  If your modem does not
          support fixed rates, enter the highest speed it supports.

          For more information on installing and configuring the
          communications driver, see the Communications Driver section
          of the Reference Information chapter.
          
          
          Lock
          ------------------------------------------------------------
          If you are using a high-speed modem and your communications
          driver is locked at a fixed BPS rate, you should set this
          field to Yes to ensure maximum throughput.

          For more information on installing and configuring the
          communications driver, see the Communications Driver section
          of the Reference Information chapter.
          
          
          Answer
          ------------------------------------------------------------
          Setting this field to Yes instructs RemoteAccess to make the
          modem answer the phone whenever it receives the RING string
          defined under Responses (later in this section).  This is
          accomplished by sending the Answer command (see the Commands
          section below).  If this field is set to No, then it is
          assumed that the modem will answer the call based on its own
          configuration.

          The preferred setting for this field is Yes because it


                                   - 67 -
          ensures that your BBS will only answer the phone when it is
          ready. This feature is not used when Front End Mailer
          software is used which is usually only the case if you are
          participating in a mail network.

          When your modem is on-hook but RemoteAccess is doing other
          things (i.e. running a system event), you most likely would
          not want your modem to answer an incoming call.  By enabling
          this option, you are giving control to RemoteAccess to
          answer an incoming call only when it is ready.

          The other method of answering the phone is to configure your
          modem itself to answer incoming calls.  On a large majority
          of modems this is accomplished by setting the S0 register to
          the number of rings to wait before answering.  But remember,
          if your modem is configured to answer, the possibility
          exists that a caller will connect with your modem even
          though RemoteAccess is not prepared to take a call.  If some
          of your users are calling long distance, this method of
          answering calls will surely attract unwanted attention.
          
          
          Delay
          ------------------------------------------------------------
          This field refers to the delay, specified in tenths of a
          second, that RemoteAccess waits between characters sent to
          the modem in command mode.  Usually you will only need to
          enter a value greater than zero if you are using a modem
          that cannot process commands at high speeds.  A typical
          example of this is the US Robotics Courier HST modem, which
          works well with a delay of about 3 (3 tenths of a second).

          This does not apply to characters sent over the modem while
          connected with a remote modem.  It only applies to modem
          commands sent while in command mode.


          Buffer
          ------------------------------------------------------------
          This field is used to set the size of the internal
          communications transmit buffer for speeds of up to 2400 BPS.
          You can change this to fine-tune your system for maximum
          throughput.  If you are using a slower machine (i.e. a 4.77
          MHz PC/XT), set this field to zero.   This disables the
          internal buffering system and its associated overhead.  On
          most systems, the default setting of 128 will not need to be
          changed.  However, in a multi- tasking environment you may
          achieve much better performance by increasing the buffer
          size.  Experimentation has shown values around 80 to 150 to
          be most effective.

          This setting does not apply to systems that have a high


                                   - 68 -
          speed modem with a locked BPS rate since the modem and/or
          communications driver may provide transmit buffering.
          
          
          Break
          ------------------------------------------------------------
          Some modems can be configured to clear their internal
          transmit buffer when the break signal is received from the
          local console.  If the Break option is enabled, RemoteAccess
          will send a break signal to the modem whenever it purges its
          own internal transmit buffer.  This results in faster
          hot-key response.

          NOTE:  Most modems cannot handle non-destructive break
          handling. Check your modem documentation to ensure that the
          modem will not pass the break signal on to the remote modem.
          
          
          Tries
          ------------------------------------------------------------
          This field is used to specify the number of times that
          RemoteAccess will attempt to initialize the modem before
          aborting and returning an error condition.

          When RemoteAccess fails to initialize the modem, an
          errorlevel of 1 is returned to the calling batch file which
          in turn, may take appropriate action.
          
          
          Offhook
          ------------------------------------------------------------
          If this option is enabled, RemoteAccess will take the modem
          off-hook when RemoteAccess is exited.  This is done by
          sending the modem command defined in the Busy field
          (explained in the Commands section below).  If you prefer
          your system to appear busy to callers when it is not ready
          for calls, set this option to Yes.  Otherwise, set it to No.
          
           
          NOTE:  In some countries, placing the telephone line
          off-hook is illegal. If you unsure of your countries laws,
          check with your local telephone company.
          

          Commands
          ============================================================
          The Commands group pick-list contains items associated with
          commands which are sent to your modem.  If you are using
          Front End Mailer software to answer incoming calls, then
          these commands will not be sent to your modem.  If this is
          the case, you may skip this section altogether.



                                   - 69 -
          RemoteAccess recognizes certain characters embedded in the
          modem command strings outlined in this section.  The
          embedded characters are translated into special functions as
          a string is sent to the modem.  The supported characters
          are:
          
          Character   Function Performed
          ------------------------------------------------------------
          ^           Raise data terminal ready (DTR) which enables
                      the modem to answer an incoming call.
          
          v           Lower DTR.  This disconnects a call if a
                      connection is established.  This also prevents
                      the modem from answering incoming calls.
          
                     Pause for 1/4 of a second before continuing.
          
          |           Send a carriage-return to the modem (same as
                      pressing <ENTER>).
          
          
          Initialization Strings
          ------------------------------------------------------------
          The Init1 and Init2 options define the strings sent to the
          modem whenever RemoteAccess is loaded in wait for call mode.
          These command strings are used to prepare the modem to
          answer incoming calls.

          Two initialization command strings may be specified in order
          to accommodate extremely long strings.  When a second
          initialization string is specified using Init2 RemoteAccess
          will not wait for a modem response after sending Init1.
          Instead, Init1 will be sent immediately followed by Init2.
          RemoteAccess will wait for the proper modem response after
          Init2 has been sent.
          
          
          Busy
          ------------------------------------------------------------
          The Busy command string is sent to the modem when:
          
          *	You log-on locally.
          *	A DOS shell is invoked while in wait for call mode.
          *     When wait for call mode is exited by pressing the
                <ESCAPE> key.
          
          This command string may be used to instruct the modem to be
          placed off-hook using a command such as ATH1|, or it may be
          used to simply lower the DTR signal by specifying the "V"
          embedded character as the string to be sent.
          
          NOTE:  In some countries, placing the telephone line


                                   - 70 -
          off-hook is illegal. If you are unsure of the laws in your
          country, check with your local telephone company.
          
          
          Answer
          ------------------------------------------------------------
          This field is used to specify the string which is sent to
          the modem to answer an incoming call.  This string is only
          sent if the Answer option (located in the Options group
          pick-list) is set to Yes.  For example, most modems will
          answer a call upon receiving an ATA| command from the local
          console.
          

          Responses
          ============================================================
          The Responses group contains a pick-list of response
          messages or codes that your modem sends to RemoteAccess in
          response to a command or condition.

          If your modem is configured to return numeric responses to
          commands, you will need to know the numeric codes which
          correspond to various conditions.  In most cases, your modem
          should be configured to return word responses which are much
          more comprehensive than their numeric equivalents.

          If you are using Front End Mailer software to answer
          incoming calls, you may skip this section altogether since
          RemoteAccess will not be used to send commands to the modem.
          
          
          Init
          ------------------------------------------------------------
          This field should contain the response that your modem will
          return when a valid initialization string is received from
          the local console.  For example, when word responses are
          enabled for a modem, the response here is typically defined
          as OK.

          When RemoteAccess sends the Init1 and Init2 command strings,
          the response specified here must be received before the
          command is considered to have been successful.

          RemoteAccess will make as many attempts to initialize the
          modem as is defined in the Tries option in the Options group
          pick-list before considering the attempt a failure.  When an
          initialization failure occurs, RemoteAccess exits, passing
          an errorlevel of 1 to the calling batch file.
          
          




                                   - 71 -
          Busy
          ------------------------------------------------------------
          This field should contain the response that your modem will
          return when the Offhook command string is received from the
          local console.  For example, if the Offhook command is
          defined as ATM0H1|, the typical response from the modem
          would be OK.
          
          
          Ring
          ------------------------------------------------------------
          This field should contain the response that your modem will
          return when someone calls your system.  This indicates that
          the call should be answered.  Most modems return a RING
          message while others return RINGING.  Check your modem
          documentation and set this accordingly.
           
          NOTE:  Some modems return a carriage-return after the RING
          response.  In such cases, this response must be specified as
          RING| before an incoming call is recognized.
          
          
          Secure
          ------------------------------------------------------------
          This field should contain the response that your modem will
          return when it establishes an MNP error-free connection.  If
          your modem does not support MNP, you should leave this
          option setting blank.

          RemoteAccess uses this response to determine whether file
          transfer protocols which require an error-free connection
          will be made available to the caller.  Error-free
          connections are ones which utilize MNP (Microcom Networking
          Protocol) service levels 1 through 5.  MNP is generally
          supported directly by the modem although some terminal
          programs have implemented MNP emulation through software.
          The primary advantage of having MNP implemented within the
          modem is the increased throughput.

          Some file transfer protocols rely heavily on MNP connections
          and won't operate properly (if at all) without it. One
          example is the YModem-g internal protocol.  Without an MNP
          connection, this protocol should not be made available to a
          caller.  Therefore, it is important to allow RemoteAccess to
          determine when an MNP connection is present.

          As an example, the US Robotics Courier HST/V32 modem returns
          the "ARQ" response when an error-free connection has been
          established.  Therefore, "ARQ" should be entered in this
          field.

          Check your modem documentation to determine the correct


                                   - 72 -
          string to specify for your modem.
          
          
          300 - 38400
          ------------------------------------------------------------
          These fields must be set to the responses that your modem
          returns when a connection is established at the respective
          BPS rate.  Most modems return the message CONNECT followed
          by the speed of the connection or a carriage-return for 300
          BPS connections.  These responses are used to determine the
          speed at which RemoteAccess will communicate with the
          caller's modem.  The following illustration shows some of
          the most popular responses used by today's modems.
          
          Notice the Fax connect response message.  This response
          warrants special treatment since it is used to support
          systems which utilize fax/modems.  As explained under
          Errorlevels in the Options section, RemoteAccess can
          determine when a fax connection is established and exit with
          a predefined errorlevel set.  When the response message
          specified in this field is received from the modem,
          RemoteAccess exits, passing the errorlevel defined under
          Errorlevels (in the Options group pick- list).  This enables
          the use of a fax/modem for receiving calls for both the BBS
          as well as for your fax since the fax software can be loaded
          from within the calling batch file.

          
          THE MANAGER MENU

          This is perhaps the most important and often-used portion of
          RACONFIG.  This menu is used when configuring message and
          file areas, groups, languages, protocols, menus, system
          events and more.  Each item in this option group is used to
          manage a different aspect of your overall system.  In the
          pages that follow, feature implementation and descriptions
          will be covered.

          
          Message Areas
          ============================================================
          The first option in the group is Message Areas.   From here,
          you may define a virtually unlimited number of JAM format
          message areas and up to 200 Hudson format areas, each with
          its own attributes and security requirements.  Each of these
          two types of message database formats is outlined in this
          section under the Area Type field as well as in the Message
          Database Administration chapter.  It is suggested that you
          review the details on the two formats to help you in making
          a somewhat educated decision on which format to use when
          creating message areas.



                                   - 73 -
          The initial message area pick-list menu lists the first 17
          areas with some basic information about each.  If more areas
          exist, you can scroll through the entire list using the UP
          and DOWN keys.  Select an area to edit by positioning the
          cursor-bar on the desired selection and press <ENTER> to
          bring up the editing screen.  To create a new area, press
          INSERT and a new area will be added to the end of the list.


          Moving, Copying and Deleting
          ------------------------------------------------------------
          Space  - Drop the tagging anchor to select a range of
                   entries (as in RAMGR.Files).

          INSERT - Insert a new area at the current position. This will
                   cause all entries after the new entry to be moved
                   down by one position.

          DELETE - Delete the current area/range of areas. All entries
                   after the deleted area(s) will be moved up to close
                   the gap left by the deleted areas.

          Alt-M  - Move the currently selected area(s) to another 
                   position. You will be asked to specify the new
                   position at which to insert the areas.

          Alt-C  - Same as Alt-M, but duplicates the areas instead of
                   just moving them.

          Alt-G  - Perform global changes to the currently selected
                   area or range of areas. You will be presented with
                   a blank edit screen which looks exactly like a
                   normal edit screen. (NOTE: The edit screen will 
                   automatically 'inherit' the values from the record
                   that was last edited.) Edit the fields which you want
                   to apply to the selected areas. You will notice that
                   after editing a field, it will be flashing. Note
                   that only flashing fields will be applied to the
                   selected areas. To toggle whether a field is
                   flashing, move to it and press the space bar. Press
                   ESCAPE to apply your changes.
           
          Press F1 at any area/group edit screen to modify the number
          of the currently displayed entry. NOTE: By default, RACONFIG
          will not allow duplicate area or group numbers to be entered.
          Placing a -N on RACONFIG's command-line will temporarily
          disable the dupe checking.


          From the editing screen, you can modify any of the area's
          individual attributes.
          


                                   - 74 -
          Name
          ------------------------------------------------------------
          With this field, you can give each individual message area a
          name.  This should be a meaningful description of its
          content (i.e. Cooking, Desktop Publishing, Private Messages,
          etc.).   The names you enter here will be displayed by
          various functions within RemoteAccess.
          
          
          Origin
          ------------------------------------------------------------
          This field allows you to define a separate origin line for
          this particular message area.  This origin is appended to
          the end of all outgoing EchoMail messages.  If this is left
          blank, RemoteAccess will append the default origin line
          specified earlier under:
          
                 Options > Messages > Default Origin
          
          
          Read, Write and Sysop Security
          ------------------------------------------------------------
          Access to each individual message area is controlled by
          Read, Write and Sysop security levels and access flags.
          This gives you separate control of Read, Write and Sysop
          functions within each area.  For example, this would enable
          you to allow users to read messages in an area but not write
          messages, or to give access to special Sysop message
          functions to advanced users (i.e. Co-Sysops).

          By setting the minimum security level requirement for any of
          these fields, it is possible to restrict access to users
          having an equal or greater level.  By setting access flag
          requirements, you can further restrict access to users whose
          access flags meet the requirements.  For complete
          information on access flags, see the New Users section
          earlier in this chapter.
          
          Each of the three access levels is described as follows:
          
          Read   This specifies the minimum security level and access
          flag combination the user must have before being allowed to
          read messages in the area.
          
          Write  This is the minimum security level and access
          flag combination the user must have before being allowed to
          write messages in the area.
          
          Sysop  This is the minimum security level and access flag
          combination the user must have before access to special
          administrative functions are available. The Menu
          Administration chapter later in this manual describes the


                                   - 75 -
          individual administrative functions that are available to
          users who meet this criteria.  In addition, users with this
          level of access can read and delete any messages (public or
          private) in the area.
          
          
          Type
          ------------------------------------------------------------
          Each area can be one of three types.  The type of message
          area determines how RemoteAccess handles certain functions.
          The three types are:

          Local       The message area is available only to users on
                      your BBS (it is not related to a mail network).
          
          EchoMail    The message area is used in conjunction with a
                      mail network EchoMail conference (see the Mail
                      Networking chapter for more information).
          
          NetMail     The message area is designated for sending and
                      receiving mail network NetMail (see the Mail
                      Networking chapter for more information).

          
          Status
          ------------------------------------------------------------
          This option controls the types of messages that users are
          allowed to post in the area.   Valid selections are are
          outlined below:
          
          Private Only    All messages posted in the area are marked
                          as Private and can only be read by the
                          sender, recipient and users with Sysop
                          access to the message area.
          
          Public Only     All messages posted in this area are
                          marked as Public and can be read by any
                          user with Read access to the message area.
          
          Private/Public  All messages posted in this area are
                          marked as Public or Private, selected by the
                          user at the time the message is posted.
          
          No Reply        All messages in this area are marked as
                          Public and No Reply.  All users with Read
                          access to the area may read messages but
                          no messages may be replied to.
          
          Read Only       All messages in this area are marked as
                          Public and may be read by any user with
                          Read access to the area.  Messages may
                          only be posted by users with Sysop access


                                   - 76 -
                          to the area.
          
          
          Users
          ------------------------------------------------------------
          Use this option to allow users to post messages using Real
          Names Only, Handles Only (from the user's account record),
          or with an Alias which the user may select at the time the
          message is posted.  RemoteAccess will not allow users to
          select Sysop (or any other user's name or handle) as an
          alias.

          If a message area is configured to use Handles and a user
          does not have a handle recorded in his or her account
          record, the user's Real Name will be substituted.
          
          
          Days Old, Days Rcvd and Max Msgs
          ------------------------------------------------------------
          These three fields are used to define message retention
          thresholds based on these three categories.  The message
          database maintenance utility RAMSG performs maintenance
          tasks which includes removing messages which meet the
          criteria defined in these fields.
          
          Days Old    This is the number of days to keep old messages.
                      For example, to retain messages for 30 days from
                      the message creation date, set this field to 30.
                      Any messages which exceed this threshold will
                      be removed when the RAMSG PACK function is
                      executed.
          
          Days Rcvd   This is the number of days to keep messages
                      that have been marked as received.  For
                      example, to delete messages 30 days after being
                      read by the recipient, set this field to 30.
          
          Max Msgs    This is the maximum number of messages that
                      are to be retained in the message area.  This
                      allows you to limit the number of messages that
                      will be stored in the area.  For example, to
                      limit the number of messages in the area to 200,
                      set this field to 200.  When the RAMSG PACK
                      operation is executed, the most recent 200
                      messages would be retained while all others
                      would be removed from the database.
          
          NOTE:  See the RAMSG section of the Message Database
          Administration chapter for more information on the RAMSG
          PACK function.
          
          


                                   - 77 -
          Echoinfo
          ------------------------------------------------------------
          When a message area is defined as an EchoMail type,
          RemoteAccess appends the default origin line to the end of
          outgoing messages.  This may be disabled by setting this
          option to No.
          
          
          Combined
          ------------------------------------------------------------
          This option determines whether users may select the message
          area as a part of their combined area.  As described later
          in the Menu Administration chapter, you may allow your users
          to configure their own combined message area.  A combined
          area acts as a folder containing all the individual message
          areas a user places into it.  When users read from their
          combined area, messages from each area in the folder are
          processed.


          Attaches
          ------------------------------------------------------------
          RemoteAccess provides an extremely powerful facility which
          allows users to attach one or more files to a message.  This
          means that users can send each other files privately.  To
          enable this feature, set this option to Yes. {+} Registered
          only.

          When a user uploads files with a message, RemoteAccess
          stores them in a uniquely-named subdirectory which it
          creates in the File Attach directory specified earlier in
          RACONFIG:
          
                     System > Paths > File Attach
          
          After the recipient has received the message and confirmed
          that all attached files have been received, all of the files
          (along with the subdirectory) are deleted.

          If the user selects to attach a file while logged-on to a
          local node, RemoteAccess will prompt for the DOS path and
          filename of the file to be attached.
          
          
          SoftCRs
          ------------------------------------------------------------
          RemoteAccess uses ASCII character number 8D (hexadecimal -
          decimal number 141) internally for message formatting.  This
          is usually invisible to the user, however in some countries
          such as Iceland, this character is part of the character
          set.  If enabled, this option will tell RemoteAccess to
          treat these special characters as normal characters.


                                   - 78 -
          Deletes
          ------------------------------------------------------------
          If this option is enabled, users will be allowed to delete
          messages in this area, provided that they are either the
          sender or recipient of the message.

          NOTE:  In EchoMail areas, deleting a message is only
          effective if the above criteria is met and the message has
          not yet been exported from the message database to the mail
          network.
          
          
          AKA
          ------------------------------------------------------------
          This field allows you to select the mail network address
          that is to be used for the message area.  You may select any
          of the AKA's defined earlier in RACONFIG:
          
                          System > Addresses
          
          If you only have one network address (or none at all) then 
          this option may be ignored.
          
          
          Age
          ------------------------------------------------------------
          You may restrict access to the message area to users who are
          at least the age specified here.  If your system is
          configured to prompt users for their date of birth during
          the new user log-on process, then RemoteAccess can calculate
          individual user ages making restrictions based on age
          possible.

          For example, to restrict access to the area to users who are
          at least 18 years of age, enter a value of 18 in this field.
          
          
          Group
          ------------------------------------------------------------
          As will be described in the next section on Message Groups,
          each area may belong in a primary group as well as up to
          three alternate groups, or it may belong to all groups.  If
          you plan to implement message groups, enter the primary
          group number the message area is to belong to.

          If you aren't familiar with message groups, it is suggested
          that you read the Message Groups section in this chapter.
          Message grouping can be easily changed at any time.
          
          




                                   - 79 -
          Area Type
          ------------------------------------------------------------
          RemoteAccess directly supports two types of message areas;
          JAM and Hudson.  Your message database may consist solely of
          one type or it may be a combination of both JAM and Hudson
          message areas.  In order for you to be able to make an
          educated decision on which format to use, a little history
          of the two formats is in order.

          The Hudson format was developed by Adam Hudson and became
          popular as it was adopted by other BBS programs to maintain
          compatibility between competing software packages and
          message processing utility programs.  Though it is still
          supported by many BBS and message processing software
          programs, it has become somewhat outdated in that more and
          more systems require message databases that reach beyond the
          limitations of this format.  These limitations must be
          observed when configuring your message database.

          Specifically, the Hudson format supports a maximum of up to
          200 message areas.  This limitation in itself has become the
          primary reason other formats have been developed.

          You may select any combination of JAM and Hudson message
          area formats.  However, any areas configured as Hudson areas
          must be between area numbers 1 and 200 due to the structure
          of this format.

          Support for the Hudson message format is included in
          RemoteAccess in order to maintain compatibility with
          existing installations which use third-party message
          database processors which operate specifically with Hudson
          message databases.  If you are not currently using any
          third-party message or EchoMail processors that are
          specifically designed to use the Hudson format, it is
          recommended that you set this field to use the JAM format.

          The JAM message database format was developed by Joaquim H.
          Homrighausen, Andrew Milner and Mats Wallin (hence the
          name).  This exciting new format is limited only by the
          amount of disk space that is available.  There are no
          limitations in terms of the number of message areas you can
          have.  In fact, JAM supports approximately two billion
          messages per area and as many message areas as your hard
          disk can accommodate.  Each area is a separate database
          which may reside on any hard drive or network volume.  There
          is no limitation on the length of messages except those
          imposed by the editors that create them.
          
          




                                   - 80 -
          JAMbase
          ------------------------------------------------------------
          When configuring a JAM format message area, you must provide
          the directory and base filename for the area.  Each JAM
          message area can reside in its own directory, or multiple
          JAM areas can share the same directory.  Use the JAMbase
          field to specify the path and directory where the particular
          message area database files will reside.  In addition to the
          path and directory, also specify the base filename for the
          message area.  The base filename should be no more than 8
          characters in length and should not include a filename
          extension.

          For example, to configure a JAM message area called Public
          Lobby with the message database files stored in the
          C:\RA\MSGS directory using a base filename of PUBLIC, the
          proper JAMbase field entry would be:
          
                          C:\RA\MSGS\PUBLIC
          
          When a message is entered into the Public Lobby area, the
          following JAM database files would be created in the
          C:\RA\MSGS directory:
          
                     PUBLIC.JDX            PUBLIC.JHR
                     PUBLIC.JDT            PUBLIC.JLR
          
          This design makes it possible to assign one or more JAM
          message areas to a single directory.  For more information
          on the JAM message database format, consult the Message
          Database Administration chapter.
          
          
          AltGroup1, AltGroup2 and AltGroup3
          ------------------------------------------------------------
          In addition to belonging to a primary message group, each
          message area may belong to 3 alternate groups for a total of
          4 individual message groups.  For example, if a message area
          is to be designated as belonging to message groups 1 and 3,
          the primary group might be set to 1 while AltGroup1 might be
          set to 3.

          See the Message Groups section later in this chapter for
          more information on message groups.
          

          Message Groups
          ============================================================
          This option allows you to configure up to 255 message groups
          for your system.  Like the Msg Areas option, a pick-list of
          groups allows you to select the group to be created, edited
          or deleted.


                                   - 81 -
          Message groups are used to form groups of message areas.
          These may pertain to a specific topic.  For example, you
          might have 10 message areas dedicated to the topic of
          Cooking and another 10 areas dedicated to the topic of
          Desktop Publishing. In this example, it might be wise to
          create two message groups; one dedicated to each of the two
          topics.

          When defining message groups, a name is given to each group.
          Like the message areas, the security level and/or access
          flag requirements are also specified for each group allowing
          complete flexibility in restricting access to it.  Used
          together with the menu commands outlined in the Menu
          Administration chapter, users can select a message group and
          then process only the areas within that group.

          This feature allows you to partition your system into
          sections that are manageable and useful to your users.  For
          example, if you participate in multiple mail networks and
          each network has a large number of associated EchoMail
          areas, it might be useful to group message areas by network.
          
          
          Name
          ------------------------------------------------------------
          This field is used to specify the name of the message group.
          This name is displayed by various functions in RemoteAccess
          such as the internal message group selection menu. Security
          and Access Flags

          Like individual areas, message groups may be restricted to
          users whose security level and access flag settings meet the
          requirements specified in these fields.  For a complete
          description of access flags see the section earlier in
          RACONFIG:
          
                  Options > New Users > Access Flags
          

          File Areas
          ============================================================
          Like the message system, RemoteAccess also uses a database
          format for its file system.  This format provides fast
          processing time and specialized functionality only found in
          databased systems.

          When this option is selected, a pick-list menu of file areas
          is displayed.  To edit an existing area, position the
          cursor-bar on the desired area and press <ENTER>.  To delete
          an area, position the cursor-bar on the desired area and
          press DELETE.  To add a new area to the end of the list,
          press INSERT.


                                   - 82 -
          When an area is selected, the area editing screen is
          displayed.
          
          
          Name
          ------------------------------------------------------------
          This field is used to specify the name of the file area.
          This is the name that is displayed by various internal
          functions such as hard-coded file lists.  You can enter up
          to 40 characters.
          
          
          Path
          ------------------------------------------------------------
          This is the full directory path where the files for this
          area are located.  It may contain a drive letter and full
          path.
          
          
          Download, List and Upload Security
          ------------------------------------------------------------
          Access to each individual file area is controlled by
          download, list and upload security levels and access flags.
          This gives you separate control over each of these functions
          within the area. For example, this would enable you to allow
          users to list files in an area but not download or upload
          files.

          By setting the minimum security level requirement for any of
          these fields, it is possible to restrict access to users
          having an equal or greater level.  By setting access flag
          requirements, you can further restrict access to users whose
          access flags meet the requirements.  For complete
          information on access flags, see the New Users section
          earlier in this chapter.
          
          Each of the three access levels is described as follows:
          
          DL Security	This specifies the minimum security level 
                        and access flag combination the user must
                        have before being allowed to download files
                        from this area.
          
          List Security	This specifies the minimum security level 
                        and access flag combination the user must
                        have before being allowed to list files in
                        this area.
          
          UL Security	This specifies the minimum security level 
                        and access flag combination the user must
                        have before being allowed to upload files to
                        this area.


                                   - 83 -
          NOTE:  In cases where you prefer uploaded files to be stored
          in a different area (perhaps an upload screening area), you
          can set the alternate upload area to the area number where
          uploads are to be directed.  See the Uploads field later in
          this section for more information.
          
          
          New
          ------------------------------------------------------------
          This field is used to determine whether files in this area
          are to be included when scanning for new files.  Press
          <ENTER> to toggle this setting.
          
          
          Dupes
          ------------------------------------------------------------
          This field is used to determine whether this file area will
          be included when checking for duplicate upload names.  When
          a user uploads a file, RemoteAccess compares the filename
          being uploaded to the filename entries of all areas that
          have this setting enabled.  This is done to avoid uploads of
          files that already exist in the database.  Press <ENTER> to
          toggle this setting.
          
          
          CD-ROM
          ------------------------------------------------------------
          This field is used to determine whether the area is on a CD-
          ROM drive.  If the file area being configured is on a CD-ROM
          device, this should be set to Yes.  Press <ENTER> to toggle
          this setting.
          
          
          Free
          ------------------------------------------------------------
          If this field is set to Yes, then all files in this area are
          considered free files.  That is, they will not effect the
          user's file ratio or download limits.  However, the user
          must have sufficient time remaining to download the file.
          Press <ENTER> to toggle this setting.

          Files may also be defined as free files on an individual
          basis.  See the RAMGR section of the File Database
          Administration chapter for more information.
          
          
          LongDesc
          ------------------------------------------------------------
          This field is used to determine whether users will be
          allowed to enter multiple-line file descriptions.  If set to
          No, users will be restricted to entering one-line file
          descriptions.  If set to Yes, users will be permitted to


                                   - 84 -
          enter up to 20 lines of text with each line containing up to
          70 characters.  Press <ENTER> to toggle this setting.
          
          
          DirectDL
          ------------------------------------------------------------
          If this field is set to Yes, users will be permitted to
          download files that reside in this area but are not in the
          file database. This is usually reserved for Sysop and
          Co-Sysop functions. Pressing <ENTER> toggles this setting.
          
          
          PwdUL
          ------------------------------------------------------------
          If this field is set to Yes, users will be permitted to
          password- protect files they upload to this area.  When a
          file is password- protected, other users are required to
          enter the password in order to download the file.  Pressing
          <ENTER> toggles this setting.
          
          
          UL Scan
          ------------------------------------------------------------
          When this field is set to Yes, any uploads to this area are
          scanned for corruption and viruses using the settings
          defined earlier in RACONFIG:
          
                    Options > Files > Upload Scan
          
          
          ArcType
          ------------------------------------------------------------
          This field specifies the archive format that uploads to this
          area are to be converted to by the RAFILE REARC function.
          RemoteAccess allows you to easily maintain one type of
          archive format on your system while still allowing users to
          upload archives using the format of their choice.

          Pressing <ENTER> on this field brings up a pick-list of
          archive format choices which were defined earlier in
          RACONFIG:
          
                     Options > Files > Archivers
          
          The file maintenance utility RAFILE includes a function
          which converts all archives found in the directory path for
          any file area that has an archive format specified in this
          field.  For more information on this function, see the
          RAFILE section of the File Database Administration chapter.
          
          



                                   - 85 -
          DL Days
          ------------------------------------------------------------
          With RemoteAccess, it is possible to automatically move or
          delete files that are not downloaded within the number of
          days specified in this field.  If a file has not been
          downloaded for the number of days specified here (between 1
          and 99999), it can be moved to another area or deleted from
          your system entirely. This is accomplished using the CLEAN
          function of the RAFILE file maintenance utility which is
          discussed in the File Database Administration chapter.
          
          
          FD Days
          ------------------------------------------------------------
          Similar in function to the DL Days field, this field is used
          to specify the number of days to keep a file based on its
          DOS file date.  This makes it possible to move or delete
          files that have remained on your system for the number of
          days specified in this field, starting from the actual file
          date (regardless of whether the file is actively
          downloaded).

          When this defined time period has been exceeded, the file
          may be moved or deleted by using the CLEAN function of the
          RAFILE file maintenance utility.  For more information, see
          the RAFILE section of the File Database Administration
          chapter.
          
          
          MoveArea
          ------------------------------------------------------------
          When a file has exceeded the parameters specified in the DL
          Days or FD Days fields, the file may be moved or deleted by
          the CLEAN function of the RAFILE file maintenance utility.
          This field is used to determine whether the file will be
          moved to another area or deleted from your system entirely.
          For example, you may want to review files before deletion.

          If this field is set to zero, any files exceeding the
          specified DL Days or FD Days parameters will be deleted.
          Otherwise, they will be moved to the file area number
          specified here.

          
          Min Age
          ------------------------------------------------------------
          In addition to other restrictions, RemoteAccess also allows
          you to restrict each file area to users who are at least a
          certain age. This field is used to specify the minimum age
          required for users to be able to download or list files in
          this area.  For example, to prevent users under the age of
          18 from listing or downloading files from the area, set this


                                   - 86 -
          field to a value of 18.
           
          NOTE:  RemoteAccess must know the user's date of birth in
          order to calculate his or her age.  For this reason, if you
          plan to use this feature, it is imperative that you also
          configure your system to prompt new users to enter their
          date of birth during the log-on process.  See the following
          section earlier in RACONFIG:
          
                   Options > New Users > Birthdate
          
          
          Password
          ------------------------------------------------------------
          This field is used to specify a password of up to 15
          characters which users must enter before being permitted to
          download any file from the area.  This password applies to
          every file in the area except files that have an individual
          password assigned to them which overrides this setting.
          
          
          Group
          ------------------------------------------------------------
          This field specifies the primary file group that this area
          belongs to.  Each file area may belong to:
          
          *	All file groups
          *	One primary group, or...
          *	One primary group and up to 3 alternate groups
          
          For example, you may have two file groups on your system;
          Cooking and Desktop Publishing.  Each group may have 3
          specific file areas dedicated to its specific topic.  Each
          of these areas can be assigned or dedicated to that file
          group.  At the same time, 3 other areas may be of interest
          to users of both groups.  These 3 areas can be configured as
          belonging to all groups or as belonging primarily to one of
          the two groups and alternately to the other.
          
          
          Def. Cost
          ------------------------------------------------------------
          This field is used to determine the cost (in credits) of
          each file in this area.  When this is set to a non-zero
          value, each file is said to have a cost associated with it.
          In turn, this value is deducted from the user's Credit field
          when a file is downloaded from this area.

          If a user attempts to download a file that has an associated
          cost, but does not have sufficient credits remaining,
          RemoteAccess will not permit the download except when the
          user's Post Billing flag is enabled which allows the user to


                                   - 87 -
          accumulate a negative credit balance.
          
          
          Uploads
          ------------------------------------------------------------
          This field allows you to specify an alternate file area to
          which uploaded files will be redirected.  For example, if
          you would like your users to be able to upload from any file
          area but would like all uploaded files to be directed to a
          single area, specify the area number here.
           
          NOTE:  When this feature is used, any fields relating to
          uploaded files are overridden by the same fields in the
          alternate upload area. For example, if long file
          descriptions are enabled for file area 1 and uploads to area
          1 are redirected to area 10 which has long descriptions
          disabled, users who upload to area 1 will not be permitted
          to enter long file descriptions.
          
          
          Alternate File Groups
          ------------------------------------------------------------
          As mentioned in the description of the Group field, when a
          file area is not defined as belonging to all groups, it can
          be configured as belonging to one primary and up to three
          alternate file groups.  This means that if a file area is
          not defined as belonging to all groups, it can belong to up
          to 4 file groups.

          Use the AltGroup1, AltGroup2 and AltGroup3 fields to
          designate up to three alternate file groups the file area
          should be assigned to.

          For example, to designate a file area as belonging to file
          group one, three and five, you could define the primary
          group as 1 using the Group field and then entering 3 in the
          AltGroup1 field and 5 in the AltGroup2 field.
          
          
          Device
          ------------------------------------------------------------
          This field is used only on systems where a multi-disc CD-ROM
          player is attached.  A conflict may arise when such devices
          are attached to multi-node systems because of the
          possibility that two users may request to download files
          residing on separate discs in the same multi-disc unit at
          the same time.

          A scenario which describes this conflict is in order.  Let's
          say you have file areas A and B which reside on separate CDs
          on the same multi-disc player.  Let's say that a user on
          line one requests to download a file from area A at the same


                                   - 88 -
          time that a user on line two requests a file from area B.
          RemoteAccess begins copying the file from area A into the
          CD-ROM temp holding directory.  While this is happening, the
          user on line two selects the download option.  RemoteAccess
          goes to retrieve the file in area B on the other disc, and
          the CD-ROM device responds by ejecting the CD which holds
          area A in order to make area B available.  An obvious
          problem.

          To avoid this type of conflict, assign an arbitrary number
          from 1 to 255 to each multi-disc CD-ROM unit.  Then, when
          setting up individual file areas, set the device field to
          this arbitrary number.  When multiple requests for the same
          multi- disc device number are made, RemoteAccess can manage
          the requests, avoiding the conflict as described in the
          above scenario.

          For example, if you have one multi-disc unit containing 6
          CD-ROM discs, each holding its own set of file areas, you
          would assign one arbitrary number to the entire multi-disc
          unit.  This same number would be entered in the device field
          for each of the file areas on each of the discs within the
          multi- disc unit.  This allows RemoteAccess to know when the
          multi- disc unit is busy servicing other requests,
          permitting proper management of multiple requests for the
          same device number, in order to avoid any possible
          conflicts.
          
          
          AllGroups
          ------------------------------------------------------------
          Use this field to define the file area as belonging to all
          file groups.  When this is set to Yes, the file area being
          defined can be accessed by users of any file group.
          

          File Groups
          ============================================================
          This option allows you to configure up to 255 file groups
          for your system.  Like the File Areas option, a pick-list of
          groups allows you to select the group to be created, edited
          or deleted. File groups are configured and used just as
          message groups are.  Individual file areas may belong to one
          or more (up to four) file groups.  Each group may be
          restricted by security level and access flag setting
          combinations.

          For a more detailed explanation, see the Message Groups
          section earlier in this chapter.
          




                                   - 89 -
          Protocols
          ============================================================
          This pick-list option allows you to define which internal
          and external file transfer protocols are to be used by your
          BBS. Selecting this option from the pick-list menu presents
          another pick-list menu offering the choice of internal or
          external protocols.

          Internal protocols are those that are built into
          RemoteAccess.  Simply enabling or disabling these protocols
          is all that is required to turn them on or off.  External
          protocols are third-party, external transfer protocols that
          may be added using the protocol definition screen.

          Selecting the Internal option from the protocols pick-list
          menu presents another pick-list menu of individual internal
          protocols which can be enabled, disabled or made available
          only on an error-free (i.e. MNP) connection.  MNP (Microcom
          Networking Protocol), also known as ARQ (Automatic Repeat
          Request), is a method by which modems can detect and correct
          transmission errors.  This type of connection can only be
          facilitated when two modems supporting this error correction
          are connected.  Since when using MNP, error correction is
          carried out by the modem hardware, the software does not
          need to watch the incoming data for errors or wait for the
          receiving modem to confirm that it has received all the data
          correctly.  Some protocols are written especially for MNP
          modems and therefore achieve very fast throughput.  If you
          use such a protocol you should set it for error free connect
          only.  An example of such a protocol in the internal
          protocol list is Ymodem-G.

          When using an error free protocol, RemoteAccess will
          establish whether the user is using an MNP modem by looking
          at the modem connection string to see if it contains an
          error-free response string.  This string is defined in
          RACONFIG: {+} Registered only.          
          
                      Modem > Responses > Secure
          
          To toggle the status of any of the internal protocols,
          position the cursor-bar over the desired protocol and press
          <ENTER>.  Protocols can be set to Available, Not available
          or Error free.  The internal protocols that are available
          are described below.
          
          Xmodem

          This protocol transfers data in 128-byte blocks. It is
          considered to be somewhat reliable but slow, due to the
          nature of its error-detection design.
          


                                   - 90 -
          Xmodem/1K

          This protocol is similar in design to the Xmodem protocol
          except that it transfers data in 1K blocks.  This increases
          its throughput ability over its predecessor although the
          error detection method still slows it down.
          
          
          Xmodem/1K-g

          This protocol is a result of the evolution of the Xmodem
          protocol.  It transfers data in 1K blocks and realizes
          faster throughput than the Xmodem/1K protocol since it
          relies on error free modems to perform all error detection
          and correction.
          
          
          Ymodem

          The Ymodem protocol is similar in function to the Xmodem/1K
          protocol in that it transfers data in 1K blocks and requires
          the receiving system to send an acknowledgment for each
          correctly received block.
          
          
          Ymodem-g

          This is the error-free version of Ymodem which is much
          faster since it relies on the modem hardware to perform all
          error detection and correction.
          
          
          Zmodem

          This protocol is extremely efficient by today's standards.
          It transmits data and does not stop to wait for an
          acknowledgment for correctly received data.  The receiving
          system detects errors and sends a message to the sending
          system only when an error is detected.  The sending system
          is then able to begin resending data from the point at which
          the error occurred.
          
          Another factor that makes this protocol so efficient is the
          fact that it can shift to larger blocks as a transfer
          progresses.  It also offers crash recovery which is a system
          that allows a transfer to be resumed from the point at which
          it previously failed.
          
          
          The External option allows you to interface up to fifteen
          external protocols for use on your system in addition to the
          internal protocols.  These are third-party protocols which


                                   - 91 -
          are usually available from BBSs that offer shareware
          programs. You should keep in mind that this section details
          the actual interface which is designed to be flexible in
          order to support most external protocol programs.  When
          installing an external protocol, it is important that you
          first understand how the particular protocol works.  When
          you are familiar with what is required, this section will
          aid you in proper installation. Selecting the External
          option presents a protocol pick-list menu.  Position the
          cursor-bar on an available entry and press <ENTER> to bring
          up the protocol definition screen.
          
          
          Name
          ------------------------------------------------------------
          This field is the protocol name as it will be displayed to
          your users when download or upload commands are used.  If
          you use the text file XFERPROT.A?? to override the
          hard-coded protocol selection menu, this name will not be
          displayed.  See the External Support Files chapter for more
          information on the XFERPROT.A?? text file.
          
          
          Key
          ------------------------------------------------------------
          The key is the command key that will be used to activate the
          protocol.  This key must be unique.  For example, since
          Zmodem is an internal protocol and the command key used to
          activate it is "Z", you cannot use the letter "Z" to
          activate an external protocol.
          
          
          Ext Ctl File
          ------------------------------------------------------------
          Before RemoteAccess activates an external protocol, it
          creates a control file that tells the protocol which files
          to send or receive.  This file consists of some general
          information and a list of files, one per line.  If you
          select this field, RemoteAccess will include information
          needed by protocols written to support a standard protocol
          interface file.  These are also sometimes referred to as
          Opus compatible external protocol files.  This information
          is then written at the top of the control file before the
          file list.  Check the documentation for each protocol you
          install to determine whether it is Opus compatible.

          When this option is selected, the following header is
          written to the control file before the list of files to be
          transferred:
          
          Port  <Communications port>
          


                                   - 92 -
          Baud  <Caller's connection speed>
          
          Log   <RemoteAccess log filename>
          
          Time  <Caller's time remaining>
          
          
          Batch
          ------------------------------------------------------------
          If the protocol has the ability to transfer more than one
          file at a time, set this field to Yes.  This simply
          determines whether or not users may select this protocol
          when transferring more than one file at a time.
          
          
          Status
          ------------------------------------------------------------
          This field is used to determine the status of the protocol
          which may be set to one of three states:
          
          Always available  The protocol is enabled and available in
                            both normal and error free connection
                            modes.
          
          Not available     The protocol is disabled.  It may not be
                            used while in this state.
          
          Error free        The protocol is only available during
                            error-free connection sessions.  This
                            option is particularly useful if you use
                            protocols such as Ymodem-G which are
                            specifically designed to work with error
                            correcting modems.
          
          
          Log File
          ------------------------------------------------------------
          This field specifies the full path and filename of the log
          file that the external protocol writes.  This file contains
          information about what files were actually sent or received.
          Without this information, RemoteAccess cannot update the
          user's record.  Most protocols have the facility to create a
          log of the files that were actually transferred.  If the
          protocol you are defining does not support this, it is
          advisable not to use it.
          
          
          Control File
          ------------------------------------------------------------
          This field specifies the full path and filename of the
          control file that RemoteAccess creates before activating the
          protocol.  In order to allow the use of as many different


                                   - 93 -
          protocols as possible, you have full control over the format
          of this file.
          
          
          DL and UL Command Line
          ------------------------------------------------------------
          The DL Command Line and UL Command Line fields specify what
          program name to execute in order to activate the external
          protocol.  It is possible to insert variables into the
          command line using special control codes.  These codes are
          explained in the Menu Administration chapter under menu
          function type 7-Run an external program in a shell.

          For example, the control code *B expands to the current
          connection speed.  Therefore, if a caller was on-line at
          2400 BPS, the line:
          
                         PROTNAME.EXE Send *B
          
          Would be expanded to:
          
                        PROTNAME.EXE Send 2400
          
          In addition to these control codes, the # character can also
          be used to specify the filename to be transferred on the
          command-line.  This code simply expands into the actual
          filename being transferred.
          
          
          DL Ctl String
          ------------------------------------------------------------
          This field represents the download control string that is
          used to determine the format of each file entry that is
          written to the control file during a download.  Inserting
          the @ character in this field causes the full path and
          filename being transferred to be expanded in its place.

          For example, if the full path and filename of the file being
          transferred was C:\FILES\FUN\CASINO.ZIP and the Opus
          compatible protocol being used required the keyword Send
          followed by the path and filename to be transferred, you
          would define the string:

                                Send @
          
          When the download control file was created, this string
          would be expanded to:
          
                     Send C:\FILES\FUN\CASINO.ZIP
          
          If the user selects a batch download using a wildcard as a
          part of the filename (i.e. RA*.ZIP), the wildcard pattern


                                   - 94 -
          match will be expanded to a list of the full paths and
          filenames to be downloaded.
          
          
          UL Ctl String
          ------------------------------------------------------------
          This field represents the upload control string that is used
          to determine the format of the control file during an
          upload.  This is identical in function to the DL Ctl String
          field except that for batch uploads, instead of specifying
          the full filename, the @ character expands only into the
          upload directory path since the filenames are not known
          prior to the upload.
          
          
          DL Log Keyword and UL Log Keyword
          ------------------------------------------------------------
          When the external protocol has finished and control is
          returned to RemoteAccess, the log file that was created is
          scanned to extract information about what files were sent or
          received.  RemoteAccess scans the file for the UL or DL Log
          Keyword.  When it finds that word, it will scan forward x
          number of words to get the name of the file transferred as
          well as the description, if available.  To illustrate how
          this works, look at this extract from a BiModem protocol
          log:
          
                 = 10 Sep 14:10:10 BMOD DL-B \GRAPH\VGA.ZIP
                 = 10 Sep 14:12:22 BMOD DL-B \GRAPH\MAP.ZIP
          
          The DL or UL Log Keyword can be any word in the log file
          that indicates the transfer of a single file.  The keyword
          in the above example should be set to DL-B indicating that
          RemoteAccess should scan forward x number of words from the
          point at which DL-B starts in the current line.
          
          
          Log Name Keyword
          ------------------------------------------------------------
          This field is used to specify the number of words that
          RemoteAccess should scan after locating the DL or UL Log
          Keyword in the protocol log file.  In the example listed in
          the DL and UL Log Keyword fields, this field would be set to
          1 since RemoteAccess must scan ahead 1 word after finding
          DL-B to obtain the downloaded filename.
          
          
          Log Desc Word
          ------------------------------------------------------------
          When a user uploads, RemoteAccess can also obtain a file
          description from the log file if the protocol used supports
          description logging.  It can then write this description


                                   - 95 -
          directly to the file database description field.  To achieve
          this, you can set this field to the number of words
          RemoteAccess must scan after it finds the DL or UL Log
          Keyword in the log file.  If the protocol doesn't support
          description logging or RemoteAccess cannot find a
          description, the user is prompted for the description by
          RemoteAccess.
          
          Example:  Installing Lynx as an external protocol
          
          The following example illustrates how the Lynx protocol is
          defined:
          
          Name:           : Lynx
          Key             : L
          Ext ctl file    : No
          Batch           : Yes
          Status          : Enabled
          Log file        : C:\RA\DSZLOG.TXT
          Control file    : C:\RA\LYNX.CTL
          DL command line : Lynx.Exe S /*P /*B /S /H @Lynx.Ctl
          UL command line : Lynx.Exe R /*P /*B /S /D /H #
          DL ctl string   : @
          UL ctl string   :
          DL log keyword  : x
          UL log keyword  : X
          Log name word   : 10
          Log desc word   : 0
          
          Note the case status of the download and upload log keyword
          entries (one is lowercase and the other is uppercase).
          
          The above example assumes that your system directory is
          C:\RA.  To complete the installation of this protocol,
          you'll need to set the DSZLOG environment variable to the
          full path and name of the log file that Lynx writes.  This
          is done by entering the DOS command from the local console
          or from your BBS batch file:
          
                     SET DSZLOG=C:\RA\DSZLOG.TXT
          
          When these settings are required, they are usually explained
          in the documentation that accompanies the external protocol
          software.
          

          Languages
          ============================================================
          RemoteAccess contains full support for multiple languages.
          This means that you can have different prompts, text files,
          questionnaires and menus for up to eight different languages.



                                   - 96 -
          Selecting the Languages option from the Manager pick-list
          menu displays a selection of currently installed languages.
          By default, RemoteAccess comes with the English language.

          You can run the language editor directly without going
          through RACONFIG menus by using the -L parameter on the
          RACONFIG command-line.   For example:
          
                                 RACONFIG -L
          
          Executes RACONFIG and runs the language editor directly.
          
          To edit an installed language, position the cursor-bar over
          the desired language and press <ENTER>.  To generate a new
          language file, position the cursor-bar over a blank entry
          and press <ENTER>.
          
          This pick-list menu represents the configuration of the
          selected language.  As you will see, you can change any of
          the settings provided.  Each field is explained as follows:
          
          Name          This field holds the name for the language.
                        Since this is the name which will be displayed
                        to users when they are asked to select a
                        language, you should use the country of
                        origin's spelling rather than your own.  For
                        example, the name for the German language
                        should be entered as Deutsch.
          
          Available	If you do not wish to make the language 
                        available, toggle this field to No.
          
          Security	This field is used to specify the minimum 
                        security level a user must have in order to
                        select the language.  Setting this field to
                        zero causes the language to be made available
                        to users of any security level.
          
          Flags         These fields are used to specify the flag
                        settings a user must have in order to select
                        the language.  For example, setting the first
                        flag in set A to ON (setting it to an X) would
                        specify that users must have their A1 flag set
                        to ON in order to select this language.
          
          Language Text	Selecting this field enters the language text 
                        editor which allows you to alter every one of
                        the almost 700 different prompts.  Using the
                        editor is easy.  Position the cursor-bar over
                        the text prompt you wish to change and press
                        <ENTER>.
          


                                   - 97 -
          At the top of the editor screen, the default English text
          appears for the currently-selected prompt.  Any valid text
          file control characters may be inserted into the prompt text
          for automatic translation while the user in on-line.  See
          the Control Codes Listing section of the External Support
          Files chapter for a list of control codes that may be used.
          
          While in the prompt text editor, the following keys may be
          used:
          
          ALT-C   Changes the default color for the selected prompt.
                  Selecting this command brings up a color chart pick-
                  list menu.  Position the block cursor on the desired
                  color setting and press <ENTER> to assign it to the
                  selected prompt.
          
          ALT-D   Each language has default text associated with each
                  prompt.  When positioning the cursor-bar on a
                  prompt, you will notice the default prompt text
                  displayed on the top of your display.  This is
                  useful for identifying the original prompt text.
                  Using this command copies the default prompt text
                  into the selected prompt.
          
          ALT-S   Use this command to search for any text strings.
                  This search looks for any occurrences of the string
                  you enter here and positions the cursor-bar on the
                  next match.
          
          Though editing prompt text is a simple process, there are a
          few things you should keep in mind.
          
          *     You will notice that some prompts ask for keys before
          you can edit the actual text.  These are the keys that the
          user presses to activate an associated option.  For example,
          the key for the Yes prompt is "Y".  If you change the prompt
          to Ja you should be sure to change the activation key to
          "J".

          *     For prompts which are of a "Yes/No" type, you are
          able to define the default action, or in other words,
          whether a "Yes" or "No" response is selected if the user
          just presses <ENTER>.
          
          *     Some prompts are the headers for listing functions,
          such as Today's Callers, Who's On-line, etc.  You will see
          that these have obvious spacing built-in which must be
          maintained if you change any part of the prompt text.
          
          *     If you're translating the text into another language,
          there are two rules of thumb:
          


                                   - 98 -
          1.    Translate all text as literally as possible.
          2.    Try to use generic words and phrases.
          
          For example, RemoteAccess uses the same prompt for the
          "Access denied!" message when a user enters an incorrect
          password during log-on as it does when a user tries to
          access a passworded menu and fails.  Therefore, you wouldn't
          want to change the text to "Access denied, logging you
          off!".
          
          Menu Path	Each language can have its own set of menus.  
                        In this field you can define the paths to
                        menus for each specific language.  If one or
                        more menus in the language-specific directory
                        are missing, RemoteAccess will substitute the
                        menu of the same name from the directory
                        path specified earlier in RACONFIG:
          
                                     System > Paths
          
          Text Path	Each language can also have its own set of 
                        text files.  The same rules for missing menu
                        substitution apply to text files.
          
          Ques Path	In this field you may enter the path to the 
                        directory where the questionnaire files are
                        stored for the selected language.
          
          NOTE:  Questionnaire answer files (*.ASW files) are always
          written to the RemoteAccess system directory.  See the
          Questionnaires chapter for more information on answer files.
          
          Filename	This field is used to define the filename for 
                        the selected language.  It is not necessary to
                        enter an extension to the filename as the
                        extension .RAL will be added automatically.
          
          NOTE:  Text editing is disabled until a filename is entered
          in this field.
          
          
          Alt-Function Keys
          ============================================================
          RemoteAccess can be configured to take three types of
          actions when one of the ten function keys on your keyboard
          is pressed in conjunction with the ALT key.  These ALT key
          definitions are configured using this option.

          Pressing <ENTER> on the AltFn Keys option from the Manager
          pick-list displays a new pick-list of ALT-F1 through ALT-F10
          function key definitions.  Position the cursor-bar on the
          key to be edited and press <ENTER>.


                                   - 99 -
          One of three actions may assigned to ALT-function keys:
          
          *	Execute a DOS command-line.
          
          To assign a DOS command to one of the keys, simply enter the
          DOS command-line that is to be executed.
          
          *     Display a specified text file from the text files
                directory.
          
          To display a specific text file from the text files
          directory, enter the # character followed by the name of the
          text file.  For example, to display the text file
          GOODBYE.A??, the key would be defined as:
          
                               #GOODBYE
          
          *	Exit to DOS with an errorlevel set.
          
          To exit to DOS with a specific errorlevel set, enter the ?
          character followed by the errorlevel number you wish to pass
          back to DOS.  For example, to exit with errorlevel 100 set,
          the key would be defined as:
          
                                 ?100
          
          Suppose three entries looked like the following example:
          
                               5: ?110
                               6: C:\COMMAND.COM
                               7: #WELCOME
          
          Pressing ALT-F5 would cause RemoteAccess to exit to DOS,
          passing an errorlevel of 110.  Pressing ALT-F6 would execute
          COMMAND.COM in a shell, and ALT-F7 would display the
          WELCOME.A?? file to the user currently on-line.
          

          Events
          ============================================================
          The next item in the Manager pick-list menu is Events.
          RemoteAccess allows you to set pre-defined times during the
          week in which to perform certain functions, such as system
          maintenance.  For example, let's say that every night at
          midnight RemoteAccess should exit with an errorlevel of 100
          set.  The BBS batch file can trap this errorlevel and jump
          to a segment of the batch file that runs maintenance
          routines such as message database packing using RAMSG.

          Up to 20 events may be defined for any day.  Each event may
          be setup to run at a predetermined time and may also be
          configured to run on any number of days.


                                   - 100 -
          What happens when a user logs-on prior to an upcoming system
          event?  If the user's time remaining is greater than the
          number of minutes until the upcoming event, the user's time
          remaining will be trimmed down to ensure the event is not
          missed.  If the same user logs-on after the event has taken
          place, the time that was trimmed earlier will be restored.
          See the Forced field below for more details.

          System events are also commonly used when operating in
          conjunction with a mail network.  In such cases, the events
          configured here are usually used to ensure that a user is
          not logged-on at a time when a Front End Mailer event is to
          run.

          Selecting the Events option from the pick-list menu presents
          you with the Event Editor display.  Position the cursor-bar
          on an event to be created or edited and press <ENTER>.
          
          
          Start
          ------------------------------------------------------------
          This field is used to define the time at which an event is
          to start.  This time is specified in 24-hour format.  For
          example, to define a start time of midnight, enter 00:00.
          
          
          Status
          ------------------------------------------------------------
          This field is used to enable or disable a system event.
          When an event is disabled, RemoteAccess ignores it.
          
          
          Errorlevel
          ------------------------------------------------------------
          This field is used to specify the errorlevel that
          RemoteAccess should return to the calling batch file.  Your
          batch file should then trap this errorlevel and take the
          appropriate action.
          
          NOTE:  Take care when selecting errorlevels to ensure that
          there are no conflicts with errorlevels used by
          RemoteAccess.  A list of the errorlevels used is outlined in
          the Batch Files chapter of this manual.
          
          
          Forced
          ------------------------------------------------------------
          If a user's file transfer overruns a system event which is
          Forced, the transfer will be aborted and the user
          disconnected to ensure that the event runs at the proper
          time.  It is possible for events which are not forced to be
          missed if a file transfer takes longer than expected to


                                   - 101 -
          complete.

          RemoteAccess calculates file download times based on the
          size of the files to be transferred and the caller's
          connection speed.  However if errors or other anomalies
          occur which cause the transfer to take longer, only forcing
          the event will ensure that the event is not missed.  Also it
          is not possible for RemoteAccess to determine how long a
          batch transfer will take during an upload.

          To toggle this setting, position the cursor-bar on the
          Forced option and press <ENTER>.
          
          
          Days
          ------------------------------------------------------------
          Selecting this field presents a pick-list menu containing
          the seven days of the week.
          
          To select the days to run the event, position the cursor-bar
          on the day of the week to be changed and press <ENTER>. Days
          marked with the "X" character are considered selected while
          days marked with the "-" character are not selected.  When
          you are satisfied with the settings, press <ESCAPE> to
          return to the event editor.
          

          Menus
          ============================================================
          The next item in the Manager pick-list menu is the Menus
          option.  RemoteAccess features a powerful, state-of-the-art
          menu system.  The menu system and the menu editor accessed
          with this option are fully explained in the Menu
          Administration chapter.  It may seem confusing to simply
          make a reference to another chapter but when you realize the
          power and potential of the menu system, you'll understand
          why a full chapter has been devoted to the subject.
          

          Control Files
          ============================================================
          The next item in the Manager pick-list menu is Ctl Files.
          This option allows you to edit all of the system control
          files.  Control files reside in the RemoteAccess system
          directory and are identified by the filename extension of
          .CTL.

          Control files are one group of external support files used
          by RemoteAccess.  External support files enhance
          RemoteAccess through their flexibility and functionality.
          It would be unfair to briefly discuss control files in this
          section.  Therefore, a full chapter has been dedicated to


                                   - 102 -
          give you complete explanations and instructions.  Refer to
          the Control Files section of the External Support Files
          chapter later in this manual for complete information on
          this option.
          

          Combined
          ============================================================
          The next item in the Manager pick-list menu is the Combined
          option.  Selecting this option presents a pick-list menu of
          configured message areas.

          One of the features of the message database system is the
          ability for users to select individual message areas to be
          included in their combined message area.  This combined area
          acts as a file folder which holds all messages contained in
          the areas included in the user's combined area.  This allows
          your users to select and process only those message areas
          that he or she is interested in.

          When a new user logs-on to your system, it is possible to
          define a default set of message areas to be included in the
          user's combined message area.  These default settings can
          later be changed by the user.  To select or deselect the
          default combined message areas, position the cursor-bar on
          the desired areas and press <ENTER>.  When an area is
          selected for inclusion, a small block character will be
          displayed to the left of the message area number.   When you
          are satisfied with the settings, press <ESCAPE> and answer y
          to the Save changes? prompt.
          
          NOTE:  The Combined function is also discussed in the Menu
          Administration chapter under menu function 28-"Select
          combined areas", as well as earlier in this chapter under the
          Message areas option of the Manager pick-list menu.
          
          
          Limits
          ============================================================
          The next item in the Manager pick-list menu is the Limits
          option.  Pressing <ENTER> on this option presents a security
          level pick-list menu which is used to define time and file
          transfer limits and file ratios for individual security
          levels used by your BBS.
          
          Some planning may be required if you intend to use several
          security levels on your BBS.  Each security level you plan
          to use should have an entry in this pick-list in order for
          RemoteAccess to know what time and file transfer limits are
          to be placed on users with these security levels.

          To add a new security level to the pick-list, press INSERT.


                                   - 103 -
          You will notice a new entry in the pick-list that contains
          zeros in all of its fields.  The next step is to edit the
          entry just created. To edit an existing entry or an entry
          just created, position the cursor-bar on the desired entry
          and press <ENTER>.  An Edit pick-list menu is displayed
          which contains the security level field and other fields for
          which restrictions can be applied.
          
          Move through the pick-list selecting each item, entering the
          desired values.
          
          
          Security
          ------------------------------------------------------------
          This field is used to define the security level to which the
          limits will be applied.  Valid security level entries are 1
          to 65535.
          
          
          Time
          ------------------------------------------------------------
          This field specifies the time (in minutes) that users of the
          defined security level are given per day.  For example, to
          give users of the defined security level one hour of access
          time per day, enter a value of 60 here.
          
          
          Download Limits for Individual Baud Rates
          ------------------------------------------------------------
          The fields 300, 1200, 2400, 4800, 7200, 9600, 12000, 14400,
          16800, 19200 to 38400 are used to define the daily download
          kilobyte limits that are to be applied to users of the
          defined security level at different connection speeds.  This
          allows you to effectively increase or decrease the amount of
          files (in kilobytes) that may be downloaded daily, by users
          of varying connection speeds.

          For example, if the 1200 field is set to 1024 and the 9600
          field is set to 2048, then users of the defined security
          level who are connected at 1200 BPS may download up to 1024
          kilobytes of files while users connected at 9600 BPS may
          download up to 2048 kilobytes.

          If a user logs-on at a connection speed which has a setting
          of zero here, RemoteAccess will use the next highest speed
          setting until it finds one that has a non-zero value.  For
          example, if the 300 field is set to 1024 and all higher
          speed settings are set to zero, users of all connection
          speeds will be limited to 1024 kilobytes.
          
          



                                   - 104 -
          Local
          ------------------------------------------------------------
          The Local field is used to define the amount of files per
          day (in kilobytes) that may be downloaded locally.  Local
          downloads are possible with RemoteAccess and allow a file
          transfer from the selected file area to a DOS drive and
          directory.

          For example, this allows you to transfer files from your BBS
          to a floppy diskette while maintaining transfer limits and
          ratios imposed.

          Local downloads are discussed further under menu function
          32-"Download a file from area" and menu function 33-"Upload
          a file" in the Menu Administration chapter.
          
          
          RatioNum
          ------------------------------------------------------------
          This field is used to define the upload to download ratio,
          by number of files, that the user must maintain in order to
          download.  Usually used to encourage user uploading, this
          allows you to specify the number of files a user may
          download before being required to upload 1 file.

          For example, to require your users to upload 1 file for
          every 20 files they download, set this field to 20.

          It is also possible to give new users an initial upload
          credit. Refer to earlier sections of this chapter:
          
                   Options > New Users > UL Credit


          RatioK
          ------------------------------------------------------------
          This field is used to define the upload to download ratio,
          by number of kilobytes, that the user must maintain in order
          to download.  This allows you to specify the number of files
          (in kilobytes) a user may download before being required to
          upload 1 kilobyte.

          For example, to require your users to upload 1 kilobyte for
          every 20 kilobytes they download, set this field to 20. It
          is also possible to give new users an initial upload
          kilobyte credit.  Refer to earlier sections of this chapter:
          
                   Options > New Users > UL CreditK
          
          




                                   - 105 -
          PerMin
          ------------------------------------------------------------
          This field is used to define the per-minute cost (in
          credits) that is to be deducted from the Credit field in the
          users account record.  This is used in some subscription
          systems and allows you to effectively charge a specific rate
          for each minute of usage.  When a user's credit balance
          reaches zero, the questionnaire file NOCREDIT.Q-A is
          initiated unless the Post Bill flag is set to Yes in the
          user's account record, in which case a negative balance is
          allowed to accumulate.

          In order to handle decimal numbers allowed in this field,
          RemoteAccess stores the credit field internally as a real
          number.  However, the credit field is always rounded and
          stored as a whole number when a user logs-off.  This causes
          a minimal amount of accuracy to be lost, but allows
          third-party program developers to easily access the credit
          field in the user database.


          FlexTime
          ------------------------------------------------------------
          If set to a non-zero value, then the user will be permitted
          to stay online after his/her daily time limit has been
          exceeded, however the amount specified will be deducted from
          the users credit balance every minute. The user will be
          disconnected when his/her credit balance reaches zero,
          unless post-billing has been enabled in the users record.


          Session
          ------------------------------------------------------------
          Sets the maximum amount of time a user may stay online per
          session (as opposed to per day).


          Reset
          ------------------------------------------------------------
          Enables the sysop to automatically deduct or add credits to
          the users account via RAUSER at regular intervals. Options
          are Never, Weekly, Monthly or Yearly.


          ResetOfs
          ------------------------------------------------------------
          Determines on which day of the period specified in the Reset
          option that credits will be deducted or added to the users
          account. (Eg. 1 = First day of the Week/Month/Year).





                                   - 106 -
          ResetAmt
          ------------------------------------------------------------
          The amount to apply to the users account if the Reset option
          is activated. A positive amount will add to the users credit
          balance, a negative amount will subtract.

















































                                   - 107 -
          Chapter 3
          Menu Administration
          *	
          *	
          *	
          *	
          One of the most powerful features you will find in
          RemoteAccess is its menu system.  From giving your BBS its
          own unique look and feel to creating menus for specialized
          services, this system is top notch! You'll have complete
          control over each individual menu item which can be
          restricted according to criteria such as security level,
          group number, flag settings, age, sex, time of day and much
          more.








































                                   - 108 -
          ABOUT MENUS

          This is possibly the most important aspect of configuring
          your BBS.  The menu system that you create will give your
          system its own unique look and feel.  It gives you complete
          control not only cosmetically, but also in allowing and
          disallowing access to certain functions and parts of your
          BBS.

          Menus are line-oriented.  Using the menu manager in
          RACONFIG, you enter the lines one at a time.  Each line
          contains text that is displayed to the user, a menu function
          type, a field for optional data parameters, a hot-key
          assignment, minimum and maximum security levels, flag
          settings required to access the particular menu item and a
          host of other optional settings that make each individual
          menu item completely configurable.  There are over seventy
          menu function types that may be activated at the press of a
          key or even automatically.

          This flexibility allows you to design your BBS in any number
          of ways.  Practically anything your imagination can dream up
          can be implemented using the menu system incorporated in
          RemoteAccess.  Therefore, understanding this system is a
          paramount factor in customizing your BBS.

          Each menu function type offered will be outlined in detail
          in this chapter.  But first, we'll explain the concept of
          menus, other menu features and how to create menus.
          
          NOTE:  RemoteAccess supports a maximum of 100 line items per
          menu.
          
          MENU LAYOUT

          The key to a good menu system is planning.  And the best way
          to plan a menu system is to sketch it out on paper.  Menus
          are easier to design on paper and menus designed on paper
          are easier to implement.  Now there's a subtle hint!  If you
          put your layout to paper, you won't regret the extra effort,
          especially if you've never used this powerful menu system
          before.

          A menu system is typically divided into sections; messages
          are accessed from a message menu, files are accessed from a
          file menu, games from a game menu, and so on.  This
          sectioning, if done logically, creates a topology that is
          generally easy to comprehend and makes a system easier to
          navigate.  Of course, this doesn't mean you have to have a
          typical menu system but for the purposes of demonstration
          this section refers to typical menu systems.



                                   - 109 -
          Two widely-used menu topologies will be outlined in detail
          in this section.  These are the functional topology (the
          more popular of the two) and the subjective topology.  Each
          has its merits and should be considered when designing the
          structure of your menu system.  Whatever topology you decide
          to use, RemoteAccess provides the flexibility to compliment,
          enhance and blend topologies.

          Consider a functional topology; one where menus are
          organized according to their function.  Examine the
          following functional topology.

                                +-----------+
                                | Main Menu |
                                +-----+-----+
                        +-------------+-------------+
              +---------+---------+       +---------+---------+
              | Message Menu      |       | File Menu         |
              +---------+---------+       +---------+---------+
              +---------+---------+       +---------+---------+
              | Public Messages   |       | General Files     |
              +---------+---------+       +---------+---------+
              +---------+---------+       +---------+---------+
              | Private E-Mail    |       | DOS Utility Files |
              +-------------------+       +-------------------+

          This simple system is grouped by function (hence the name).
          In this example, there are a total of 3 main sections; the
          Main Menu, Message Menu and File Menu.  This topology is
          very simple to design and implement and makes it easy to add
          other main sections.  For example, a Statistics Menu could
          be easily added off the Main Menu.  From there, menu items
          could be added which display system usage graphs, user
          statistics and the like.
          
                                +-----------+
                                | Main Menu |
                                +-----+-----+
                  +-------------------+--------------------+
          +-------+--------+ +--------+---------+ +--------+-------+
          | Message Menu   | | File Menu        | | Statistics Menu|
          +-------+--------+ +--------+---------+ +--------+-------+
          +-------+--------+ +--------+---------+ +--------+-------+
          | Public Messages| | General Files    | | System Graph   |
          +-------+--------+ +--------+---------+ +--------+-------+
          +-------+--------+ +--------+---------+ +--------+-------+
          | Private E-Mail | | DOS Utility Files| | User Statistics|
          +----------------+ +------------------+ +----------------+
          
          This type of functional topology is virtually endless.  This
          is why it is important to plan your menu system beforehand.
          But don't get out a pencil and paper just yet.  It is


                                   - 110 -
          recommended that you read this entire chapter first, so that
          you realize the full potential of the menu system.  Because
          there are tools that will help you minimize the number of
          menus you will need to meet your requirements.  Tools such
          as templates (explained later in this chapter) are valuable
          time-savers that will add even more power to your menus
          while keeping them streamlined and easy to maintain.

          When you are satisfied with your overall functional topology
          plan, it may be wise to detail each of the main and/or
          sub-sections.  Not only does this ease the menu
          implementation process, it also serves as a guide when
          configuring other aspects such as the message and file
          areas.

                           +-------------------------+
                           | Messages Menu           |
                           |                         |
                           | Security Level: 0 (all) |
                           | Menu Name: MSGMAIN      |
                           +------------+------------+
                           +------------+------------+
                           | Area: Public Messages   |
                           | Area Number: 1          |
                           | Group Number: 1         |
                           | Read Security: 0 (all)  |
                           | Write Security: 50      |
                           | Sysop Security: 100 (me)|
                           +------------+------------+
                           +------------+------------+
                           | Area: Private E-Mail    |
                           | Area Number: 2          |
                           | Group Number: 1         |
                           | Read Security: 0 (all)  |
                           | Write Security: 50      |
                           | Sysop Security: 100 (me)|
                           +-------------------------+

          As you can see, a flowchart such as the one shown above
          would be helpful not only in building menus but in
          configuring message areas as well.  The included information
          might save you from jumping around from place to place
          within RACONFIG.

          The same sort of aid can be used to document the File Menu
          sections shown earlier.  Examine the following flow chart of
          a sample four-area file system.  You'll notice that it gives
          you a clear indication of the menu structure as well as a
          detailed chart of how each file area is to be set up.
          
                          +-------------------------+
                          | Files Menu              |


                                   - 111 -
                          |                         |
                          | Security Level: 0 (all) |
                          | Menu Name: FILEMAIN     |
                          +------------+------------+
                       +---------------+---------------+
          +------------+------------+     +------------+------------+
          | Area:  General Files    |     | Area:  BBS Files        |
          | Group Number: 1         |     | Group Number: 1         |
          | Area Number: 1          |     | Area Number: 3          |
          | Download Security: 50   |     | Download Security: 50   |
          | List Security: 0 (all)  |     | List Security: 0 (all)  |
          | Upload Security: 100    |     | Upload Security: 100    |
          | Upload Area: 4          |     | Upload Area: 4          |
          +------------+------------+     +------------+------------+
          +------------+------------+     +------------+------------+
          | Area:  DOS Utility Files|     | Area:  Uploads          |
          | Group Number: 1         |     | Group Number: 1         |
          | Area Number: 2          |     | Area Number: 4          |
          | Download Security: 50   |     | Download Security: 100  |
          | List Security: 0 (all)  |     | List Security: 100      |
          | Upload Security: 100    |     | Upload Security 50      |
          | Upload Area: 4          |     | All Groups: Yes         |
          +-------------------------+     +-------------------------+
           
          Even more information could be added about each individual
          area.  Information such as inclusion in new files searches,
          upload duplicate checking, allowing long file descriptions
          and a wealth of other options may be indicated here if you
          configure these differently for each area.

          So much for functional topologies.  You can see how dynamic
          they are and hopefully, the logical grouping of the various
          sections makes sense to you.  Now it's time to discuss
          another topology -- the subjective topology.  In the
          functional topology sections were grouped according to their
          function.  A subjective topology is one in which menus are
          grouped by subject.

          For example, if a BBS was to primarily serve two subjects -
          let's say Cooking and Desktop Publishing (also known as
          DTP), the menus could be grouped according to subject.  Each
          subject could have its own related message and file areas.
          
                                +-----------+
                                | Main Menu |
                                +-----+-----+
                        +-------------+-------------+
              +---------+---------+       +---------+---------+
              | Cooking Menu      |       | DTP Menu          |
              +---------+---------+       +---------+---------+
              +---------+---------+       +---------+---------+
              | Cooking Messages  |       | DTP Messages      |


                                   - 112 -
              +---------+---------+       +---------+---------+
              +---------+---------+       +---------+---------+
              | Cooking Files     |       | DTP Files         |
              +-------------------+       +-------------------+
           
          In the above example, two sub-sections are defined off the
          Main Menu.  Each is dedicated to its own subject.  Users
          interested in the DTP subject need only enter the DTP sub-
          section from the Main Menu.  There they will have access to
          both the DTP message and file areas.  The same goes for the
          Cooking sub-section.  While this type of topology is easy to
          use, it requires a little extra effort in the maintenance
          department if there are many subjects to support.

          Whether you decide to use a functional or subjective menu
          topology, or even a completely different approach, you can
          see the importance of planning your menu system.  The fact
          that you can implement just about any menu design, indicates
          the power and potential that RemoteAccess has to offer.  The
          sections that follow will detail the menu tools available
          which will help you to design and implement a powerful menu
          system.

          
          AUTOMATIC COMMANDS

          A menu function is usually executed when a user presses the
          hot-key assigned to that particular menu item.  But menu
          functions can also be executed automatically.  Each menu
          item contains an AutoExec field.  By default, this field is
          set to No, but by toggling it to Yes, the menu item can be
          made to execute when it is played back (displayed) by
          RemoteAccess.

          As you read through the menu function types outlined in this
          chapter, you may come to realize that this is a very
          powerful feature.  For example, when used with the menu
          function that displays a text file, you can design very
          elaborate, graphical text file menus that you wouldn't
          normally be able to display in a line-by-line menu.

          With RemoteAccess, you can determine whether or not users
          can turn off hot-keys on a system-wide or per-user basis.
          When hot-keys are not active, the user is said to have
          command stacking enabled.  How this feature interacts with a
          user whose hot-keys are not activated is a bit tricky and
          should be noted.

          With hot-keys active, the user selects menu commands simply
          by pressing the hot-key assigned to a given menu item. When
          this is done, any text that is being displayed is
          interrupted and the command associated with the hot-key is


                                   - 113 -
          executed immediately.  With hot-keys disabled (command
          stacking mode), the user is required to press the hot-key
          followed by pressing <ENTER>.  Additionally, when a user is
          in command stacking mode, several commands may be entered at
          once followed by pressing the <ENTER> key.  This allows a
          user to pass through menus to get right to a specific
          command.  This requires the user to be familiar with the
          menu structure of the system which usually doesn't take the
          user long to do.

          When a user passes through a menu by using stacked menu
          commands, you can still control how your menu system will
          react.  In some cases you may want an automatic command to
          execute, for example to redirect the user to another menu.
          On the other hand, if the command is only for cosmetic
          purposes (perhaps a text file to display some user
          statistics), it would be better to skip the command and
          continue straight to the next menu.  The rule is that when
          command stacking is used to pass through a menu, the
          automatic menu command will only be executed;  a) if it is
          the first item in the menu and;  b) it is not a display text
          file type function.  So if you use automatic execution and
          allow users to disable hot-key functionality, you'll want to
          keep this rule in mind.

          Automatic execution can be used in many other instances as
          well.  Just to give you some ideas, it might be used to
          display a text file to users who have a security level equal
          to or greater than a certain level.  Or, it might be used to
          execute an external program for users who have certain
          access flags turned on.  Yet another use is to execute
          multiple function menus which are used to execute several
          functions when a single command key is entered.

          For example, let's suppose you run a voting booth as an
          external program and that you want to perform 3 separate
          functions each time the voting booth is selected from your
          menu.  You could create a new multiple function menu which
          contains 3 automatic menu commands:
          
          *	Create a log entry indicating that the user entered the 
                voting booth.
          *	Run the external voting booth program.
          *	Return to MAINMENU.
          
          When a user selects the voting booth option from the
          MAINMENU, the multiple function menu is called (perhaps as a
          Gosub) which writes a log entry, runs the voting booth and
          returns to MAINMENU.
          




                                   - 114 -
          TEMPLATES

          Another one of the advantages of RemoteAccess is that it
          gives the Sysop the flexibility of designing menus with the
          least amount of maintenance required.  Not long ago, it was
          necessary to have a separate menu for each message and file
          area.  In the past, this has led to Sysop tedium because
          Sysops were required to add a separate menu, for example, to
          add a message or file area.  The menu templating system
          alleviates this problem by allowing you to set up one menu
          that will act as a skeleton for all your message and file
          areas.

          Four template variables are available for your use.  They
          are the /M, /MG, /F and /FG variables.  The /M variable
          represents the currently-selected message area.  The /MG
          variable represents the currently-selected message group.
          The /F variable represents the currently-selected file area.
          And finally, /FG represents the currently-selected file
          group.

          When referenced, these variables return a numeric value.
          Likewise, when these variables are modified, a numeric value
          must be assigned to them.  Template variables are used in
          conjunction with several message and file menu functions to
          indicate on which groups or areas the function is to be
          performed.

          Variables are simply labels which hold values assigned to
          them.  They can be referenced as well as modified.  They can
          also be used to change the way that certain menu functions
          operate.  Complete details are given in the appropriate menu
          function types listed later in this chapter.  For now, we
          will touch briefly on value assignments using the /M and /F
          variables.

          To install a value into one of these two template variables,
          simply specify /M=<area number> or /F=<area number> in the
          optional data field of a type 1, 2 or 4 menu command.  For
          example, let's say you set up a message area template menu
          called MSGMENU, and in this menu you had a number of menu
          items, each with its own functions relating to the message
          database.   An example is laid out in the following table:
          
          Key   Menu Function        Optional Data   Menu Type
          ------------------------------------------------------------
          R     Read messages        /M              23
          S     Scan messages        /M              24
          Q     QuickScan messages   /M              25
          P     Post message         /M              27
          
          In this example, you'll notice a few things.  First, each


                                   - 115 -
          function is specific to the message database and requires
          the message area to act upon in the optional data field.  We
          simply used /M in the optional data field to tell
          RemoteAccess to use the template variable which refers to
          the user's currently- selected message area.

          When the menu MSGMENU is called with /M in the optional data
          field, RemoteAccess knows which message area in which to
          perform these menu functions.  So to continue our example,
          let's say that you are calling MSGMENU from MAINMENU menu.
          It might look something like this:
          
          Key   Menu Function       Optional Data   Menu Type
          ------------------------------------------------------------
          L     Goto Logoff Menu    LOGOFF          1
          M     Goto Message Menu   MSGMENU /M=1    1
          
          By looking at this example, you can see that when a user
          presses the M key, the menu MSGMENU will be displayed and
          that all message database menu functions that refer to /M
          will perform their function on message area one.

          Now for a new twist!  You aren't required to set the value
          of the /M variable using the method in the previous table.
          When you omit the <area number>  assignment from the /M
          parameter, RemoteAccess uses the user's last-selected
          message area number.  If the user has never logged on
          before, this value will default to 1, or to the lowest
          message area number that the user has access to.  If the
          user has called before, RemoteAccess will remember the
          last-selected message area for that particular user and the
          value of  /M will be set to that area number.

          You are probably beginning to see why menu templates are so
          valuable.  Without the /M variable, you would need to
          specify a message area number in the optional data field of
          each of the message-base menu functions.  This would require
          a separate menu for each message area.  What a chore this
          would be!  By using the variable that stores the message
          area number, this requirement is obliterated and one message
          menu can be used for all message areas.

          This also applies to file areas as well.  The example just
          outlined applies directly to the manner in which file areas
          are handled.  But what about groups?  Now there is a
          completely different concept!  Continue reading the next
          section.

          





                                   - 116 -
          MESSAGE AND FILE GROUPS

          The Configuration chapter outlined specific details on
          message and file group administration.  If for some reason
          you skippped that chapter, it is recommended that you read
          it after finishing this section if you plan to implement
          message or file groups.

          While this section does not attempt to fully explain how to
          implement groups, it does attempt to explain the concept of
          groups and how they might apply to your BBS.  The menu
          function types listing later in this chapter explains
          technically how menu functions which apply to groups are
          implemented. Message and file areas can belong to specific
          groups.  Users might have access to all message and file
          areas in one group but not another.    This allows logical
          partitioning of your BBS by group, or topic.

          For example, let's say that your BBS will cater to two
          audiences; 1) professional programmers and; 2) computer game
          enthusiasts.  You might have three message and file areas
          dedicated to programming topics, and three message and file
          areas dedicated to computer gaming topics.  You might not
          want computer gaming enthusiasts to have access to the areas
          dedicated to professional programmers and vise versa.  In
          such a case, the message and file areas dedicated to each
          topic may be placed in their own group.  Each group may be
          configured separately to allow or disallow access to users
          of a given security level, or to users who meet specific
          access flag setting requirements.

          Additionally, an individual message or file area can belong
          to all groups, one specific group, or to one specific group
          and up to three alternate groups.  For instance, while a
          message area called Gaming appropriately belongs to the
          group dedicated to computer gaming enthusiasts, a message
          area called User to User E-Mail is an appropriate area for
          users in both groups. Therefore, the E-Mail message area may
          be configured as belonging to all groups, or it may be
          configured to belong primarily to group one and alternately
          to group two.  Each of these two types of configuration
          achieves the intended goal of allowing access to the message
          area to users in both groups.

          You should also keep in mind that if you decide not to
          implement groups during your initial setup, they can be
          added quite easily later on.  Your system's design can still
          be quite diverse without the use of groups.

 




                                   - 117 -
          THE TOP MENU

          RemoteAccess uses one hard-coded menu called TOP.MNU. Each
          time a user completes the log-on process, the TOP menu is
          presented to the user.  If this menu does not exist,
          RemoteAccess cannot continue operation and will display an
          error message just before terminating the session.  The TOP
          menu can be the main menu, or as some Sysops prefer, it can
          be used simply as a means to call the first, or main menu.
          When installing RemoteAccess for the first time, the TOP
          menu that is created is a simple one-line menu.  The menu
          item it contains is an AutoExec entry which calls menu
          function type 1 - Goto another menu which executes a menu
          called MAINMENU.  The reason that the TOP menu is installed
          in this manner is to allow advanced behind the scenes
          functions to be processed in the TOP menu each time a user
          logs-on but before the main menu is displayed. For example,
          one Sysop runs an external program from the TOP menu each
          time a user logs-on.  This program reads the RemoteAccess
          exit files and performs functions such as verifying the
          user's phone number and address information. Then, when the
          program terminates, the TOP menu continues and executes a
          type 1 - Goto another menu which brings the user to the
          actual main menu.

          To summarize, the TOP menu must exist and can be used as the
          main system menu if that's what you prefer.  It can be used
          to execute behind the scenes functions, or just to call the
          main menu, or as the first menu a user sees.
          

          SPECIAL SWITCHES

          As you'll learn in the sections that follow, each menu item
          contains an optional data field used to manipulate the way
          in which certain menu functions are executed.  You should
          know going in, that there are two special switches which may
          be placed at the end of the optional data field for any menu
          function.  They are:
          
          /NS    This switch suppresses the usual clear screen code
                 that is sent when a new menu is displayed.  This is
                 usually only useful when used with a menu
                 navigation (GOTO, GOSUB, etc.) command.  This
                 switch is known to have been used on systems
                 where ANSI graphic pull down menus were
                 implemented and screen clearing needed to be
                 suppressed regardless of the caller's screen clearing
                 setting.  It is also useful where menu prompts
                 follow one another in succession without clearing
                 the screen.
          


                                   - 118 -
          /K=xxx This switch places the specified text <xxx> into the
                 user's input buffer to be processed exactly as if it
                 had been entered by the user as a stacked
                 command.  This is an extremely powerful facility
                 which can be used to link a number of menu
                 commands together and customize a large number
                 of hard-coded selection menus. {+} Registered only.
          
          
          GLOBAL MENU

          It is likely that there are some commands that you will want
          to have available from every menu that your users see.
          Rather than duplicating these menu functions in every menu,
          you can simply place them by themselves in a menu called
          GLOBALRA.  RemoteAccess searches for this special menu, and
          if it exists, automatically appends it to the end of every
          menu.

          RemoteAccess appends the global menu in its entirety.  In
          other words, it appends not only the commands but any
          visible text as well.  Additionally, the global menu will
          always inherit the highlight colors of the current menu that
          it is appended to. For example, if you wanted to offer the
          user a log-off command from every menu, you could simply
          place this command in the global menu, including the text
          displayed to the user. {+} Registered only.
          

          CREATING MENUS

          Earlier in this chapter, we summarized menu layouts and how
          important it is to plan your menu system.  You learned about
          various features such as templates, special switches and the
          global menu.  Now it's time to put what you've learned to
          use in creating your own menus.

          When you installed RemoteAccess, a set of initial, default
          menus were placed onto your system.  If you decide to use
          these menus, then perhaps all you need to do is edit them to
          suit your tastes and needs.  If you would rather start your
          menu system from scratch, you will probably want to delete
          the default menus from your system.  To do this, follow the
          check-list procedure below:
          
          1)    Change to the menu directory (usually \RA\MENUS).
          
                CD \RA\MENUS <ENTER>
          
          2)    Delete all menu files in this directory.
          
                DEL *.MNU <ENTER>


                                   - 119 -
          3)    Change to the RemoteAccess system directory.
          
                CD \RA <ENTER>
          
          4)    Fire up RACONFIG.
          
                RACONFIG <ENTER>
          
          5)    Once in RACONFIG, select:
          
                Manager > Menus
          
                This will take you into the RemoteAccess menu editing
          portion of RACONFIG.
          
          The first screen displayed is the language pick-list menu.
          In most cases, you will only have one language to select
          from.
          
          Use the UPand DOWN keys to move the cursor-bar to the
          language selection of your choice and then press <ENTER>.
          
          NOTE:  In most cases, you need only press <ENTER> to select
          the default language provided during your initial
          installation.
          
          The next screen that you will see is the menu pick-list.
          This is a pick list of all existing menus.  To edit an
          existing menu, you would simply position the cursor-bar on
          the desired menu name and press <ENTER>.

          To create a new menu, press the INSERT key.  Next, you will
          see the menu editing screen on your display.
           
          As you will see, the menu is blank.  The name NONAME.MNU has
          been temporarily assigned as the menu name and is displayed
          in the upper-right corner.  You can give the menu a more
          meaningful name when you save it later.  For now, we will
          work with this default menu name.

          You will also notice a series of commands at the bottom of
          the display.  These commands are available while you're in
          this screen.  They are described in the following table:
          
          ENTER   Edit the currently selected menu item.
          
          
          INSERT  Insert a new menu item immediately before the
                  currently selected item.
          
          
          DELETE  Delete the currently selected menu item.


                                   - 120 -
          ESCAPE  Exit the menu editor.
          
          
          ALT-L   Discard the current menu and load another from disk.
          
          ALT-S   Save the current menu to disk.
          
          ALT-P   View or modify the menu prompt, its display and
                  highlight colors as well as whether or not to
                  suppress all carriage-return, line-feed, color
                  change sequences, and the global menu.
          
                  This option allows you to define five settings that
                  are specific to this menu. They are:
          
                  *     The prompt that is to be displayed after this
                        menu.  Text file control codes as well as
                        control codes outlined later in this chapter
                        under the User Display field may be used
                        here.
          
                  *     The prompt display color to be used.
          
                  *     The prompt highlight color to be used.
          
                  *     Whether or not carriage-return, line-feed and
                        color change sequences will be disabled.  This
                        option supports non-native emulations which do
                        not support ANSI or AVATAR fallback, such as
                        NAPLPS and RIP.

                  *     Whether or not to append to global menu
                        (GLOBALRA.MNU) to the end of this menu.
          
          ALT-D   Simulate what the menu would look like to a user.
                  This handy option lets you take a peek at how your
                  menu will look.
          
          Press INSERT to create the first item in your new menu. When
          you do this, you will notice a change in the first line of
          your menu.  It has actually become a completely blank menu
          item.

          Now edit the new item you've created.  Notice that the
          cursor-bar is already positioned on the new item.  (Press
          <ENTER> for the Edit Menu Item screen.)

          This is the editor used to edit all menu items.  As you can
          see, there are several fields that need explanation.  But
          first, take a look at the Edit Menu Item screen layout.
          
          The top portion of the display shows the user display text


                                   - 121 -
          as well as the optional data fields.  A ruler is also
          displayed just above the user display text to aid you in
          formatting the text that is displayed to your users.

          The lower portion of the display shows a list of fields that
          may be edited along with data pertaining to each field.  Use
          the UP, DOWN and <ENTER> keys to select the fields you wish
          to edit. Edit the fields in sequence and discover the
          purpose of each one.

          
          Action
          ------------------------------------------------------------
          The Action field determines what menu function will be
          performed by this particular menu item.  Move the cursor-bar
          to the Action field and press <ENTER>.  Upon doing so, the
          Menu Action Groups pick-list menu is displayed to make easy
          work of selecting a menu function.
          
          The default menu action group that is initially presented is
          the Menu Functions group since it is usually the group most
          commonly used.  Press <ESCAPE> to move to the Menu Action
          Groups pick-list.  Notice there are eight groups to choose
          from.  These are:
          
          Display only (no command)

          Selecting this function simply indicates that no actual
          function is to be performed and that the menu item is used
          solely for display purposes.
          
          Menu Functions

          This group contains a list of menu functions related to
          other menus.
          
          Display Text Files

          This group contains functions related to text file display.
          
          General System Options

          This group contains a pick-list of functions related to the
          overall system.
          
          Message-base Commands

          This group contains a pick-list of functions relating to the
          message system.
          
          File-area Commands



                                   - 122 -
          This group contains a list of function selections that
          pertain to the files system.
          
          External - Door, Exits

          This group contains a pick-list of functions relating to
          running external programs.
          
          Change User Options

          This group contains a pick-list of functions pertaining to
          user configuration.
          
          Using the UP, DOWN, <ENTER> and <ESCAPE> keys, you can
          navigate through the menu pick-lists.  Pressing <ESCAPE>
          returns you to the previous pick-list menu.

          Since the purpose of the TOP menu that you are creating is
          to simply call MAINMENU, you'll need to use menu function
          type 1 - Goto another menu.  The cursor-bar should already
          be positioned on this selection by default.  Therefore, just
          press <ENTER> to select this function.  You'll notice the
          Action field will now contain the menu function type that
          you just selected.
          

          User Display
          ------------------------------------------------------------
          This field allows you to define what will be displayed to
          the user when this item is processed.  With the cursor-bar
          positioned on the Display field, press <ENTER>.

          You may enter text along with any valid text file control
          codes.  Text file control codes act as macros within display
          text and can be used to automatically display user and
          system data by embedding them in the text entered in this
          field.  Text file control codes are explained in detail in
          the External Support Files chapter.

          Text file control codes are preceded with a control
          character.  Whether the text file control code is a single
          or multiple-character code, the first code entered is always
          a control character.  Throughout this manual as well as in
          most computer-related documentation, control characters are
          illustrated in text as a capital letter preceded by the
          caret "^" character.  For example, a CTRL-A character is
          illustrated as ^A.

          The following two-step checklist explains how to enter a
          control code in the user display text:
          
          1)    While pressing the "Ctrl" key, press "P".  This prepares


                                   - 123 -
          RACONFIG for the next, literal character.  After pressing
          this key combination, you will notice the cursor change in
          appearance from a line cursor to a block cursor.
          
          2)    While pressing the "Ctrl" key, press the control
          character you wish to enter.  For example, to enter ^A as
          the control code (which prompts the user to press <ENTER>),
          you would press CTRL-A.  In the user display text, you will
          notice that the letter "A" has been highlighted, indicating
          that it is actually a ^A character.
          
          You'll learn more about specific text file control codes
          that can be used in this field in the chapter on External
          Support Files in this manual.
          

          Special User Display Characters

          In addition to the text file control codes that you can
          embed directly into user display text, a special set of
          control characters is also supported.  These characters are
          used to alter the way in which user display text is
          presented to the user.  They are also used to display
          specific system data. Take a look at each of the special
          characters and what data that each represents.
          
          Semicolon ";"

          After displaying the contents of the user display field,
          RemoteAccess normally moves the cursor down one line to
          prepare for the next menu item.  This is known as a
          carriage- return and line-feed sequence.  However, if you
          place the semicolon character at the end of the user display
          line, the user display text from the next menu item will be
          appended to the same line.  In other words, using the
          semicolon causes the carriage-return/line-feed sequence to
          be suppressed.
          
          Caret "^"

          The caret character switches between the normal line colors
          and the defined menu highlight color.  For example, to
          display the letter "G" using the highlight color specified
          for the current menu, you would enter ^G^ in the user
          display text.

          Tilde "~"

          The tilde character causes the user's time remaining today
          (in minutes) to be displayed at the current cursor location.
          This is handy when used within the menu prompt text. For
          example, if the menu prompt contents were:


                                   - 124 -
                    Your Time: ^~ mins^  Command:
          
          The corresponding prompt that would be displayed would look
          something like this:
          
                    Your Time: 55 mins  Command: _
          
          Each (at) "@"

          The each character (also known as the at character) expands
          to display the name of the currently-selected file template
          area as defined in RACONFIG.
          
          Accent "`"
          The accent character expands to display the name of the
          currently-selected message template area as defined in
          RACONFIG.
          
          NOTE:  This is not the apostrophe character.  It is usually
          located on the same key as the tilde character.
           
          Remember that in our example the TOP menu will be created,
          and that its sole purpose is to call a menu called MAINMENU.
          Now that you've experimented with the various user display
          characters, delete all text in the user display field and
          simply enter a semicolon.   Having done this, your TOP menu
          will display nothing to the user (not even a carriage-
          return line-feed sequence).

          
          Optional Data
          ------------------------------------------------------------
          Position the cursor-bar and select the optional data field.
          You'll notice the cursor is repositioned in the upper
          portion of the screen.  This is where optional data is
          entered.  For our example menu item, the optional data
          required is the menu name to Goto.  For the sake of the
          example, type MAINMENU and press <ENTER>.

          Different menu function types require different optional
          data.  Consult the menu types listing in this chapter for
          optional data field information.

          It is possible to use Textfile Control Codes in this field
          in the same way as they are used in the User Display field.
          If one of these codes is present, it will be automatically
          replaced with its value when the menu commend is executed.


          Hot-Key
          ------------------------------------------------------------
          This field is used to specify the key that is to activate this 


                                   - 125 -
          menu item.  For example, if you wanted this menu item to be 
          executed when the user pressed A, simply enter A into this 
          field.

          +----------------------------------------------------------+
          | Here's a Tip!                                            |
          |                                                          |
          | It's possible to link a command to the <ENTER> key to    |
          | create a "default" action for a menu.  This is done using|
          | the ^M text file control code.  Enter CTRL-P followed by |
          | CTRL-M in the Hot-Key field to use <ENTER> as a command  |
          | hot-key.                                                 |
          +----------------------------------------------------------+

          Since our example item does not require the press of a key,
          leave this field blank.  If you've already entered a
          character, it can be removed by pressing the DELETE key.
          

          AutoExec
          ------------------------------------------------------------
          This field is used to indicate whether this particular menu
          item is to be executed automatically or if the user will be
          required to press the associated hot-key to select it.

          This field has two possible settings; Yes or No.  To change
          the current setting, position the cursor-bar on AutoExec and
          press <ENTER>.

          Toggle this field to Yes since our example calls for this
          menu item to be executed automatically.
          

          Color
          ------------------------------------------------------------
          This field allows you to define the foreground and
          background colors of the text that is displayed to the user.

          Selecting this field presents a color chart pick-list menu.
          The initial color of a new menu item is black on black.  Use
          the cursor keys to move the selector around the chart.  When
          you find a color combination that suits you, press <ENTER>
          to select it.

          You probably noticed the small indicator at the bottom of
          the color chart.  This indicator displays the background and
          foreground color numbers of the current selector position in
          hexadecimal format.

          After selecting the color combination, the Edit Menu Item
          screen displays an example of your selection so that you can
          see how the displayed text will appear to your users.


                                   - 126 -
          For the sake of our example, it doesn't matter which colors
          you use since this menu item will not display any text to
          the user.
          

          MinSec
          ------------------------------------------------------------
          This field is used to define the minimum security level
          required for the user to see and select this menu item. For
          example, if you wanted this item to be available only to
          users with a security level of 100 or more, you would set
          this field to a value of 100.

          In our example, you'll want all users to be able to get to
          the main menu.  Therefore, set a security level of zero here
          (which is the default value).
          

          MaxSec
          ------------------------------------------------------------
          This field is used to define the maximum security level
          required to see and select this menu item.   When used
          together with MinSec you can effectively create menu items
          that can only be seen and accessed by users of a given
          security level range.  Imagine the possibilities that this
          presents in terms of customization.

          If you're following along with our example, leave this field
          set to zero since you won't need to restrict it in any way.
          

          Flags
          ------------------------------------------------------------
          The access flags in a menu item function just as they do in
          other areas of RemoteAccess (i.e. message and file area
          access). You can restrict menu items not only to users who
          have a security level that falls in the range defined by
          MinSec and MaxSec, but also to users who have specific
          access flag settings.

          For example, if you wanted a menu item to be available only
          to users with access flag A1 set to ON,  position the
          cursor-bar on A Flags and press <ENTER>.   From the
          pick-list of access flags, select the flag you wish to
          change (the A Flag in this case) and press <ENTER>.  You'll
          notice that the flag toggles to one of three possible
          states; "X" (ON), "O" (OFF), or "-" (ON or OFF).  Press
          <ESCAPE> when you are satisfied with the flag settings. When
          a flag is set to X or O, users must have the same flag
          setting stored in their user account record in order to view
          or select the menu item.



                                   - 127 -
          If you skipped the section on Access Flags in the
          Configuration chapter, it is recommended that you read it to
          gain at least a basic understanding of how flags are used.
          Many Sysops never have a need to use access flags and you
          may never need them either.  But if you understand how they
          function, it might help you to better plan your system.

          For the sake of our example, move the cursor-bar past the
          four flag fields since none of these needs to be set.
          
          
          TimeUsed
          ------------------------------------------------------------
          This field is used to define the number of minutes that a
          user must be logged-on before the menu item can be selected.
          In cases where external programs such as time banks are
          used, this setting can be used to discourage users from
          logging-on solely for the purposes of storing their daily
          time and/or download limits.

          For example, if this field was set to a value of 5, a user
          would be required to be logged-on for at least 5 minutes
          before being able to select this menu item.

          If you're following along with our example, leave this field
          set to zero since you won't need to restrict it in any way.
          

          TimeLeft
          ------------------------------------------------------------
          This field allows you to define the minimum amount of time
          (in minutes) that a user is required to have remaining in
          order to select this menu item.  A practical application for
          this field may be when the menu item is used to load an
          external program such as an on-line game where there would
          not be enough time left for the user to effectively play the
          game. For example, if this field was set to a value of 5, a
          user would be required to have at least 5 minutes remaining
          in order to access this menu item.

          If you're following along with our example, leave this field
          set to zero since you won't need to restrict it in any way.
          

          Age
          ------------------------------------------------------------
          This field allows you to restrict a menu item to users of at
          least a certain age.  If you have your system configured to
          prompt users for their date of birth, it is possible for
          RemoteAccess to calculate the user's age and compare it to
          the value of this field.



                                   - 128 -
          For example, if this field is set to a value of 18, then no
          user whose date of birth calculates to less than 18 years of
          age will be able to access this menu item.

          If you're following along with our example, leave this field
          set to zero since you won't need to restrict it in any way.
          
          NOTE:  In order for RemoteAccess to calculate a user's age,
          it must know the user's date of birth.  To require your
          users to enter their date of birth, activate the option in
          RACONFIG:
          
                       Options > New Users > Birthdate

          
          MinSpeed
          ------------------------------------------------------------
          This field is used to restrict menu items to calls that are
          established at a minimum BPS rate.  This is great for
          restricting only certain functions (such as file
          downloading) to users who are connected at faster speeds.

          For example, to restrict a menu item to users connected at a
          minimum of 2400 BPS, set this field to a value of 2400. If
          you're following along with our example, leave this field
          set to zero since you won't need to restrict it in any way.

          
          MaxSpeed
          ------------------------------------------------------------
          The opposite of MinSpeed, this field is used to restrict
          access to a menu item to callers of up to a given BPS rate.
          For example, if this field was set to a value of 2400, any
          user connected at a BPS rate of greater than 2400 would not
          be allowed access to this menu item.

          If you're following along with our example, leave this field
          set to zero since you won't need to restrict it in any way.
          

          Credit
          ------------------------------------------------------------
          This field is used to restrict access to users who have a
          minimum amount of credit on account.  The value specified
          here is not deducted from the user's current credit amount.
          It is used simply to restrict access based on the user's
          existing credit amount.

          For example, if a menu item had a cost of 10 credits
          associated with it and a user had 8 credits remaining on
          account, you might want to restrict access to that menu item
          to prevent the user from using more credits than what is on


                                   - 129 -
          account.

          When post billing is used, it is generally acceptable for
          users to accrue negative credit amounts.  However in cases
          where post billing is not used, this option should be
          considered.

          If you're following along with our example, leave this field
          set to zero since you won't need to restrict it in any way.
          

          FlatCost
          ------------------------------------------------------------
          This field is used to specify the amount of credits, if any,
          that should be deducted from the user's account each time
          this menu item is selected.  If the user has less than the
          specified amount of credits remaining, the user will accrue
          a negative credit amount.

          If you're following along with our example, leave this field
          set to zero since you won't need to restrict it in any way.
          

          TimeCost
          ------------------------------------------------------------
          This field is used to specify the amount of credits, if any,
          that should be deducted for each minute that the caller uses
          this menu item.  RemoteAccess begins timing when the menu
          item is selected and stops timing when the menu is
          redisplayed.

          For example, to deduct 1 credit for each minute that a menu
          item is used, set this field to a value of 1.

          If you're following along with our example, leave this field
          set to zero since you won't need to restrict it in any way.
          

          Terminal
          ------------------------------------------------------------
          Use this field to restrict access to a menu item to callers
          who have a specific emulation enabled.  For example, if you
          were running an external program that did not detect a
          user's emulation and a minimum emulation of ANSI was
          required, you could set this option to ANS to restrict its
          use to callers with ANSI emulation enabled.  This would
          effectively prevent callers with no terminal emulation above
          ASCII text to select the menu item.

          By de-selecting both .ANS and .AVT in the pick-list menu,
          callers of any terminal emulation type will be allowed to
          select the menu item.  On the other hand, selecting both


                                   - 130 -
          .ANS and .AVT allows users of either emulation type to
          select the menu item.

          Similarly to make a menu option only available to users with
          RIP capability, set this option to RIP only.

          If you're following along with our example, leave this field
          set to its default, unrestricted setting.
          

          Nodes
          ------------------------------------------------------------
          This option lets you restrict a menu item to callers who are
          on a specific node or nodes.  RemoteAccess supports up to
          255 nodes.  Pressing <ENTER> on this field will present you
          with a large pick list of all node numbers.  To select or
          deselect a node, move the cursor-bar to the node number and
          press <SPACEBAR> to toggle it.  Selected nodes are indicated
          by a block character and all nodes are selected by default.
          Additionally, you may also select (tag) or de-select
          (un-tag) all nodes by pressing ALT-T or ALT-U.  Pressing
          <ESCAPE> or <ENTER> saves the current selection.

          If you're following our example, leave all nodes selected
          since you won't need to restrict this menu item in any way.
          

          Groups
          ------------------------------------------------------------
          This option allows you to restrict a menu item to users of
          specified groups.  RemoteAccess supports up to 255 groups,
          all of which are selected by default.  The groups can be
          selected and de-selected in the same manner as explained
          under the Nodes option above.

          If you're following our example, leave all groups selected
          since you won't need to restrict this menu item in any way.
          
          
          DayTimes
          ------------------------------------------------------------
          This option is used to restrict a menu item so that it can
          only be selected during certain times of the day.  Pressing
          <ENTER> at this option will present you with a scheduler
          pick-list.  You can even restrict a menu item to certain
          times for each day of the week.  By default, a menu item is
          not restricted by time of day.

          If you're following our example, leave the day times set to
          their default values since you won't need to restrict this
          menu item in any way.
          


                                   - 131 -
          If you've followed along with our example, you've probably 
          learned a great deal about the power and flexibility that 
          RemoteAccess lends to your menu system.  Your menu item 
          didn't utilize many of the options available but you should 
          have valid data in the following fields:
          
          *	Action (type 1 - Goto another menu)
          *	Display (a semicolon character)
          *	OptData (the menu name MAINMENU)
          *	AutoExec (should be set to Yes)
          
          Press <ESCAPE> to exit the Edit Menu Item screen and return
          to the main menu editor screen.  Press <ESCAPE> or A-S and
          when prompted for the filename to save, type TOP <ENTER>.
          You've now created a menu.  Granted, it was a lengthy process
          this time, however next time you'll be able to go through the
          steps much more quickly.

          You are now ready to create your first actionable menu.
          Remember to call it MAINMENU and have fun!
          

          MENU TYPES LISTING

          This section describes each individual menu function type
          that is available.  Each menu type listed includes
          explanations of usage syntax and function description.  In
          many cases, a usage example is also provided.

          Certain symbols are used to describe variables and
          parameters throughout this section.  Take a moment to review
          these now so that you will better comprehend the material
          that follows.
          
          <variable>    Where the chevrons < > are used, you can
                        expect to find a required variable parameter.
                        Variables can be filenames, strings of
                        characters, or integer (numeric) values.
                        Substitute the variable between the chevrons
                        with a valid value.  Where chevrons are used,
                        the data is not optional.  It must be supplied.
          	
          Example:      Optional data:  <menu name>
          
                        Substitute a valid menu name in place of
                        <menu name>.
          
          [parameter]   Where brackets [ ] are used, you can expect to
                        to find an optional parameter.  Optional
                        parameters are not required input.
          
          Example:      Optional data: <menu name> [password]


                                   - 132 -
                        Substitute a valid menu name in place of
                        <menu name> (required input) and optionally
                        substitute a password to this menu in place of
                        [password].
          
          
          
          Type: 1
          Goto another menu
          ------------------------------------------------------------
          Optional data:

          <menu name> [password] [/M=<message area|+|-|>|<]
          [/F=<file area|+|-|>|<] [*U<activity>]
          
          Description:

          This function causes RemoteAccess to jump to menu <menu
          name>.  If  a [password] is specified, the user will be
          prompted to enter a non-case-sensitive password before being
          allowed access to the menu.
          
          The <message area> and <file area> variables are used when
          assigning a value to the message and file area template
          variables (/M and /F).  Optionally, the + - > or <
          parameters can be specified instead of the <message area> or
          <file area> numbers.  These have the following effects:

          +   Sets the currently selected message or file area to the
              next available area.

          -   Sets the currently selected message or file area to the
              previous area.

          >   Sets the currently selected message or file area to the
              next available area within the current group.

          <   Sets the currently selected message or file area to the
              previous area within the current group.
          	
          Each of these options assigns the new area number to the /M
          or /F template variables.

          The optional *U parameter is used to place a sysop-defined
          entry in the "Who's online" list. For full details on this
          parameter, see Menu Type 7.
          
          Examples:

          To jump to a menu called FILES:
          
          	Optional data:  FILES


                                   - 133 -
          To jump to a menu called MESSAGE and set the currently
          selected message area to 1:
          	
          	Optional data:  MESSAGE /M=1
          
          To jump to a menu called SYSOP and require a non-case-
          sensitive password of SECRET:
          
          	Optional data:  SYSOP SECRET
          
          To jump to a menu called FILES, set the currently selected
          file area to 10, set the currently selected message area to
          10 and require a password of UNCLE:
          
          	Optional data:  FILES UNCLE /M=10 /F=10
          
          To jump to a menu called MESSAGE and set the currently
          selected message area to the next available message area:
          
          	Optional data:  MESSAGE /M=+
          
          To jump to a menu called FILES and set the currently
          selected file area to the previous area within the same file
          group:
          
                Optional data:  FILES /F=< 
          
          
          
          Type: 2
          Gosub another menu
          ------------------------------------------------------------
          Optional data:

          <menu name> [password] [/M=<message area|+|-|>|<]
          [/F=<file area|+|-|>|<] [*U<activity>]

          Description:

          This is identical in function to the type 1 with the
          exception that RemoteAccess saves the calling menu name on a
          stack, making it possible to return to the calling menu
          using a type 3 function.  All optional data parameters are
          the same as those used with menu function type 1.
          
          Example:

          This is a popular menu function which performs well when
          used consistently. Whenever you use this function, the
          current menu location is saved on a stack. Then, when a type
          3 function is executed (return from Gosub), RemoteAccess
          returns to the last menu that was put on the stack. You can


                                   - 134 -
          look at a stack just as you would a stack of paper.  The
          last one placed onto the stack is on top and is therefore
          the first one pulled off the stack.
          
          This stacking allows you to nest menus.  It also allows you
          to easily return from menus without having to specify the
          <menu name> to return to.
           
          NOTE:  Menus called in this manner can be nested to a
          maximum of 50 levels.
          
          
          
          Type: 3
          Return from Gosub
          ------------------------------------------------------------
          Optional data:

          [*U<activity>]
          
          Description:

          This function is used to return to the last menu from which
          a Gosub (type 2) was used.  Keep in mind; this will return
          to the last menu that was saved on the stack by a Gosub
          function.
          
          Example:

          A user enters a menu called FILES from the MAINMENU menu via
          a type 2 Gosub function and then enters a menu called IBM,
          again using the type 2 Gosub function.  Once in the IBM
          menu, if the user executes a type 3 Return from Gosub
          function, the menu that the user will be returned to is the
          FILES menu.  If the user executes another type 3 Return from
          Gosub function, he will be returned to the TOP menu.
          
          In this example, two menus were placed onto the stack.  Both
          menus were returned to using the type 3 function thereby
          clearing stack.
          
          
          Type: 4
          Goto menu after clearing menu stack
          ------------------------------------------------------------
          Optional data:

          <menu name> [password] [/M=<message area|+|-|>|<]
          [/F=<file area|+|-|>|<] [*U<activity>]
          
          Description:



                                   - 135 -
          This is identical in function to type 1, with the exception
          that before the specified menu is called, the menu stack is
          cleared. For this reason, you cannot use a type 3 function
          immediately after using this.
          
          All optional data parameters are the same as those used with
          the menu function type 1.
          
          
          Type: 5
          Display a .A?? text file
          ------------------------------------------------------------
          Optional data:

          <1-8 character filename> [/BINARY]
          
          Description:

          This menu type will display a file from your text file
          directory (as defined in RACONFIG) to the user on-line.
          RemoteAccess will display the file specified in the optional
          data field using one of three filename extensions.  If the
          user has AVATAR codes enabled, RemoteAccess will display the
          file <filename.AVT> to the user. However, if <filename.AVT>
          is missing or the user does not have AVATAR enabled but does
          have ANSI enabled, the file <filename.ANS> will be
          displayed. Likewise, if the user has only ASCII enabled or
          both <filename.AVT> and <filename.ANS> are missing, the file
          <filename.ASC will be displayed.
           
          These files may contain any text or graphical information
          within the limitations of the text format.  For example, you
          cannot display ANSI color in an ASCII text file.  Along with
          text and graphics, it is also possible to display
          comprehensive system and user details by inserting special
          control codes in these files.  These codes are listed in the
          External Support Files chapter of this manual.

          If the optional /BINARY parameter is specified, the file
          will be transmitted with no translation at all.  For
          example, embedded control codes will not be interpreted when
          this parameter is specified.  If you use this paramter, it
          must be the last parameter in the optional data field.
          
          
          Type: 6
          Bulletin Menu
          ------------------------------------------------------------
          Optional data:

          <[path\] 1-7 character filename>
          


                                   - 136 -
          Description:

          Displays the file <filename.A??> from the text file
          directory.  If an optional path is specified, RemoteAccess
          will search for all associated bulletin files in this path
          instead of the standard text file directory.
          
          Once <filename> is displayed, the user is prompted for a
          file suffix of (8 - length of <filename>) (thus the
          restriction of a 7- character filename in the optional data
          field).  The suffix is appended to the original filename
          specified and the .A?? file is then displayed as it would be
          using menu function type 45.
          
          This function is used to display a master bulletin file to
          the user.  It usually contains text and graphical
          information that depicts a list of bulletin choices that are
          available for selection.  In other words, this can be used
          as a main bulletin menu if you have more than one bulletin
          that you would like to make available to your users.
          
          Example:

          Optional data:  BULLETT
          
          As you can see, the 1-7 character filename specified in this
          example is BULLETT which is a 7-character filename.  Since
          the maximum length of a filename (not including the filename
          extension) is eight characters, the user will be required to
          enter a 1-character suffix.  If the filename specified in
          the optional data field was 5 characters in length, the user
          would be prompted to enter a 3-character suffix, and the
          <ENTER> key.
          
          Let's say, for the sake of example, that you'll offer two
          bulletin choices off your main bulletin menu BULLETT:

              +---------------------------------------+
              | Select The Bulletin To View           |
              |                                       |
              | 1)  Latest System News                |
              | 2)  DTP News                          |
              |                                       |
              | Bulletin to view (Enter = quit):      |
              +---------------------------------------+

          If the user presses 1, the filename BULLETT1.A?? is
          displayed.  If the user presses 2, the file BULLETT2.A?? is
          displayed.  If the user presses <ENTER> the BULLETT menu is
          exited.
           
          NOTE:  If an invalid selection is made, the user will be


                                   - 137 -
          prompted Press <ENTER> to continue: and the BULLETT file
          will be redisplayed.
          
          
          Type: 7
          Run an external program in a shell (Doors)
          ------------------------------------------------------------
          Optional data:

          <command line> [control codes]
          
          Description:

          This function will run an external program, or door in a
          shell while the user is on-line. Examples range from on-line
          games to external file transfer programs and the like.
          (Refer also to menu function type 15-"Exit to DOS with
          errorlevel" for an alternative method of running external
          programs without shelling).  The full name of the program
          must be specified if it is a .EXE or .COM file.  To run one
          of these two types of programs, simply put the name of the
          program in the optional data field.  If you wish to call a
          batch file, this must be done via COMMAND.COM, the DOS
          memory-resident command line processor (an example is given
          below).
          
          Many programs require extra information to be passed on the
          command line. Therefore, the following control codes may be
          used.  In each case, the code is replaced by the value it
          represents.  See the examples listed below for usage syntax.
          
          Parameters:

          *A
          Write the user's handle (if any) in the DORINFO1.DEF exit
          file rather than the user's real name.
          
          *B
          User's BPS connection speed, or 0 if logged- on locally.
          
          *C
          Full path and name to COMMAND.COM.
          
          *D
          Forces RemoteAccess to generate the old-style DORINFO1.DEF
          exit file.  This format does not include the -R parameter in
          the baudrate field which is normally used to indicate an
          error-free connection.
          
          *F
          User's first name.
          


                                   - 138 -
          *G
          The user's current ANSI graphics setting; 0=Off / 1=On.
          
          *H
          Normally, the communications driver is de- initialized
          before running an external program in order to avoid
          possible conflicts between the driver and the external
          program.  Specifying this parameter leaves the driver hot,
          or active.
          
          *L
          User's last name.
          
          *M
          Activate the MemorySwap feature. RemoteAccess attempts to
          swap itself and all the memory it occupies to XMS and EMS
          memory (if available) or to disk, leaving only 3KB resident.
          This is ideal when running memory-hungry programs but takes
          a few seconds longer in order to perform the swap.  If the
          swap cannot be accomplished, RemoteAccess will attempt to
          load the program in a normal shell.
          
          NOTE:  Some programs cause memory fragmentation to occur and
          will not work with MemorySwap.  Some programs compiled in
          QuickBASIC, in particular have exhibited this problem.
          	 
          
          *N
          The current node number, as specified by the -N command line
          parameter when RemoteAccess was loaded.
          
          *Oxxx
          Override the BPS rate value passed on to the called program
          with xxx (for example, a locked BPS rate).
          
          *P
          Communications port being used (1 - 8).
          
          *R
          User's record number in the user file.
          
          *S<filename>
          Generates a custom exit file using the template filename
          <filename>.RAT which must be located in the system
          directory. This file contains any valid text file control
          codes (macros) as outlined in the External Support Files
          chapter of this manual.
          	
          The file <filename> is the base filename. That is to say
          that when RemoteAccess reads the template file it looks for
          <base filename>.RAT.  When it writes the custom exit file
          created by this template, it writes the base filename


                                   - 139 -
          without a filename extension.  It places the newly-created
          exit file in the directory where the EXITINFO.BBS exit file
          is stored.
          
          For example, if you specify a base filename of MYEXIT,
          RemoteAccess looks for the file MYEXIT.RAT in the system
          directory. When the custom exit file is written,
          RemoteAccess writes MYEXIT in the same directory where the
          EXITINFO.BBS file is stored.
          
          *T
          Time remaining (in minutes) for the current call.
          
          *U<activity>
          When menu function type 52-"Who's On-line" list is executed,
          RemoteAccess reports the status of each user that is logged
          on.  If the user is running a program that was executed
          using types 7 or 15, the activity reported in the Status
          field is simply Door. This parameter allows you to define
          the activity that is to be displayed in the Status field.
          The text specified as <activity> must be 1 to 10 characters
          in length. {+} Registered only.
          
          *!
          Freeze the system timer for the duration of the shell.
          Useful for running external utilities like full-screen chat
          programs, or other programs where you do not want the user's
          time to decrement while in the shell.

          *#
          Turn off the Wants Chat indicator on return from the shell.
          This is to facilitate proper installation of external chat
          programs.
          
          *0 (zero)
          The full path to the currently selected file template area.
          
          *1
          The number of the currently selected template message area.
          
          In addition to the command-line information that can be
          passed, RemoteAccess also creates three data files before
          the shell.  These data files are called exit files which are
          sometimes referred to as drop files.  DORINFO1.DEF, which is
          a RBBS-compatible file, DOOR.SYS (52-line format) and
          EXITINFO.BBS, which contains an extremely comprehensive
          amount of system and user information, are created whenever
          a menu function type 7 or 15 is executed.  It should also be
          noted that all system files are written to and closed off
          before the shell is activated.  They are then reopened and
          scanned upon return from the shell.  This means that
          programs that modify system files (eg: USERS.BBS) can be run


                                   - 140 -
          safely in a type 7 shell. RemoteAccess also supports
          Doorway's DOOR.SYS parameter file directly. Note that the
          external program must do its own time limit and carrier 
          detect monitoring in the event that the user does not exit
          from the program correctly.
          
          Examples:

                C:\RA\MAILSCAN.EXE *R *P *T

          Executes the external program MAILSCAN.EXE located in the
          C:\RA directory, and passes the user's record number (*R),
          communications port (*P) and time remaining for the current
          call (*T) on the command line.

          	*C /C C:\RA\DOORS\TW2.BAT *N *M

          Executes the batch file (/C) TW2.BAT using the DOS memory
          resident command processor (*C), with the node number (*N)
          being passed to the batch file, and RemoteAccess swapping
          itself out of memory (*M).
          
          
          	C:\RA\READ.EXE *R *UMsg_Read

          Executes the external program READ.EXE located in the C:\RA
          directory.  Passes the user's record number (*R) on the
          command line.  Also, when menu function type 52 is executed,
          RemoteAccess will display Msg_Read in the Status field.
          
          Example of *S (create exit file):

          By using the *S parameter, it is possible to generate a
          custom exit file, which in turn makes it possible for
          RemoteAccess to run almost any door program written for
          another BBS software package.  The custom exit file may
          contain any valid text file control codes.  An example of
          one such exit file might be:
          
                ^FA
                ^F3
                ^FB
                ^FX
                ^KO
                ^KW
          
          This example would create an exit file with the following
          information:
          
                Full user name
                Handle
                Location


                                   - 141 -
                ANSI graphics setting
                Minutes remaining today
                Line number
           
          NOTE:  Remember, the caret character "^" indicates that the
          CTRL key should be held down while the next key is pressed.
          For instance, to enter ^FA you should press the CTRL and "F"
          keys together and then the "A" key by itself.


          Exit File Formats

          The exit files created by menu function types 7 and 15 are
          described as follows:
          
          Filename:	DORINFO1.DEF
          Description:  A standard exit file created in the current
                        (node) directory.  This is a standard ASCII
                        text file and has the following format:
          
          Line 1:  System name
          Line 2:  Sysop first name
          Line 3:  Sysop last name
          Line 4:  Communications port in use (COM0 if local)
          Line 5:  Communications port settings:
                     BPS rate,parity,data bits,stop bits
                   The BPS rate is specified as 0 during local sessions
                   and is followed by the word BAUD.  During error-
                   free connects, the word BAUD is followed by -R.
                   The parity setting is always set to N for no parity.
                   The data bits are always set to 8 and the stop bits
                   are always set to 1.
          Line 6:  Reserved (always zero)
          Line 7:  User first name
          Line 8:  User last name
          Line 9:  User location
          Line 10: User emulation (0=ASCII, 1=ANSI, 2=AVATAR)
          Line 11: User security level
          Line 12: User time remaining (in minutes)
          
          Example DORINFO1.DEF:
          
                REMOTEACCESS CENTRAL
                ANDREW
                MILNER
                COM1
                19200 BAUD-R,N,8,1
                0
                JOHN
                PARLIN
                BROOKLYN CENTER, MN, USA
                1


                                   - 142 -
                100
                60
          
          Filename:	DOOR.SYS
          Description:  A standard exit file created in the current
                        (node) directory.  This is a standard ASCII
                        text file used by many external programs.
                        Although this exit file is extremely detailed
                        and includes information that cannot be
                        generated by every BBS type, efforts were made
                        to include as much information as possible.
                        The format RemoteAccess uses for this file is
                        as follows:
          
          Line 1:  Communications port (COM0: if local)
          Line 2:  BPS rate
          Line 3:  Data bits
          Line 4:  Node number
          Line 5:  DTE rate (locked rate)
          Line 6:  Screen display (snoop) (Y=On N=Off)
          Line 7:  Printer toggle (Y=On N=Off)
          Line 8:  Page bell (Y=On N=Off)
          Line 9:  Caller alarm (Y=On N=Off)
          Line 10: User full name
          Line 11: User location
          Line 12: Home/voice telephone number
          Line 13: Work/data telephone number
          Line 14: Password (not displayed)
          Line 15: Security level
          Line 16: User's total number of calls to the system
          Line 17: User's last call date
          Line 18: Seconds remaining this call
          Line 19: Minutes remaining this call
          Line 20: Graphics mode (GR=ANSI, NG=ASCII)
          Line 21: Screen length
          Line 22: User mode (always set to N)
          Line 23: Always blank
          Line 24: Always blank
          Line 25: Subscription exiration date
          Line 26: User's record number
          Line 27: Default protocol
          Line 28: User's total number of uploads
          Line 29: User's total number of downloads
          Line 30: User's daily download kilobytes total
          Line 31: Daily download kilobyte limit
          Line 32: User's date of birth
          Line 33: Path to the user database files
          Line 34: Path to the message database files
          Line 35: Sysop full name
          Line 36: User's handle (alias)
          Line 37: Next event starting time
          Line 38: Error-free connection (Y=Yes N=No)


                                   - 143 -
          Line 39: Always set to N
          Line 40: Always set to Y
          Line 41: Text color as defined in RACONFIG
          Line 42: Always set to 0
          Line 43: Last new files scan date
          Line 44: Time of this call
          Line 45: Time of last call
          Line 46: Always set to 32768
          Line 47: Number of files downloaded today
          Line 48: Total kilobytes uploaded
          Line 49: Total kilobytes downloaded
          Line 50: Comment stored in user record
          Line 51: Always set to 0
          Line 52: Total number of messages posted
          
          Example DOOR.SYS:
          
                COM1:
                9600
                8
                1
                19200
                Y
                N
                N
                Y
                John Parlin
                Brooklyn Center, MN, USA
                012-345-6789
                012-345-9876
                100
                379
                04-19-93
                18780
                313
                GR
                24
                N
                12-31-93
                0
                Z
                3
                7
                0
                8192
                03-25-60
                \RA\MSGBASE\
                \RA\MSGBASE\
                Bruce Morse
                Bruce Morse
                01:55
                Y


                                   - 144 -
                N
                Y
                7
                0
                04-19-93
                14:37
                07:30
                32768
                0
                396
		580
		Regular user
		0
		296
          
          
          Type: 8
          Product information
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  This function displays the RemoteAccess product information
	  including the version number, copyright information and
	  licensing information.  If a user is on-line remotely, the
	  name and version of the communications driver in use is also
	  displayed.
          
          
          Type: 9
          Terminate the session
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  This function displays the GOODBYE.?? text file from the
	  text file directory and hangs up on the user by dropping the
	  DTR signal to the modem.  To this end, make sure your
	  modem's DTR line is not forced high continuously.
          
          
          Type: 10
          System usage graph
          ------------------------------------------------------------
	  Optional data:



                                   - 145 -
	  None
          
	  Description:

	  This displays a nicely-formatted, full- screen, auto-scaling
	  graph that depicts system usage in terms of percentage of
	  use per hour.  Each node keeps a separate system usage graph
	  so you can see how busy each individual node is.  To reset
	  this graph, delete the file TIMELOG.BBS from your system
	  directory or, if you are running multi-node, from each node
	  directory.
          
          
          Type: 11
          Page System Operator for chat
          ------------------------------------------------------------
	  Optional data:

	  [/P=alt page name] [paging string]
          
	  Description:

	  This function displays the text specified as [paging string]
	  (i.e. Paging the Sysop. Please wait...) to the user and
	  pages the Sysop for a chat by playing a paging tune on the
	  local console.  If [paging string] is left blank, no message
	  is displayed to the user prior to the page.
          
	  A user-definable prompt may be displayed, prompting the user
	  to enter a reason for requesting the chat if the Ask why
	  option has been enabled in RACONFIG:
          
                          Options > Paging > Ask why
          	
	  After the user has entered a reason for requesting the chat,
	  RemoteAccess checks the paging schedule to see if paging is
	  allowed at the current time.
          
	  While the paging tune is being played, a small menu will be
	  presented to the Sysop on the local console.	From this
	  menu, the Sysop may select "C" to chat with the user, or "A"
	  to abort the page.
          
	  The Sysop may break in for a chat with a user at any other
	  time by pressing ALT-C. During a chat, the system timer is
	  frozen, if specified in RACONFIG:
          
                          Options > Paging > Suspend
          
	  The timer is re-started when the chat is terminated.	This
	  prevents the user's time remaining from decrementing while
	  chatting with the Sysop.  The Sysop may terminate chat mode


                                   - 146 -
          at any time by pressing the <ESCAPE> key.
          
	  While in chat mode, the Sysop may open a capture file to
	  record all that is typed during the chat session, by
	  pressing CTRL-A. Pressing CTRL-A a second time closes the
	  capture file.  A capture file can be opened automatically
	  each time chat mode is entered if the Auto log option is
	  enabled in RACONFIG:
          
                         Options > Paging > Auto Log
          
	  The times at which a user is allowed to page the Sysop for a
	  chat as well as the number of times a user may page the
	  Sysop during one session are controlled in RACONFIG:
          
                               Options > Paging
          
          +---------------------------------------------------------+
          | Here's a Tip!                                           |
          |                                                         |
          | You can disable any sounds produced by RemoteAccess when|
          | a user pages you.  Simply activate the SCROLL LOCK key  |
          | to disable paging sounds. Paging functions operate      |
          | normally, except that no sounds are produced while      |
          | SCROLL LOCK is activated.                               |
          +---------------------------------------------------------+

	  You can override the times at which users can page by
	  pressing A-O while a user is on-line.
          
	  When a page goes unanswered, users are prompted whether to
	  leave a message to the Sysop.  If the user elects to do so,
	  the reason for chat entered prior to the page is
	  automatically inserted into the subject field of the
	  message.
          
	  The default paging tune is a constant beep- beep tone that
	  lasts for the defined duration of the page.  You may define
	  your own page tune by creating a text file called PAGE.RA in
	  the system directory.  The following keywords are valid
	  within the PAGE.RA text file:
          
          		TONE [hz] [1/100's second]
          		WAIT  [1/100's second]
           
	  Additionally, you can use an alternate page file instead of
	  PAGE.RA by specifying the [/P=page file] parameter.  This
	  makes it possible to allow users with different security
	  levels to have different sounding page tunes.

	  The following table lists six musical octaves.  The correct
	  frequency value associated with each note in an octave is


                                   - 147 -
	  also shown.

                                  O C T A V E
               Note   1      2      3      4      5      6
               C      45     134    268    536    1071   2145
               C#     71     142    284    568    1136   2273  F
               D      75     150    301    602    1204   2408  R
               D#     80     159    319    638    1275   2551  E
               E      84     169    338    676    1351   2703  Q
               F      90     179    358    716    1432   2864  U
               F#     95     190    379    758    1517   3034  E
               G      100    201    402    804    1607   3215  N
               G#     106    213    426    851    1703   3406  C
               A      113    225    451    902    1804   3608  Y
               A#     119    239    478    956    1991   3823
               B      127    253    506    1012   2035   4050
          
	  The RemoteAccess distribution package includes a sample
	  PAGE.RA.  So if you're musically inclined, feel free to edit
	  the sample file or, delete it if you'd prefer the default
	  beep-beep tune.
          
	  Examples:

		Menu Type:  11
          	Optional Data:  Paging... Please wait...
          
	  In this example, the text Paging... Please wait... is
	  displayed to the user.  The default PAGE.RA file will be
	  played, if it exists.  If it does not exist, a default
	  beep-beep tune will be played.
          
          	Menu Type:  11
          	Optional Data:  /P=MYPAGE Paging Sysop
          
	  In this example, the text Paging Sysop is displayed to the
	  user.  Also, the page file MYPAGE.RA will be played instead
	  of PAGE.RA.
          
	  NOTE:  It is important to note that if an alternate page
	  tune file is specified, it should be the first parameter
	  specified in the optional data field.
          
          
          Type: 12
          Questionnaire
          ------------------------------------------------------------
	  Optional data:

          <1-8 character filename> [/N]
          
	  Description:


                                   - 148 -
	  This function executes a questionnaire script file. The file
          <filename> is the base filename of the questionnaire file.
	  That is to say that the filename extension should not be
	  specified in the optional data field. The actual DOS
	  filename of a questionnaire must have an extension of .Q-A
	  and must reside in the directory specified in RACONFIG:
          
                       Manager > Languages > Ques path
          
	  Any information that is written to disk from within the
	  questionnaire is stored in an answer file which is given the
          name <filename>.ASW.  Unlike the questionnaire file, answer
	  files are stored in the RemoteAccess system directory.
          
	  There is a full chapter dedicated to questionnaires later in
	  this manual which includes:
          
          *	Complete script language definitions.
	  *	Details on questionnaire (.Q-A) and answer (.ASW)
		files.
	  *	Information on automatic questionnaires.
	  *	Sample questionnaire scripts.
          
	  Normally, the execution of a questionnaire is recorded in
	  the system log.  However, placing the /N parameter after the
	  questionnaire filename in the optional data field will
	  suppress this log entry.
          
          
          Type: 13
          User listing
          ------------------------------------------------------------
	  Optional data:

	  [/G[=group]] [/H]
          
	  Description:

	  Displays a list of users in the user file.  It lists the
	  user's name, location, file ratio, and the last time the
	  user logged-on to the system.  This function has some basic
	  pattern matching capabilities on the name field.
          
	  By default, all users are listed.  However, if /G is
	  specified in the optional data field, the user will only see
	  users who are in the same group.  Note that this restriction
	  does not apply to the Sysop who is always shown a complete
	  user listing.
          
	  Additionally, if the /G parameter includes a group
	  assignment (/G=group) the user will only see users who are
	  in the group number specified.


                                   - 149 -
	  If /H is specified in the optional data field, user handles
	  will be displayed in place of user names.  If the user
	  handle field is blank, the real name is displayed.
          
	  The /G and /H options may be used at the same time to
	  produce a group user listing by handle.
          
	  Example:

		Optional data:	/G /H
          
	  Lists users in the same group as the current user and
	  displays user handles instead of user names.
          
          	Optional data:  /G=1 
          
	  Lists users in group one.

		Optional data:	None
          
	  Lists all users in the user database.
          
          
          Type: 14
          Time
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  This function displays the current date and time, along with
	  the user's daily time limit, time used and time remaining
	  for the day.
          
          
          Type: 15
          Exit to DOS with errorlevel
          ------------------------------------------------------------
	  Optional data:

          <errorlevel> [*A] [*D]
          
	  Description:

	  This function causes RemoteAccess to exit to DOS completely,
	  returning an errorlevel to your BBS batch file.  The
	  optional data field should contain the errorlevel that you
	  wish to pass to the batch file.  The batch file should trap
	  the errorlevel and act accordingly.
          


                                   - 150 -
	  If you use this exit while the user is still on- line, the
	  user may be logged back into RemoteAccess using the command
	  line parameter -R.  This forces RemoteAccess to read the
	  EXITINFO.BBS file that was written at the time of the exit
	  so that it can restore system and user information,
	  presenting the user with the TOP menu.
           
	  NOTE:  Errorlevels 0 through 5 are reserved for internal use
	  by RemoteAccess.  For a complete description of these
	  internal errorlevels and how they are used, see the
	  Errorlevels section of the Reference chapter.
          
	  There are two optional control code parameters that may be
	  specified in the optional data field:
          
	  *A
	  Write the user's handle (alias) in the DORINFO1.DEF exit
	  file, instead of the user's real name.
          
	  *D
          Forces RemoteAccess to generate the old-style DORINFO1.DEF
	  exit file.  This format does not include the -R parameter in
	  the baudrate field which is normally used to indicate an
	  error-free connection.
          
          
          Type: 16
          Alter location
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  This function allows users to change the location field in
	  their user account record.
          
          
          Type: 17
          Alter password
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  Allows users to change their log-on password.  Before users
	  may change their passwords, they are first prompted to re-
	  enter their current password for verficiation.  Frequent
	  password changes should be encouraged to ensure system


                                   - 151 -
	  security.  In fact, there is an option to force users to
	  change their passwords every certain number of log-ons, in
	  RACONFIG:
          
                        Options > System > Pwd Change
          
          
          Type: 18
          Alter screen length
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  Allows users to alter the length of their screen display.
	  This affects the page pausing prompt (i.e. Continue?) in
          that this prompt will appear every <screen length> number of
	  lines during textual displays.
          
          
          Type: 19
          Toggle screen clearing
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  Allows users to specify whether screen clearing codes should
	  be sent.
          
          
          Type: 20
          Toggle page pausing
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  Allows users to enable or disable the page pausing prompt
	  (i.e. Continue?) at the end of each screen page (as defined
	  by the their screen length setting).
          
          
          Type: 21
          Toggle ANSI graphics
          ------------------------------------------------------------


                                   - 152 -
	  Optional data:

	  None
          
	  Description:

	  Allows users to enable or disable ANSI graphics emulation.
          
	  NOTE:  If a user disables ANSI graphics and has the
	  full-screen editor enabled, RemoteAccess will display a
	  message stating that ANSI graphics are required by the
	  full-screen editor.  The user will then be asked whether to
	  continue to use the full-screen editor.  Although the
	  full-screen message reader also uses ANSI and AVATAR control
	  codes, it must be disabled manually if it is enabled when
	  ANSI graphics are disabled.
          
          
          Type: 22
          Check mailbox for unread mail
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  This function checks to see if there is any unread mail
	  addressed to the user.  This can be done automatically
	  during the logon process when defined in RACONFIG:
          
                      Options > Messages > Logon Newmail
          
	  Refer to the Configuration chapter for details on the two
	  types of mail-checks that are available.
          
	  All new messages are marked for later retrieval using the
	  Read Marked option (see menu function type 23).
          
	  NOTE:  The user will only be notified of unread mail in
	  areas to which the user has read access, as defined in
	  RACONFIG:
          
                             Manager > Msg areas
          
	  Although the system only prompts the user to Read mail now
	  [Yes/no], (this can be changed using the language editor
	  which is explained in the Configuration chapter), several
	  commands can actually be used:
          
	  Read



                                   - 153 -
	  Read the unread mail that has been found during the
	  mail-check.
          
	  Scan

	  Scan the unread mail displaying a header description which
	  includes Date, To, From and Subject fields.
          
	  QuickScan

	  Scan the unread mail displaying a brief listing of
	  information including the From and Subject fields of each
	  message.
          
	  Kill

	  Delete all unread mail without reading it.
          
	  Received

	  Mark all unread mail as received, without reading it.
          
          
          
          Type: 23
          Read messages
          ------------------------------------------------------------
	  Optional data:

          <message area # or /M>
          
	  Description:

	  This command initiates the message reading routines.	Before
	  a user can read any message, RemoteAccess checks that the
          user has read access to the selected area. The <message area
          #> variable defines which message area number will be read.
          If a value of zero (0) is passed as <message area #>
	  RemoteAccess will use the user's Combined settings to read
	  messages in all areas that the user has configured.  This
	  mode enables users to read messages by order of message area
	  until the messages in the user's combined settings are
	  exhausted. For more information, see menu function type
	  28-Select combined areas and the Configuration chapter and
	  RACONFIG:
          
                              Manager > Combined
          
	  If a /M is placed in the optional data field in place of the
	  message area number, RemoteAccess will substitute it with
	  the currently selected template message area (see the
	  Templates section earlier in this chapter for details).


                                   - 154 -
	  After selecting this function, the user may select from
	  eight different reading modes:
          
	  Forward

	  Read forward from the selected message number to the last
	  message in the area.
          
	  Reverse

	  Read reverse from the selected message number to the first
	  message in the area.
          
	  Individual

	  Read an individual message.  The user is prompted for the
	  message number to read.
          
	  Help

	  Displays the text file MAILHELP.A?? to the user, if it
	  exists (see the External Support Files chapter for details
	  on this text file).
          
	  New msgs

	  Read new mail since the last time the user called.
          
	  Selected

	  Read messages by selected search criteria on the To, From or
	  Subject fields.  This selection also allows you to read
	  messages which contain a specific keyword within the message
	  text.
          
	  Quit

	  Abort the message reading menu.
          	
	  The menu bar displayed at the end of each message also
	  provides several options. Each of these options are
	  explained below:

          -  Read previous reply.  RemoteAccess keeps track of reply
             chains which are strings of messages that pertain to the
             same subject. These messages are invisibly linked so that
             the user may read only those messages pertaining to a
             specific subject, quickly and easily.  The - and + keys
             are used in conjunction with this feature.
          
          +  Read next reply.  Used in conjunction with the - key,
             this command allows the user to read the next message in


                                   - 155 -
             this reply chain. See the explanation of the - key for
             complete details.
          
          A  Redisplays the last message.  This option is typically
             used in cases where the user may be experiencing
             telephone line noise.
          
          N  Reads the next message in progression. When the end of
             progression is reached, the message End of messages is
             displayed to the user.
          
          L  Reads the previous message read.  This option is only
             available when there is a message available for reading
             in reverse order.
          
          R  Post a reply to the message just read.  This option is
             identical to menu function type 27 -"Post message" with
             two exceptions; the "To" field of the new message is
             automatically filled with the name contained in the
             "From" field of the message being replied to and; the
             "Subject" field of the new message takes on the same
             value as that of the message being replied to.  The user
             is given the opportunity to change the "Subject" field
             during message entry.
          
             Upon saving the reply, the message is linked to the
             message thread pertaining to the thread subject.  If the
             + command was not previously available to the user, it is
             after this option is used.
          
          E  Enter a new message in the current area. Like the <ENTER>
             command, this option is identical to menu fuction 27
             except that the To and Subject fields are not
             automatically provided.
          
          F  Download files that are attached to the message.  If
             files have been attached to the message by the sender,
             this command will be seen by the reciever of the message.
             The user will also be notified of the attached files
             after the message header is displayed.
          
          D  Delete the displayed message.   Like menu function type
             26-"Delete message", this option allows the user to
             delete the message just read if certain criteria are met.
             Be sure to see the description of menu function type 26,
             where this powerful option is discussed in detail.
          
          S  Stop reading messages.  The user is returned to the point
             where the read function was initiated.
          
	  In addition to those just outlined, the following options
	  are available only to users who have Sysop access to the


                                   - 156 -
	  message area being processed:
          
          !  Display ^A kludge lines which are normally hidden.  These
             lines contain message control information.  This is
             advanced information which is used by developers of
             message processing utilities.
          
          *  Edit the attributes of the current message. This option
             allows you to change a number of attributes related to
             the message that has just been read:
          
		Area no     Message area number.  Use this
			    option to move the message to another
			    message area.
          	
		From	    Change the From field of the message.
          
		To	    Change the To field of the message.
          
		Subject     Change the Subject field of the message.

		Attributes  Allows you to toggle certain attributes,
			    or flags related to the message such as
			    Deleted, NetMail, Private, Received and
			    Local Flags.
          
		Exported    If the message is an EchoMail message,
			    this determines if the message has been
			    exported.  This is handy if you need
			    messages to be exported a second time
			    (i.e. a problem with a mail processor
			    occurs).
          
          X  Export the message to a file or to the printer.  This
             option allows you to capture a message to a DOS filename
             or to a connected printer.  If printer is selected, the
             message is output to the DOS standard device PRN.
          
          /  Forward the message to another user in any area.  When
             this command is executed, you will be prompted for the
             message area to forward the message in as well as other
             address information.  If forwarding to a NetMail area,
             RemoteAccess prompts for a destination network address in
             addition to other header information.
          
          =  Mark the message as unreceived and go on to the next
             message in progression.  This is a great option for
             Sysops who wish to save a message for later reading.  The
             message is marked as unreceived and will again be
             presented as a new message the next time a mail-check is
             done.
          


                                   - 157 -
          U  Modify the security level of the user who posted the
             currently displayed message, provided the user is listed
             in the user file. This is another handy feature designed
             to make the Sysop's life easier and is great for on the
             fly user verification.  When selected, this command
             searches the user file for the name of the sender of the
             message.  If the name is found, the Sysop is prompted for
             the new security level to assign to the sender.
             {+} Registered only.
           
             NOTE:  The user's security level being upgraded cannot be
             set to a level greater than that of the user doing the
             upgrading.
          
          
          Type: 24
          Scan messages
          ------------------------------------------------------------
	  Optional data:

          <message area # or /M>
          
	  Description:

	  This function accepts the same parameter variables as menu
	  function type 23 just explained, except that only the
	  message header of each message is displayed.	The user has
	  the option of marking messages for later retrieval.
	  Messages are retrieved simply by using the read message menu
	  function type 23 and then selecting Marked messages.
          
          
          Type: 25
          QuickScan messages
          ------------------------------------------------------------
	  Optional data:

          <message area # or /M>
          
	  Description:

	  This function accepts the same parameter variables as menu
	  function type 23 - Read messages, except that each message
	  is listed as a single-line entry containing message number,
	  sender of the message, who it is addressed to, and the
	  subject field.
          
          
          Type: 26
          Delete message
          ------------------------------------------------------------
	  Optional data:


                                   - 158 -
          </M or message area #>
          
	  Description:

	  Allows a user to delete a message in the currently selected
          message area (when /M is specified) or in <message area#>,
	  when the following criteria are met:
          
	  *	The user has Sysop access to the area the message is
		in, or...
          
	  *	The message is in a Local or NetMail area and the user
		is the sender or recipient of the message and the
		message area is configured to allow users to delete
		messages, or...
          
	  *	The message is in an EchoMail message area and the
		user is the sender of the message and the message area
		is configured to allow users to delete messages and
		the message has not yet been exported from the
		message-base.
          
          
          Type: 27
          Post message
          ------------------------------------------------------------
	  Optional data:

          <area number or /M> [/T=<user_name>] [/U] [/H] [/L]
	  [/N=zone:net/node.point]
          
	  Description:

          This function posts a message in message area number <area
          number> (or the currently selected template message area if
	  /M is specified).  The user must have either write or Sysop
	  access to the message area as defined in RACONFIG.
          	
	  Specifying a message area number of zero forces RemoteAccess
	  to display all message areas that the user has write access
	  to and will prompt the user for the message area to post the
	  message in.
          
	  Normally, users are not permitted to post messages to
	  non-existent users in a local message area.  However if the
	  /U parameter is specified, this restriction can be
	  overridden, giving the user the opportunity to browse the
	  user list.
          
	  To force the display handles only option while displaying
	  the user list in conjunction with the /U parameter, simply
	  include the /H parameter in the optional data field.


                                   - 159 -
	  The optional /L parameter will log the user off immediately
	  after the message is saved (useful for menu options such as
	  Leave message to Sysop before disconnecting?).
          
	  The /T= parameter will force the message to be addressed to
          a <user_name>.  Simply place the user's name in the optional
	  data field after the /T= parameter to select this option.
          You should note that any spaces in <user_name> must be
	  replaced with the underscore character.
          
	  The optional /N parameter will force the message to be
	  directed to the network address specified as
          <zone:net/node.point> if the message is posted in a NetMail
	  message area. {+} Registered only.

          Users having access to the Group Mail feature may use any
          of the following macros in the To: field of a message:

          To Field      Action Description
          --------      ------------------

          @group        Post message to all users in group <group>
          @ALL          Post message to all users
          =security     Post message to all users with security
                        level equal to <security>
          >security     Post message to all users with security
                        level greater than <security>
          <security     Post message to all users with security
                        level less than <security>

          A separately addressed message is generated for each
          qualifying user. Therefore, large group mailings can take
          a while to process and can occupy a large amount of disk
          space.
          
	  Example:

	  A log-off menu may have the following entry:
          
          	Menu Type:  27
                Optional data:  60 /L /T=Bruce_Morse
          
	  In this example, you can see:
          
		*   The menu function used was specified as a type 27.
          
		*   The message will be posted in message area number
		    60.
          
		*   The user will be logged-off as soon as the message
		    is saved.
          


                                   - 160 -
                *   The message will be posted to Bruce Morse.
                    Notice that there is no space between Bruce and
                    Morse. Instead, there is an underscore _
		    character. The underscore character must be
		    specified instead of a space. When processed, the
		    underscore character will be translated back into
		    a space character.
          
	  NOTE:  Any messages addressed to Sysop are redirected
	  automatically to the Sysop name as defined in RACONFIG:
          
                         System > Site info > Name
          
          
          Type: 28
          Select combined areas
          ------------------------------------------------------------
	  Optional data:

	  [/MG or /MG=#####] [/1]
          
	  Description:

	  Your users may select specific message areas to add to one
	  combined message area. When this function is selected, a
	  list of message areas to which the user has access is
	  displayed.  From this list, the user may toggle any of the
	  message areas ON or OFF.  Message areas that are toggled ON
	  are added to the user's combined message area.  These areas
	  are then saved as a part of the user's permanent record and
	  are available during each log-on session.

	  To allow your users to process combined message areas, use
	  the same menu function types you would on any other message
	  area (read, scan, etc.) but when specifying the message area
	  number in the optional data field, use a zero (0).  This
	  will cause RemoteAccess to process the user's combined
	  message area.
          
	  The optional data parameters accepted by this function are
	  as follows:
          
	  /1

	  Displays a singular column list of available areas instead
	  of the default two column list.
          	
	  /MG

	  Displays only message areas in the user's currently selected
	  message group.  If the currently selected group is set to
	  zero (in cases where groups have just been implemented), the


                                   - 161 -
	  user will first be prompted to select a message group.
          
	  /MG=0

	  Displays a list of all groups to which the user has access.
	  The user is then prompted to select areas in the current
	  message group.
          
          /MG=<group number>

          Displays a list of all message areas in group <group number>
	  to which the user has access.  The user is then prompted to
	  select an area from this group.
          
	  NOTE:  It is possible to define a default selection of
	  combined message areas for new users in RACONFIG:
          
                              Manager > Combined
          
          
          Type: 29
          Move a file
          ------------------------------------------------------------
	  Optional data:

          </F or file area#>
          
	  Description:

	  Primarily designed as a Sysop or Assistant Sysop function,
	  this allows the user to perform a variety of functions on
	  any given file.
          
	  The file area number must be specified in the optional data
          field as either <file area#> or /F (to use the currently
	  selected template file area.
          
	  When this function is executed, RemoteAccess prompts for the
	  filename to move/copy.  Wildcard and search pattern matching
	  characters (* and  ?) are valid. After a valid filename is
	  entered (one that exists both in the directory for the
	  specified file area as well in the file database), the user
	  is presented with the following six options:

	  Move

	  When this option is selected, the user is presented with a
	  list of file areas (to which the user has access) to move
	  the file to. After selecting an area, the file (along with
	  its description) is moved to the directory for the target
	  file area and the file database is updated accordingly.
          


                                   - 162 -
	  Copy

	  When this option is selected, the user is presented with a
	  list of file areas (to which the user has access) to copy
	  the file to. After selecting an area, the file (along with
	  its description) is copied to the directory of the target
	  file area.  The file database information is updated
	  accordingly, saving the file information in both the source
	  and target file areas.
          
	  Delete

	  When this option is selected, the file is deleted from both
	  the directory of the specified file area as well as the file
	  database.
          
	  Edit Description

	  When this option is specified the user is prompted to enter
	  a new file description. The file database is updated
	  accordingly.
          
	  Skip

	  When this option is selected, the file is skipped (not
	  processed) and RemoteAccess continues searching for files
	  that match the input search pattern.
          
	  Quit

	  When this option is selected, this function is aborted
	  returning the user to the calling menu.
          
	  Example:

		Optional data:	/F
          
           File to move/copy (wildcards valid):  TEST.TXT
          
          TEST.TXT  (M)ove, (C)opy, (D)elete, (E)dit desc, (S)kip, (Q)uit: _
          
          
          
          Type: 30
          Directory
          ------------------------------------------------------------
	  Optional data:

          </F or file area#>
          
	  Description:



                                   - 163 -
	  Displays an MS-DOS style directory listing of the directory
	  path for the currently selected template file area (if /F is
          specified), or file area <file area#>.
          
	  This listing includes filename, length and date of each
	  entry.  The user will be prompted for optional search
	  pattern matching.  Wildcard characters * ? are accepted
	  within the search pattern.

	  Example:

	  To list the directory using a search pattern match of *.BBS:
          
	  File name pattern match (Enter=all files): *BBS
          
	  File Name	       Size		     Date
	  -------------------  --------------------  -----------------
	  FILES.BBS	       3599		     01-06-93
	  -------------------  --------------------  -----------------
	  1 files	       3599 bytes
          
          
          Type: 31
          List files
          ------------------------------------------------------------
	  Optional data:

          </F or file area#> [/T] [/A=<format>]
          
	  Description:

	  This option displays a list of files available for download
	  from the currently selected file area (if /F is specified)
          or from file area <file area#>.  If the /T parameter is
	  specified, users are permitted to tag files for download
	  during the listing process.
          
	  The format in which files are listed may be altered using
	  RACONFIG:
          
                         Options > Files > List Format
          
	  Refer to the Configuration chapter for full details on the
	  List Format option.

          The optional /A parameter can be used to override the List
          Format setting.

          Example:      /F /T /A=@NE@DF

                        This would list files in the current area
                        with tagging enabled, and using the file list


                                   - 164 -
                        format shown.
        
          
          Type: 32
          Download a file from area
          ------------------------------------------------------------
	  Optional data:

          </F or file area#> [password]
          
	  Description:

	  Enables the user to download any file that is contained in
	  the currently selected template file area (when /F is
          specified) or in file area <file area#>.
          
	  If files have been tagged for download, the tag list is
	  presented to the user.  The user is given the opportunity to
	  add to the list of tagged files, delete files from the tag
	  list, clear all tag list entries, or continue with the
	  download.
          
	  The file must exist in the file area download directory and
	  must also be listed in the file database.
          
	  If  [password] is specified, the user will be prompted to
	  enter a non-case-sensitive password before being allowed to
	  proceed with the download.
          
	  RemoteAccess supports local downloading. This enables the
	  Sysop or another local user to download or copy files from
	  the current file area to another system directory.  For
	  example, this can be used to copy files to a diskette or a
	  network directory.  When this option is used, the Downloads
	  and DownloadK fields in the on-line user's profile are
	  updated accordingly.	In other words, it counts as an actual
	  download.
           
	  See menu function type 59-"Global download" for a more
	  powerful variation of this function.
          
          
          Type: 33
          Upload a file
          ------------------------------------------------------------
	  Optional data:

          </F | file area# | /FG>
          
	  Description:

	  This function enables the user to upload (send) a file to


                                   - 165 -
	  your system.	The upload is initially directed to the
	  currently selected tempate file area (if /F is specified) or
          to file area <file area#>.  However, the file may be
	  redirected further based on the settings specified in the
	  file area configuration.  For example, all file areas may be
	  configured to redirect uploads to a specific file area.
          
	  If the /FG parameter is specified, duplicate file checking
	  will be limited to the currently selected file group.  This
          parameter can be used together with either the /F or <file
          area#> parameters.
          
	  Upon successful completion of an upload, the user is
	  prompted to enter a description of the uploaded file.  Long
	  descriptions may be allowed in each individual file area
	  configuration.  Additionally, new uploads may be scanned for
	  integrity or the presence of a computer virus using an
	  external program as configured in RACONFIG:
          
                         Options > Files > Upload scan
          
	  For complete details on file area configuration, see the
	  Configuration chapter.
          
	  RemoteAccess supports local uploading which enables the
	  Sysop or another local user to upload files from a diskette
	  or other directory directly to the BBS as if the file had
	  been sent from a remote location.
          
	  When this option is used, the Uploads and UploadK fields in
	  the user's profile are updated accordingly.  In other words,
	  it counts as an actual upload.
          
          
          Type: 34
          View archive
          ------------------------------------------------------------
	  Optional data:

          </F or file area#>
          
	  Description:

	  Allows users to view the contents of an archived file in the
	  currently selected file area (when /F is specified) or in
          <file area#>.  The following archive types are supported:
          
          	.ARC / .PAC / .PKA
          	.ZIP
          	.LZH / .LZS
          	.DWC
          	.MD


                                   - 166 -
          	.LBR
          	.ARJ
          	.HYP
          	.GIF {+} Registered only.
          
	  If the file being viewed is a .GIF file, RemoteAccess
	  displays the graphics and color resolution of the file.
          
          
          Type: 35
          File search by keyword
          ------------------------------------------------------------
	  Optional data:

	  [/F or area1 area2 area3... or /FG] [/T] [/Q]
          
	  Description:

	  This function searches the specified file areas for an
	  embedded keyword that is supplied by the user.  Search
	  pattern matching is performed on both the filenames and
	  descriptions. If more than one search keyword is supplied,
          both must be present for a match to be found.
          
	  The default is to scan all areas to which the user has
	  access.  However, you may specify that only certain areas
	  will be searched by either including one or more file area
	  numbers in the optional data field, or by specifying the /F
	  parameter which limits the search to the currently selected
	  file area.  You may also limit the search to file areas
	  within the currently selected file group by specifying the
	  /FG parameter.
          
	  If the /T parameter is specified, file tagging is offered
	  during the search process.
          
	  If the /Q parameter is specified, it must be the last
	  parameter in the optional data field.  This option causes
	  the search to use the 5 keywords in the file header record
	  rather than the description text.  This type of search is
	  much faster than the description search (which is the
	  default), but has two drawbacks; 1) you must maintain the
	  keywords for each file separately and; 2) only exact (not
	  partial) keyword matches will be found.
          
          
          Type: 36
          File search by filename
          ------------------------------------------------------------
	  Optional data:

	  [/F or area1 area2 area3... or /FG] [/T]


                                   - 167 -
	  Description:

	  Like menu function type 35, except that this function
	  searches for a filename match rather than an embedded
	  keyword. Wilcard and pattern matching characters (* and  ?)
	  are also valid.
          
	  The default is to scan all areas to which the user has
	  access.  However, you may specify that only certain areas
	  will be searched by either specifying one or more file area
	  numbers in the optional data field or by specifying the /F
	  parameter which limits the search to the currently selected
	  file area.   You may also limit the search to file areas
	  within the currently selected file group by specifying the
	  /FG parameter.
          	
	  If the /T parameter is specified, file tagging is offered
	  during the search process.
          
          
          Type: 37
          Show new files
          ------------------------------------------------------------
	  Optional data:

	  [/F or area1 area2 area3... or /FG] [/T]
          
	  Description:

	  If no optional data is specified, this function scans all
	  file areas to which the user has access for files that have
	  an upload date more recent than the date specified by the
	  user.  By default, this search includes files that are new
	  since the user's last log-on.
          
	  Although the default is to scan all areas to which the user
	  has access, you may limit the areas to be scanned by either
	  specifying one or more file area numbers in the optional
	  data field or by specifying the /F parameter which limits
	  the search to the currently selected file area.  You may
	  also limit the search to file areas within the currently
	  selected file group by specifying the /FG parameter.
          
	  If the /T parameter is specified, the user may use file
	  tagging from within the new files listing.
          
	  Example:

		Optional data:	1 2 3 /T

	  Searches for new files in file areas 1, 2 and 3 and also
	  offers file tagging during the process.


                                   - 168 -
          	Optional data:  /FG /T
          
	  Searches for new files in all file areas within the
	  currently selected file group to which the user has access.
	  File tagging is offered during the listing process.
          
          	Optional data:  /F
          
	  Searches for new files in only the currently selected file
	  area.
          
          
          Type: 38
          Type (view) a text file
          ------------------------------------------------------------
	  Optional data:

          </F or file area#>
          
	  Description:

	  Allows the user to display the contents of a plain ASCII /
	  ANSI / AVATAR text file. RemoteAccess searches for the file
	  in either the currently selected template file area (when /F
          is specified) or in the area specified as <file area#>.
          
          
          Type: 39
          Display a fully named text file
          ------------------------------------------------------------
	  Optional data:

          <filename [/A=area#]>
          
	  Description:

	  This function displays a direct text file using one of the
	  two following methods:
          
	  Method One:

	  By specifying full path and filenames of the text files to
	  be displayed.
          
	  Method Two:

	  By specifying filenames followed by the /A=area# parameter.
	  Using this method, the file is displayed from the directory
	  path configured for file area area#.
          
	  NOTES:  1.  No security checking is done on the file area
		      before the file is displayed.


                                   - 169 -
		  2.  Text file control codes (outlined in the chapter
		      on External Support Files) are valid within a
		      direct text file.
          
          
          Type: 40
          Display .A?? file with hot-keys
          ------------------------------------------------------------
	  Optional data:

          <1-8 character filename> [/BINARY]
          
	  Description:

	  This menu type will display a text file from your text file
	  directory (as defined in RACONFIG) to the user, leaving
	  hot-keys active while the file is being displayed.  Any
	  command hot-key defined in the calling menu that the user
	  has access to will be considered a valid hot-key.  If a
	  valid hot- key is pressed, the associated menu function will
	  be executed immediately.
          
	  This allows the use of elaborate, graphic menus that would
	  be impossible to create with the line editor.  See the
	  section on Automatic Commands earlier in this chapter for
	  more information on this type of menu use.
          
	  RemoteAccess will display the file specified in the optional
	  data field using one of three filename extensions.  If the
	  user has AVATAR codes enabled, RemoteAccess will display the
          file <filename.AVT> to the user. However, if <filename.AVT>
	  is missing, or the user does not have AVATAR enabled but
          does have ANSI enabled, the file <filename.ANS> will be
	  displayed.
          
	  Likewise, if the user has only ASCII emulation enabled or
          both the files <filename.AVT> and <filename.ANS> are
          missing, the file <filename.ASC will be displayed.
           
	  These files may contain any text or graphical information
	  within the limitations of the text format.  For example, you
	  cannot display ANSI color in an ASCII text file.
          
	  Along with text and graphics it is also possible to display
	  comprehensive system and user details by inserting special
	  control codes in these files.  These codes are listed in the
	  External Support Files chapter of this manual.

          If the optional /BINARY parameter is specified, the file
          will be transmitted with no translation at all.  For
          example, embedded control codes will not be interpreted when
          this parameter is specified.  If you use this paramter, it


                                   - 170 -
          must be the last parameter in the optional data field.
          
          
          Type: 41
          Toggle full-screen editor
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  This function toggles the state of the user's full-screen
	  editor setting between ON and OFF.  Use of the editor should
	  only be permitted if the user has ANSI graphics emulation
	  capability, but RemoteAccess gives the user the opportunity
	  to disable ANSI graphics while leaving the full-screen
	  editor enabled.  This may help users who disable ANSI to
	  increase throughput speed but still prefer to use the
	  full-screen editor.
          
          
          Type: 42
          Toggle hot-keys
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  Allows users to choose between hot-keys or command stacking.
	  In hot-key mode, users need only press a command key
          associated with a menu item; no <ENTER> key is required.  In
	  command stacking mode, several commands, or key-presses, can
	  be entered on one command-line, followed by pressing the
          <ENTER> key.
          
          
          Type: 43
          NewMail {+} Registered only.
          ------------------------------------------------------------
	  Optional data:

	  [/MG or /MG=#####] [/1]
          
	  Description:

	  This function displays a list of all message areas to which
	  the user has access.	Those areas that contain new unread
	  messages are highlighted with an asterisk * character.
          
	  The optional parameters accepted by this function are as
	  follows:


                                   - 171 -
	  /1

	  Displays a singular column list of available areas instead
	  of the default two column list.
          	
	  /MG

	  Displays only message areas in the user's currently selected
	  message group.  If the currently selected group is set to
	  zero (in cases where groups have just been implemented), the
	  user will first be prompted to select a message group.
          
	  /MG=0

	  Displays a list of all groups to which the user has access.
	  The user is then prompted to select a message group to list
	  areas for.
          
          /MG=<group number>

          Displays a list of all message areas in group <group number>
	  to which the user has access.  The user is then prompted to
	  select an area from this group.
          
          
          Type: 44
          Reset combined areas setting
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  This function allows the user to include or exclude all
	  message areas from his or her combined message area folder.
	  Sometimes, especially on systems with numerous message
	  areas, it may be easier for a user to select combined
	  message areas if they are all turned ON or OFF to begin
	  with.
          
	  Example:

	  If a user wanted to have all but two areas included in the
	  combined message area folder, it might be easier to select
	  all areas and then use menu function type 28 to deselect the
	  two areas desired.
          
          
          Type: 45
          Display text file and wait
          ------------------------------------------------------------


                                   - 172 -
	  Optional data:

          <1-8 character filename>
          
	  Description:

	  This is identical to menu function type 5 except that the
          user is prompted to press <ENTER> before continuing.  This
	  is useful for displaying text files that are generated
	  automatically by utilities that don't append a ^A (wait for
          <ENTER> control code) at the end of the file.
          
	  See menu function type 5 for more information.
          
          
          Type: 46
          Display direct text file with CR
          ------------------------------------------------------------
	  Optional data:

          <filename [/A=area#]>
          
	  Description:

	  This function is identical to menu function type 39 except
          that the user is prompted to press <ENTER> before
	  continuing.  This displays a direct text file using one of
	  the two following methods:
          
	  Method One:

	  By specifying a full path and filename of the text file to
	  be displayed.
          
	  Method Two:

	  By specifying a filename followed by the /A=area# parameter.
	  Using this method, the file is displayed from the directory
	  path configured for file area area#.
          
	  NOTES:  1.  No security checking is done on the file area
		      before the file is displayed.
          
		  2.  Text file control codes (outlined in the chapter
		      on External Support Files) are valid within a
		      direct text file.


	  Type: 47
	  Create a log entry
          ------------------------------------------------------------
	  Optional data:


                                   - 173 -
          <log entry>
          
	  Description:

	  When this function is executed, it simply takes the text
	  specified in the optional data field and writes it to the
	  system log as if it were a normal hard-coded log entry.
          Macro characters that are valid within <log entry> are:
          
	  @   Insert the name of the current template file area
          
	  `   Insert the name of the current template message area.
	      Remember, this is the accent character, not the
	      apostrophe character.
          
	  In addition to these two macros, all text file control codes
          are also supported within <log entry>.
          
	  Example:

	  If Joe User just logged on using a handle of Joe Doe and the
	  optional data field was defined as follows:
          
          	Optional data:  ^FA logged-on as ^F3
          
	  The resulting log entry would be:
          
                > 21:30:00  Joe User logged on as Joe Doe
          
          
          Type: 48
          Download a specific file
          ------------------------------------------------------------
	  Optional data:

          <FILE1.EXT FILE2.EXT FILE3.EXT...> [/FREE]
          	or...
          <FILE1.EXT FILE2.EXT [/A=area#]> [/FREE]
          
	  Description:

	  This function enables the user to download a file or set of
	  files that you have pre- defined, using a protocol of the
	  user's choice.  This is done using one of the two following
	  methods:
          
	  Method One:

	  Specify one or more files including the full path and
	  filenames of each.  Wildcard and pattern matching characters
	  * ? are valid.
          


                                   - 174 -
	  Method Two:

	  Specify one or more files followed by the optional /A=area#
	  parameter.  When using this method, the filenames do not
	  require a full path and filename to be specified since the
	  files are downloaded from the directory for the file area
	  specified by the /A parameter.
          
	  This latter method must be used if you want the file
	  download counter and last date downloaded fields to be
	  updated when this function is executed.
           
	  NOTE: When specifying  wildcard and pattern match characters
	  in the filename, the user will be forced to use a batch
	  transfer protocol.
          
	  Examples:

	  The two examples that follow demonstrate each of the methods
	  just described:
          
          	Optional data:
          	\DLOAD\ALLFILES.ARJ  \RA\MYNODE.TXT
          
	  Would send the file ALLFILES.ARJ from the \DLOAD directory
	  and the MYNODE.TXT file from the \RA directory (method one).
          
		Optional data:
          
                RA*.ARJ /A=10
          
	  Would send all files in the directory for file area 10 that
	  match the search pattern RA*.ARJ using a batch transfer
	  protocol (method two).
          
          
          Type: 49
          Select message area
          ------------------------------------------------------------
	  Optional data:

	  [/MG or /MG=#####] [/1]

	  Description:

	  This function allows users to select a new message area.  If
	  no optional parameters are specified, a list of message
	  areas to which the user has access is displayed.
          
	  The optional parameters that may be specified are as
	  follows:
          


                                   - 175 -
	  /1

	  Displays a singular column list of available areas instead
	  of the default two column list.
          	
	  /MG

	  Displays only message areas in the user's currently selected
	  message group.  If the currently selected group is set to
	  zero (in cases where groups have just been implemented), the
	  user will first be prompted to select a message group.
          
	  /MG=0

	  Displays a list of all groups to which the user has access.
	  The user is then prompted to select a message area from the
	  currently selected message group.
          
          /MG=<group number>

          Displays a list of all message areas in group <group number>
	  to which the user has access.  The user is then prompted to
	  select an area from this group.
          
	  The currently selected template message area is set to the
	  area number that the user selects.  If applicable, the
	  user's currently selected message group number is set to the
	  group number selected.  This allows the Sysop to run a very
	  low maintenance system, since all that is required to add or
	  delete a message area is to modify the message area
	  configuration using RACONFIG.
          
	  Example:

	  Suppose the user selects this function and has read access
	  to the following message areas:
          
	   Message Areas: ----------

	     1	  Messages to the Operator    2    General Messages
	     3	  Private Messages (E-Mail)   4    DeskTop Publishing

	   Select area: _
          
	  If the user selected message area 1, the currently selected
	  template message area would be set to 1.  Then, any menu
	  function that refers to the /M template variable will take
	  on a value of 1.  This eliminates ever having to set the
	  value of the /M template variable manually from within a
	  menu.
          
          


                                   - 176 -
          Type: 50
          Select file area
          ------------------------------------------------------------
	  Optional data:

	  [/FG or /FG=#####] [/1]
          
	  Description:

	  Similar to the type 49 function for message areas, this
	  function allows the user to select a new file area.  If no
	  optional parameters are specified, a list of file areas to
	  which the user has access is displayed.
          
	  The optional parameters that may be specified are as
	  follows:
          
	  /1

	  Displays a singular column list of available areas instead
	  of the default two column list.
          	
	  /FG

	  Displays only file areas in the user's currently selected
	  file group.  If the user's currently selected group is set
	  to zero (in cases where groups have just been implemented),
	  the user will first be prompted to select a file group.
          
	  /FG=0

	  Displays a list of all file groups to which the user has
	  access.  After selecting a group, the user is prompted to
	  select a file area from the currently selected file group.
          
          /FG=<group number>

          Displays a list of all file areas in group <group number> to
	  which the user has access.  The user is then prompted to
	  select an area from this group.
          
	  The currently selected template file area is set to the area
	  number that the user selects.  If applicable, the user's
	  currently selected file group number is set to the group
	  number selected.
          
          
          Type: 51
          List today's callers
          ------------------------------------------------------------
	  Optional data:



                                   - 177 -
	  [/H]
          
	  Description:

	  This function displays a list of all users who have
	  logged-on to your system since midnight, showing
	  log-on/log-off times, connection speed, what node (line)
	  the user was logged-on to, number of calls placed and the
          location of the user.  If the optional /H parameter is
          specified, user handles are displayed in place of real
          names.
          
          
          Type: 52
          Show all users on-line
          ------------------------------------------------------------
	  Optional data:

	  [/H]
          
	  Description:

	  This function lists all users who are currently on-line.
	  This would only be useful in a multi-node installation.  If
	  the optional /H parameter is specified, user handles are
	  displayed in place of real names.
          
          
          Type: 53
          Toggle "Do not disturb"
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  This function is intended for use on multi- node
	  installations where the Sysop has provided access to menu
	  function type 54 - Send an on-line message.  It allows the
	  user to toggle the ability to receive on-line messages from
	  other users.
          
	  Example:

	  Let's say that the user on node 1 selects to send an on-line
	  message to the user on node 2 (i.e. "Joe, I see you're
	  logged on line 2. Let's chat!").  If the user on node 1 has
	  his Do not disturb flag set to OFF, he would receive the
	  message:

          	***MESSAGE*** from John Doe on node 1:


                                   - 178 -
          	"Joe, I see you're logged on line 2.  Let's chat"
          
	  If the user on node 2 had his Do not disturb setting turned
	  ON, the user on node 1 would not have been allowed to enter
	  the on-line message.
           
	  NOTE: The Sysop has the ability to override Do not disturb
	  settings and may send on-line messages to any user currently
	  on-line.
          
          
          Type: 54
          Send an on-line message
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  This function is intended for use in a multi- node
	  environment and allows users to send one-line messages to
	  other users who are currenty logged-on to other nodes,
	  provided that the receiving user has the Do not disturb flag
	  set to OFF.
          
	  When executed, this function first displays a list of users
	  who are currently on-line (see menu function type 52-"Show
	  all users on-line") and then prompts the user to enter the
	  line (node) number of the user to send the message to.  The
	  sender is allowed to enter a brief (one-line) message.  If
          the sender presses <ENTER> without entering a message, the
	  operation is aborted.
          
          
          Type: 55
          Download any file
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  This is an extremely powerful function which was designed
	  for use by the Sysop when logging-on remotely.  It allows
	  the user to download any file from any valid DOS drive and
	  directory using any of the available file transfer
	  protocols.  Having said this, you might see why, if this
	  function is used, it would be better restricted to Sysop use
	  only.
          


                                   - 179 -
	  NOTE:  This is the only download function that takes no
	  account of download limits, file ratios or transfer time,
	  and does not update the user record to reflect the
	  download.  However, if you would like to make files
	  available to your users without regard to download
	  statistics, this can be accomplished by declaring specific
	  files as Free Files.	See the File Database Administration
	  chapter for more information.
          
          
          Type: 56
          Browse the nodelist {+} Registered only.
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  If you are a member of a mail network, you might find this
	  function useful.  It allows users to browse the current
	  nodelist created by RANODE (see the chapter on Mail
	  Networking for more information) and includes functions to
	  list all zones, all nets and regions in a zone, and all
	  nodes in a net or region.

	  Example:

	  When selected, this function displays a summarized list of
	  possible commands, and prompts the user for input:
          
          	* NODELIST BROWSING * (blank line quits):
          	? to list all zones
          	z:? to list nets in zone z
          	n/? to list nodes in net n
          	:
          
	  For each option, RemoteAccess displays a formatted list to
	  the user.
           
	  NOTE:  This function is also built-in to menu function type
	  27-"Post message" and is available when performing operations
	  on a NetMail message area.  Specifically, this function is
	  available when entering a network address.
          
          
          Type: 57
          Change home/voice number
          ------------------------------------------------------------
	  Optional data:

	  None


                                   - 180 -
	  Description:

	  This function allows users to modify their voice telephone
	  number and records the modification in the user's permanent
	  record.
          
          
          Type: 58
          Change business/data number
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  This function allows users to modify their business/data
	  telephone number and records the modification in the user's
	  permanent record.
          
          
          Type: 59
          Global download {+} Registered only.
          ------------------------------------------------------------
	  Optional data:

	  [/FG]
          
	  Description:

	  Allows users to download files in the same manner as menu
	  function type 32-"Download a file from area", except that
	  the user is not confined to one area.  This function
	  searches all areas that the user has access to for the
	  requested file(s).  All normal time and security
	  restrictions apply. You can use menu function type 59-
          "Global download" to download files from any area. 
          Normally, users may download only from the currently
	  selected file area.
          
	  If the /FG parameter is specified, this function will
	  download a file from any area within the user's currently
	  selected file group.
          
	  NOTE:  You might prefer this function over the type 32
	  download function since it does not require the user to be
	  in the same file area as the files that are to be
	  downloaded.
          
          
          Type: 60
          Change handle


                                   - 181 -
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  Allows users to select a new handle, or alias.  Users are
	  not allowed to choose a name which is in use by another
	  user.  This function will also not allow the use of SYSOP or
	  any handle listed in the HANDLES.CTL control file (see the
	  chapter on External Support Files for more information on
	  this control file).
          
          
          Type: 61
          Toggle AVATAR
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  This function toggles the use of AVATAR codes in
	  RemoteAccess and related text files.	See the External
	  Support Files chapter for more information on AVATAR text
	  files.
          
          
          Type: 62
	  Toggle full-screen message viewer
          ------------------------------------------------------------
	  Optional data:

	  None

	  Description:

	  Allows users to select between using the full-screen message
	  viewer or the line-by-line message viewer.  When set to ON
	  with this function, the full-screen message viewer displays
	  all messages with a fixed header in the upper portion of the
	  display while displaying message text in a page window below
	  the header.  The full-screen message viewer utilizies ANSI
	  and AVATAR codes for special screen manipulation.
          
          
          Type: 63
          Select a new language
          ------------------------------------------------------------
	  Optional data:


                                   - 182 -
	  None
          
	  Description:

	  This function allows users to change the current language
	  setting.  This option is useful if you have more than one
	  language available to your callers.  For more information,
	  see the Configuration chapter and RACONFIG:
          
                              Language > Manager
          
          
          Type: 64
          Select a new date format
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  This function gives the user the ability to change the
	  current date format that RemoteAccess will use each time the
	  user logs-on.  The user has a choice of the following date
	  formats (the date used in the examples below is February 12,
	  1993):

			     Format	   Example
                             -----------------------
			     DD-MM-YY	   12-02-93
			     MM-DD-YY	   02-12-93
			     YY-MM-DD	   93-02-12
			     DD-Mmm-YY	   12-Feb-93
          
          
          Type: 65
          Change user flags {+} Registered only.
          ------------------------------------------------------------
	  Optional data:

          <flagset><flagnum><action>
          
	  Description:

	  This function adds even more power and flexibility to
	  RemoteAccess as it allows you to toggle any of the user's
	  access flags settings.  The action determines how the flag
	  is to be set.  Valid actions are:
          
          -	Turn the specified flag OFF
          +	Turn the specified flag ON
	  *	Toggle the specified flag from its current state to


                                   - 183 -
		the opposite state (i.e. if the flag is ON, toggle it
		OFF).
          
	  Example:

                Optional data:  A1+ A2- D8*
          
	  In the above example, A1 would be set to ON, A2 would be set
	  to OFF and D8 would be toggled.  Notice the spaces between
	  each flag specified.
          
          	Optional data:  A1+
          
	  In the above example, A1 would be set to OFF.
          
          	Optional data: B1*
          
	  In the above example, the user's B1 flag would be toggled to
	  its opposite state.
          
          
          Type: 66
          Toggle shells
          ------------------------------------------------------------
	  Optional data:

          <ON or OFF>
          
	  Description:

	  Determines the availability of the Shell from text file
	  feature for the current session only.  This option overrides
	  the setting in RACONFIG:
          
                        Options > System > Text Shells
          
          See the chapter on External Support Files for more
          information on the Shell from text file feature.
          
          
          Type: 67
          Toggle auto message forwarding
          ------------------------------------------------------------
	  Optional data:

	  [/U]
          
	  Description:

	  If a user is not able to log-on for an extended period of
	  time, all messages entered that are addressed to the user
	  may be redirected (forwarded) to another user. When this


                                   - 184 -
	  function is selected, the user is prompted for the name of
	  another user to forward mail to.  This name must be a valid
	  user name contained in the system user list.
          
	  If the named entered cannot be located in the user list, and
	  the /U parameter is specified in the optional data field,
	  the user will be given the opportunity to view/search the
	  user database and then reselect the user to forward mail to.
          
	  Example:

	  John Doe is going to be out of town on business for one
	  month.  While he is gone, he would like his mail redirected
	  to Suzie Queue.  John would simply select this function,
	  entering Suzie's full user name when prompted.  Then, all
	  messages created on the system that are addressed to John
	  Doe will be automatically redirected to Suzie Queue.	When
	  John returns from his trip, he may cancel the redirection by
	  reselecting this function.  A truly handy feature indeed!
          
          
          Type: 68 
          Create RTC
          ------------------------------------------------------------
          Optional data:

          None
          
	  Description:

	  Create a new Real-Time-Conference (RTC). As detailed in the
	  section on RTCs in the chapter on Multi-Node Operation, up
	  to 125 RTCs can be created.
          
          
          Type: 69 
          Join RTC
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  This function allows the user to join (enter) an existing
	  Real-Time-Conference (RTC). See the section on RTCs in the
	  Multi-Node Operation chapter later in this manual.
          
          
          Type: 70 
          Delete RTC
          ------------------------------------------------------------


                                   - 185 -
	  Optional data:

	  None
          
	  Description:

	  This function allows the user to delete an existing
	  Real-Time-Conference (RTC).	 See the section on RTCs in
	  the Multi-Node Operation chapter later in this manual.
          
          
          Type: 71 
          Edit tag list
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  This function allows users to edit the current list of files
	  that are tagged for download.  When selected, the user is
	  given the choice of deleting files from the tag list or
	  clearing the entire list of tagged files.
          
	  This function is also offered automatically during the file
	  tagging process.
          
          
          Type: 72 
          Select default protocol
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  This function allows the user to select a default file
	  transfer protocol.  When this function is executed, a list
	  of supported transfer protocols is displayed and the user is
	  prompted to select a protocol.  The protocol selected will
	  become the default
          
	  If the file XFERPROT.A?? exists, it will be displayed
	  instead of the internal, hard- coded listing.
          
          
          Type: 73 
	  Toggle EchoMail in mail-box scan
          ------------------------------------------------------------
	  Optional data:


                                   - 186 -
	  None
          
	  Description:

	  This function is used to include or exclude EchoMail message
	  areas during a mail-box check.  When enabled, EchoMail areas
	  are included during a mail-box check.  This is useful to
	  users who do not participate in EchoMail conferences.
          
          
          Type: 74 
          Change mailing address
          ------------------------------------------------------------
	  Optional data:

	  None
          
	  Description:

	  This function allows users to change their mailing address
	  that is stored as a part of the user's permanent account
	  record.  Up to 3 lines may be entered.
          

          Type: 76
          Display RIP Icon
          ------------------------------------------------------------
	  Optional data:

          [/FILE=<filename>] [LABEL=<text>] [/LABELCOL=<cc>]
          [/HOTKEY=<x>] </X=>x>> </Y=>x>>

          Description:

          Display a RIP icon. This can be used to display a RIP icon
          to the user. There are several parameters that may be used
          on the optional data field:
         
          /FILE=<filename> - Filename of the icon to display.
                             If omitted, a plain button will
                             be drawn. NOTE: Specify the filename
                             only; the RIP path (see above) is
                             automatically added.

          /LABEL=<Text>      Line of text to display with the
                             button. If the button is an icon,
                             the text will be displayed below the
                             image, otherwise the text will be
                             displayed in the centre of the button.
                             UNDERSCORES WILL BE REPLACED WITH SPACES.

          /LABELCOL=<cc>     Colour in which to display the 


                                   - 187 -
                             button's label.

          /HOTKEY=<x>        Hotkey to simulate when the button
                             is clicked by the user. If no hotkey
                             is specified, the button will not
                             be clickable.

          /X=<x>             X-coordinate at which to display
                             the button. REQUIRED PARAMETER.

          /Y=<x>             Y-coordinate at which to display
                             the button. REQUIRED PARAMETER.

          Example:

          Menu type 76
          Opt data: /FILE=EMAIL.ICN /X=100 /Y=100 /HOTKEY=M 
                    /LABEL=Msg_Menu

          This would display the icon EMAIL.ICN on the users terminal
          at coordinates (100,100), with the text "Msg Menu" below it.
          When clicked, the BBS would act as if the user had pressed 
          the 'M' key.

          If the button is an icon, this command will automatically
          check to see if the user already has the icon file, and if
          necessary, send it automatically.



























                                   - 188 -
          Chapter 4
          External Support Files
          *	
          *	
          *	
          *	
          Used to enhance and manipulate system presentation, External
          Support Files add to the list of available building blocks
          which aid you in creating a completely unique system.
          Customize your system's presentation using the tools
          outlined in this chapter.











































                                   - 189 -
          OVERVIEW

          There is very little that is hard-coded into RemoteAccess in
          terms of what is displayed to your users.  You've learned
          that with the aid of the language manager in RACONFIG, you
          can change just about every prompt or message that is
          displayed to your users.  You've also learned that through
          the use of the menu manager, you can create your own custom
          menu system. Now we'll explain how to take advantage of yet
          another powerful tool - External Support Files.

          When we refer to text files or control files, we're really
          referring to the same family of tools.  We've referred to
          both types of external support files throughout this manual
          and you've probably wondered why this chapter wasn't covered
          earlier.  The reason is that we just didn't see any reason
          to overwhelm you with tools.  We thought it best to let you
          familiarize yourself with the essential tools first.  And
          since external support files compliment your overall BBS, it
          makes sense to discuss them after your message, file and
          menu systems are in place.

          In this chapter, we'll take a look at each individual type
          of external support file.  We'll explain what they are, how
          they are used and how to create them.  We'll also explain
          control codes and how they are implemented from within a
          text file.
          

          TEXT FILES EXPLAINED

          In the Configuration chapter, you stepped through the entire
          configuration.  Remember the text file directory path that
          you setup in RACONFIG:
          
                                System > Paths
          
          The directory you specified here tells RemoteAccess where to
          look for your text files.  So keep in mind that this
          directory is where you'll want to be sure to place any text
          files that you create.

          Text files allow you to customize and enhance system
          presentation.  What if you'd like your users to see a
          graphic display wishing them a happy birthday (and only on
          their birthday, noless)?  Or, what if you'd like a file
          explaining system policies and procedures presented to your
          users at the press of a menu key?  It's all possible through
          the use of text files that you place into your text file
          directory.

          When editing text files, you may include certain special


                                   - 190 -
          characters called control codes.  These were mentioned in
          earlier chapters, but will be covered in detail in this
          chapter. There are three filename extensions that a text
          file can have.  These extensions indicate the type or
          variety of the text file:
          
          .ASC  Text files with this extension should be straight
                ASCII text files.  That is to say that they should not
                contain ANSI or AVATAR codes.  These files are
                displayed to users who do not have either ANSI or
                AVATAR emulation enabled.
          
          .ANS  This filename extension indicates that the text file
                contains ANSI escape codes and is displayed to callers
                who have ANSI emulation enabled.
          
          .AVT  Text files with this extension indicate that they
                contain AVATAR codes sequences.  These files are
                displayed to users who have AVATAR emulation enabled.

          .RIP  This extension indicates that the file contains RIP
                (Remote Imaging Protocol) sequences. These files are
                displayed only to users who have a RIP compatible
                terminal.

          .RI2  A more recent version of RIP.
          
          For example, if you make all three emulations available to
          your users, you could have three varieties of one text file
          in your text file directory.  Let's say that you have the
          file BIRTHDAY.A?? displayed to users on their birthdays:
          
          BIRTHDAY.ASC  Displays the ASCII variation of the file to
                        users who do not have AVATAR or ANSI enabled.
          
          BIRTHDAY.ANS  Displays the ANSI variation of the file to
                        users who have ANSI enabled.
          
          BIRTHDAY.AVT  Displays the AVATAR variation of the file to
                        users who have AVATAR enabled.
          
          Again, this is not a requirement; it's an option.  If you
          choose to have only one variety of the BIRTHDAY file, that's
          fine.  But it should be the ASCII variety since it can be
          displayed to users of any terminal emulation type.  As
          always, when RemoteAccess cannot locate an AVATAR or ANSI
          variation of a text file, it regresses until it finds a
          compatible file or the ASCII variation of the file.  If no
          variation of the file exists, a short error message is
          displayed to the user.

          Now that we've explained the three varieties of text files,


                                   - 191 -
          we should mention that there are generally two types of text
          files; ones that RemoteAccess searches for and displays
          automatically (if found and certain conditions are met),
          and; ones that you specify which are displayed when you
          instruct RemoteAccess to do so.

          The text files that are displayed automatically are
          described in the Text Files Listing section later in this
          chapter. Some of these files are required by RemoteAccess
          (under certain conditions), while others are not.  For
          example, if you configure your system to only allow
          downloads during specific hours, the file DNLDHRS.A??
          becomes a required file which is displayed to users who
          attempt to download outside of the predefined schedule.  But
          that doesn't mean that it absolutely has to exist in order
          for your BBS to continue to operate properly.  If a text
          file does not exist, one of two actions will be taken; 1) a
          brief default message is displayed to the user or; 2)
          nothing is displayed.  Text files for which a default
          message is displayed when the file is missing, are indicated
          in the Text Files Listing by an asterisk * character.
          

          CONTROL CODES

          Control codes are powerful macros that allow you to perform
          certain system functions and display system and user data
          from within your text files.  If you've never used macros
          before, you'll want to give this section some close study.

          In the Menu Administration chapter, you learned how to embed
          control codes within the optional data field in certain menu
          items.  The key sequence will be explained again here so you
          don't have to hunt for it.

          The first thing you should know is that you're going to need
          a text editor that allows you to enter control characters.
          Since there are a wealth of text editors on the market, the
          examples given here are geared towards editors that allow
          control character entry the same way that RACONFIG does.  In
          fact, if you have a mind to, the control file editor in
          RACONFIG can be used to edit text files and allows you to
          enter control codes in the manner about to be described.

          To use the control file editor in RACONFIG, follow these
          simple steps:
          
          1)    Fire up RACONFIG
          
                RACONFIG <ENTER>
          
          2)    From the list of main selections, select:


                                   - 192 -
                Manager > Ctl files
          
          3)    When the pick-list of control files is displayed,
                position the cursor-bar on Other and press <ENTER>.
                You will be prompted to enter a filename to edit.
                Since the editor is geared towards editing files that
                exist in the RemoteAccess system directory, you'll
                need to specify a path as a part of the filename to
                edit. For example, if your text file directory is set
                to \RA\TXTFILES and you want to edit a text file
                called BIRTHDAY.ASC, you would enter:
          
                              TXTFILES\BIRTHDAY.ASC
          
          4)    Press <ENTER> to begin editing the text file.  If the
                file exists, its contents will be displayed on your
                screen. If the file does not exist, it will be created
                and an empty display will be shown.
          
          Control codes can be single control characters, a single
          control character followed by another character, or even a
          multiple-character parameter (in the case of color control
          codes and language prompt numbers).  All of these are
          outlined in the tables contained in this chapter.  For
          example, the control code that causes RemoteAccess to pause
          until the user presses the <ENTER> key is the single
          character ^A code.  Use the following steps to enter this
          code:
          
          5)    To instruct the editor that you are about to enter a
                control character, press and hold down the CTRL key
                while pressing the "P" key.  This informs the editor
                that the next key pressed is to be considered a
                literal control character.
          
          6)    Press and hold down the CTRL key while pressing the
                "A" key.  Depending on the editor you're using, you
                may see a small smiling face symbol or, if you're
                using the control file editor in RACONFIG, you'll see
                a highlighted "A" character.  This is how the ^A
                character appears in the text editor.
          
          Now press the BACKSPACE key, deleting the control code
          you've just entered.  Control codes can also be multiple-
          character codes. These codes consist of a control character
          followed by a regular, non-control character and possibly an
          additional parameter.  For example, the control code which
          displays the user's full name is ^FA which consists of a ^F
          character immediately followed by the A character.  Enter
          this two-character code:
          
          7)    To instruct the editor that you are about to enter a


                                   - 193 -
                control character, press and hold down the CTRL key
                while pressing the "P" key.  This informs the editor
                that the next key pressed is to be considered a
                literal character.
          
          8)    Press and hold down the CTRL key while pressing the
                "F" key.  Depending on the editor you're using, you
                may see a small spade character or, if you're using
                the control file editor in RACONFIG, you'll see a
                highlighted "F" character.  This is how the ^F
                character appears in the text editor.
          
          9)    Now simply press the "A" character.  If you're using
                the control file editor, the two-character code
                appears as a highlighted "F" character followed by the
                "A" character (^FA).  If you're using another text
                file editor, you may see a spade character followed by
                the "A" character. This is how the complete
                two-character code appears in the text editor you're
                using.
          
          Now press the BACKSPACE key, until the control code that
          you've just entered is deleted.  Since you're working with
          the text file BIRTHDAY.ASC, continue on to enter a simple
          happy birthday message which will be displayed to your users
          on their birthday.
          
          10)   Enter the following text, pressing <ENTER> at the end
                of each line:

                +--------------------------------------------------+
                | Happy Birthday to ^FA from the Sysop and all the |
                | users of this BBS!                               |
                |                                                  |
                | Press (Enter) to continue^A                      |
                +--------------------------------------------------+
          
          11)   If you're using the control file editor, press the
                <ESCAPE> key and save the changes that have been made
                to BIRTHDAY.ASC.  If you're using another editor,
                execute the appropriate save command.
          
          You've just created your first text file with embedded
          control codes!  When the BIRTHDAY.ASC file is presented to
          your users, it will display the message you've just entered,
          substituting the user's full name in place of the ^FA code.
          When the ^A control code is encounted, RemoteAccess will
          pause until the user presses <ENTER>.

          But what about variations of the text file for users with
          ANSI or AVATAR emulations enabled?  Shareware software
          programs are readily available and can usually be obtained


                                   - 194 -
          by calling a BBS in your area.  One recommendation would be
          to obtain an ANSI drawing program that suits your needs and
          then use the conversion program AVTCONV.EXE to create AVATAR
          variations of the ANSI files you create.  The AVTCONV.EXE
          program is fully described in the Reference Information
          chapter.

          Now that you know how to enter control codes within your
          text files, take a look at the tables in the following
          section which outline the control codes available.
          

          CONTROL CODES LISTING

          There are a four categories of control codes.  They are;
          system function, system data, user data and color control
          codes.  You'll find that system function control codes are
          single-character control codes while the others are
          multiple-character codes. This section outlines each
          category in the order just listed.
          

          System Function Codes
          ------------------------------------------------------------
          System function codes are single-character control codes
          that are used to perform certain system functions such as
          turning page pausing on or off, or waiting for the user to
          press <ENTER>.
          
          ASCII
          Character  Control
          Number     Code     Function Performed
          ------------------------------------------------------------
          01         ^A       Wait until the <ENTER> key is pressed.
          02         ^B       Disable aborting with the S key.
          03         ^C       Enable aborting with the S key.
          04         ^D       Enable the Continue? prompt (turns on
                              page pausing).
          05         ^E       Disable the Continue? prompt (turns off
                              page pausing).
          06         ^F       Insert a user parameter (see user data
                              codes).
          07         ^G       Produce a beep on the caller's console.
          08         ^H       Backspace.  Backs the cursor up one
                              character, deleting the character to the
                              left.
          09         ^I       Tab (moves the cursor forward 8
                              characters).
          10         ^J       Linefeed.
          11         ^K       Insert a system parameter (see system
                              data codes).
          12         ^L       Clear the screen.


                                   - 195 -
          13         ^M       Carriage return.
          17         ^Q       Reserved for XON/XOFF handshaking.
          19         ^S       Reserved for XON/XOFF handshaking.
          22         ^V       Reserved for AVATAR.
          23         ^W       Pause for one second.
          24         ^X       Execute a program in a DOS shell (see
                              description immediately following this
                              table).
          26         ^Z       END OF FILE marker.  Do not use this!
          
          The ^X control code is used to execute a program in a DOS
          shell.  This gives you the ability to run an external
          program whenever RemoteAccess encounters a ^X embedded in a
          text file.  The ^X code is followed by the command line you
          want to execute, and is terminated by the pipe symbol |
          character.

          NOTE:  RemoteAccess will only shell to DOS from within text
          files when enabled in RACONFIG:
          
                        Options > System > Text shells
          
          For example, to run an external program called MAILCHEK.EXE
          from within a text file you could embed the following into a
          text file:
          
                        ^X\RA\MAILCHEK.EXE *B *F *L |
          
          When this code is encountered, RemoteAccess would run the
          MAILCHEK.EXE program located in the \RA directory, passing
          the caller's baudrate, first name and last name as
          parameters on the command line.  This would have the same
          effect as typing the DOS command:
          
                 \RA\MAILCHEK.EXE  2400  FirstName  LastName
          
          The command must be terminated with the pipe symbol |
          character.  All special DOS shell control codes may be used
          here just as they are used in menu function type 7-"Run an
          external program in a shell".  See the Menu Administration
          chapter for complete information on these control code
          parameters.
          
          NOTE:  Use this feature with caution!  Imagine the damage
          that the following embedded command could do:
          
                      COPY \RA\USERS.BBS \DLOAD\GENFILES
          
          If there is any possibility of a user being able to modify
          any of the text files that your system displays, then
          disable Text shells in RACONFIG.
          


                                   - 196 -
          System Data Codes
          ------------------------------------------------------------
          System data codes are used to display data about the overall 
          system.  These codes are multiple-character codes and always 
          begin with the ^K character.
          
          
          ASCII
          Character  Control
          Number     Code     Information Displayed
          ------------------------------------------------------------
          33         ^K!      Display another text file. This code
                              should be followed by a 1-8 character
                              filename (no extension) and must be
                              terminated by the pipe symbol "|"
                              character.  (i.e. ^K!BBSRULES| would
                              display the BBSRULES.A?? text file).

                              This control code may be nested by
                              displaying a text file from another text
                              file to the limit of available memory.
                              {+} Registered only.
          36         ^K$      Number of callers today.
          37         ^K%      Handle of last caller.
          38         ^K&      Number of files currently tagged.
          39         ^K'      Total kilobytes of tagged files.
          40         ^K(      Name of currently selected language.
          48         ^K0      Number of messages in selected area.
          49         ^K1      Number of the current template message
                              area.
          50         ^K2      Number of current template file area.
          65         ^KA      Total system calls.
          66         ^KB      Name of last caller (any node).
          68         ^KD      Starting message number of currently
                              selected area.
          69         ^KE      Ending message number of currently
                              selected area.
          70         ^KF      Number of times user has paged the Sysop
                              during this session.
          71         ^KG      Day of the week (full form).
          72         ^KH      Number of users in the user file.
          73         ^KI      Time in 24-hour format.
          74         ^KJ      Today's date.
          75         ^KK      Minutes connected this call.
          76         ^KL      Seconds connected (always returns zero).
          77         ^KM      Minutes used today.
          78         ^KN      Seconds used today (always returns
                              zero).
          79         ^KO      Minutes remaining today.
          80         ^KP      Seconds remaining today (always returns
                              zero).
          81         ^KQ      Daily time limit.


                                   - 197 -
          82         ^KR      Connect speed.
          83         ^KS      Day of the week (abbreviated form).
          84         ^KT      Daily download limit (in Kb).
          85         ^KU      Minutes until next system event.
          86         ^KV      24 hour format time of the next event.
          87         ^KW      Node number (as set on command line).
          88         ^KX      Terminates the current call.
          89         ^KY      Name of current template message area.
          90         ^KZ      Name of current template file area.
          91         ^K[cc    Change foreground and background color
                              to cc.  See the Color Codes table in
                              this chapter for details.
          92         ^K/      Clear to end of the current line.
          93         ^K]nnn   Displays the language prompt number nnn
                              from the currently selected language.
                              Since this code is nearly identical to
                              the change color code, nnn must be a
                              three-digit number.

          
          
          User Data Codes
          ------------------------------------------------------------
          User data codes are used to display information about the
          user who is currently logged-on.  In the following table,
          settings that return the state of a toggle, are indicated.
          For example, ^F0 will display the word ON or OFF depending
          on the status of the current user's full-screen editor
          toggle.

          ASCII
          Character  Control
          Number     Code     Information Displayed
          ------------------------------------------------------------
          33         ^F!      User's default protocol setting.
          34         ^F"      User's exclude echomail areas from mail
                              scans setting.  If echomail areas are
                              excluded from the user's mail-box scan,
                              this returns ON, otherwise returns OFF.
          35         ^F#      User's current file group.
          36         ^F$      User's address line 1.
          37         ^F%      User's address line 2.
          38         ^F&      User's address line 3.
          39         ^F'      User's sex (Male/Female).
          40         ^F(      User's Post Billing flag setting
                              (ON/OFF).
          41         ^F)      User's current message group.
          42         ^F*      Current file group number.
          43         ^F+      Current message group number.
          48         ^F0      User's current full-screen editor
                              setting (ON/OFF).
          49         ^F1      Current do not disturb setting (ON/OFF).


                                   - 198 -
          50         ^F2      Current Hot-Key setting (ON/OFF).
          51         ^F3      User's handle.
          52         ^F4      Date of user's first call to the system.
          53         ^F5      User's date of birth.
          54         ^F6      Subscription expiration date.
          55         ^F7      Days until subscription expiration.
          56         ^F8      Current AVATAR setting (ON/OFF).
          57         ^F9      File ratio (number of files).
          58         ^F:      File ratio (kilobytes).
          59         ^F;      Current full-screen message viewer
                              setting (ON/OFF).
          60         ^F<      Selected date format.
          61         ^F=      Current auto-message-forwarding setting
                              (ON/OFF).
          62         ^F>      Name (if any) of message forwardee.
          65         ^FA      User's full name.
          66         ^FB      User's location.
          68         ^FD      Business/Data telephone number.
          69         ^FE      Voice/Home telephone number.
          70         ^FF      Date of last call.
          71         ^FG      Time of last call.
          72         ^FH      A Flags setting.
          73         ^FI      B Flags setting.
          74         ^FJ      C Flags setting.
          75         ^FK      D Flags setting.
          76         ^FL      Credits remaining (cents).  The value
                              displayed by this code uses the formula:
          
                              (Credit - NetPending - SessionCost)
          
                              Therefore, if a user has 25 credits and
                              has 15 pending credits and the current
                              session cost in credits is 5, the value
                              displayed with this macro would be 5.
          77         ^FM      Total messages posted.
          78         ^FN      Last message read.
          79         ^FO      Security level.
          80         ^FP      Total calls to the BBS.
          81         ^FQ      Number of files uploaded.
          82         ^FR      Kilobytes uploaded.
          83         ^FS      Number of files downloaded.
          84         ^FT      Kilobytes downloaded.
          85         ^FU      Minutes used today.
          86         ^FV      Current screen length setting.
          87         ^FW      User's first name only.
          88         ^FX      ANSI setting (ON/OFF).
          89         ^FY      Continue? prompt setting (ON/OFF).
          90         ^FZ      Screen clearing setting (ON/OFF).
          91         ^F[      Daily kilobytes remaining.
          93         ^F]      User's comment field.          
          94         ^F^      Current session time limit.
          95         ^F_      Time remaining this session.


                                   - 199 -
          Padding Control Codes
          ------------------------------------------------------------

          It is possible to pre-define the width of any textfile
          control code. Simply place one '.' character between the
          ^K/^F and the second part of the code for every additional
          space you would like the field padded with.

          Example: ^FA 
                    Displays the users name.

                   ^F....................A 
                   Displays the users name padded with 20 spaces.

          If the field is longer than the defined number of spaces,
          it will be truncated. Text fields are always justified to
          the left, and numerical fields are always justified to the
          right.


          Color Control Codes
          ------------------------------------------------------------
          Color code numbers are used throughout RemoteAccess.  They
          can be put to work in the file list template defined in
          RACONFIG:
          
                        Options > Files > List Format
          
          Color codes can also be used to define colors used in menu
          displays, language prompts, text files and even
          questionnaires. Color codes are entered using the ^K[
          control code followed by a two-digit code which represents
          the background and foreground colors to be used.  These are
          specified as hexadecimal values.  If you aren't familiar
          with hexadecimal representation, a table has been provided
          in this section which contains a cross-reference.

          Something worth noting at this point is the fact that you
          can specify a color number that would cause the foreground
          color to be flashing.  This is actually accomplished by
          adding 8 to the value of the background color number.  For
          example, to make the specified foreground color flash on a
          black background (color number 0), you would specify a
          background color of 8 (0 + 8 = 8).

          The following tables list the hexadecimal color numbers for
          the background and foreground colors.  The background color
          numbers specified indicate which numbers should be used to
          achieve the specified color with and without a flashing
          foreground.
          
          


                                   - 200 -
                       Color number if no       Color number if a
          Background   flashing foreground is   flashing foreground is
          Color        desired                  desired
          ------------------------------------------------------------
          Black                0                        8
          Blue                 1                        9
          Green                2                        A
          Cyan                 3                        B
          Red                  4                        C
          Magenta              5                        D
          Brown                6                        E
          Gray                 7                        F
          

          Foreground     Color
          Color          Number
          -------------------------
          Black            0
          Blue             1
          Green            2
          Cyan             3
          Red              4
          Magenta          5
          Brown            6
          Gray             7
          Dark Gray        8
          Light Blue       9
          Light Green      A
          Light Cyan       B
          Light Red        C
          Light Magenta    D
          Yellow           E
          White            F
          
          To familiarize yourself with this scheme, examine the color
          number examples shown below.  Cross reference each example
          with the color number tables so you understand the color
          numbering scheme:
          
          34	Red foreground on a cyan background.
          01	Blue foreground on a black background.
          BF	Flashing white foreground on a cyan background.
          BA    Flashing light green foreground on a cyan background.
          

          TEXT FILES LISTING

          All text files that RemoteAccess automatically looks for are 
          listed below.  The conditions that must be met in order for the 
          text file to be displayed are listed for each text file.  As 
          mentioned earlier, each file for which RemoteAccess will 
          supply a brief default message, is marked with the * 


                                   - 201 -
          character.
           
          NOTE:  In most cases, it is recommended that your text file
          contain a prompt for the user to press <ENTER> at the end of
          the file.  This not only gives your users ample time to read
          the text file but also provides a pause between screen
          clearing codes, in some instances, where the text file might
          normally be cleared from the display before the user has had
          a chance to view the file. See the Control Codes section
          later in this chapter for details on the ^A control code.

          
          1ATATIME.A??  *
          ------------------------------------------------------------
          This file is displayed if a user tries to log-on to more
          than one node (line) at the same time provided that the
          multi-line check option has been enabled in RACONFIG:
          
                       Options > System > Check multi


          ALTNEWS.A??
          ------------------------------------------------------------
          This file is displayed only if the NEWS.A?? file was not
          displayed to the user because the user requested to skip it
          during an IEMSI session.  If you want all users to see your
          system news file regardless, simply copy NEWS.A?? to
          ALTNEWS.A??.

          
          BADFILES.A??  *
          ------------------------------------------------------------
          This file is displayed if the user attempts to upload a file
          that is listed in the BADFILES.CTL control file.

          
          BADPWD.ASC  *
          ------------------------------------------------------------
          This file is displayed when a user enters an incorrect
          password and elects to leave a message to the Sysop.  For
          example, if a user enters an incorrect password more than
          the maximum allowable password tries defined in RACONFIG,
          RemoteAccess will offer an opportunity to leave a message to
          the Sysop.  If the user elects to leave a message, this file
          is displayed prior to loading the message editor.
          
          The maximum number of password tries can be defined in
          RACONFIG:
          
                           Options > System > Pwd tries

          


                                   - 202 -
          BIRTHDAY.A??
          ------------------------------------------------------------
          This file is displayed during the log-on process if the
          current date is the same as the user's date of birth.
          
          NOTE:  RemoteAccess prompts for and records user birth dates
          during the new user log-on process provided that the
          Birthdate option is enabled in RACONFIG:
          
                         Options > New users > Birthdate
          
          If RemoteAccess does not know the user's birthdate, this
          file cannot be displayed.

          
          DATEFMT.A??
          ------------------------------------------------------------
          This text file is displayed just before a user is prompted
          to enter a date format.  This ocurrs when; a) menu function
          type 64-"Select a new date format" is executed, and; b) when
          a user logs-on for the first time and your system is
          configured to allow users to select their individual date
          formats.  To allow users to select a date format, set the
          Date format to Ask in RACONFIG:
          
                        Options > New users > Date format


          DOBCHECK.A??
          ------------------------------------------------------------
          This text file is displayed to a user prior to prompting for
          a correct date of birth.  This occurs during the new user
          log-on process (if enabled) as well as when prompting a user
          to enter a date of birth for verification purposes.
          
          See RACONFIG:

                     Options > New users > Birthdate
                      Options > System > Check DOB


          DNLDHRS.A??  *
          ------------------------------------------------------------
          This file is displayed if a user attempts to download at a
          time that is outside of the scheduled download hours as
          defined in RACONFIG:
          
              Options > Files > Download start / Download end
          

          EDITHELP.A??
          ------------------------------------------------------------


                                   - 203 -
          This text file is displayed if the user asks for help while
          using the built-in message editor.


          ENDCHT.A??  *
          ------------------------------------------------------------
          This text file is displayed when the Sysop terminates a chat
          session.
          

          EXPIRED.A??  *
          ------------------------------------------------------------
          This is displayed during the log-on process if the user's
          password has expired, just before the user is prompted to
          enter a new password.
          
          NOTE:  User passwords will only expire if defined in
          RACONFIG:
          
                      Options > System > Pwd change
          

          FGROUPS.A??
          ------------------------------------------------------------
          This file is displayed in place of the formatted, hard-coded
          file area group list, if it exists, when a user selects a
          new file group via menu function type 50-"Select file
          area".  When the /FG=0 parameter is specified in the
          optional data field of a menu function type 50, the user is
          presented with either the internal listing (if this file
          does not exist) or this text file.

          For full details on file group implementation, see the
          chapter on Menu Administration.


          FGR#####.A??
          ------------------------------------------------------------
          This file is displayed, if it exists, when a user selects a
          new file area within the currently selected file
          group, via menu function type 50-"Select file area".
          When using menu function type 50 with the /FG or /FG=<group
          number> parameters, RemoteAccess displays the text file
          FGR<group number>.A?? (if it exists) rather than the
          formatted, hard-coded list.  See the Menu Administration
          chapter for details on file groups.


          FILEAREA.A??  *
          ------------------------------------------------------------
          If present, this file will be displayed when menu function
          type 50-"Select file area" is executed.  If this file does


                                   - 204 -
          not exist, RemoteAccess displays a formatted, hard-coded
          list.


          FLA#####.A??
          ------------------------------------------------------------
          This text file is displayed once only to a user when an
          individual file area (specified as #####) is entered for
          browsing.  This is great for displaying a file which
          explains guidelines for a given area.  For example, the file
          FLA23.A?? would be displayed to a user who browsed files in
          file area 23 for the first time.  Simply substitute ##### in
          the filename with the file area number (no zero padding).
          {+} Registered only.
          
          	Correct:	FLA1.A??

                Incorrect:      FLA00001.A??
          

          FLEXTIME.A??
          ------------------------------------------------------------
          This file is displayed when a user switches from regular
          time to flexitime (if the option is enabled). See the
          section on Limits in the Configuration chapter for details
          on how flexitime works.


          GOODBYE.A??
          ------------------------------------------------------------
          This file is displayed when a user elects to log-off, just
          before the session is terminated.
          

          GROUP#.A??
          ------------------------------------------------------------
          These files are displayed to users of a particular group
          directly after the SEC#.A?? file.  For example, the file
          GROUP1.A?? would be displayed to all users who are in group
          1.

         
          GUEST.A??
          ------------------------------------------------------------
          This file is displayed whenever a guest logs-on using a
          guest account as defined in RAMGR.  See the User
          Administration chapter for details on guest accounts.
          

          HANDLE.A??
          ------------------------------------------------------------
          This file is displayed just before the user is prompted to


                                   - 205 -
          choose a new handle.  This occurs both when menu function
          type 60-"Change handle" is executed, or when a new user
          logs-on and handles are enabled in RACONFIG:
          
                       Options > New users > Handle
          

          LANGUAGE.A??  *
          ------------------------------------------------------------
          This file is displayed (if it exists) in place of the
          hard-coded, internal language selection menu.
          

          LOCKOUT.A??  *
          ------------------------------------------------------------
          This file is displayed if the Sysop presses ALT-L while a
          user is on-line, to lock the user out of the system.  See
          the Sysop Keys and Status Bar section of the Reference
          Information chapter for more information on the ALT-L
          command.


          LOGO.A??
          ------------------------------------------------------------
          This file is displayed as soon as a connection is
          established (even before callers are prompted to enter their
          log-on name). RemoteAccess will attempt to automatically
          detect whether the remote terminal supports ANSI emulation.
          If ANSI emulation is detected, the .ANS variation of this
          file will be displayed, if it exists.
          
          NOTE:  This file is not displayed when logging-on locally if
          fast log-ons are enabled in RACONFIG:
          
                      Options > System > Fast logons
          

          MAILHELP.A??
          ------------------------------------------------------------
          This text file is displayed if the user asks for help at the
          mailbox scan prompt.
          
          The user is only offered the help prompt if this file
          exists.  For example, the default prompt for the English
          language when MAILHELP.A?? does not exist:
          
                Read mail now? [Y/n]: _
          
          And when MAILHELP.A?? does exist:
          
                Read mail now? [Y/n/?]: _
          


                                   - 206 -
          MAXPAGE.A??  *
          ------------------------------------------------------------
          This is displayed if a user tries to page the Sysop for a
          chat more than the number of times allowed as defined in
          RACONFIG:
          
                        Options > Paging > Max number

          
          MGA#####.A??
          ------------------------------------------------------------
          This text file is displayed once only to a user when an
          individual message area is entered for reading.  This is
          great for displaying a file which explains guidelines for a
          given area. For example, the file MGA5.A?? would be
          displayed to a user who selected to read messages in area 5
          for the first time. Simply substitute ##### in the filename
          with the message area number (no zero padding).
          {+} Registered only.
          
          	Correct:	MGA5.A??
          
          	Incorrect:	MGA00005.A??
          

          MGR#####.A??
          ------------------------------------------------------------
          This file is displayed, if it exists, when a user selects a
          new message area within the currently selected message
          group, via menu function type 49-"Select message area".
          When using menu function type 49 with the /MG or /MG=<group
          number> parameters, RemoteAccess displays the text file
          MGR<group number>.A?? (if it exists) rather than the
          formatted, hard-coded list.  See the Menu Administration
          chapter for details on message groups.


          MGROUPS.A??
          ------------------------------------------------------------
          This file is displayed in place of the formatted, hard-coded
          message area group list, if it exists, when a user selects a
          new message group via menu function type 49-"Select message
          area".  When the /MG=0 parameter is specified in the
          optional data field of a menu function type 49, the user is
          presented with either the internal listing (if this file
          does not exist) or this text file.

          For full details on message group implementation, see the
          chapter on Menu Administration.


          MM-DD.A??


                                   - 207 -
          ------------------------------------------------------------
          RemoteAccess can display a text file on a particular day of
          the year.  Imagine sending a Happy New Year! message on the
          first day of January every year without intervention.
          Simply create a text file named MM-DD.A?? where MM is the
          month number and DD is the day number.  Both values must be
          padded with a leading zero if the number is less than ten.
          For example, the file 01-01.A?? would be displayed to users
          on the first of January.
          

          MSGAREA.A??  *
          ------------------------------------------------------------
          If this file exists, it is displayed when a user is prompted
          to select a message area via menu function type 49-"Select
          message area".  If this file does not exist, a formatted
          default list is displayed.
          

          NEWS.A??
          ------------------------------------------------------------
          This file is intended for use as a general news bulletin
          that is displayed after RemoteAccess checks for waiting
          mail.  If your system is not configured to check for new
          mail during the log- on process, then this file is displayed
          directly after the WELCOME.A?? file.
          
          To define whether or not your system checks for unread mail
          during the log-on process, see RACONFIG:
          
                    Options > Messages > Logon.Newmail
          

          NEWUSER1.A??
          ------------------------------------------------------------
          This text file is displayed to new users after they confirm
          that their log-on name has been entered correctly.  For
          example, when a new user enters a log-on name that
          RemoteAccess cannot locate in the user database, it is
          possible that the user typed an incorrect name.  Therefore,
          RemoteAccess prompts the user to confirm that the log-on
          name was entered correctly:
          
             +----------------------------------------------------+
             | Please enter your full name:  Bruce Morse        |
             |                                                    |
             | Scanning the user file ...                         |
             |                                                    |
             | Your name was not located in the system user file. |
             |                                                    |
             | Name entered:  Bruce Morse.                      |
             |                                                    |


                                   - 208 -
             | Did you neter your name correctly (Y/n)? _         |
             +----------------------------------------------------+
          
          If the user confirms that the log-on name was correctly 
          entered, NEWUSER1.A?? is displayed.
          

          NEWUSER2.A??
          ------------------------------------------------------------
          This is displayed after a new user confirms that all user
          information (i.e. name, location, phone numbers, etc.) has
          been entered correctly.

          
          NO300.ASC  *
          ------------------------------------------------------------
          This file is displayed if a 300 BPS caller attempts to
          log-on during hours when 300 BPS connections are not allowed
          as defined in RACONFIG:
          
               Options > Restrictions > No300 Start / No300 End


          NOCREDIT.A??  *
          ------------------------------------------------------------
          This text file is displayed when a user attempts to enter a
          netmail message or download a file, which have an associated
          cost in credits, but does not have sufficient credits
          remaining on account to perform the function.  It is also
          displayed when a user attempts to download a file which has
          an associated cost (in credits) which is greater than the
          credits remaining in the user's account.
          

          NOTAVAIL.A??  *
          ------------------------------------------------------------
          This text file is displayed if a user tries to page the
          Sysop for a chat when the current time is outside scheduled
          paging hours, as defined in RACONFIG:
          
                               Options > Paging

          
          NOTFOUND.ASC  *
          ------------------------------------------------------------
          This file is displayed if RemoteAccess cannot locate the
          name of a user at log-on, but before the user is asked to
          confirm that the log-on name has been entered correctly.
          

          NOTSYSOP.A??  *
          ------------------------------------------------------------


                                   - 209 -
          This file is displayed if a user attempts to post a message
          addressed to Sysop in an EchoMail message area.  Since
          EchoMail messages are distributed to numerous systems,
          messages addressed to Sysop cannot be allowed for obvious
          reasons.
          

          ONCEONLY.A??
          ------------------------------------------------------------
          This file is displayed just after the NEWS.A?? file.  It is
          displayed once only when the file has been altered since the
          user last viewed it.
          

          PAGEABRT.A??  *
          ------------------------------------------------------------
          This file is displayed if the Sysop chooses to abort a page
          for chat by the user.
          

          PAGED.A??
          ------------------------------------------------------------
          This text file is displayed when the user pages the Sysop
          for a chat, but the Sysop does not answer the page.  This
          file might contain a message informing the user that the
          Sysop has been paged and will break-in for a chat if
          available.  The user is also prompted to leave a message to
          the Sysop when the page is unanswered.
          

          PASSWORD.A??
          ------------------------------------------------------------
          This file is displayed before the user is asked to select a
          new password.  This file should stress the importance of
          choosing a suitable password.
          

          PRIVATE.ASC  *
          ------------------------------------------------------------
          This file is displayed if a new user attempts to log-on when
          your BBS is configured as a private, pre-registration
          system. You can configure your BBS as a private system by
          setting the new user security level to 0 in RACONFIG:
          
                        Options > New users > Security
          

          RATIO.A??  *
          ------------------------------------------------------------
          This file is displayed if the user attempts to download a
          file which would exceed the user's download-to-upload ratio
          by number of files.


                                   - 210 -
          RATIOK.A??  *
          ------------------------------------------------------------
          This file is displayed if the user attempts to download a
          file which would exceed the user's download-to-upload ratio
          by number of kilobytes (Kb).
          

          READHELP.A??
          ------------------------------------------------------------
          This file is displayed if the user asks for help while
          reading messages.  Unlike the MAILHELP.A?? file, the help
          prompt is available whether or not this file exists.


          RTCHELP.A??
          ------------------------------------------------------------
          This file is displayed when a user selects help from within
          a Real-Time Conference.

          
          RTCMHELP.A??
          ------------------------------------------------------------
          This file is displayed when the moderator of a Real-Time
          Conference asks for help from within a conference.
          Moderators are afforded some administrative commands within
          Real-Time- Conferences.  Therefore, this file should include
          a bit more information than the RTCHELP.A?? file.
          

          SEC#.A??
          ------------------------------------------------------------
          These files are displayed to users of a particular security
          level directly after the WELCOME.A?? file, but before the
          mail- check (if enabled).  For example, the file SEC10.A??
          (if present), would be displayed to all users with a
          security level of 10.
          

          STARTCHT.A??  *
          ------------------------------------------------------------
          This text file is displayed when the Sysop breaks in for a
          chat using the ALT-C command.

          
          TIMEhh.A??
          ------------------------------------------------------------
          This file is displayed after the WELCOME.A?? and
          WELCOME1.A?? files when hh matches the current hour number
          (in 24 hour format).  For example, if the current time is
          8:00 pm (20:00) and the file TIME20.A?? exists, it is
          displayed to the user.
          


                                   - 211 -
          TIMEWARN.A??  *
          ------------------------------------------------------------
          This file is displayed during the log-on process if the
          user's time limit has been adjusted to accommodate an
          upcoming system event.
          
          NOTE:  When a user's time remaining is decreased due to an
          upcoming event, the time that is subtracted is restored if
          the user calls back on the same day after the system event
          has passed.
          

          TODAY.A??  *
          ------------------------------------------------------------
          This file is displayed to users who attempt to download a
          file which would exceed the daily download limit as defined
          in RACONFIG:
          
                      Manager > Limits > Security Level

          
          TOOSLOW.ASC  *
          ------------------------------------------------------------
          This file is displayed if a user attempts to log-on at a
          speed lower than the minimum required as defined in
          RACONFIG:
          
                     Options > Restrictions > Logon Speed


          TRASHCAN.ASC  *
          ------------------------------------------------------------
          This file is displayed if a user enters a name that is found
          to contain a text string that has been included in the
          TRASHCAN.CTL control file.  See the Control Files section of
          this chapter for more information on control files.


          UPLDSCAN.A??  *
          ------------------------------------------------------------
          This file is displayed when upload scanning is enabled and
          your system is configured to ask users if they would like to
          wait while the upload is scanned online.  This gives you an
          opportunity to explain the file scanning process and how it
          might effect the current user.  A sample of this file is as
          follows:
          
             +--------------------------------------------------+
             | Thank you for the upload!  All uploaded files    |
             | are scanned for computer viruses and other data  |
             | corruption.  Your user account will not be       |
             | credited for the upload until the scan has been  |


                                   - 212 -
             | completed.  Files may be scanned after you log-  |
             | off and your account updated at that time.  Or,  |
             | you may choose to proceed now and wait for the   |
             | scan to be completed to receive immediate upload |
             | credit.                                          |
             |                                                  |
             | Press <ENTER> to continue^A                      |
             +--------------------------------------------------+
          
          For more information on upload scanning, see the
          Configuration chapter.


          VIP.A??
          ------------------------------------------------------------
          This file is displayed upon logon to any user listed in the
          VIP.CTL control file.


          WELCOME.A??
          ------------------------------------------------------------
          This file is displayed when a user logs-on (after the user
          has entered a correct password), or in the case of a new
          user, after completing the new user procedure.  This might
          be an elaborate title screen that welcomes users to your
          BBS.
          

          WELCOME1.A??
          ------------------------------------------------------------
          This file is displayed directly after the WELCOME.A?? file,
          and might contain extra system information (i.e. today in
          history quote, etc.).
          

          XFERHELP.A??
          ------------------------------------------------------------
          This file is displayed if the user requests help by pressing
          the "?" key at the file transfer protocol selections menu.
          It should contain general information about the different
          protocols themselves.
          

          XFERPROT.A??  *
          ------------------------------------------------------------
          This file is displayed in place of the formatted default
          file transfer protocol selection menu and is displayed to
          users (if it exists) when prompting for a file transfer
          protocol to use.
          

          XFERTIME.A??  *


                                   - 213 -
          ------------------------------------------------------------
          This file is displayed when a user attempts to download a
          file which would require more time to complete than the user
          has remaining.
          

          CONTROL FILES

          Control files are used to control certain system functions
          and user input.  They are ASCII text files of specific
          filenames which must be placed in the system directory.
          They may be edited with any ASCII text file editor or by the
          Control Files Manager in RACONFIG (see the Editing Control
          Files section in this chapter for details on how to edit
          control files). RemoteAccess uses control files to filter
          user input.  For example, if your TRASHCAN.CTL file
          contained the name Mad Hatter, users would not be allowed to
          enter it as a log-on name.  Further, RemoteAccess checks to
          see if the text strings contained in TRASHCAN.CTL are
          embedded in user log-on names.  Therefore, if the
          TRASHCAN.CTL file contained the word Hatter, and a user
          entered a log-on name of Mad Hatter, it would not be
          allowed.

          In addition to filtering user input, RemoteAccess uses
          control files to control certain system functions such as
          network mail costing and message addressing macros. To
          summarize, control files add to your BBS by giving you even
          more control over your overall system.  Add these to your
          growing list of tools that allow you to customize your BBS.
          

          Editing Control Files
          ------------------------------------------------------------
          As mentioned earlier, control files may be edited using any
          ASCII text editor.  But why use a text editor when one is
          built into RACONFIG for you?  The Control File Manager
          contains an editor which is available whenever you select a
          control file from the pick-list menu.  This editor features
          an easy to use interface and supports a maximum of 8192
          lines.
          
          To edit a control file using RACONFIG:
          
          1)    Fire up RACONFIG:
          
                RACONFIG <Enter>
          
          2)    Select Manager and then select Ctl files.
          
          3)    Select the control file to be edited from the control
                file pick-list menu and press <ENTER>.


                                   - 214 -
          4)    Edit the file to suit your needs.  When finished,
                press "Esc".  You will be prompted whether or not you
                would like to save the changes made.
          
          The control file editor in RACONFIG is very versatile and
          supports many popular editing commands.  In addition, almost
          every command has an equivalent alternate command.  The
          commands supported are outlined in the following table.
          
          Command          Description             Alternate
          ------------------------------------------------------------
          <ESCAPE>         Quit
          BACKSPACE        BackSpace               CTRL-H
          HOME             Home cursor             CTRL-Q CTRL-S
          PAGE-UP          Page up                 CTRL-R
          PAGE-DOWN        Page down               CTRL-C
          UP               Cursor up               CTRL-E
          DOWN             Cursor down             CTRL-X
          LEFT             Cursor left             CTRL-S
          RIGHT            Cursor right            CTRL-D
          END              End of line             CTRL-Q CTRL-D
          INSERT           Toggle insert           CTRL-V
          DELETE           Delete character        CTRL-G
          CTRL-LEFT        Word left               CTRL-A
          CTRL-RIGHT       Word right              CTRL-F
          CTRL-P           Enter literal control
                           character
          CTRL-O CTRL-W    Toggle word wrap
          CTRL-T           Delete word to the
                           right of the cursor
          CTRL-Y           Delete current line
          CTRL-Q CTRL-Y    Delete from cursor
                           to end of line
          CTRL-END         End of screen           CTRL-Q CTRL-X
          CTRL-PAGE-DOWN   End of file             CTRL-Q CTRL-C
          CTRL-HOME        Top of screen           CTRL-Q CTRL-E
          CTRL-PAGE-UP     Top of file             CTRL-Q CTRL-R
          TAB              Tab                     CTRL-I
          ALT-R            Global reformat
          CTRL-B           Reformat paragraph
          CTRL-W           Scroll display up
          CTRL-Z           Scroll display down
          CTRL-O CTRL-I    Toggle auto-indent
          CTRL-Q CTRL-L    Restore last deleted
                           line
          
          Comments may be entered within a control file.  Comments
          contain information that is helpful to you.  They might be
          notes or header information that helps you maintain the
          format of a control file.  Comments are so-named because
          they are not interpretted by RemoteAccess.  To enter a
          textual comment, simply precede it with the semicolon ;


                                   - 215 -
          character. Then, any text on the same line following the
          semicolon is ignored when the file is read by RemoteAccess.
          For example, a NAMES.CTL file formatted with comments might
          look something like this:
          
             ; My NAMES.CTL file.  I have entered names of my
             ; friends here so that I can address messages to
             ; them more quickly.  The fields are separated by
             ; commas and are defined as follows:
             ;
             ; Field 1 : macro name
             ; Field 2 : full user name
             ; Field 3 : network address (0:0/0 is none)
             ; Field 4 : message subject
             ;
             Bruce,Bruce Morse,2:270/18,Hi Bruce!
             john,John Parlin,1:282/4021,Hi John!
          
          In the above example, the comment lines explain in detail
          the purpose of the file together with field information.  As
          you can see, this would be most helpful since the fields are
          documented right in the control file.
          

          CONTROL FILES LISTING

          Following is a list of control files used by RemoteAccess
          along with descriptions and usage examples for each file.


          BADFILES.CTL
          ------------------------------------------------------------
          This file is used to specify a list of filenames that users
          may not upload to your system.  Simply specify one filename
          per line (wildcard characters are valid).
          
          Example:
          
                *.GIF
                NORTON*.*
                COMMAND.COM
          
          In this example, filenames with a .GIF extension, filenames
          beginning with the word NORTON and the specific filename
          COMMAND.COM may not be uploaded.
          

          HANDLES.CTL
          ------------------------------------------------------------
          This file allows you to list strings of characters that are
          not allowed within user handles.  This file is referenced
          whenever the user's handle is changed.


                                   - 216 -
          Examples:
          
                Sysop
                Jack Daniels
                Hacker
          
          In the above example, users would not be allowed to enter
          handles that contain the character strings Sysop, Jack
          Daniels, or Hacker.  But you should also note that this
          would  prevent users from entering the handle Jack Danielson
          or Jim Hackerman since these handles contain embedded
          strings that have been disallowed.
          
          See also:  TRASHCAN.CTL
          

          NAMES.CTL
          ------------------------------------------------------------
          RemoteAccess allows you to assign short names to users you
          frequently send messages to.  During message entry, these
          short names act as macros which speed message addressing.
          This control file should contain one entry per line in the
          following format:
          
                  <short name>,<user name>,<address>[,<subject>]
          
          Where:  <short name> is the abbreviated name you wish to
                  assign values to.  For example, this might be a
                  user's first name, nickname, initials, etc.
          
                  <user name> is the full user name that the message
                  should be addressed to.
          
                  <address> is the 3-dimensional network address that
                  the message should be sent to.  If you are not a
                  member of a network, or you are creating a short
                  name for a local user, you can specify an address of
                  0:0/0.
          
                  <subject> is an optional parameter which, when
                  specified, will fill the subject field with the text
                  string specified.
          
          Take a look at this example entry:
          
                rahq,Bruce Morse,2:270/18,RemoteAccess...
          
          To use the short names feature using the above example,
          select a message area from which to send.  Then post a
          message using menu function type 27-"Post message".  When
          prompted to enter the name that this message should be
          addressed to, enter the short name preceeded by the asterisk


                                   - 217 -
          * character:
          
                To:  *rahq
          
          The message will be automatically addressed to Bruce Morse
          and the subject field will be filled with the string
          RemoteAccess...  If the message was entered in a NetMail
          area, it would be sent automatically to the network address
          2:270/18.
          

          NODECOST.CTL
          ------------------------------------------------------------
          This control file is used to specify the costs that are to
          be associated with NetMail messages sent from your system.
          For a complete explanation of the format of this file, refer
          to the Mail Networking chapter later in this manual.
          

          PHONENUM.CTL
          ------------------------------------------------------------
          Use this control file to prevent users from entering
          telephone numbers that you know to be invalid.
          
          Take a look at the following three-line example:
          
                00-
                555-
                -0000
          
          Like the HANDLES.CTL and TRASHCAN.CTL control files,
          RemoteAccess checks for embedded strings of characters when
          referencing this data in user telephone number entries.
          Therefore, while the first line would disallow telephone
          numbers beginning with 00- it would also conveniently
          disallow 800- and 900- telephone number entries since 00- is
          embedded in these numbers.

          Line two would disallow entries that contained 555-.  For
          example, a user would not be allowed to enter a telephone
          number of 612-555-1212.

          Line three would prevent users from entering a telephone
          number that ends in four zeros.


          PWDTRASH.CTL
          ------------------------------------------------------------
          This file allows you to specify a list of character strings
          that may not be contained in user passwords.  For example,
          to prevent users from entering the passwords SECRET, TEST,
          123456, or RED FIRETRUCK,  your PWDTRASH.CTL might look like


                                   - 218 -
          the following example:
          
                123456
                TEST
                SECRET
                FIRETRUCK
          
          Since RemoteAccess looks for embedded character strings, the
          password RED FIRETRUCK was disallowed simply by specifying
          the FIRETRUCK entry.
          

          TRASHCAN.CTL
          ------------------------------------------------------------
          Allows you to specify a list of names that users may not use
          to log-on to your system.  This file is the same as the
          HANDLES.CTL control file, except that it contains a list of
          character strings that may not be embedded in the user real
          names rather than their handle.
          
          Examples:
          
                Sysop
                Jack Daniels
                Hacker
          
          In the above example, users would not be allowed to enter
          names that contain the character strings Sysop, Jack
          Daniels, or Hacker.  But you should also note that this
          would  prevent users from entering the name Jack Danielson
          or Jim Hackerman since these names contain embedded strings
          that have been disallowed.
          

          VIP.CTL
          ------------------------------------------------------------
          This file allows you to specify a list of users who are to
          be considered Very Important People.  When a user who is
          listed in this file logs-on to your system, a short paging
          bell will sound at the local console.  The comment
          information (if any) contained in the user's record will
          also be displayed on the status bar.  The format of this
          file is the same as that of the TRASHCAN.CTL and HANDLES.CTL
          files.
          
          NOTE:  The local bell may be disabled by activating the ScrLck
          key.







                                   - 219 -
          Chapter 5
          User Administration
          *	
          *	
          *	
          *	
          The user database is possibly the most important
          database on your BBS.  It contains all the 
          information about each user's history, settings, and 
          vital security data.  This chapter details information 
          on editing and maintaining the user database as well 
          as the data contained in each user account record.










































                                   - 220 -
          NEW USER DEFAULTS

          In the Configuration chapter, we outlined individual features 
          and options and how to implement them.  Among these were 
          the defaults that are assigned to new users.  These defaults 
          are used to control access and set up new user accounts to take 
          advantage of menu items you may specifically assign to new 
          users.

          Once a new user has logged-on to your system, an account
          record is created and stored in the user database.  The new 
          user default values which you assigned in RACONFIG are 
          assigned to and stored in the new user's account.  For specific 
          information on new user defaults, see the following section in 
          RACONFIG and in the Configuration chapter:
          
                              Options > New Users
          

          USING REMOTEACCESS MANAGER

          The RemoteAccess Manager utility program is used to maintain
          both the user and file databases.  RAMGR.EXE resides in the
          system directory and may be executed by typing RAMGR
          followed by pressing <ENTER>.  When this utility is fired
          up, you are presented with a pick-list menu which allows you
          to select a number of options including Users. You can also
          fire up RAMGR in user administration mode directly by typing
          the command RAMGR  -U followed by pressing <ENTER>.  This
          method bypasses the initial pick-list menu and places you
          directly in the user administration portion of the program.

          In addition to the -U parameter, several other switches are
          supported.  They are:
          
             -B   Run in monochrome (black and white) mode.
          
             -N   Ingore any missing file area paths (normally RAMGR
                  will not allow you to enter a file area which has an
                  invalid path).
          
             -F   Edit files only (bypass main menu).
          
             -A   Auto-update mode (file editing).  Forces an
                  automatic update of all files when an area is
                  entered.
          
          Once in the user portion of RAMGR, you are presented a
          full-screen pick-list of user accounts from which to select.
          You can move the cursor-bar using any of the following keys:
          
          UP          Moves the cursor-bar up one user record.


                                   - 221 -
          DOWN        Moves the cursor-bar down one user record.
          
          PAGE-UP     Moves the cursor-bar up one screen page.

          PAGE-DOWN   Moves the cursor-bar down one screen page.
          
          HOME        Moves the cursor-bar to the first record in the
                      database.
          
          END         Moves the cursor-bar to the last record in the
                      database.
          
          Notice the command summary at the bottom of full-screen user
          pick-list display.  It indicates which additional commands
          can be executed from this screen.  Each of these commands
          will be explained below
          

          Modifying a User
          ============================================================
          Position the cursor-bar on the user you wish to modify and
          press <ENTER> to bring up the Edit Screen.  Move from field
          to field by pressing <ENTER>, changing the desired settings
          until you are satisfied with the changes.  Press <ESCAPE>
          when you are finished and enter "Y" or "N" at the Save
          changes? prompt.

          
          Finding a User
          ============================================================
          From the user pick-list display, you may search for a
          specific user by pressing ALT-F and entering all or part of
          the user name you wish to find.  If the user name is
          located, the cursor-bar will be positioned on the matched
          record.

          
          Adding a User
          ============================================================
          Users are typically added automatically when a new user
          logs-on to your system.  However, you can add users
          manually by pressing INSERT from the user pick-list display.
          This brings up the edit screen with all fields set to blank
          values.  Enter the user data as desired.  When you are
          finished, press <ESCAPE> and answer "Y" or "N" in response
          to the "Save changes?" prompt.
          







                                   - 222 -
          Deleting a User
          ============================================================
          Users may be deleted by positioning the cursor-bar on the
          desired user record and pressing the DELETE key.  After
          doing this, you will notice a tag mark in the "Del" column
          for that user record.  This shows that the user record has
          been marked for deletion.  Records marked for deletion are
          physically removed (or purged) from the database by RAUSER
          which is discussed later in this chapter.

          Users marked for deletion may be unmarked using the same
          process, provided the user record has not been purged by
          RAUSER.

          
          Account Record Fields
          ============================================================
          This section describes the fields and options contained in
          each user record.  Select a user from the pick-list display
          and press <ENTER> to bring up the edit screen.
          
          Field Name         Description
          ------------------------------------------------------------
          Name               User's full name (35 characters).
          Handle             User's registered handle (35 characters).
          Location           Where the user is calling from.
          Password           User's secret password.  This is stored
                             as a CRC value and cannot be viewed.
          Security           Security level (1-65535, 0 to lock out).
          Home#              Home / voice telephone number.
          Business#          Business /data telephone number.
          A Flags            A flag settings (- or x).
          B Flags            B flag settings (- or x).
          C Flags            C flag settings (- or x).
          D Flags            D flag settings (- or x).
          Credit             Number of credits remaining.
          Pending            Number of credits pending deduction.
          Group              Group number assigned to.
          Sex                Gender (male or female).
          Fwd                User name (if any) that messages are
                             forwarded to.
          Addr1              Address line one.
          Addr2              Address line two.
          Addr3              Address line three.
          Comnt              Information comment (can contain
                             anything).
          Last time          Time of last call.
          Last date          Date of last call.
          1st date           Date of first call.
          Sub date           Subscription expiration date.
          Birthdate          Date of birth.
          Time used today    Number of minutes used on Last date.


                                   - 223 -
          Screen length      Length of screen display.
          Last pwd change    Number of calls since last password
                             change.
          Last DOB check     Number of calls since last date of birth
                             verification check.
          Date format        Date entry and display format.
          Flags              Flag settings for this user.  For
                             information on access flags, see the
                             Configuration chapter.
          Uploads            Total number of files uploaded.
          Dnloads            Total number of files downloaded.
          UploadK            Total kilobytes of all files uploaded.
          DnloadK            Total kilobytes of all files downloaded.
          TodayK             Total kilobytes of all files downloaded
                             today.
          Messages posted    Total number of messages posted.
          High msg read      Highest message number read.
          Number of calls    Total number of calls user has made.
          Last msg area      Last message area the user had selected.
          Last file area     Last file area the user had selected.
          Last file group    Last file group the user had selected.
          Last msg group     Last message group the user had selected.
          Protocol           Default file transfer protocol user has
                             selected (shows the command character or
                             @ if no protocol is selected).
          Language           Language number selected.
          
          
          Option Flag Settings
          ------------------------------------------------------------
          When the cursor is positioned on the Flags field and <ENTER>
          is pressed, a new pick-list menu is displayed which offers a
          means of modifying a user's individual option flag settings.
          These settings have two possible settings; either "Y" or "N"
          (on or off).  An example display is shown below followed by
          an explanation of each of the flags.
           
          Field Name          Description
          ------------------------------------------------------------
          Deleted             Is the user marked for deletion?
          Clear screen        Send clear screen codes?
          Page pausing        Pause at the end of each screen page?
          ANSI graphics       Send ANSI codes?
          AVATAR graphics     Send AVATAR codes?
          No-kill             Never delete this user during a pack?
          Xfer priority       Ignore download restrictions?
          Full screen editor  Use the full screen message editor?
          Quiet mode          Ignore on-line messages from other
                              users?
          Hot-keys            Use hot-keys?
          Full screen viewer  Use full screen message reader?
          Hidden              Hidden from the user and other caller


                                   - 224 -
                              lists?
          Page priority       Allowed to override paging restrictions?
          No new echomail     Exclude EchoMail from mail-box scans?
          Guest               Is this a guest account record?
          Post bill           Allow user to accrue a negative credit
                              balance?
          Selected mail only  Check for new mail only in message
                              areas the user has selected?
          
          
          Guest Accounts
          ============================================================
          RemoteAccess supports the use of Guest Accounts which allow
          callers to log-on to your system without having to enter
          actual log-on information.  This enables you to allow users
          to log-on using a generic user account for whatever purposes
          you desire. One example use of guest accounts is to allow
          callers to log-on in order to download certain files,
          without having to become a member user of your BBS.

          To enable this feature, simply create a new user record
          (using RAMGR) with a name/handle of Guest (or whatever other
          name you choose), and enable the Guest flag in the user
          account record.  A guest account record has log-on defaults
          set to those in the user record, so it's probably wise to
          disable AVATAR, ANSI and any other capabilities that the
          simplest terminal program might not have. {+} Registered only.

          Each time a caller logs-on using a guest account, the
          following conditions apply:
          
          *	The Time Used Today and K Downloaded Today fields 
                are reset to zero.

          *     A guest may change terminal display parameters (ANSI,
                AVATAR, screen length, etc.) but these changes are
                never saved permanently.

          *     A guest may not modify the password for the guest
                account.

          *     A guest may log-on to more than one node at the same
                time.
          
          NOTE:  It is probably a good idea to enable the No-kill flag
          for Guest accounts to prevent deletion during user
          maintenance tasks performed by RAUSER.
          






                                   - 225 -
          RAUSER

          RAUSER.EXE is the utility used to perform maintenance
          functions on the user database files.  Not only will it
          remove users marked for deletion, it can also delete users
          that have not called your BBS for a certain number of days.
          It is also used to sort the database in order of security
          level and surname.  RAUSER may be run from any directory and
          will automatically locate system and user files.  An
          activity summary will be inserted into your system log file
          as well.  The following command-line parameters are excepted
          by RAUSER:
          
             -P     Pack the user database files.  This will
                    physically remove all records that are marked for
                    deletion.
          
             -S     Sort users in order of security level and surname.
          
             -D[n]  Delete users who have not called for "n" days.  This
                    parameter will also force a pack operation.
          
             -V     Verbose logging.  Lists any users that were
                    deleted during a pack operation inserting the list
                    in the system log.

             -R     Update account balances according to the FlexTime
                    settings in the Limits section of RACONFIG.
          
             -M[s]  Specify the maximum security level of users to be
                    affected by a pack or delete operation.  For
                    example, if you only wish to delete old users who
                    have not called for 100 days, but wish to only
                    exempt all users with security level 50 and above
                    from being deleted, you should use the
                    command-line:
          
                                    RAUSER -D100 -M50
















                                   - 226 -
          Chapter 6
          Message Database Administration
          *	
          *	
          *	
          *	
          In the Configuration chapter, you learned how to create the
          message areas used on your BBS.  You also learned about the
          two database formats that RemoteAccess supports.  In this
          chapter, you'll cover the specifications of the database as
          well as the materials necessary to maintain it.











































                                   - 227 -
          SPECIFICATIONS

          The message system used by RemoteAccess consists of a
          structured database that allows a great deal of flexibility
          and speed.  As a Sysop, you may already have your message
          database laid out in your head or even sketched out on
          paper. If so, we commend you on your ambition though we
          strongly encourage you to read this section before you dive
          in so that you have a better understanding of how it all
          works.

          RemoteAccess supports two types of message database formats;
          JAM and Hudson.  Your message database may consist solely of
          one type, or it may be a combination of both JAM and Hudson
          formats.

          In the Configuration chapter, we wrote about the history of
          the two types of supported formats.  If you skipped that
          section or would like to refresh your memory, see the
          RACONFIG section:
          
                      Manager > Message Areas > Area Type
          
          Knowing the capabilities of each of the supported message
          database formats, you will be able to make an educated
          decision on which format is right for you.  Our
          recommendation is that if you do not require the Hudson
          format, use JAM.
          
          
          JAM Database Files
          ============================================================
          The overall JAM database consists of several small
          databases; one for each JAM message area.  Each JAM message
          area is stored in its own subdirectory, each containing 4
          database files.  Each of the filenames consists of the base
          message area name and a specific filename extension.  For
          example, if a JAM message area name is defined as
          C:\RA\MSG\PUBLIC in the JAMbase field of the message area
          configuration, the filenames stored in that particular area
          would be PUBLIC.*.  These are:
          
          Filename    Description
          ------------------------------------------------------------
          .JDX        This file holds the index to all of the messages
                      held in the particular message area.
          
          .JHR        This file contains the message headers of all
                      messages in the area.
          
          .JDT        This file contains the actual message text of
                      all messages in the area.


                                   - 228 -
          .JLR        This file contains one record for each user on a
                      system and is used to keep track of the last
                      message number that each user has read in the
                      particular message area.
          
          
          Hudson Database Files
          ============================================================
          Since all Hudson message areas are stored in one central
          database, there is only one subdirectory which holds all
          related files.  This subdirectory is specified in RACONFIG:
          
                          System > Paths > Msg Base
          
          The database stored in this subdirectory is heavily-indexed
          for fast access.  The database is composed of several files
          which are outlined below:
          
          Filename        Description
          ------------------------------------------------------------
          LASTREAD.BBS    This file contains one record for each user
                          on a system and is used to keep track of the
                          last message number each user has read in
                          any given message area.
          
          MSGHDR.BBS      This file holds all message and message
                          header information except for the actual
                          message text and is the primary reference
                          file.  Due to the amount of information
                          present it can grow to be quite large.
                          Therefore, smaller index files are usually
                          used to locate a particular message where
                          the MSGHDR.BBS can be consulted for greater
                          detail.
           
          MSGIDX.BBS      This is the primary searching index-file. It
                          is very small, and therefore any search
                          through this file is extremely fast.  It is
                          referenced mainly to:
          
                          *     Find a particular message number.
          
                          *     Find the next message in a particular
                                message area.

                          *     Find the next active message in any
                                area.
          
          MSGINFO.BBS     This file contains one record of general
                          information about the entire Hudson
                          database.  This provides RemoteAccess with a
                          database information summary without the


                                   - 229 -
                          requirement of scanning the enitre
                          message-base.  This file holds information
                          such as the lowest and highest message
                          numbers and total number of messages (to
                          name a few).
          
          MSGTOIDX.BBS    This is an index file used to perform a
                          mail-box check for a particular user as
                          quickly as possible.
          
          MSGTXT.BBS      This file contains only the textual portions
                          of all messages in the message-base.
          
          
          Something in Common
          ============================================================
          Each type of message database format allows fast searches
          without the need for memory-resident programs such as
          BTRIEVE which is used in conjunction with some BBS software
          packages.

          RemoteAccess maintains both types of message database
          formats through the use of one utility program; RAMSG.
          Whether using one message database format or both, RAMSG is
          the only maintenance utility required.  We'll explain more
          about RAMSG later in this chapter.
          

          LIMITATIONS

          Every database structure has its limitations.  Due to the
          Hudson database file structures, there is a maximum physical
          limit on the number of messages it can contain.  As a whole,
          the maximum number of messages supported by the Hudson
          format is approximately 16,000.

          There is also a limitation on the value of the highest
          numbered message, which may never exceed 32,767.  It is good
          practice to regularly renumber the message database to
          ensure that this limit is never exceeded.  This is done
          using the RAMSG maintenance utility outlined in the next
          section.

          The JAM database, on the other hand, is limited only by the
          amount of free disk space available.  Each message area is
          limited to just over 2 billion messages, though we doubt you
          will encounter this limitation.
          






                                   - 230 -
          MAINTENANCE

          RAMSG is the RemoteAccess message database maintenance
          utility.  It's primary function is to trim the number of
          messages in the database, keeping it at a manageable level.
          RACONFIG provides the ability to specify thresholds for each
          individual message area.  RAMSG uses this information
          (stored in MESSAGES.RA) to determine what messages should be
          deleted and when.  For more information on setting message
          retention thresholds, see RACONFIG:
          
              Manager > Msg Areas > Days Old, Days Rcvd, Max Msgs
          
          If any of the threshold values of the fields is set to zero,
          RAMSG ignores that option.  For example, if the Max Msgs
          field is set to zero, RAMSG will not delete messages based
          on the number of messages contained in that area.  You
          should ensure that the threshold fields are configured prior
          to running RAMSG to avoid inadvertently deleting messages.

          RAMSG will also attempt to repair damaged message databases
          using a number of integrity checks.  If RAMSG detects that
          the message database is damaged in any way, it will
          automatically re-create index files (even if they are
          missing) and warn of possible problems.

          All of RAMSG's activities are recorded in the system log.
          Some options are provided for statistical information.
          Examine the following example of a simple RAMSG PACK
          operation:
          
          ----------  Tue 06 Apr 93, RAMSG 2.00 Pack
          # 12:38:08  2 of 2541 records are deleted
          # 12:38:09  Writing new message base files
          # 12:38:27  Space saved:  1732 bytes, 0%
          
          
          Running RAMSG
          ============================================================
          Running RAMSG without specifying any switches on the
          command-line, results in the following help display.
          
          RAMSG;  RemoteAccess 2.52 Message maintenance utility
                  Copyright (C) 1996 Gerard J. van der Land.
                  All rights reserved.
          
          Usage:
          
             RAMSG <command> [parameters]
          
          Commands:
          


                                   - 231 -
             Index	Create new index files
             Link	Create/update reply chains and clean subjects
             Pack	Pack and renumber the message base
             Purge	Delete messages according to age or number
          
          Run 'RAMSG <command> ?' to get information about
          [parameters].
          
          When invoking RAMSG from the command-line, supply the
          operation command followed by any optional parameters. Each
          of the operation commands is explained in the following
          pages along with any optional parameters it accepts.
          
          
          INDEX
          ------------------------------------------------------------
          Usage:  RAMSG INDEX [parameters]
          
          Creates new index files (MSGIDX.BBS, MSGTOIDX.BBS and
          MSGINFO.BBS for Hudson format message databases and *.JDX
          for JAM message databases).  Optionally deletes crosslinked
          messages and messages in invalid areas.  The Renumber
          parameter enables you to renumber all messages if PACK is
          unable to, however does not update user LastRead pointers.
          
          Parameters:
          
          -Delete	Delete crosslinked messages (Hudson only).
          
          -Recover	Delete messages in invalid areas (Hudson only).
          
          -Renumber	Renumber message numbers.
          
          
          LINK
          ------------------------------------------------------------
          Usage:  RAMSG LINK [parameters]
          
          Create/update or remove reply chains in all areas.  Reply
          chains are messages that are linked together, usually by
          subject matter.
          
          Parameters:
          
          -Clean        Remove "Re:" and "(R)" references from message
                        subjects during operation.  These are inserted
                        by some message processors to denote messages
                        which are a part of a reply chain or message
                        thread.
          
          -Remove       Remove all reply chains.  This unlinks all
                        existing message threads.


                                   - 232 -
          PACK
          ------------------------------------------------------------
          Usage:  RAMSG PACK [parameters]
          
          Packs the message database files by removing deleted 
          messages and (optionally) renumbering messages.  You can 
          optionally specify to purge messages.
          
          Parameters:
          
          -Backup       Keep the original database files as a backup
                        (.BAK).
          
          -Force        Force overwriting of existing database files.
                        Use this option when there is not enough free
                        disk space to create backup files during
                        operations (Hudson only).
          
          -Overwrite    Overwrite existing files only if there is not
                        enough free disk space to create backup files
                        during operations (Hudson only).
          
          -Renumber     Renumber messages (updates reply chains and
                        LastRead pointers as well.
          
          -Purge        Delete messages based on the threshold
                        information contained in MESSAGES.RA.
          
          -Delete	Delete any crosslinked messages (Hudson only).
          
          -Recover	Delete messages in invalid areas (Hudson only).
          

          PURGE
          ------------------------------------------------------------
          Usage:  RAMSG PURGE
          
          Deletes messages according to age and number based on
          threshold information stored in MESSAGES.RA.  This operation
          accepts no optional parameters.
          
          
          Examples:

          The following examples illustrate how RAMSG is used in most
          popular installations.
          
                RAMSG INDEX -Delete -Recover
          
          Creates new database index files, deletes crosslinked
          messages and messages in invalid areas and also renumbers
          the database.


                                   - 233 -
                RAMSG LINK -Clean
          
          Creates and/or updates the reply chains in all message
          areas, removing "Re:" and "(R)" references.
          
                RAMSG PACK -Overwrite -Renumber -Purge -Delete
          
          Removes deleted messages from the database.  Also deletes
          messages based on the threshold criteria stored in
          MESSAGES.RA.  Deletes crosslinked messages and renumbers the
          database.  Overwrites existing database files only if there
          is not enough free disk space to make backup files.
          
          
          Errorlevels
          ------------------------------------------------------------
          RAMSG returns an errorlevel after each operation to allow
          management within a batch file.
          
          Errorlevel   Condition
          ------------------------------------------------------------
          0            Successful completion.
          
          3            Fatal error detected by start up code.

          251          Configuration file version ID mismatch.
          
          252          Incorrect DOS version.
          
          253          Insufficient disk space available.
          
          254          Insufficient memory available.
          
          255          Disk error or missing configuration data.




















                                   - 234 -
          Chapter 7
          File Database Administration
          *	
          *	
          *	
          *	
          Database files used by RemoteAccess can be processed faster
          than text files used by other BBS packages. Databases are
          used to quicken response time and add capabilities and
          flexibility to the system.  This chapter details the
          specifications of the file database system as well as how
          this system is administrated and maintained.










































                                   - 235 -
          ABOUT THE FILE DATABASE

          The file database system supports up to 65535 file areas
          with each area containing up to 65535 database entries.  The
          overall file list size supported is 2 gigabytes.  The
          overall database structure provides fast file operations and
          offers specialized support through external utility programs
          which take advantage of the structured database.

          The first step in setting up your file system is to create
          the desired file areas and/or file groups using RACONFIG.
          For specific information, see the Configuration chapter and
          these RACONFIG sections:
          
                              Manager > File Areas
                              Manager > File Groups

          Once file groups (optional) and individual areas have been
          created, you may take advantage of several utility programs
          included which are specifically designed to make
          administration an easy task.

          Previous versions used a text-file-based file system which
          was centered around a FILES.BBS text file which contained
          filenames and descriptions for each file in a given area.
          One of these files existed in each area that was configured.
          This system was developed early in the BBS evolution process
          and was considered an acceptable standard.  However, it does
          not lend itself well to fast, efficient file operations.
          RemoteAccess uses the database for all aspects of file
          retrieval.  The actual files themselves are not accessed
          until they are downloaded or otherwise processed by specific
          menu commands.  This means that operations such as file
          searches realize an increase in speed of up to several
          hundred percent, especially when using CD-ROM file areas.

          By using a file database listing, more information about
          each file can be stored and used by the BBS.  In text-based
          file systems, this is usually limited to information
          provided by the operating system such as filename, date, and
          size.  That's not a lot to go on, is it?  By using a
          structured database, even more information is stored such as
          how many times a file has been downloaded, who uploaded the
          file, the date the file was uploaded, download credit cost
          and much more.

          This means that if a file is on disk but not in the
          database, RemoteAccess will be completely unaware of its
          existence.  It is therefore important that your database be
          kept up to date. The utilities described in this chapter
          will help you do just that.
          


                                   - 236 -
          Administration Utilities
          ============================================================
          In addition to the functions in RACONFIG which allow you to
          create and modify file areas and groups, three external
          utilities are also included which provide administrative
          functions such as converting existing text-based file
          systems and maintaining the database.  Each of these
          utilities is outlined separately in this section.
          
          
          GENFBASE.EXE
          ------------------------------------------------------------
          This utility provides a means of upgrading from a FILES.BBS
          file system to the current database format.  It is likely
          that you will only need to use this program once when
          upgrading RemoteAccess, although it is also useful when
          adding file database entries for new CD-ROMs.

          This program is used to generate the actual database files
          from one or more conventional FILES.BBS format lists.  It
          accepts no command-line parameters, and prompts for
          operational parameters during actual runtime operations.
          Any file areas that are processed are first deleted from the
          file database if they already exist.  The areas are then
          rebuilt using the parameters you supply during runtime
          operations.

          The following checklist procedure outlines the prompts you
          must answer when running GENFBASE.  Each prompt is given
          along with an explanation of the information being prompted
          for.

          To convert one or more existing FILES.BBS file areas to the
          new file database format, or to add CD-ROM areas to the
          database:
          
          1)    Define the file areas to be added/processed using
                RACONFIG, entering the proper directory paths to the
                areas to be processed.
          
          2)    Change to the RemoteAccess system directory.
          
          3)    Execute GENFBASE.EXE
          
          4)    Previous versions of RemoteAccess used a FILES.CTL
                file to specify files that are free and/or password
                protected.  If this file exists, it will be processed
                in order to maintain the settings it contains.  For
                example, if you specified that all files in a given
                directory were free files, GENFBASE will maintain this
                setting when the area is processed.
          


                                   - 237 -
          5)    Next, GENFBASE will ask a series of questions to
                determine the operational parameters it must use.
                Each of the questions are explained below:

          +---------------------------------------------------------+
          | Start at area# :                                        |
          +---------------------------------------------------------+

          Enter the first file area number to be processed.  For
          example, if you have areas 1 through 10 defined and would
          like to process all areas, a value of 1 would be entered as
          the starting area number.
          
          +---------------------------------------------------------+
          | Stop at area# :                                         |
          +---------------------------------------------------------+

          Enter the last file area number to be processed.  For
          example, if you have areas 1 through 10 defined and would
          like to process all areas, a value of 10 would be entered as
          the area number to stop at.
          
          +---------------------------------------------------------+
          | Name of file list :                                     |
          +---------------------------------------------------------+

          If all of the file areas to be processed contain a FILES.BBS
          list in each of the area directories, press <ENTER> to
          accept the default setting of FILES.BBS.  If the areas to be
          processed are CD-ROM or other areas, continue reading to
          determine the setting needed in this field.

          There are a variety of CD-ROMS available for use on BBS.
          Some of these include a FILES.BBS file list inside each file
          area directory while others contain a separate directory
          which holds all file lists.  GENFBASE can accommodate either
          variety through the use of this parameter.

          If the CD-ROM file areas being imported contain a file
          listing called FILES.BBS within the same directory, press
          <ENTER> to select the default FILES.BBS setting.  This will
          instruct GENFBASE to process a file list called FILES.BBS
          located in the same directory as the files being imported.
          Most new CD-ROMs use this format.

          If the file lists reside in the same directories as the
          files being imported but are not called FILES.BBS, enter the
          name of the file list.  Wildcard characters are valid within
          the filename.  Additionally, specifying the @ macro will
          cause the file area number being processed to be expanded in
          its place.



                                   - 238 -
          For example, if each of the file area directories contains a
          file list called DIRnn (where nn is the area number), and
          you have built your file areas to match the file area
          numbers on the CD-ROM (i.e. CD-ROM area 1 is configured as
          RemoteAccess file area 1) you could enter:
          
                                     DIR@

          On the other hand, if each of the file area directories
          contains a file list called DIRnn but your RemoteAccess file
          area numbers do not match the CD-ROM area numbers, you can
          use a wildcard specification.  For example, if the CD-ROM
          file area is number 37 and the file list is called DIR37,
          you could enter:
          
                                     DIR*
          
          If the CD-ROM contains a separate directory which holds all
          file lists, you should enter the filename with a path (for
          example, the CD-ROM contains a directory called \TEXT which
          holds file lists named DIR1 through DIR50).  If this is the
          case, then it is important to note that if your RemoteAccess
          file area numbers do not match the CD-ROM file area numbers,
          each file area being imported must be processed individually
          (i.e. you cannot import a range of areas in this scenario).
          The following example scenarios illustrate this.
          
          Scenario #1
          ------------------------------------------------------------
          Conditions:

          1.    Your CD-ROM contains file areas numbered 1 through 50.
          
          2.    The file lists are contained in one directory called
                \TEXT.
          
          3.	File lists are named DIR1 through DIR50.
          
          4.    Your RemoteAccess file areas are built to match the
                CD-ROM file areas (i.e. RemoteAccess file area number
                1 points to the CD-ROM directory for CD-ROM file area
                number 1).
          
          Explanation:

          In this scenario, you can import a range of file areas.  You
          should enter the path and filename of the file lists using
          the @ macro.  For example:
          
                                 E:\TEXT\DIR@
          
          Then, when GENFBASE is importing file area 1, it will


                                   - 239 -
          process the file list called DIR1 in the \TEXT directory on
          the CD-ROM (drive E: in this example).
          
          
          
          Scenario #2
          ------------------------------------------------------------
          Conditions:

          1.	Your CD-ROM contains file areas numbered 1 through 50.  
          
          2.    The file lists are contained in one directory called
                \TEXT.
          
          3.	File lists are named DIR1 through DIR50.
          
          4.    Your RemoteAccess file areas are not built to match
                the CD-ROM file areas (i.e. RemoteAccess file area
                number 100 points to the CD-ROM directory for CD-ROM
                file area number 1).
          
          Explanation:

          In this scenario, you cannot import a range of file areas.
          You should process each area individually, entering the full
          path and filename of the corresponding file list.  For
          example, if you are importing RemoteAccess file area number
          100 which points to CD-ROM file area number 1, enter:
          
                                 E:\TEXT\DIR1
          
          Then, when GENFBASE is importing file area 100, it will
          process the file list called DIR1 in the \TEXT directory on
          the CD-ROM (drive E: in this example).
          
          The flexibility of this parameter will allow you to import
          CD-ROM file areas quickly and easily.
          
          +---------------------------------------------------------+
          | Do you have file download counters (y,N)?               |
          +---------------------------------------------------------+
          
          Some third party utility programs and file transfer doors
          provided counters embedded in file descriptions which
          provided a means of indicating how many times a file has
          been downloaded.  If the file descriptions contained in the
          file lists to be processed include such counters, answer Y
          to this question.
          
          +---------------------------------------------------------+
          | Counter column offset in FILES.BBS :                    |
          +---------------------------------------------------------+


                                   - 240 -
          If you answered Y to the previous question, GENFBASE will
          need to know the starting column number for download
          counters.  This should not be the starting column of any
          characters such as brackets or parenthesis that might
          surround the counter.  Instead, it must be the column number
          where the actual counter number starts.  GENFBASE will read
          the existing download counters starting at the column number
          specified, up to the next non-numeric character.  The
          existing download counters will then be imported into the
          file database.
          
          +---------------------------------------------------------+
          | If you have CD-ROM areas, do they have download         |
          | counters (y,N)?                                         |
          +---------------------------------------------------------+

          If you indicated that you do have file download counters,
          GENFBASE will ask if you also have download counters in any
          CD-ROM areas that are to be processed.  If there are CD-ROM
          areas included in the range of areas to be processed, and
          the file lists associated with these areas contain download
          counters, answer "Y" to this question.
          
          NOTE: If you are importing areas which reside both on a hard
          disk and a CD-ROM, OR all areas to be processed do not
          contain download counters, you should import these areas
          separately.  Additionally, you should not import a range of
          areas that has download counters which start at varying
          column positions.  In other words, batch import "like" areas
          only.
          
          +---------------------------------------------------------+
          | Do you have file descriptions which contain CR/LFs in   |
          | FILES.BBS (y,N)?                                        |
          +---------------------------------------------------------+

          Your answer to this question will determine how file list
          lines beginning with an indent will be processed.
          Generally, indented lines are considered to be comment lines
          which are not associated with a filename or description.
          But some external file transfer doors and most CD-ROM file
          lists use multiple-line file descriptions which begin with
          an indented line.  Therefore, GENFBASE must be able to
          distinguish between comment lines and description lines that
          begin with indents.

          For example, a file listing that uses this format might look
          like this:
          
            MYFILE.ZIP  This is a filename which contains
             more than one description line.  Notice that
             the additional lines each begin with an


                                   - 241 -
             indent.
          
          Or, it might look like this:

            EA150.ZIP     167733  05-01-93  Game door for RemoteAccess
                                          | that is a blast to play.

          If the file lists that are to be processed contain this
          format, or use multiple-line file descriptions which begin
          with the + or | characters, answer "Y" to this question.
          When this is the case, GENFBASE will process lines beginning
          with an indent as part of the previous file description up
          to the next blank line. Therefore, comment lines are still
          valid as long as they are preceded by a blank line (which is
          generally the case). If the file descriptions in the
          listings to be processed do not use this format, answer "N"
          to this question.
          
          NOTE:  GENFBASE automatically strips leading + and |
          characters from multiple-line file descriptions.  If your
          existing file list format includes these characters, there
          is no need to remove them prior to processing.
          
          +---------------------------------------------------------+
          | Description column offset (0 for FILES.BBS format) :    |
          +---------------------------------------------------------+
          
          Most conventional file listings contain the filename
          followed by a space character and the file description.
          However, in some cases (such as in cases where file download
          counters are used as well as in CD-ROM file lists) the
          description of the file might actually start at a specific
          column number.  If this is the case, enter the starting
          column number of the actual file description.  Enter 0 (the
          default) if you are converting a conventional FILES.BBS
          listing.
          
          +---------------------------------------------------------+
          | Expand wildcards (y,N)?                                 |
          +---------------------------------------------------------+
          
          Conventional FILES.BBS listings allowed the use of wildcard
          characters within the filename.  Then, when a file list was
          displayed, all files in the directory path that matched the
          wildcard specification were displayed.

          If you answer "Y" to this question, GENFBASE will import all
          files that match any wildcard specifications that are found,
          appending the same file description to each match located.

          If you answer "N" to this question, GENFBASE will import the
          single filename and wildcard specification along with the


                                   - 242 -
          associated description.  Then, when the file list is
          displayed by RemoteAccess, a dynamic real-time search is
          performed in the specified directory path for filenames
          which match the wildcard specification.
          
          6)    Upon answering the last question, GENFBASE will begin
                processing operations by first deleting any existing
                file database information for the areas to be
                processed.  New database files will be built to
                replace any deleted files using the parameters you
                supplied.
          
          This process may be repeated at any time for any area for
          which a file list exists.  Additionally, FILES.BBS lists may
          be generated for any or all areas using the RAFILE utility
          discussed later in this section.
          
          
          RAFILE.EXE
          ============================================================
          RAFILE is the file database batch maintenance utility.  It
          is completely command-line driven and provides numerous
          functions designed to assist you in maintaining and
          administrating your file database system.  Since no
          interaction is required once a command-line is passed to
          RAFILE, any of its functions may be performed from within
          your BBS batch file.

          To list a summary of command-line parameters accepted by
          RAFILE, enter "RAFILE ?" followed by pressing <ENTER>.  The
          following information will appear on your display:
          
            ADD      <area#> <name> [uploader_name] [description]
            INDEX    [area#]
            CLEAN    [area#] [/KM]
            COMPRESS [area#]
            EXPORT   [area#] [output file]
            IMPORT   [area#] [input file] [/ERASE] [/Uuploader_name]
            KILL     <filespec> [area#]
            LOCK     <filespec> [area#]
            UNLOCK   <filespec> [area#]
            FILELIST <output file> [area#] [/Ssecurity] [/Ddays old]
                     [/Bbanner] [/Ffooter] [/NOHDR] [/7BIT] [/FORMF]
            SORT     [area#] [DATE] [REVERSE] (default=NAME,FORWARD)
            ADOPT    <filespec> [area#]
            UPDATE   <filespec> [area#] [TOUCH|TOUCHMOD]
            REARC    [area#]
          
          Refer to this display for usage syntax throughout this
          section.  Parameters enclosed in "[" and "]" are optional
          while parameters enclosed in "<" and ">" are required.  If
          an area# of zero (or no area number) is specified, RAFILE


                                   - 243 -
          will process all areas.  Wildcards are valid in all
          <filespec> parameters.

          It is possible to process multiple, specific file areas in
          one pass.  There are two steps required to do this.  First,
          create a text file which contains the areas you wish to
          process.  The area numbers may be separated by spaces or
          commas, and a range of areas may be specified by inserting a
          "-" character between two numbers.  Examine the following
          sample file.
          
               Filename:  AREA.LST
          
               1 3 5 10
               15-23 31-54 57 60 62
          
          To specify all areas within a specific group, prefix the
          area number with the g character.  For example, the line 1 2
          3 G5 9 would process file areas 1, 2, 3, 9 and every area in
          group 5.  This format is also valid on the command-line.

          The second step is to specify the name of this text file on
          the RAFILE command-line in place of the area number.  You
          must precede the filename with the @ character.  For
          example, to use our example AREA.LST file to create a master
          file list for those areas, you might use the command-line:
          
                   RAFILE FILELIST MASTER.LST @AREA.LST
           
          NOTE:  RAFILE will not process any area that is currently in
          use by RemoteAccess or RAMGR in order to avoid any possible
          conflicts.
          
          
          RAFILE Command-line Parameter Descriptions
          ============================================================
          The following listing describes each command-line parameter
          that RAFILE accepts.
          
          ADD   <area#> <name> [uploader_name] [description].
          ------------------------------------------------------------

          Simply adds a new file to the database.  This is like a
          local upload.
          
          Example:
          
            "RAFILE ADD 1 C:\DL\MFILE.ARJ Bruce Morse This is a
             program to examine and verify your database."
          
          This would add the file MFILE.ARJ located in the C:\DL
          directory to file area 1.  The uploader's name will be set


                                   - 244 -
          to Bruce Morse. The remaining text will be added to the
          description of the file.
          

          ADOPT <filespec> [area#]
          ------------------------------------------------------------
          Add all matching files to the database in the specified area
          that are not already in the database.  This allows you to
          add files to the database directly from the DOS
          command-line.
          
          Example:
          
                RAFILE ADOPT *.* 100
          
          Adopts all files in the directory for file area 100 which
          are not already in the database.
          

          INDEX	[area#]
          ------------------------------------------------------------
          Regenerate the quick index file for the specified area.
          This is usually only used if the index becomes corrupted.
          If no area number is specified, all areas are processed.
          
          Example:
          
          	RAFILE INDEX 
          
          Regenerates the quick index file for all areas (since no
          area number was specified on the command-line).
          

          CLEAN	[area#] [/KM]
          ------------------------------------------------------------
          Kills and/or moves files from the database (and on disk)
          based on the threshold information stored for each file area
          in RACONFIG.  Refer to the individual file area settings:
          DL days, FD days and MoveArea in RACONFIG:
          
                             Manger > File Areas
          
          This also performs a COMPRESS operation. The optional /KM
          switch will cause all file entries marked a MISSING to be
          removed from the database.  If no area number is specified,
          all areas are processed.
          
          Example:
          
                RAFILE CLEAN 10 /KM
          
          Removes or moves files from file area 10 based on the DL


                                   - 245 -
          days, FD days and MoveArea settings assigned to that area.
          Additionally, any missing files are removed from the
          database.
          
          NOTE:  RAFILE will never remove comments from the file
          database.
          
          
          COMPRESS	[area#]
          ------------------------------------------------------------
          Optimizes the database files and removes deleted entries.
          This function is also performed whenever the CLEAN operation
          is executed.
          

          EXPORT	[area#] [output_file]
          ------------------------------------------------------------
          Generates a conventional FILES.BBS listing for the specified
          area in the actual file directory unless a full path and
          output filename is specified.  If no area number is
          specified, all areas are processed.
          
          Examples:
          
                RAFILE EXPORT
          
          Creates a FILES.BBS file listing in each file area
          directory.
          
                RAFILE EXPORT 100 C:\DL\MYFILE.TXT
          
          Creates a file listing for area 100 called MYFILE.TXT which
          is written in the C:\DL directory.
          

          IMPORT	[area#] [input_file] [/ERASE] /Uuploader_name]
          ------------------------------------------------------------
          Imports files (and their descriptions) from FILES.BBS in the
          file directory (or another input file, if specified) into
          the database.  The /ERASE switch will kill the input file
          after the import has been completed.  All imported files
          will have their upload date set to the current date to make
          them appear as new.  The Uploader field for each imported
          file will be sent to the Sysop name *as defined in RACONFIG)
          unless overridden with the optional /U parameter.
          
          NOTE:  When specifying an alternate Uploader_Name it is
          important to note that any spaces in the name must be
          substituted with the underscore "_" character.
          
          Examples:
          


                                   - 246 -
                RAFILE IMPORT 10
          
          Imports the file list FILES.BBS from the directory path for
          area 10, setting the uploader name to Sysop since none was
          specified on the command-line.
          
                RAFILE IMPORT 10 A:\FILE.LST /UJoe_Doe
          
          Imports files in the directory for area 10 using the file
          list A:\FILE.LST.  The uploader name is set to Joe Doe for
          each file imported.
          

          KILL  <filespec> [area#]
          ------------------------------------------------------------
          Kill all matching files from the database and from disk.
          This also performs a COMPRESS operation.
          
          Example:
          
          	RAFILE  KILL  MONEY.*
          
          Kills all files matching the wildcard pattern MONEY.* from
          all file areas.
          

          LOCK  <filespec> [area#] 
          ------------------------------------------------------------
          Lock all matching files from deletion or moving. When a file
          is locked, it cannot be moved or deleted using the CLEAN
          function or by the RemoteAccess Manager (RAMGR).
          
          Example:
          
                RAFILE LOCK ALLFILES.ARJ 10
          	
          Locks the file ALLFILES.ARJ in file area 10.

          
          UNLOCK        <filespec> [area#]
          ------------------------------------------------------------
          This function is the reverse of the Lock function just
          described.  All matching files are unlocked.
          


          FILELIST      <output_file> [area#] [/Ssecurity]
                        [/Ddays_old] [/Bbanner] [/Ffooter] [/NOHDR]
                        [/7BIT] [/FORMF]
          ------------------------------------------------------------
          Generate a master file list of the areas specified. If the
          /S<security> switch is used, only areas of <security> list


                                   - 247 -
          security or lower will be included in the list.  The
          /D<days_old> option includes only files which are <days_old>
          old or newer. You may also specify a /B<banner_file> which
          will be added automatically to the top of the list.

          Specifying the /NOHDR switch disables the header that is
          normally inserted at the top of each area.  Specifying the
          /7BIT switch causes all high-ASCII characters in the header
          to be translated to their 7-bit equivalents. Specifying the
          /FORM switch causes a formfeed to be inserted at the end of
          each area.

          Examples:
          
          	RAFILE  FILELIST  MASTER.LST  @AREA.LST
          
          Creates a master file list including all areas specified in
          the file AREA.LST, writing the list to the file MASTER.LST.
          
                RAFILE FILELIST MASTER.LST G1 /S50 /BC:\RA\BANNER.TXT
          
          Creates a master file list including all file areas in group
          1.  Additionally, only file areas with a list security of 50
          or lower will be included.  A banner file called BANNER.TXT
          is inserted at the beginning of the list from the C:\RA
          directory.
          


          SORT	[area#] [DATE] [REVERSE]
          ------------------------------------------------------------
          Sorts files by name or date, in forward or reverse order.
          Automatically sorts files in between comment lines.  If DATE
          is specified, files are sorted by date rather than by name.
          If REVERSE is specified, files are sorted in reverse order
          rather than in forward order.
          
          Examples:
          
                RAFILE SORT
          
          Sorts the files in all areas by name and in forward order.
          
          	RAFILE  SORT  DATE  REVERSE
          
          Sorts the files in all areas by date and in reverse order.
          
          	RAFILE  SORT  100  REVERSE
          
          Sorts the files in area 100 by name and in reverse order.
          



                                   - 248 -
          UPDATE        <filespec> [area#] [TOUCH|TOUCHMOD]
          ------------------------------------------------------------
          Update all matching file database entries from actual DOS
          file information.  If TOUCH is specified, the file upload
          date (not the actual file date) will be changed to the
          current date unconditionally.  If TOUCHMOD is specified, the
          file upload date is changed to the current date only if DOS
          reports that the file has been modified since the last
          UPDATE operation.  This allows you to mark any changed files
          as new.
          
          Example:
          
                RAFILE UPDATE *.* 10 TOUCHMOD
          
          Updates all files in area 10, changing upload dates to the
          current date for any file that has changed since the last
          UPDATE function.
          


          REARC	[area#]
          ------------------------------------------------------------
          Re-archives all files in the specified area using the
          archive type specified for that area in RACONFIG:
          
                       Manager > File Areas > ArcType
          
          NOTE:  The only archive types that can be converted are
          those that have an entry in RACONFIG:
          
                        Options > Files > Archivers
          
          When RAFILE performs this operation, it uses the Rearchive
          directory defined in RACONFIG:
          
                        System > Paths > Rearchive
          
          All directories below the defined rearchive directory are
          deleted before and after each file conversion.
          
          Example:
          
                RAFILE REARC 10
          
          Rearchives all files in area number 10, converting all
          archive types to the format selected for that area in
          RACONFIG.
          
          




                                   - 249 -
          RAMGR.EXE
          ============================================================
          As discussed in the User Administration chapter, the
          RemoteAccess Manager is used not only for user
          administration but for file database administration as well.
          It provides a module specifically designed for performing
          file database administrative functions and replaces any
          third party programs used in conjunction with previous
          versions of RemoteAccess.

          The powerful functions of this module allow you to perform
          such operations as editing file descriptions, moving files,
          specifying individual file passwords and costs, locking and
          unlocking files and much more.  Virtually all operations may
          be performed on individual files as well as groups of tagged
          (or selected) files.

          RAMGR.EXE resides in the system directory and may be
          executed by typing RAMGR followed by pressing <ENTER>. When
          this utility is fired up, it presents a pick-list menu which
          allows you to select a number of options including Files.
          You can also fire up RAMGR in file administration mode
          directly by typing the command RAMGR  /F followed by
          pressing <ENTER>.  This method bypasses the initial
          pick-list menu and places you directly in the file
          administration portion of the program.

          In addition to the -F parameter, RAMGR also supports
          several other command-line switches.  They are:
          
             -B   Run in monochrome (black and white) mode.
          
             -N   Ignore any missing file area paths (normally RAMGR
                  will not allow you to enter a file area which has an
                  invalid path).
          
             -U   Edit users only (bypass main menu).  See the User
                  Administration chapter for more information.
          
             -A   Auto-update mode (file editing).  Forces an
                  automatic update of all files when an area is
                  entered.  If you use the A-U command (explained
                  later in this section) on a regular basis, you may
                  want to use this parameter instead.
          
          Once in the files portion of RAMGR, you are presented with a
          pick-list of files areas from which to choose.  You can move
          the cursor-bar using any of the following keys.
          
          UP         Moves the cursor-bar up one area.
          
          DOWN       Moves the cursor-bar down one area.


                                   - 250 -
          PAGE-UP    Moves the cursor-bar up one screen page.
          
          PAGE-DOWN  Moves the cursor-bar down one screen page.
          
          HOME       Moves the cursor-bar to the first record in the
                     database.
          
          END        Moves the cursor-bar to the last record in the
                     database.
          
          Position the cursor-bar on a valid file area entry and press
          <ENTER> to bring up that entry.

          Once in the selected file area, you will notice another
          pick- list menu which displays each database entry for the
          file area. Each line contains information about an
          individual file, or a comment line, all of which may be
          modified. When first entering RAMGR, file entries are
          displayed in non-user mode.  That is to say that RAMGR uses
          its own format display entries.  Selecting User Mode
          (explained in the following pages) switches this display to
          use the format defined by the File List Format field in
          RACONFIG:
          
                        Options > Files > List Format
          
          The description window near the bottom of the display shows
          the file description for the file at the current cursor-bar
          location. Also at the very bottom of the display, you will
          see the message "(F1) Command summary".  Press F1 to display
          the summarized list of commands available.
          
          <Esc>      Escape back to file area selection pick-list.
          
          <Enter>    Edit the entry at the current cursor-bar
                     location.
          
          <F2>       Edit the description of the file at the current
                     cursor-bar location
          
          <SPACEBAR> Drop anchor for file block.  You may select
                     several files to perform operations on.  Position
                     the cursor-bar on the first file database entry
                     desired and then press <SPACEBAR>.  Next, move
                     the cursor-bar down the list. Notice that all
                     files from the point where you dropped the anchor
                     to the current cursor-bar location have become
                     highlighted.  Any operation performed next will
                     be performed on all of the highlighted files.
          
          <Del>      Delete the highlighted file(s).  After selecting
                     this option you will be asked whether to delete


                                   - 251 -
                     the files as well as database entries.  Answering
                     "Y" will cause the file on disk to be deleted as
                     well as the database entry.
          
          <Insert>   Insert a new file entry at the highlighted
                     position.  This allows you to insert a new file
                     database entry at a specific location.  When this
                     command is selected, RAMGR prompts for the
                     filename to be inserted, automatically including
                     the drive and path of the current file area.
                     Wildcard characters may be used within the
                     filename entered and are expanded, except when
                     the filename is preceeded by the @ character.
          
          SHIFT-     Insert a new comment at the highlighted position.
          INSERT     This allows you to insert a comment line at the
                     current cursor-bar location.
          
          ALT-A      Adopt orphaned files.  This works like the ADOPT
                     function of RAFILE.  When selected, you will be
                     prompted to enter a filename to adopt.  Wildcard
                     characters are accepted. RAMGR searches for all
                     files matching the specified criteria and
                     displays the filenames in a separate window.
                     From this window, you may select/tag files to
                     adopt.  Only files in the specified area that do
                     not already exist in the database will be
                     displayed.
          
          ALT-B      Buffer operations.  This command allows you to
                     copy highlighted entries into a buffer, edit the
                     contents of the buffer, paste the buffer contents
                     to a comment or file description, import a disk
                     file to the buffer or export the buffer contents
                     to a disk file.
          
          ALT-C      Copy highlighted file(s) to another area.  Like
                     the hurl command except that the original
                     database entries and files remain in the original
                     area.  (See the ALT-H command for more
                     information).
          
          ALT-D      Toggle file listing display format (user mode is
                     slower).  When listing files in the database,
                     RAMGR can alternately use user mode.  This
                     displays entries using the file list format
                     defined in RACONFIG:
          
                              Options > Files > List Format
          
          ALT-F      Find a file (wildcards valid).  Use this option
                     to locate files that match the search criteria


                                   - 252 -
                     you specify. If the file is not located in the
                     current file area, you can optionally search all
                     file areas for matches.
          
          ALT-G      Generate a text file from the current area
                     (FILES.BBS).  This option is used to create a
                     FILES.BBS type listing of the current file area.
          
          
          ALT-H      Hurl (move) the highlighted file(s) to another
                     area.  The file database entries and disk files
                     are moved to the target area and are removed from
                     the source area.
          
          ALT-I      Import a text file as a comment line.  Used to
                     import a disk file as a comment line which is
                     inserted at the current cursor-bar location.
          
          ALT-K      Find a file (keyword description search).  Like
                     the ALT-F command but searches on the file
                     description rather than the filename.
          
          ALT-M      Move highlighted file(s) within the current area.
                     This option is used to place the highlighted
                     entries at another position within the same area.
          
          ALT-P      Put a copy of the highlighted file(s) in any
                     directory.  This option is used to copy the
                     source file(s) to any valid DOS directory on disk
                     (does not have to be a valid file database area).
          
          ALT-R      Rename the highlighted file.
          
          ALT-S      Sort highlighted files.  This option is similar
                     to the RAFILE SORT operation but operates only on
                     the highlighted files.  To sort the entire area
                     from within RAMGR, simply drop the file anchor on
                     the first entry and press <END> to mark all
                     entries. Then select this option.

          ALT-T      Touch upload date on highlighted files.  This
                     option sets the upload date (not the actual file
                     date) of the highlighted file(s) to the current
                     date.
          
          ALT-U      Update highlighted entries from DOS information.
                     This option sets the date of the highlighted
                     file(s) to the actual DOS file date(s).
          
          NOTE:  To edit a specific database entry, position the
          cursor-bar on the desired entry and press <ENTER>.  This
          brings up all of the fields that are associated with each


                                   - 253 -
          individual entry record.
          
          
          File:        The file name and size in bytes.
          
          Date:        The actual DOS file date.
          
          Uploader:    The name of the person who uploaded the file.
          
          Keyword#1 -  Up to 5 keywords which may be entered and
          Keyword#5:   later used to search on.
          
          Downloads:   The number of times the file has been
                       downloaded.
          
          Cost:        The cost (in credits) that is charged users who
                       download this file.
          
          UL Date:     The date the file was uploaded.
          
          Last DL:     The last date the file was downloaded.
          
          To change any of these fields, move to the appropriate field
          and enter the desired information.  You can use the <DELETE>
          and <BACKSPACE> keys to remove any unwanted characters.
          Press <Esc> when you are finished.

          In addition to these fields, the flag fields on the right
          portion of the screen may also be changed.  Since a flag may
          have one of two settings (Yes or No) they are best
          illustrated by asking a question.
          
          Deleted:     Should the file be marked for deletion?
          
          Unlisted:    Should the file be excluded from file lists?
          
          Free:        Is the file a free file which does not affect
                       download ratios?
          
          Locked:      Should the file be locked so that it cannot be
                       deleted or moved?
          
          NotAvail:    Should the file be marked as being unavailable?
          
          Missing:     Should the file be listed as missing from the
                       file listing?
          
          NoTime:      Should users be able to download the file
                       without regard to time restrictions?
          
          To change a flag setting, move to the appropriate field and
          press either "Y" or "N".


                                   - 254 -
          When you are finished editing the entry, press <ESCAPE> and
          answer "Y" or "N" to the "Save changes (Y/n)?" prompt.




















































                                   - 255 -
          Chapter 8
          Questionnaires
          *	
          *	
          *	
          *	
          Questionnaires are  powerful language scripts that allow you
          to query users for input and take actions based on that
          input.  They can also be used in support of such areas as
          usage costing and subscription systems. A simple set of
          script commands gives you access to the flexibility and
          power that questionnaires provide.










































                                   - 256 -
          WHAT IS A QUESTIONNAIRE?

          Quite simply, a questionnaire is an interactive script
          language. So what is a script language?  We generally think
          of a language as something subject to interpretation.  When
          we think of scripts, we usually think of something that is
          written to be read or played back the same way every time.
          A questionnaire is a script file that you write which is
          interpreted by RemoteAccess as it is played back.  The
          interpreter recognizes valid statements and acts on them
          accordingly.

          Questionnaires can be used for a variety of purposes.  You
          might use one for a user survey to poll your users on a
          given topic.  Or, you might use one to gather information
          from new users and adjust their settings based on that
          information. The questionnaire script language supports
          statements that allow you to record user input, output
          formatted text, display files, execute external programs,
          adjust user security levels and access flags, plus much
          more.

          Questionnaire script files are ASCII text files which are
          stored in the questionnaire directory specified for each
          language that your system supports.  This setting can be
          found in RACONFIG:
          
                       Manager > Languages > Ques Path
          
          You can create questionnaire files using any ASCII text
          editor.  Or, as discussed in the External Support Files
          chapter, you can even use the control file editor in
          RACONFIG.

          Text file control codes are fully supported within a
          questionnaire which adds to the power and flexibility of a
          script file.  They may be used to display data in much the
          same way they are used in text files.  Or, they may be used
          to make comparisons against data (an example of which is
          given later under the IF script command).

          Just as text files must have certain filename extensions, so
          too do questionnaires.  You already know that questionnaire
          files must exist in a directory you've previously specified.
          In addition to this, all questionnaire files must have a
          filename extension of .Q-A.  When RemoteAccess reads the
          script, it is interpreted and the appropriate statements are
          processed. Then, if any information is to be written to
          disk, RemoteAccess writes the information using the base
          questionnaire filename with an extension of  .ASW.

          For example, if a questionnaire script has a filename of


                                   - 257 -
          VOTE.Q-A, any information that is written to disk from
          within the script, is written to the file VOTE.ASW.  This is
          known as an answer file.

          When RemoteAccess reads and interprets a questionnaire
          script, it doesn't check for upper or lower-case formatting.
          Therefore, the statement "ASK" can be entered as "ask" or
          even "AsK" and it will be interpreted the same way.
          

          Automatic Questionnaires
          ============================================================
          Questionnaires can be executed by using menu function type
          12-"Questionnaire" from any menu.  In addition to this
          method, RemoteAccess also supports several questionnaires
          that are executed automatically under certain conditions.
          These questionnaires compliment important aspects of running
          a BBS.  Automatic questionnaires are especially useful in
          adjusting user settings or executing specific functions
          depending on the conditions that cause the questionnaire to
          be executed.

          For example, whenever a new user logs-on, the questionnaire
          NEWUSER.Q-A is executed.  In this script, you might query a
          new user for specific information such as hobbies or BBS
          interests.  You could also adjust the user's security level
          and/or access flags based on data that the user has entered.

          If the conditions required to display an automatic
          questionnaire are met but the script file itself does not
          exist, RemoteAccess won't take any action and no error
          message will be displayed.  After all, questionnaires are
          used to enhance your system and are not mandatory.

          The automatic questionnaires supported are detailed below.
          An example of each questionnaire is given in the last
          section of this chapter.
          
          DOBCFAIL.Q-A  RemoteAccess can prompt users to re-enter
                        their birth date for verification purposes
                        every certain number of log-ons.  This is set
                        in RACONFIG:
          
                                Options > System > Check DOB
          
                        This questionnaire is executed if the user
                        fails to enter the correct birth date.  It can
                        be used to automatically lower the user's
                        security level or alter access flags which
                        might restrict the user from using the system
                        until properly verified.  Upon completion of
                        this questionnaire, the call is terminated.


                                   - 258 -
          NEWUSER.Q-A   If this questionnaire file exists, it will be
                        executed automatically whenever a new user
                        logs-on to your system.  This is useful for
                        obtaining additional information about your
                        users that is not gathered in the internal new
                        user log-on procedures.
          
          NOCREDIT.Q-A  Usually used in conjunction with subscription
                        systems, this questionnaire is executed when a
                        user's credit reaches zero if; 1) the user
                        runs out of credits due to the time per-minute
                        cost as defined in the Limits Manager of
                        RACONFIG, or; 2) the user runs out of credits
                        in the menu item per minute cost.  If, for
                        whatever reason, a user's credit reaches zero,
                        this questionnaire would give the Sysop the
                        flexibility in what action is to be taken.

                        For example, the system may display a message
                        and lower the user's security level, or
                        perhaps run an external credit card program,
                        or even terminate the session. You can define
                        a usage cost on a per-minute basis in
                        RACONFIG:

                                  Manager > Limits > PerMin
          
          SUBDATE.Q-A   This questionnaire is automatically executed
                        if the user's subscription has expired.  You
                        can  define the length of each user's
                        subscription in RACONFIG:
          
                                Options > New Users > Sub days
          	
                        This questionnaire may be used to
                        automatically lower user security levels and
                        notify users that their subscription has
                        expired.  It might also be used to execute
                        another questionnaire, a menu function, or
                        even an external program.
          
          SUBDAYnn.Q-A  This questionnaire provides pre-subscription
                        expiration support.  If it exists, this
                        questionnaire will be executed nn days prior
                        to subscription expiration during the log-on
                        process.  For example, the questionnaire
                        SUBDAY30.Q-A would be executed if a user whose
                        subscription expires in 30 days logs-on.
          
          As you can see, these automatic questionnaires can be quite
          useful on your system.  And by using the script commands
          outlined in this chapter, you can create questionnaires that


                                   - 259 -
          are indeed quite powerful.
          

          Script Command Listing
          ============================================================
          The script commands that are supported by RemoteAccess are
          outlined throughout this section.  Each command name is
          given along with the expected syntax, description and usage
          example for each.  Finally, the last section of this chapter
          includes some example questionnaire scripts which show you
          how a script might be practically applied.
          

          Ask
          ------------------------------------------------------------
          Syntax:       Ask <len> <var num>
          
          Description:  Waits for the user to enter a string of up to
                        <len> characters and stores the string in the
                        variable <var num>.  Valid values for <len>
                        are 1 to 255 and <var num> may be any number
                        between 1 and 50.
          
          Example:	Ask 30 5
          
                        Waits for the user to enter a string of up to
                        30 characters in length.  The user's input is
                        stored in variable number 5.
          

          Assign
          ------------------------------------------------------------
          Syntax:       Assign <var num> <"literal" | #<var num>>
          
          Description:  Assigns the text specified in <"literal"> to
                        variable number <var num>.  The literal
                        portion of the assignment must be enclosed in
                        quotation marks.

                        Alternatively this command can be used to
                        copy one questionnaire variable into another,
                        by using the "#" symbol followed by the
                        variable number you want to copy from.
          
          Example:      Assign 1 "Hi There!"
                        Display "|Var 1 is: "
                        ListAnswer 1
          
                        Would assign "Hi There!" to variable number
                        one and output "Var 1 is: Hi There!" to the
                        display.
          


                                   - 260 -
          Capitalise
          ------------------------------------------------------------
          Syntax:       Capitalise <ON | OFF>
          
          Description:  Turns on or off automatic input
                        capitalization.  This allows you to force user
                        input into all upper or lower-case letters.
                        The state to which this is set remains in
                        effect until another Capitalise command is
                        used.
          
          Example:	Capitalise ON
          
                        Forces all user input to be capitalized until
                        a Capitalise OFF command is encountered.
          

          ChangeColor
          ------------------------------------------------------------
          Syntax:       ChangeColor <foreground> <background>
          
          Description:  Changes the color of the text if the user has
                        ANSI graphics enabled.  The color selected
                        remains the default color for all subsequent
                        text displayed, until the end of the
                        questionnaire script or until the next
                        ChangeColor command is encountered.  The valid
                        color codes are the same as those listed in
                        the Control Codes Listing section of the
                        External Support Files chapter.
          
          Example:	ChangeColor 1  0
          
                        Changes the text color to a blue foreground on
                        a black background until the end of the script
                        is reached or until another ChangeColor
                        command is encountered.
          

          ClearScreen
          ------------------------------------------------------------
          Syntax:	ClearScreen
          
          Description:  Clears the user's screen if the user has
                        enabled screen clearing codes.  Otherwise,
                        this command is ignored by the interpreter.

          Example:      ClearScreen
          	
                        This would simply clear the user's screen.
          



                                   - 261 -
          Commit
          ------------------------------------------------------------
          Syntax:	Commit
          
          Description:  Normally, user responses are stored in a buffer
                        and written to disk when the questionnaire
                        terminates. The COMMIT command will force the
                        contents of the buffer to be written to disk
                        immediately.

          Example:      Commit
          	
                        This would cause all user responses stored
                        in memory to be written to disk immediately.


          DefineOutput
          ------------------------------------------------------------
          Syntax:       DefineOutput <filename>
          
          Description:  Normally, questionnaire responses are written
                        to a file called nnn.ASW (where nnn is the 
                        original questionnaire name) in the system
                        directory. This command allows the sysop to
                        specify the name of the output file.

          Example:      DefineOutput C:\RA\ANSWERS\NEWUSER.TXT

                        This would cause all user responses to be
                        stored in the file C:\RA\ANSWERS\NEWUSER.TXT.


          Display
          ------------------------------------------------------------
          Syntax:       Display "<text> [ | ]"
          
          Description:  Displays the specified text on the screen.  If
                        the pipe symbol "|" is included, a carriage
                        return line feed sequence is displayed in its
                        place.  If the pipe symbol is omitted, the
                        cursor remains positioned at the end of the
                        text displayed.  Text file control codes are
                        fully supported and may be embedded in <text>
                        (see the External Support Files chapter for
                        information on text file control codes).
          
                        All text to be displayed (including the pipe
                        symbol, if specified) must be enclosed in
                        quotation marks as shown in the example below.
          
          Example:	Display "Welcome aboard! | "
          


                                   - 262 -
                        In this example, the text Welcome aboard!
                        would be displayed to the user.   The cursor
                        would be positioned at the beginning of the
                        next line since the pipe symbol was specified.
          

          DisplayFile
          ------------------------------------------------------------
          Syntax:       DisplayFile <1-8 character filename>
          
          Description:  Causes a text file to be displayed in the same
                        manner used by menu function type 5-"Display
                        text file". The text file must exist in the
                        text files directory and must also conform to
                        filename conventions as outlined in the
                        chapter on External Support Files.
          
          Example:	DisplayFile BBSRULES
          
                        Would display the file BBSRULES.A?? from the
                        text files directory.  Once the file has been
                        displayed the user is returned to the
                        questionnaire.
          
          
          EndIF
          ------------------------------------------------------------
          Syntax:	EndIF
          
          Description:  Used in conjunction with the IF command, this
                        signifies the end of an IF.  The function of
                        IF and EndIF are more fully explained under
                        the EndIF command in this section.
          
          Example:	See the IF script command.
          

          Exec
          ------------------------------------------------------------
          Syntax:       Exec <command line>
          
          Description:  Executes an external program in a DOS shell in
                        the same manner as that of menu function type
                        7 - Run an external program in a shell. All
                        command-line parameters that are valid in menu
                        function type 7 may be used here as well.
          
          Example:	Exec C:\RA\NEWMAIL.EXE *M
          
                        This would cause RemoteAccess to execute the
                        DOS command NEWMAIL.EXE from the C:\RA
                        directory while the user is on-line. The *M


                                   - 263 -
                        parameter instructs RemoteAccess to swap
                        itself out of memory before executing the
                        command (useful for running programs that
                        require large amounts of memory).  For full
                        details on the parameters available, see menu
                        function type 7 in the Menu Administration
                        chapter.
          

          GetChoice
          ------------------------------------------------------------
          Syntax:       GetChoice <valid choices> <var num>
          
          Description:  Waits for the user to enter one of the
                        characters in <valid choices> and stores the
                        response in the variable <var num>.  The
                        character entered is not case-sensitive.
          
          Example:	GetChoice YN 2
          
                        This command would wait for the user to press
                        either the "Y" or the "N" character, storing
                        the response in variable number 2.
          

          Gosub
          ------------------------------------------------------------
          Syntax:       Gosub <label>
          
          Description:  Causes the script interpreter to jump to the
                        label specified as <label>.  The label may be
                        1 to 12 characters in length and may contain
                        any combination of letters and numbers. Labels
                        should be preceded by the colon ":" character.
                        The point at which the jump occurs from is
                        saved, and may be returned to by executing
                        the "Return" questionnaire command. Multiple
                        "Gosub" commands may be used in a row, and may
                        be nested up to 50 deep.
          
          Example:	IF 5 = "Y"
                          Gosub MyLabel
                        EndIF
                        Display "Continue processing..|"
                        Quit
          
                        :MyLabel
                        Display "Here we are!|"
                        Return
          
                        In this example, if variable number five is
                        equal to "Y", the script interpreter will jump


                                   - 264 -
                        to the label MyLabel, display "Here we are", and
                        then return to the command immediately after the
                        Gosub.


          Goto
          ------------------------------------------------------------
          Syntax:       Goto <label>
          
          Description:  Causes the script interpreter to jump to the
                        label specified as <label>.  The label may be
                        1 to 12 characters in length and may contain
                        any combination of letters and numbers. Labels
                        should be preceded by the colon ":" character.
                        Each questionnaire script may contain up to 50
                        labels.
          
          Example:	IF 5 = "Y"
                          Goto MyLabel
                        EndIF
                        Quit
          
                        :MyLabel
                        Display "Here we are!|"
                        Quit
          
                        In this example, if variable number five is
                        equal to "Y", the script interpreter will jump
                        to the label MyLabel and continue processing
                        from that point.
          

          IF
          ------------------------------------------------------------
          Syntax:       IF <var num[~]> <operator> <operand>
          
          Description:  This command is used to perform comparisons
                        within your script file and take actions based
                        on the results of the comparisons.  The result
                        of an IF comparison is considered to be either
                        true or false.  If the comparison is found to
                        be true, then all lines up to the next EndIF
                        are processed by the interpreter.  In case you
                        aren't familiar with logical comparisons,
                        refer to the examples listed below and later
                        in this chapter.  They will help you to better
                        understand the purpose and functionality of
                        this command.
          
                        Specifically, this command compares the
                        contents of the variable <var num> with the
                        contents of <operand> using the type of


                                   - 265 -
                        comparison specified in <operator>.
          
                        <Var num> may be any variable number between 1
                        and 50 followed by the optional numeric
                        identifier "~".  When a tilde character "~" is
                        specified after <var num> it indicates that a
                        numeric comparison is to be made instead of a
                        text string comparison.

                        <Operator> may be any combination of:
          
                           =       Equal to...
                           <       Less than...
                           >       Greater than...
          
                        <Operand> values may be:
          
                        *   Literal text enclosed in quotation marks.
                        *   A variable number specified as <#var num>.
                        *   Any text file control code.
          
                        When comparing the contents of a variable
                        specified as <var num> with the contents of
                        another variable specified as <operand>, the
                        <operand> variable number must be preceded by
                        the # character.
          
          NOTE:  This command may not be nested.  That is to say that
          you cannot use an IF command between other IF and EndIF
          commands.
          
          Examples:     IF 1 <> #2
          
                        Would return true if the contents of variable
                        number one was not equal to the contents of
                        variable number 2.
          
                        IF 5~ <= ^KO
          
                        Would return true if the value of variable
                        number five was less than or equal to the
                        user's time remaining.  Notice that the "~"
                        was used to indicate that a numeric comparison
                        was to be made.  Also notice the usage of the
                        text file control code that returns the user's
                        time remaining.
          
                        IF 5 = "LUXEMBOURG"
                        Display "Hey, that's where I live!|"
                        EndIF
          
                        In this example, the interpreter would check


                                   - 266 -
                        to see if variable number 5 was equal to the
                        string LUXEMBOURG.  If true, the text "Hey,
                        that's where I live!" would be displayed.  If
                        the contents of variable number 5 did not
                        match, the statement would have been
                        considered to be false and the interpreter
                        would jump to the EndIF statement.
          
                        IF 1 <> #2
                        Display "Variables 1 and 2 are different!|"
                        EndIF
          
                        In this example, the contents of variable
                        numbers one and two would be compared.  If
                        they were not equal, the text "Variables 1 and
                        2 are different!" would be displayed.
          

          ListAnswer
          ------------------------------------------------------------
          Syntax:       ListAnswer <var num>
          
          Description:  Displays the contents of variable number <var
                        num> followed by a carriage return and line
                        feed sequence.
          
          Example:      Display "Enter your name: "
                        Ask 30 5
                        Display "You entered: " ListAnswer 5
          
                        In this example, the user is prompted to enter
                        their name which can contain a maximum of 30
                        characters.  The name entered is stored in
                        variable number 5.  Next, the text "You
                        entered:" is displayed followed by the contents
                        of variable number 5 and a carriage return and
                        line feed sequence.
          

          MenuCmnd
          ------------------------------------------------------------
          Syntax:       MenuCmnd <num> <data>
          
          Description:  Executes a menu command just as if it were
                        executed from within a menu.  Simply specify
                        the menu function number <num> followed by the
                        contents of the optional data field <data>.
          
          NOTE:  For obvious reasons, menu function types for Goto
          (type 1), Gosub (type 2), Return from Gosub (type 3) and
          Questionnaire (type 12), etc. may not be used.
          


                                   - 267 -
          Example:      MenuCmnd 27  60  /T=Bruce Morse
          
                        This example would run menu function type 27-
                        "Postmessage" with an optional data field of
                        60 /T=Bruce Morse which would post a message
                        in message area 60 and address it to Bruce
                        Morse.  For a full list of menu function
                        types, refer to the Menu Administration
                        chapter.
          

          OutputAnswer
          ------------------------------------------------------------
          Syntax:       OutputAnswer <"descriptor"> <var num>
          
          Description:  Writes the literal text string specified as
                        <"descriptor"> followed by the contents of
                        variable number <var num> to the questionnaire
                        answer file.  Text file control codes are
                        fully supported within the text descriptor
                        (see the External Support Files chapter for
                        information on control codes).  As described
                        earlier, the answer file is given the same
                        name as the questionnaire file but has a
                        filename extension of .ASW.
          
          Example:	OutputAnswer "Hobbies : "  6
          
                        In this example the string "Hobbies : "
                        followed by the string stored in variable
                        number 6 are written to the answer file.
          
                        If this answer is the first answer written to
                        the answer file, it is a good idea to first
                        use the PostInfo command which writes a header
                        to the answer file.  For example, if a
                        PostInfo command was used followed by the
                        above example with Chess stored in variable
                        number 6, the resulting entry in the answer
                        file would look similar to this:
          

             **Joe Doe completed questionnaire at 20:00 on 21-Jan-93**
             Hobbies : Chess

        
          PostInfo
          ------------------------------------------------------------
          Syntax:	PostInfo
          
          Description:  This command is used to write a header to the
                        answer file which contains the user's name


                                   - 268 -
                        along with the date and time that the
                        information was posted to the answer file.
          
          Example:	PostInfo
          
                        In this example, if the user's name was Joe
                        Doe, the following line would be written to
                        the answer file:
          
             **Joe Doe completed questionnaire at 20:00 on 21-Jan-93**
          

          Quit
          ------------------------------------------------------------
          Syntax:	Quit
          
          Description:  Terminates the script and returns operation to
                        the BBS.
          
          Example:	Quit
          
                        This command would simply cause RemoteAccess
                        to stop processing the script and return to
                        the BBS.
          

          Return
          ------------------------------------------------------------
          Syntax:	Return
          
          Description:  (See the Gosub command). Transfers control 
                        back to the command immediately after the last
                        Gosub command executed.

          
          SetFlag
          ------------------------------------------------------------
          Syntax:       SetFlag <flag set> <flag number> <ON|OFF>
          
          Description:  This command can be used to turn the specified
                        user access flag ON or OFF.  The <flag set>
                        variable is either A, B, C, or D and <flag
                        number> is a number from 1 to 8. Changes made
                        using this statement are permanently recorded
                        within the user database.
          
          Example:	SetFlag C8 OFF
          	
                        In this example, user access flag C8 would be
                        turned OFF.
          



                                   - 269 -
          SetSecurity
          ------------------------------------------------------------
          Syntax:       SetSecurity <sec level>
          
          Description:  This command is used to change the user's
                        security level.  The level may be any number
                        between 1 and 65,535.  Any changes to the
                        user's security level will be permanently
                        recorded in the user database.
          
          Example:	SetSecurity 1000
          
                        In this example, the current user's security
                        level would be set to 1000.  Notice that a
                        comma should not be used when specifying a
                        number greater than 999.
          

          WaitEnter
          ------------------------------------------------------------
          Syntax:	WaitEnter
          
          Description:  Waits for the user to press the <ENTER> key.
                        Any other keys the user might press are
                        ignored.
          
          Example:	Display "Press [Enter] to continue" 
                        WaitEnter
          
                        Displays the text "Press [Enter] to continue"
                        and then waits for the user to press <ENTER>.
                        Also, the communications driver outbound
                        buffer is flushed prior to processing this
                        command.
          

          Example Questionnaires
          ============================================================
          The following examples demonstrate the use of the automatic
          questionnaire script files that RemoteAccess supports.
          While these are not extremely elaborate, they will give you
          an idea of how you might apply these to your system.  You
          may wish to read through each questionnaire,
          cross-referencing the script commands listed in the previous
          section.
          

          DOBCFAIL.Q-A
          ------------------------------------------------------------
          This example script file notifies the Sysop of a possible
          security violation.  It also prompts the user to enter the
          reason that an incorrect date of birth was entered.  The


                                   - 270 -
          user is prompted to enter a good time for the Sysop to call
          to straighten things out. The user is disonnected
          automatically when this questionnaire is completed.
          
          PostInfo
          Assign 1 "Date Of Birth Verfication Failure"
          OutputAnswer "Security violation: " 1
          ClearScreen
          ChangeColor 12 0
          Display "You have failed to verify your date of birth!|"
          Display "Since this is a security violation, please enter|"
          Display "the reason that you entered an incorrect date.|"
          Display "|Reason: "
          Ask 50 2
          OutputAnswer "Reason: " 2
          ChangeColor 15 0
          Display "|The System Operator will review your response as|"
          Display "soon as possible.  If the Sysop needs to contact|"
          Display "you, when would be a good time to call?|"
          Display "|When: "
          Ask 50 3
          OutputAnswer "Good time to call: " 3
          ChangeColor 14 0 
          Display "|Your answers have been recorded and the Sysop|"
          Display "will contact you as soon as possible.  Goodbye!|"
          Quit
          

          NEWUSER.Q-A
          ------------------------------------------------------------
          This is a simple example of a new user questionnaire script.
          If the user elects not to answer the questions, the script
          is exited. However, if the user completes the questionnaire,
          security level and access flags are altered.
          
          PostInfo
          Display "Do you wish to continue?"
          GetChoice YN 1
          IF 1 = "N"
          Display "|Sorry, your security has not been upgraded.|"
          OutputAnswer "User did not answer questions" 1
          Quit
          EndIf
          Display "Please enter your FULL name: "
          Ask 35 2
          Display "What is your occupation? "
          Ask 40 3
          Display "What is the main reason you're calling?"
          Ask 40 4
          Display "Please enter any comments you might have:"
          Ask 50 5
          OutputAnswer "Name		: " 2


                                   - 271 -
          OutputAnswer "Occupation	: " 3
          OutputAnswer "Reason	: " 4
          OutputAnswer "Comments	: " 5
          Display "Thank you for completing this questionnaire|"
          SetSecurity 50
          SetFlag C3 OFF
          Quit
          

          NOCREDIT.Q-A
          ------------------------------------------------------------
          This questionnaire takes action when the user's credit
          reaches zero.  The user may elect to purchase more system
          credit either by mailing a personal check to an address
          listed or use a credit card door to charge the purchase.
          
          PostInfo
          Assign 1 "Reached zero credits"
          OutputAnswer "User account: " 1
          ClearScreen
          ChangeColor 12 0
          Display "Your account credit has reached zero. You|"
          Display "will not be able to access certain functions|"
          Display "on the system.|"
          ChangeColor 10 0
          Display "If you would like to purchase more credits, you|"
          Display "may either send a personal check or use the on-|"
          Display "line credit card door.|"
          ChangeColor 14 0
          Display "|Would you like to purchase credits? (Y,N): "
          GetChoice YN 2
          IF 2 = "N"
          Display "|Should you reconsider at a later date, simply|"
          Display "select the <C>redits command off the Main|"
          Display "Menu.  Thank you.|"
          OutputAnswer "Elected not to purchase credits" 2
          Quit
          EndIF
          Display "|Would you like to mail in your payment?|"
          GetChoice YN 3
          IF 3 = "Y"
          Display "|Please mail your payment to:||"
          Display "Address line 1|"
          Display "Address line 2|"
          Display "Address line 3||"
          ChangeColor 10 0
          Display "Press <ENTER> to continue"
          WaitEnter
          Display "|When your payment is received, the Sysop will|"
          Display "credit your account accordingly.  Thank you.|"
          OutputAnswer "User elected to mail payment" 3
          Quit


                                   - 272 -
          EndIF
          ChangeColor 13 0
          Display "|The credit card door will now be loaded...|"
          MenuCmd 7 C:\RA\CREDIT.EXE *M
          OutputAnswer "User ran credit card door" 3
          Quit
          

          SUBDATE.Q-A
          ------------------------------------------------------------
          In this example, the user's sixty-day trial membership has
          expired.  The user's security level and access flags are
          altered accordingly, after being informed how to obtain a
          regular subscription.
          
          PostInfo
          Assign 1 "Sixty-day subscription expired"
          OutputAnswer "User account: " 1
          ClearScreen
          ChangeColor 12 0
          Display "Your 60-day trial membership has expired!|"
          Display "If you would like to continue to be a subscriber,|"
          Display "please select the <S>ubscribe command off the|"
          Display "Main Menu.  Thank you.|"
          SetSecurity 150
          SetFlag A1 OFF
          ChangeColor 14 0
          Display "|Press ^K[0F<ENTER>^K[0E to continue"
          WaitEnter
          Quit
          

          SUBDAYnn.Q-A
          ------------------------------------------------------------
          In this example, the filename SUBDAY10.Q-A was used which is
          displayed to callers whose subscription expiration is in ten
          days.
          
          PostInfo
          Assign 1 "User is 10 days from expiration"
          OutputAnswer "User account: " 1
          ClearScreen
          ChangeColor 12 0
          Display "As a reminder, your subscription expires in ten|"
          Display "days.|"
          ChangeColor 10 0
          Display "Would you like to renew it now? "
          GetChoice YN 2
          IF 2 = "N"
          ChangeColor 11 0
          Display "|Very well. At any time you may select the|"
          Display "<S>ubscribe command from the Main Menu to renew|"


                                   - 273 -
          Display "your subscription.|"
          ChangeColor 15 0 
          Display "|Press <ENTER> to continue"
          WaitEnter
          Quit
          EndIF
          ChangeColor 14 0 
          Display "|Loading credit card door...|"
          MenuCmd 7 C:\RA\CREDIT.EXE *M
          Quit












































                                   - 274 -
          Chapter 9
          Multi-node Operation
          *	
          *	
          *	
          *	
          The concept of multi-node operation is that more than one
          user can be on-line at the same time on the same BBS.  To
          accomplish this, RemoteAccess manages the configuration and
          data files it uses very carefully, making it possible for
          certain key files to be shared. If you intend to run a
          multi-node BBS, it is advisable that you first set-up your
          system and test it on a single node.  This will allow you to
          familiarize yourself with RemoteAccess and will make multi-
          node installation a simpler process.

          NOTE: The shareware version of RemoteAccess only supports a
          maximum of 2 concurrent nodes. The Professional version is
          required to run more than 2 nodes.



































                                   - 275 -
          CONFIGURATION
          ============================================================
          This chapter takes you through each step of the multi-node
          configuration process.  Complete each step in turn and the
          requirements necessary for multi-node operation will become
          clear.
          
          
          RACONFIG
          ------------------------------------------------------------
          First, it is necessary to make a few changes to your system
          configuration using RACONFIG.
          
                          System > Paths > System Log
          
          Ensure the System Log field contains a filename without a
          path specified.  This will force RemoteAccess to create a
          separate log file for each node in their respective
          directories (this will be discussed later in this section).
          If you specify a path name in this field, RemoteAccess will
          only create one log file and will mix entries from all nodes
          in it.
          
                         Options > System > Check Multi
          
          This option instructs RemoteAccess to ensure a user may only
          log-on to one node at a time.  If a user attempts to log-on
          to more than one node simultaneously, RemoteAccess will
          display the text file 1ATATIME.A?? (if it exists) or a brief
          message informing the user of the one-node log-on
          restriction. If this option is disabled, users could use
          their time and download limits on each node simultaneously.
          
                         Options > System > Multi Node
          
          When enabled, this option activates the internal file
          sharing procedures.  This will enable users to download the
          same file at the same time, read and write messages at the
          same time, along with other options which require
          simultaneous access to the same files.
          
          
          Paths
          ------------------------------------------------------------
          When running a multi-node system it is necessary for each
          node to have its own home directory.  This directory will
          contain any configuration files specific to each node.  For
          example, we will assume that you wish to set up a three node
          system and that your System path is defined as C:\RA in
          RACONFIG:
          
                            System > Paths > System


                                   - 276 -
          Create the following directories:
          
                C:\RA\NODE1
                C:\RA\NODE2
          
          NOTE:  The actual names of the subdirectories are not
          important.  For convenience, you may assign names which
          reflect the node number to which the directory is assigned.
          
          
          CONFIG.SYS and AUTOEXEC.BAT
          ------------------------------------------------------------
          It's likely that you'll need to increase the FILES= setting
          in your CONFIG.SYS file if RemoteAccess is running several
          nodes under a multitasker.

          It is essential that you load SHARE.EXE when operating
          multi-node.  SHARE.EXE is a DOS utility which RemoteAccess
          uses to lock the database files it uses, ensuring that no
          conflicts occur.  If SHARE.EXE is not loaded, you run the
          risk of severe data corruption of the database files used by
          RemoteAccess.
          
          
          Individual Node Configuration
          ------------------------------------------------------------
          Additional configuration flexibility is provided by the method 
          RemoteAccess uses to locate the configuration files.  
          Configuration files are those with a filename extension of .RA.  
          If one or more of the configuration files is present in a 
          particular node directory, then the information contained in 
          those files will override the information contained in the 
          corresponding configuration files in the main system directory.
          For example, it may be necessary for each node to use 
          different modem configuration information.  The following 
          check-list procedure illustrates how you would achieve this.
          
          1)    Copy the MODEM.RA file from the main RemoteAccess
                system directory into each node subdirectory:  For
                example:
          
                COPY C:\RA\MODEM.RA C:\RA\NODE1
                COPY C:\RA\MODEM.RA C:\RA\NODE2

                This will copy the default modem configuration file
                which contains modem information from the system
                directory to the node directories.
          
          2)    To edit the modem configuration for node 1 without
                affecting any other nodes, change to the C:\RA\NODE1
                directory and run RACONFIG.  Make the necessary
                changes to the modem configuration, save and exit.


                                   - 277 -
          3)    Repeat this process for node 2.
          
          This same principal applies to any *.RA configuration file.
          For example, the LIMITS.RA file contains access level
          information.  You can copy this file into one or more of the
          individual node directories where you wish to impose
          separate access limitations and edit the settings for that
          node by following the same process just described.  This
          would allow you to have different access configurations for
          each node in use.

          Each of the configuration files used by RemoteAccess, along
          with a brief description of its contents, are described as
          follows:
          
          CONFIG.RA    This is the main configuration file.  Any
                       information not stored in any of the following
                       files is contained in this file.
          
          EVENTS.RA    System event information.
          
          FGROUPS.RA   File group configuration information.
          
          FILES.RA     File area configuration information.
          
          LANGUAGE.RA  Language configuration information.
          
          MESSAGES.RA  Message area configuration information.
          
          MGROUPS.RA   Message group configuration information.
          
          MODEM.RA     Modem configuration information.
          
          PAGE.RA      Paging configuration information.
          
          PROTOCOL.RA  Internal and external file transfer protocol
                       information.
          
          LIMITS.RA    Security level access configuration
                       information.
          

          Exit and Log Files
          ============================================================
          RemoteAccess will maintain a separate system log file and
          usage graph file (TIMELOG.BBS) in each line directory.  The
          system log filename used is defined in RACONFIG:
          
                          System > Paths > System Log
          
          As long as a directory path is not included in the System
          Log field, RemoteAccess will write a system log file in the


                                   - 278 -
          appropriate node directory.  This allows you to maintain
          separate log files for each individual node.  By specifying
          a path along with the filename in the System Log field,
          RemoteAccess will only use one log file for all nodes,
          mixing log entries from all nodes.

          The placement of the EXITINFO.BBS, DORINFO1.DEF and DOOR.SYS
          exit files is handled differently in a multi-node
          environment.  In a single-node environment, these files are
          written to the RemoteAccess system directory.  In a
          multi-node environment, they are written to the current
          (default) directory (which is usually the subdirectory of
          the particular node in use).  For example, if RemoteAccess
          is started from the C:\RA\NODE1 directory, that directory is
          the default directory where exit files will be written. This
          type of operation ensures that each node has its own set of
          exit files to which external programs known as doors may
          refer.
          
          NOTE:  Regardless of the node number that is generating the
          exit files, RemoteAccess always creates a DORINFO1.DEF file.
          Some implementations of this type of exit file write a
          DORINFOn.DEF where "n" is the node number for which the file
          was created.  This type of naming convention can only
          accommodate nodes 1 through 9.  For this reason,
          RemoteAccess does not support this type of operation.
          
          
          Batch Files
          ============================================================
          A batch file which runs each individual node is required for
          proper multi-node operation.  While it is beyond the scope
          of this manual to teach batch file operations, examples are
          provided in the Reference Information chapter to help you
          understand what is required.

          The following simple batch file segment illustrates the most
          basic requirements for running node 2.
          
          REM Start up node 2
          :START
            CD \RA\NODE2
            RA -N2
          GOTO START
          
          The use of the -N2 parameter in the above example indicates
          which node is being run and is necessary for RemoteAccess to
          operate correctly.
          
          NOTE:  The above example does not include or explain any
          errorlevel detection.  For a full example of errorlevel
          checking, see the Batch Files section of the Reference


                                   - 279 -
          Information chapter.





















































                                   - 280 -
          Chapter 10
          Mail Networking
          *	
          *	
          *	
          *	
          A mail network is a collection of bulletin board systems
          which transfer mail and files between member systems.  This
          transfer of mail is normally carried out automatically and
          during predefined schedules without the need for human
          intervention.  This chapter explains the principals of such
          mail networks as well as how they are supported and
          implemented from within RemoteAccess.









































                                   - 281 -
          PRINCIPALS OF A MAIL NETWORK

          All of the explanations that follow relate to FidoNet, the
          world's largest amateur mail network.  FidoNet consists of
          approximately 23,000 bulletin board systems.  Each system
          (also referred to as a node) is assigned a unique network
          address which is entered into a master list of all FidoNet
          systems.  This list, commonly referred to as a nodelist, is
          distributed to each node in the network and is used much
          like a telephone directory.

          Being part of a network has two basic attractions; NetMail
          and EchoMail.  NetMail allows you to send a private message
          to a user of any one of the bulletin boards in the network
          at little or no cost to you.  EchoMail is a method of
          creating a huge message area that many hundreds of systems
          can potentially participate in.  Usually, EchoMail areas
          contain only public messages, and are organized into either
          general discussion areas, or areas that deal with specific
          issues, or topics.

          The network is organized into several levels which are
          usually based on geographical proximity.  At the highest
          level there are six zones; zone 1 is the USA, zone 2 is
          Europe, zone 3 is the Pacific Rim, zone 4 is South America,
          zone 5 is Africa and zone 6 is Asia.  Within each zone are a
          number of regions that span large geographical areas.
          Typically, there will be between 5 and 18 regions per zone.
          Each region is further divided into nets.  Each net has a
          unique net number, and the distribution of these nets is
          also based on geographical and technical considerations.
          Finally, within the individual nets are a number of nodes.
          A node refers to a single bulletin board system.

          To find out how to obtain a node listing, contact your
          nearest FidoNet bulletin board.  The Sysop will usually be
          more than happy to help.
          

          ADDITIONAL REQUIREMENTS

          To operate RemoteAccess within a mail network such as
          FidoNet, you will require some additional software.  First,
          you will need a program that supports non-human callers.
          That is, a program which can originate and receive calls to
          and from other nodes within the network for the purpose of
          transferring mail and files.  This type of program is often
          referred to as a Front End Mailer.  The basic principal of a
          Front End Mailer is that it is loaded before the BBS and
          uses its own internal event schedule and configuration to
          determine its operational characteristics.



                                   - 282 -
          When an incoming call is received, a Front End Mailer
          answers the call instead of RemoteAccess.  It determines
          whether the caller is another network node or a human
          caller. If the caller is another node, the Front End Mailer
          performs network transfers as required.  However, if the
          caller is human (not another network node), the Front End
          Mailer exits to the calling batch file which then loads
          RemoteAccess.  Some suitable Front End Mailers are:
          
          FrontDoor, by Joaquim Homrighausen
          Intermail, by Scandinavian PC Systems AB
          D'Bridge, by Chris Irwin
          
          These packages are usually available from other FidoNet
          systems.

          The other piece of software you'll need is an EchoMail
          Processor, which is a program that unpacks received network
          mail and imports it into your message database.  It also
          exports outgoing mail from your message database, packing it
          up for delivery.  There are several EchoMail processors
          which support RemoteAccess, including:
          
          TosScan, by Joaquim Homrighausen
          GEcho, by Gerard J. van der Land
          FastEcho, by Software Technik Burchhardt
          FMail, by Folkert Wijnstra
          RA-Echo, by Roger Kirchhoff
          

          CONFIGURING REMOTEACCESS

          Once you have acquired and installed a Front End Mailer and
          EchoMail Processor, there are a few configuration items
          which need to be changed in RemoteAccess.
          
          
          Node Number
          ------------------------------------------------------------
          The node number is a number by which individual members of a
          mail network are identified.  In FidoNet, node numbers are
          assigned by a member of the administrative structure and
          take on the format:
          
                              Zone:Net/Node.Point

          This initial network address should be entered into your
          RemoteAccess configuration.  Enter this information in
          RACONFIG:
          
                           System > Addresses > Main
          


                                   - 283 -
          Don't concern yourself with AKA addresses at this stage.
          They are only used when participating in more than one mail
          network.
          
          
          Message Areas
          ------------------------------------------------------------
          The next step is to setup your EchoMail message areas.  You
          will usually be given a list of areas that are available by
          a local network administrator.  Each area is identified by
          an uppercase alphanumeric tag name.  As far as RemoteAccess
          is concerned, all you need is a description of each area you
          plan to plug into.  Setup the EchoMail areas just as you
          would any other message area with the following exceptions:
          
          Fire up RACONFIG:
          
                    Manager > Msg Areas > (individual area)
          
          Set the Status field to Public and the Type field to
          EchoMail.  Most EchoMail areas don't allow the use of
          handles, so you should also ensure that the area is
          configured to use Real names only.  The AKA field shows your
          assigned node number.  If it doesn't, press <ENTER> on this
          field and select the correct network address.
          

          Origin Lines
          ------------------------------------------------------------
          Each EchoMail message that is posted on your system could
          potentially be read by hundreds of other Sysops and their
          users, so you can put a one-liner at the end of each message
          automatically.  This should contain at least the name of
          your system, and possibly where it is located or the
          telephone number, so that other users know where the message
          originated.  Your node number is automatically appended to
          the end of the origin line.  A typical origin line might
          read:
          
          * Origin: RemoteAccess Central (2:270/18)
          
          The text "* Origin:" is automatically inserted by
          RemoteAccess and/or your EchoMail Processor.  Most EchoMail
          Processors allow you to define a different origin line for
          each EchoMail area.  RemoteAccess allows you to define a
          default origin line which will be used unless replaced by
          other software.  This is configured in RACONFIG:
          
                      Options > Messages > Default Origin
          
          If you are running a multi-node system and each node has a
          different network address, the proper address may be


                                   - 284 -
          inserted in the origin line by specifying the @ macro
          character. For example, the origin line:
          
                RemoteAccess Central @
          
          Would be appended as:
          
                * Origin: RemoteAccess Central 1 (2:270/18)
          
          
          NetMail Areas
          ------------------------------------------------------------
          The next step is to configure RemoteAccess to support
          NetMail.  This step is optional since most Front End Mailers
          support a NetMail message area directly and have access to a
          nodelist directory.  However, RemoteAccess can be configured
          to include a NetMail message area and supports node costing
          as well.

          Define a message area using RACONFIG, giving it an
          appropriate name such as NetMail.  Next, set the Type field
          to NetMail and the Status field to Private.  RemoteAccess
          incorporates a comprehensive on-line nodelist browsing
          facility, which allows users to search for nodes within
          particular zones, regions or nets.  The next section
          explains how to enable this feature.

          Once this step is complete, RemoteAccess is fully configured
          for receiving and sending mail via a mail network. To
          utilize this setup, you should ensure that the additional
          software explained earlier in this chapter is installed and
          configured properly.  Full instructions are available with
          each respective package.
          

          Installing the Nodelist Files
          ============================================================
          Most other BBS software requires you to maintain large and
          unwieldy custom nodelist files for NetMail operation.
          RemoteAccess uses the raw (St. Louis) nodelist that you
          already have installed for your Front End Mailer, for which
          it builds small (around 5K) index files.  The index files
          are compiled quickly and allow fast nodelist searches and
          references.

          The key to this system is the nodelist index compiler
          RANODE.EXE.  You should adjust your batch files so that it
          is run each time any changes are made to your raw nodelist
          (when you receive an update to your nodelist, for example).
          RANODE locates your raw nodelist file using the path defined
          in RACONFIG:
          


                                   - 285 -
                           System > Paths > Nodelist
          
          RANODE scans the most recent nodelist present in this
          directory and produces the index files NODEIDX.RA and
          NODEINC.RA which it places in your RemoteAccess system
          directory.  If you have multiple nodelists to process,
          simply specify the names of any additional nodelists on the
          command-line when RANODE is executed.
          
          
          Examples
          ------------------------------------------------------------
          Task:         Compile a FidoNet nodelist only.
          
          Conditions:	The raw nodelist is in the C:\NODELIST 
                        directory.
          
          Actions:      Simply set the Nodelist Path in RACONFIG to
                        C:\NODELIST and run RANODE whenever you
                        process updates to the raw nodelist.  No
                        command-line parameters are needed.
          
          
          Task:         Compile a FidoNet and ParaNet combined
                        nodelist.
          
          Conditions:   The FidoNet NODELIST.nnn and ParaNet
                        PARALIST.PVT raw nodelist files are in the
                        C:\NODELIST directory.
          
          Actions:      Set the Nodelist Path in RACONFIG to
                        C:\NODELIST.  Run RANODE with the following
                        command-line parameter:
          
                        RANODE PARALIST.PVT
          
          Up to ten nodelists (including the default FidoNet nodelist)
          may be specified on the command-line.  Wildcard and pattern
          matching characters are valid.  It is not necessary to
          specify the FidoNet nodelist name on the command-line since
          RANODE automatically includes the most recent FidoNet
          nodelist present in the nodelist directory (as defined in
          RACONFIG).
          
          
          Cost Control
          ============================================================
          Typically, there is a cost associated with sending NetMail.
          Unlike EchoMail, NetMail is usually sent directly to other
          systems.  This usually means long distance telephone line
          charges will show up on your telephone bill.  It is
          therefore common practice to have users who wish to send


                                   - 286 -
          NetMail prepay a number of credits to cover the cost of
          messages sent by them, from your system.  The defined cost
          for sent NetMail is then deducted from the user's Credit
          field in the user account record.

          You can define the cost of sending a single message to a
          particular zone, region, net, or even a node in a control
          file called NODECOST.CTL which is located in the
          RemoteAccess system directory.  (See the Control Files
          section of the External Support Files chapter for
          information on editing this file.) Each time a user sends a
          NetMail message, its cost is deducted from the user's
          account.  In fact, users are not permitted to send NetMail
          messages which require a number of credits greater than what
          the user has on account, except when the user's Post Bill
          flag is enabled.

          The cost structure for your entire nodelist is setup by one
          or more entries of five keywords:
          
                DEFAULT <cost>
          
          Assigns <cost> to any nodes that are not assigned a specific
          cost later in the control file.
          
                ZONE <zone> <cost>
          
          Assigns <cost> to all nodes in zone <zone>.  This overrides
          the DEFAULT keyword.
          
                REGION <region> <cost>
          
          Assigns <cost> to all nodes in region <region>.  This
          overrides the DEFAULT and ZONE keywords.
          
                NET <net> <cost>
          
          Assigns <cost> to all nodes in net <net>.  This overrides
          the DEFAULT, ZONE and REGION keywords.

                NODE <node> <cost>
          
          Assigns <cost> to node <node>.  <Node> is a fully qualified
          network address (i.e. 2:270/18).  This overrides all other
          keywords.
          
          
          A Sample NODECOST.CTL File
          ------------------------------------------------------------
          The control file may contain a maximum of 150 entries of
          each keyword.  Duplicate entries are not permitted.
          


                                   - 287 -
          DEFAULT 200      ;A message to anywhere costs 200 credits,
          ZONE    3 60     ;except zone 3 where cost is 60 credits.
          ZONE    2 260    ;Messages to zone 2 cost 260 credits.
          REGION  55 30    ;Within our region only costs 30 credits.
          NET     690 0    ;Msgs in our net are free,
          NODE    690/99 5 ;except this node which isn't local.
          
          Once the NODECOST.CTL file is created, RANODE can be run to
          build the nodelist index files (NODEIDX.RA and NODEINC.RA)
          which are stored in the nodelist directory specified in
          RACONFIG.  These files are required when entering NetMail
          messages or browsing the nodelist from within RemoteAccess.










































                                   - 288 -
          Chapter 11
          Reference Information
          *	
          *	
          *	
          *	
          This chapter provides information not suited for other
          chapters in this manual, including the local status bar,
          Sysop keys, command-line parameters, errorlevels and batch
          file examples. Where possible, reference material has been
          placed together with the information to which it applies in
          an effort to keep information grouped logically.










































                                   - 289 -
          Sysop Keys and the Status Bar
          ============================================================
          While a user is logged-on to your BBS either remotely or
          locally, several keys (called Sysop keys) are available for
          your use.  If there is a security password defined in
          RACONFIG, it must be entered before using any of the Sysop
          ALT keys. Sysop function keys may be used without entering
          the password.  The security password is defined in RACONFIG:
          
                               System > Security
          
          
          Sysop Function Keys
          ------------------------------------------------------------
          The first set of Sysop keys we will outline are the Sysop
          function keys.  These keys are used to change the status bar
          displayed in the window at the bottom of the local console
          screen, while a user is on-line.
          
          F1    This displays the user's name, location, security
                level, time remaining, connection speed and the node
                number in use.  If the user has ANSI or AVATAR
                emulations enabled, they too are displayed.

                NOTE: 
                
                The (F1) status line shows both the users daily time
                limit, as well as the time limit for the current
                session only. If the time limit for the current session
                is LESS than the overall dail time limit, it will be
                displayed to the right of the daily time limit. Eg:

                Time: 90/30

                .. would indicate that the users daily limit is 90
                minutes, and there are 30 minutes remaining before the
                user will have to log off and call again. Note that if
                the user goes into 'overtime' due to the FlexiTime
                option, this will be indicated by a negative number on
                the left:

                Time: -25/15

                .. would indicate that the user has gone overtime by
                25 minutes, and the time limit for the current session
                will expire in 15 minutes.
           
          F2    This displays the user's voice and data telephone
                numbers, the date and time on which the user last
                called, the date the user first called, the number of
                times the user has called and the age and date of
                birth of the user.


                                   - 290 -
          F3    This displays the number of files the user has
                uploaded and downloaded, including the total kilobytes
                of the uploads and downloads.  The user's security
                flag settings are also displayed.
          
          F4    This displays some system statistics such as the name
                of the last caller, total number of calls to the
                system, current time, printer status, local screen
                status and the time and errorlevel of the next system
                event.
           
          F5    This displays the total number of messages posted by
                the user, the highest message number the user has
                read, the user's selected language, the user's group
                number, the number of credits the user has remaining
                and the user's handle.
          
          F6    This displays the comments stored in the user's
                account record.  Additionally, the user's reason for
                requesting a chat is displayed if the user attempted
                to page the Sysop.
          
          F7    This displays the user's interactive EMSI session
                information.  If the user on-line is not using a
                terminal program that supports this functionality, the
                status bar becomes blank when this key is pressed.
          
          F9    This displays a Sysop key command summary.
          
          F10   Pressing this key turns the status bar off in order to
                provide an accurate view of what the on- line user
                sees.  Pressing any of the other valid Sysop function
                keys turns the status bar back on again.
          
          
          Sysop ALT Keys
          ------------------------------------------------------------
          The second set of Sysop keys available are the Sysop ALT
          keys. These are keys that are pressed in conjunction with
          the A key while a user is on-line, although some of these
          are also available while RemoteAccess is waiting for a call
          (these are noted).

          Remember, if a system security password is defined in
          RACONFIG, you will be prompted to enter it when one of these
          keys is selected.  Upon successful entry of the security
          password, RemoteAccess will prompt Remove password lock
          (y,N)? which gives you the opportunity, since the password
          was entered correctly initially, to not require the password
          for subsequent Sysop ALT keys pressed during the current
          session only.
          


                                   - 291 -
          ALT-F1   Activates one of ten predefined functions.
          through  RemoteAccess allows you to configure up to ten
          ALT-F10  functions that may be activated at any time that
                   a user is on-line.  For specific information, see
                   RACONFIG:
          
                                Manager > AltFn Keys
          
          ALT-A    When RemoteAccess is waiting for a call, selecting
                   this option will toggle call answering. For
                   example, if RemoteAccess is waiting for a call and
                   ALT-A is pressed, incoming calls will not be
                   answered.  Pressing this option a second time
                   enables call answering.
          
          ALT-C    Break in for a chat if there is a user logged-on
                   remotely.  Pressing <ESCAPE> exits chat mode and
                   returns the user to the BBS.
          
          ALT-D   Toggles snoop mode.  For example when snoop is on,
                  the local console displays all that is displayed to
                  the user.  When toggled off, only the status bar is
                  displayed.  This option may be selected while a user
                  is on-line or while RemoteAccess is waiting for a
                  call.
          
          ALT-E   Activates a pop-up user attribute editor for the
                  user currently on-line.  This allows you to edit the
                  user's account record in real-time.  See the User
                  Administration chapter for detailed information on
                  user account records.
          
          ALT-H   Hang up on the user immediately.  This drops the
                  telephone connection (if the user is logged-on
                  remotely).
          
          ALT-J   Drop to a DOS shell.  A brief message is displayed
                  to the user when this option is selected and when
                  the DOS shell is exited.  This option may be
                  selected while a user is on-line or while
                  RemoteAccess is waiting for a call.
          
          ALT-L   Lock the user out of the system by dropping the
                  user's security level to zero and hanging up. Just
                  before the call is terminated, the text file
                  LOCKOUT.A?? is displayed to the user, if it exists.
                  See the External Support Files chapter for more
                  information on this text file.
          
          ALT-N   Toggles the Sysop on next flag.  When this mode is
                  activated (indicated by "(SN)" on the F1 status
                  bar), RemoteAccess will pause and page the Sysop for


                                   - 292 -
                  up to two minutes after the current user logs-off.
                  The page may be interrupted by pressing <ENTER> at
                  the local console keyboard. Whether or not the page
                  is interrupted, RemoteAccess will exit with an
                  errorlevel of 2 set which may be trapped by your BBS
                  batch file. {+} Registered only.
          
          ALT-O   This option allows you to enable or disable Sysop
                  paging regardless of the paging schedule defined in
                  RACONFIG.  You should note that the override is
                  permanent and affects all nodes until it is reset.
                  This option may be selected while a user is on-line
                  or while RemoteAccess is waiting for a call.
          
          ALT-P   This option toggles printer logging.  When enabled,
                  any entries that are written to the system log file
                  are also sent to the printer port. This option may
                  be selected while a user is on- line or while
                  RemoteAccess is waiting for a call.
          
          ALT-S   This option allows you to modify the security level
                  of the user currently on-line and records the new
                  level in the user's account record.
          
          
          Other Sysop Keys
          ------------------------------------------------------------
          In addition to the Sysop function and ALT keys, a few other 
          keys are also available.
          
          CTRL-A  This option may only be selected while in chat mode.
                  Selecting it the first time opens a chat log file
                  which then records everything that is typed during a
                  chat with an on-line user.  Selecting it a second
                  time or ending chat mode by pressing the <ESCAPE>
                  key, closes the log file.
          
          UP      Pressing the up-arrow increases the user's time
                  remaining by one minute.
          
          DOWN    Pressing the down-arrow decreases the user's
                  time remaining by one minute.

          PG-UP   Pressing the page-up key will increase the current
                  users time limit for the current session only.

          PG-DN   Pressing the page-down key will decrease the
                  current users time limit for the current session
                  only.
          
          SCROLL- Disables the paging tune.  If this is on when a
          LOCK    user pages the Sysop, no sound will be produced at


                                   - 293 -
                  the local console.  This option may be activated and
                  deactivated whether or not a user is on-line.
                  {+} Registered only.          

          L       Pressing this key while RemoteAccess is waiting for
                  a call will allow you to log-on locally.
          
          ESCAPE  Pressing this key while RemoteAccess is waiting for
                  a call will terminate the program and return to DOS.
          
          NOTE:  Terminating in this manner will always return an
          errorlevel of 0 to DOS regardless of whether the -E
          command-line parameter was passed when invoking
          RemoteAccess.
          

          RemoteAccess Environment Variables
          ============================================================
          RemoteAccess recognizes three environment variables; RA,
          RAOVR and RATEMP.  These are used to determine the locations
          of various program support files.
          
          Environment
          Variable      Description
          ------------------------------------------------------------
          RA            This variable is used to specify the location
                        of the RemoteAccess system directory.  This is
                        usually set in your AUTOEXEC.BAT file during
                        program installation.
          
                        For example, if your RemoteAccess system
                        directory is C:\RA, the installation program
                        inserted the following line in your
                        AUTOEXEC.BAT file:
          
                                        SET RA=C:\RA
          
          RAOVR         This variable is used to specify the location
                        of the RemoteAccess overlay file RA.OVR.   If
                        this variable is set, RemoteAccess will look
                        for its overlay file in the directory
                        contained therein.  This allows you to load
                        the overlay file on a RAM disk which speeds up
                        program execution considerably.
          
                        For example, if you have a RAM disk configured
                        as drive D: and have copied RA.OVR into a
                        directory called TEMP on that disk, you would
                        set the variable:
          
                                      SET RAOVR=D:\TEMP
          


                                   - 294 -
          RATEMP        When RemoteAccess swaps out of memory and onto
                        disk, the swap file is written to the system
                        directory by default.  Setting this variable
                        to a valid path and directory allows you to
                        specify where RemoteAccess will write its swap
                        file.
          
          
          RA.EXE Command-line Parameters
          ============================================================
          When you installed RemoteAccess for the first time, a
          default batch file was created for you.  If you are
          upgrading from a previous version, you've no doubt made
          changes to your BBS batch file since it was first installed.
          In either case, the line in your BBS batch file that
          executes the main program executable file (RA.EXE) may be
          modified to include command-line parameters that alter the
          way in which RemoteAccess loads or operates.

          Command-line parameters are instructions you can give to a
          program when you run it from the DOS command-line or from
          within a batch file.  Each parameter is separated by a space
          which informs DOS of the locations where a command- line
          parameter ends.  The parameters supported by RemoteAccess
          all begin with the dash - or / characters and end with a
          space character.

          The sections of this manual which discuss various utility
          programs included with RemoteAccess also explain any
          available command-line parameters supported by each utility.
          The following list of command-line parameters are accepted
          by the main program executable itself; RA.EXE.
          
          -NOEMS        This parameter forces RemoteAccess to ignore
                        any available EMS memory.  By default,
                        RemoteAccess uses available XMS memory first,
                        and then looks for available EMS memory which
                        is used if insufficient XMS memory is
                        available.  When this parameter is specified,
                        RemoteAccess will use any available XMS memory
                        (unless the -NOXMS parameter is also
                        specified) when swapping itself out of
                        conventional memory or when loading its
                        overlays, instead of using any available EMS
                        memory.
          
          -NOXMS        This parameter forces RemoteAccess to ignore
                        any available XMS memory.  By default,
                        RemoteAccess uses available XMS memory first,
                        and then looks for available EMS memory which
                        is used when insufficient XMS memory is
                        available.  When this parameter is specified,


                                   - 295 -
                        RemoteAccess will use any available EMS memory
                        (unless the -NOEMS parameter is also
                        specified) when swapping itself out of
                        conventional memory or when loading its
                        overlays, instead of using any available XMS
                        memory.
          
          NOTE:  Overlay XMS support does not work with the DR DOS 6.0
          EMM386 memory manager.  Therefore, if you are using this
          memory manager and running DR DOS 6.0, you must disable XMS
          support using the -NOXMS parameter.
          
          -SMALLOVRBUF  If you load the RA.OVR overlay file onto a RAM
                        disk, you can reclaim an extra 12K of
                        conventional memory by specifying this
                        parameter.  This should only be used if you
                        are loading RA.OVR onto a RAM disk and have
                        the RAOVR environment variable set
                        accordingly.
          
          -An           Run RemoteAccess with NetBIOS functions
                        enabled, using LAN adapter n.  For example,
                        -A0 specifies the default LAN adapter should
                        be used.

          -Bxxxxx       Log user on-line at connection speed xxxxx.
                        This parameter is typically used in
                        conjunction with a Front End Mailer where
                        RemoteAccess is loaded while a caller is
                        already connected to the modem.  When fired
                        up, RemoteAccess will use the connection speed
                        specified, which must be a valid BPS
                        connection rate.  In addition to the BPS rate,
                        the secure connection response may also be
                        specified (i.e. -B9600/ARQ).
          
          -Cx           This parameter specifies the communications
                        port to use.  By default, RemoteAccess gets
                        this information from the MODEM.RA file (which
                        is created and maintained by RACONFIG) from
                        the current directory.  If this file cannot be
                        located in the current directory, RemoteAccess
                        searches its system directory.  This
                        command-line parameter can be used to override
                        the setting in the modem configuration file.
          
          -D            Disable the status bar by default.  Specifying
                        this parameter instructs RemoteAccess not to
                        display the status bar window at the bottom of
                        the local console screen.
          
          -Exxx         Exit at errorlevel xxx after the caller


                                   - 296 -
                        logs-off. This setting is used to specify the
                        errorlevel RemoteAccess should return to DOS
                        after a caller logs off .
          
          -G            This parameter is used in conjunction with the
                        -R parameter and instructs RemoteAccess to
                        return to the last menu the user was in at the
                        time of the previous exit to DOS.  The default
                        is to return to the TOP menu when the -R
                        parameter is specified. {+} Registered only.
          
          -L            Run RemoteAccess in local mode.  When this
                        parameter is used, RemoteAccess will present
                        the logon screen on the local console.
          
          -M<F>         Load RemoteAccess in Shell to Mailer mode. See
                        the Shell to Mailer section immediately
                        following this section for a detailed
                        explanation of this feature.  When this
                        parameter is specified, the Front End Mailer
                        command-line must be specified immediately
                        following the -M parameter.  Further, the
                        Mailer command-line must not contain any
                        spaces since a space indicates the end of a
                        command-line parameter to DOS itself. Instead,
                        spaces within the command-line must be
                        substituted with the underscore _ character.
                        See the Batch File Examples section in this
                        chapter for a usage example of this parameter.
          
          -Nxxx         This parameter specifies the node number (xxx)
                        in a multi-node system.  Acceptable values are
                        from 1-250.  For example, to load RemoteAccess
                        as node 20, the parameter -N20 would be used.
          
          -P            This parameter instructs RemoteAccess to
                        log user activity to the printer.
          
          -R            Log user back on-line after a menu function
                        type 15-"Exit to DOS with errorlevel".  When
                        this parameter is specified, RemoteAccess
                        loads just as it would for a new caller except
                        that instead of prompting the user to log-on,
                        it reads the exit file information which was
                        created when a menu function type 15 was
                        executed.  For more information, see menu
                        function type 15 in the Menu Administration
                        chapter.
          
          -S            Set snoop mode off when RemoteAccess is
                        loaded.  By default, snoop mode is enabled,
                        allowing you to see all that is displayed to


                                   - 297 -
                        the user on-line.  Specifying this parameter
                        leaves only the status bar displayed on the
                        local console screen.
          
          -Txxxx        This parameter specifies the time (in minutes)
                        until the next system event.  This is used in
                        conjunction with a Front End Mailer where the
                        mailer passes the time until its next system
                        event.  This ensures that RemoteAccess will
                        not allow a user to remain on-line beyond the
                        Front End Mailer event starting time.
          

          Shell to Mailer Mode
          ============================================================
          When RemoteAccess is used in conjunction with a Front End
          Mailer, it can be loaded in what is referred to as Shell to
          Mailer mode.  This mode allows you to first load
          RemoteAccess which in turn loads a Front End Mailer.  When
          the mailer receives a call and exits to load the BBS,
          RemoteAccess only needs to swap itself back into
          conventional memory from disk or from XMS/EMS memory.  This
          causes RemoteAccess to load faster since it is in fact
          already loaded into memory.

          There are two variations of the Shell to Mailer mode.  The
          first (as in the scenario just described), is where
          RemoteAccess detects the errorlevel returned by the Front
          End Mailer and loads or passes the errorlevel accordingly.
          For example, if the Front End Mailer is configured to exit
          with an errorlevel of 100 when a 2400 BPS caller is
          detected, RemoteAccess can be configured to intercept this
          errorlevel, check its own internal errorlevel definition
          table, and fire up to accommodate the 2400 BPS connection.
          This method is fully explained in the Configuration chapter
          under:
          
                             Options > Errorlevels
          
          A sample batch file is also included later in this chapter
          which illustrates this type of operation.

          The second variation of the Shell to Mailer mode is where
          RemoteAccess is used in conjunction with a DOBBS.BAT batch
          file created by some Front End Mailers.  In this variation,
          the DOBBS.BAT file contains the speed at which the caller is
          connected, the communications port number in use, the number
          of minutes remaining until the next event and possibly a
          string indicating that a secure connection has been
          established (the string ARQ or MNP, for example).  You
          should keep in mind that this method, though used by some
          mailers, is not a defined standard.  For this reason, you


                                   - 298 -
          should know what RemoteAccess looks for in this file.

          First, RemoteAccess uses a pattern matching search to locate
          a file called DOBBS*.BAT in the current directory.  For
          example, some mailers such as FrontDoor, can create these
          files which are named according to their task number
          (DOBBS1.BAT for example).  Once this one-line file is
          located, RemoteAccess reads the fourth word in the file
          which is the number of minutes remaining until the next
          event.

          Next, RemoteAccess compares the error-free secure connection
          string from its modem configuration file with the entire
          line contained in DOBBS*.BAT.  If this string is found,
          RemoteAccess detects that the caller is using an error-
          correcting modem and enables functionality only available
          during error-free connections.

          Once this information has been read, RemoteAccess closes the
          DOBBS*.BAT file.  It then loads according to the errorlevel
          passed by the Front End Mailer, as in the first variation of
          the Shell to Mailer mode.
          

          Errorlevels Returned by RemoteAccess
          ============================================================
          When RemoteAccess exits to DOS either after a user logs-off
          or when a menu function type 15-Exit to DOS with errorlevel
          is executed, your BBS batch file should trap the errorlevel
          and act accordingly.

          The errorlevels RemoteAccess reserves for its own use are
          outlined below.  If these errorlevels are duplicated and
          passed from a Front End Mailer, RemoteAccess adds a value of
          10 to the errorlevel and passes it to the BBS batch file.
          
          Errorlevel	Description
          ------------------------------------------------------------
          0             User logged-off OK (default value).  This
                        default value can be overridden with the -E
                        command- line parameter.
          
          1             Modem initialization error; could not find the
                        communications driver, or the modem failed to
                        initialize.
          
          2             Sysop Next function was active when the user
                        logged off.
          
          3             The user entered one or more NetMail messages
                        during the session.  The message database
                        should be scanned for outgoing NetMail.


                                   - 299 -
          4             The user entered one or more EchoMail messages
                        during the session.  The message database
                        should be scanned for outgoing EchoMail.
          
          5             The user entered both NetMail and EchoMail
                        messages during the session.  The message
                        database should be scanned for outgoing
                        NetMail and EchoMail.

          +----------------------------------------------------------+
          | Here's a Tip!                                            |
          |                                                          |
          | You can force RemoteAccess to exit with a specific       |
          | errorlevel by creating a file called RAXITn.e in the     |
          | Semaphore directory. Then, node n will terminate with    |
          | errorlevel 'e' set.  This file is very powerful and will |
          | disconnect any caller currently on-line for the affected |
          | node.                                                    |
          |                                                          |
          | For example, to cause node 2 to exit to DOS at errorlevel|
          | 25, create the following file in the semaphore directory:|
          |                                                          |
          |                         RAXIT2.25                        |
          +----------------------------------------------------------+
          

          Batch Files Examples
          ============================================================
          RemoteAccess requires a batch file in order to recycle after
          each caller disconnects.  Refer to your DOS reference manual
          if you are not at all familiar with the concept of batch
          files. When RemoteAccess terminates, it passes an errorlevel
          back to the batch file.  The batch file should trap this
          errorlevel and act accordingly.  An errorlevel may be in the
          range of 1 to 255.  Errorlevels 1 to 5 are reserved for use
          by RemoteAccess to indicate certain events which have
          occurred since it was activated.  See the Errorlevels
          section earlier in this chapter for a full list of reserved
          errorlevels.

          
          A Single-node System
          ------------------------------------------------------------
          The following batch file example illustrates how the batch
          file is used to run a single-node system.  This example
          shows how RemoteAccess is run in standalone (without a Front
          End Mailer) mode.
          
          Filename:	RUNRA.BAT
          Comments:     This batch file accepts one command-line
                        parameter and that is the node number that is
                        to be started.  The node number is referenced


                                   - 300 -
                        within the batch file using the %1 variable.
                        Since this batch file will be used to run a
                        single- node system, the proper method of
                        starting the batch file to run node 1 would
                        be:
          
                                           RUNRA  1
          
                        Comment lines have been added which make the
                        batch file more readable.  Comment lines begin
                        with the text REM and are not processed.

          ------------------------------------------------------------
          @echo off
          REM                  Set environment variables.
          SET RA=C:\RA
          
          :Start
             REM               Start the main batch file loop.
             Cls
             Echo Starting RemoteAccess Node %1
             CD \RA\NODE%1
             \RA\RA -E10 -N%1
             REM               After RA exits, trap the errorlevel.
          
          :AfterRA
             IF ERRORLEVEL 20 GOTO Maintain
             IF ERRORLEVEL 10 GOTO Start
             IF ERRORLEVEL 2  GOTO Local
             IF ERRORLEVEL 0  GOTO Quit
          
          :Maintain
             REM               Since this is a 1 node system, we can
             REM               do maintenance tasks outright
             CD \RA
             REM               Pack the user database deleting users
             REM               who have not called in 60 days.  Also
             REM               sort the user file.
             RAUSER -S -P -D60
             REM               Pack the message database purging
             REM               messages according to the threshold 
             REM               information contained in MESSAGES.RA.
             REM               Renumber the database updating reply
             REM               chains and user LastRead pointers.
             RAMSG PACK -Purge -Renumber
             REM               This concludes maintenance tasks.
             REM               Recycle the batch file.
             GOTO Start
          
          :Local
             REM               Local logon mode
             CD \RA\NODE%1


                                   - 301 -
             \RA\RA -E10 -L -N%1
             REM               When finished, goto AfterRA to trap
             REM               the errorlevel returned.
             GOTO AfterRA
          
          :Quit
             REM               Exit the batch file.
          ------------------------------------------------------------

          This simple batch file example assumes that a system event
          is defined which returns an errorlevel of 20.  When this
          errorlevel is detected, RemoteAccess goes to the ':Maintain'
          label and processes the commands to maintenance tasks on the
          user and message databases.
          
          
          A Multi-node System
          ------------------------------------------------------------
          Multi-node systems usually have more complex batch files
          than single-node systems.  However, much of what applies to
          the single-node example, applies to the multi-node example
          as well.

          The following batch file example illustrates how the batch
          file is used to run a multi-node system.  This example shows
          how RemoteAccess is run in standalone (without a Front End
          Mailer) mode.  This batch file is similar to ones that can
          be created automatically by the installation utility,
          RAINSTAL.
          
          Filename:	RUNRA.BAT
          Comments:     This batch file accepts one command-line
                        parameter and that is the node number that is
                        to be started.  The node number is referenced
                        within the batch file using the %1 variable.
                        Since this batch file will be used to run a
                        multi- node system, the proper method of
                        starting the batch file would be:
          
                                    RUNRA  <node number>
          
                        Comment lines have been added which make the
                        batch file more readable.  Comment lines begin
                        with the text REM and are not processed.
          
          ------------------------------------------------------------
          @echo off
          REM                  Set environment variables.
          SET RA=C:\RA
          
          :Start
             REM               Start the main batch file loop.


                                   - 302 -
             Cls
             Echo Starting RemoteAccess Node %1
             CD \RA\NODE%1
             \RA\RA -E10 -N%1
             REM               After RA exits, trap the errorlevel.
          
          :AfterRA
             IF ERRORLEVEL 20 GOTO Maintain
             IF ERRORLEVEL 10 GOTO Start
             IF ERRORLEVEL 2  GOTO Local
             IF ERRORLEVEL 0  GOTO Quit
          
          :Maintain
             REM               Since this is a multi-node system, we
             REM               should leave maintenance tasks to one
             REM               node only to avoid having two nodes
             REM               performing the same tasks at the same
             REM               time.  If node 2 is running the event,
             REM               it will stop and wait until node 1 is
             REM               finished.  It then continues batch file
             REM               execution.
             CD \RA
             REM               If not node 1 go wait while node 1 does
             REM               maintenance tasks.
             IF NOT %1 == 1 GOTO Wait
             REM               Create a semaphore file called
             REM               RAWAIT.SEM
             ECHO ... >RAWAIT.SEM
             REM               Pack the user database deleting users
             REM               who have not called in 60 days.  Also
             REM               sort the user file.
             RAUSER -S -P -D60
             REM               Pack the message database purging
             REM               messages according to the threshold 
             REM               information contained in MESSAGES.RA.
             REM               Renumber the database updating reply
             REM               chains and user LastRead pointers.
             RAMSG PACK -Purge -Renumber
             REM               This concludes maintenance tasks.
             REM               Delete the semaphore file and then
             REM               recycle the batch file.
             ERASE RAWAIT.SEM
             GOTO Start
          
          :Local
             REM               Local logon mode
             CD \RA\NODE%1
             \RA\RA -E10 -L -N%1
             REM               When finished, goto AfterRA to trap
             REM               the errorlevel returned.
             GOTO AfterRA
          


                                   - 303 -
          :Wait
             REM               Wait here until the file RAWAIT.SEM
             REM               no longer exists
             IF EXIST RAWAIT.SEM GOTO Wait
             REM               If it doesn't exist, recycle.
             Goto Start
          
          :Quit
             REM               Exit the batch file.
          ------------------------------------------------------------

          This simple batch file example assumes that a system event
          is defined which returns an errorlevel of 20.  When this
          errorlevel is detected, RemoteAccess goes to the ':Maintain'
          label and processes the commands to maintain the user and
          message databases.

          Since each node will recognize the system event and in order
          to avoid two nodes performing the same maintenance tasks at
          the same time, only node 1 is allowed to actually process
          the maintenance task commands.  Any other node goes to the
          batch file label ':Wait'.  There, it simply waits until the
          semaphore file RAWAIT.SEM (created by node 1) no longer
          exists.
          

          A Multi-node System in Shell to Mailer Mode
          ------------------------------------------------------------
          Although it is beyond the scope of this manual to explain
          how individual Front End Mailers are used, we believe you
          should at least understand how to implement a batch file
          which uses the Shell to Mailer feature.

          The following batch file example illustrates how the batch
          file is used to run a multi-node system.  This example shows
          how RemoteAccess is run in conjunction with FrontDoor, by
          Joaquim Homrighausen.
          
          Filename:	RUNRA.BAT
          Comments:     This batch file accepts one command-line
                        parameter and that is the node number that is
                        to be started.  The node number is referenced
                        within the batch file using the %1 variable.
                        Since this batch file will be used to run a
                        multi- node system, the proper method of
                        starting the batch file to run node 1 would
                        be:
          
                                    RUNRA  <node number>
          
                        Notice the line that calls RemoteAccess using
                        the -M parameter.  The command-line used to


                                   - 304 -
                        call the Front End Mailer directly follows
                        this parameter.  No spaces may be used within
                        this parameter.  Any spaces embedded in the
                        parameter must be replaced by underscore _
                        characters. After RemoteAccess loads into
                        conventional memory, it swaps itself out of
                        memory and loads a DOS shell which executes
                        the Front End Mailer.

                        When the Front End Mailer exits with an
                        errorlevel set, RemoteAccess traps the
                        errorlevel and compares it to the errorlevels
                        defined in RACONFIG. This is the method used
                        to determine the connection type and speed.

                        If a DOBBS*.BAT file is created by the Front
                        End Mailer, RemoteAccess also reads the
                        information in that file to determine the time
                        until the next Front End Mailer event as well
                        as whether the caller has established an
                        error-free connection. When RemoteAccess loads
                        for a caller, it only needs to swap itself
                        back into memory which results in an increase
                        in apparent loading speed.
          
          ------------------------------------------------------------
          @echo off
          REM                  Set environment variables.
          SET RA=C:\RA
          SET FD=C:\FD
          
          :Start
             REM               Start the main batch file loop.
             Cls
             Echo Starting RemoteAccess and shelling to mailer
             CD \RA\NODE%1
             \RA\RA -M\FD\FD.EXE*M -E10 -N%1
             REM               After RA exits, trap the errorlevel.
          
          :AfterRA
             IF ERRORLEVEL 20 GOTO Maintain
             IF ERRORLEVEL 10 GOTO Start
             IF ERRORLEVEL 2  GOTO Local
             IF ERRORLEVEL 0  GOTO Quit
          
          :Maintain
             REM               Since this is a multi-node system, we
             REM               should leave maintenance tasks to one
             REM               node only to avoid having two nodes
             REM               performing the same tasks at the same
             REM               time.  If node 2 is running the event,
             REM               it will stop and wait until node 1 is


                                   - 305 -
             REM               finished.  It then continues batch file
             REM               execution.
             CD \RA
             REM               If not node 1 go wait while node 1 does
             REM               maintenance tasks.
             IF NOT %1 == 1 GOTO Wait
             REM               Create a semaphore file called
             REM               RAWAIT.SEM
             ECHO ... >RAWAIT.SEM
             REM               Pack the user database deleting users
             REM               who have not called in 60 days.  Also
             REM               sort the user file.
             RAUSER -S -P -D60
             REM               Pack the message database purging
             REM               messages according to the threshold 
             REM               information contained in MESSAGES.RA.
             REM               Renumber the database updating reply
             REM               chains and user LastRead pointers.
             RAMSG PACK -Purge -Renumber
             REM               This concludes maintenance tasks.
             REM               Delete the semaphore file and then
             REM               recycle the batch file.
             ERASE RAWAIT.SEM
             GOTO Start
          
          :Local
             REM               Local logon mode
             CD \RA\NODE%1
             \RA\RA -E10 -L -N%1
             REM               When finished, goto AfterRA to trap
             REM               the errorlevel returned.
             GOTO AfterRA
          
          :Wait
             REM               Wait here until the file RAWAIT.SEM
             REM               no longer exists
             IF EXIST RAWAIT.SEM GOTO Wait
             REM               If it doesn't exist, recycle.
             Goto Start
          
          :Quit
             REM               Exit the batch file.
          ------------------------------------------------------------
          
          As you can see, this batch file example is identical to the
          multi-node example except for the line that executes
          RemoteAccess in Shell to Mailer mode.







                                   - 306 -
Page hit counter
last updated by MFL on
15-Mar-2010 13:00
Copyright © 1996-2010, Waldo's Place USA