home *** CD-ROM | disk | FTP | other *** search
/ Beijing Paradise BBS Backup / PARADISE.ISO / software / BBSDOORW / RA_202.ARJ / RA.DOC < prev    next >
Text File  |  1994-06-23  |  718KB  |  18,377 lines

  1.                 
  2.  
  3.  
  4.  
  5.  
  6.                                                                     
  7.                                
  8.                                                                     
  9.                                    
  10.                                                                     
  11.                                    
  12.                                                                     
  13.                                    
  14.                                                                     
  15.                                    
  16.                                                                     
  17.                                    
  18.          
  19.                                                                                
  20.                                                                                
  21.      ┌─────────┐┌───────┐ ┌────────────┐┌──────────┬───────────┬───────┐
  22.      │  ┌───┐  ││   ┌───┘ │  ┌─┐  ┌─┐  ││  ┌───┐   ├────┐  ┌───┤   ┌───┘
  23.      │  │   │  ││   └───┐ │  │ │  │ │  ││  │   │   │    │  │   │   └───┐
  24.      │  └───┘  └┤   ┌───┘ │  │ │  │ │  └┤  │   │   └┐   │  └┐  │   ┌───┘
  25.      │  ┌────┐  │   └─────┤  │ │  │ │   │  └───┘    │   │   │  │   └─────┐
  26.      │  │    │  │         │  │ │  │ │   │           │   │   │  │         │
  27.      └──┘    └──┴─────────┴──┘ └──┘ └───┴───────────┘   └───┘  └─────────┘
  28.         
  29.                                                                                
  30.           ┌──────────┬──────┐ ┌──────┐ ┌───────┐ ┌───────┐ ┌───────┐
  31.           │  ┌───┐   │   ┌──┘ │   ┌──┘ │   ┌───┘ │   ┌───┘ │   ┌───┘
  32.           │  │   │   │   │    │   │    │   └───┐ │   └─────┤   └─────┐
  33.           │  └───┘   │   │    │   │    │   ┌───┘ └─────┐   ├─────┐   │
  34.           │  ┌────┐  │   └────┤   └────┤   └─────┬─────┘   ├─────┘   │
  35.           │  │    │  │        │        │         │         │         │
  36.           └──┘    └──┴────────┴────────┴─────────┴─────────┴─────────┘
  37.             
  38.                                                          
  39.                                                                                
  40.   
  41.                                RemoteAccess 2.02
  42.  
  43.                   
  44.           Copyright (C) 1989-1994 Wantree Development & Andrew Milner
  45.  
  46.                               All Rights Reserved    
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.                                      
  65.                 Dedicated to the memory of Fred "Levi's" Horner
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.                                      
  129.           ════════════════════════════════════════════════════════════
  130.                               Table Of Contents
  131.       ────────────────────────────────────────────────────────────
  132.  
  133.           Chapter 1..................................................4
  134.           Introduction...............................................4
  135.             Top Down View............................................5
  136.             Preamble and Credits.....................................7
  137.             Licensing Information (Shareware version)................8
  138.             How to register..........................................9
  139.             The key system..........................................12
  140.             Product Support.........................................13
  141.             Installation............................................16
  142.           Configuration.............................................18
  143.           RACONFIG..................................................19
  144.             The User Interface......................................19
  145.             Running RACONFIG........................................20
  146.           THE FILE MENU.............................................21
  147.             Switches................................................21
  148.             Info....................................................21
  149.             Exit....................................................21
  150.             DOS Shell...............................................21
  151.           THE SYSTEM MENU...........................................22
  152.             Paths...................................................22
  153.               System................................................22
  154.               Menus.................................................22
  155.               Text Files............................................22
  156.               Msg Base..............................................22
  157.               File Base.............................................23
  158.               File attach...........................................23
  159.               Nodelist..............................................23
  160.               CD-ROM temp...........................................23
  161.               Semaphore.............................................23
  162.               Rearchive.............................................24
  163.               System log............................................24
  164.             Site Info...............................................24
  165.               Name..................................................24
  166.               Sysop.................................................24
  167.               Location..............................................24
  168.               Addresses.............................................25
  169.             Security................................................25
  170.           THE OPTIONS MENU..........................................25
  171.             Messages................................................25
  172.               Check For New Mail During Log-on......................25
  173.               Full Mail Check.......................................26
  174.               Quote String..........................................26
  175.               External Editor.......................................27
  176.               Default Origin........................................27
  177.               Reply Header..........................................28
  178.               Message Uploads.......................................28
  179.               Echo Net Replies......................................29
  180.               Net Kill Sent.........................................29
  181.               Confirm Delete........................................29
  182.               Net Crash Option......................................29
  183.               Net Crash Force.......................................30
  184.               Net Attach............................................30
  185.               Group Mail............................................30
  186.               CC Mail...............................................31
  187.               Return Receipts.......................................31
  188.               Net Receipts..........................................32
  189.  
  190.       ────────────────────────────────────────────────────────────
  191.  
  192.       ────────────────────────────────────────────────────────────
  193.  
  194.             Files...................................................32
  195.               Upload Credit.........................................32
  196.               Payback Credit........................................32
  197.               Touch Dates...........................................33
  198.               Show Missing..........................................33
  199.               Upload Space..........................................33
  200.               Logon New Files.......................................33
  201.               New Files Tag.........................................34
  202.               Download Start and Download End.......................34
  203.               Download Speed........................................34
  204.               No Dupe Extension.....................................34
  205.               DL Description........................................35
  206.               List Format...........................................35
  207.               Missing Format........................................37
  208.               Upload Scan...........................................37
  209.               RAMGR Function Keys...................................38
  210.               External Archive Viewer...............................38
  211.               Archivers.............................................38
  212.             Restrictions............................................39
  213.               Log-on Speed..........................................40
  214.               ANSI Speed............................................40
  215.               No300 Start and No300 End.............................40
  216.             Errorlevels.............................................40
  217.               Fax...................................................42
  218.             Display.................................................42
  219.               Monochrome............................................42
  220.               Direct Screen Write Mode..............................43
  221.               Snow Checking.........................................43
  222.               Display Lines (Size)..................................43
  223.             Colors..................................................43
  224.             Paging..................................................44
  225.               Duration..............................................44
  226.               Maximum Number........................................44
  227.               Ask Why...............................................44
  228.               Sysop Messages........................................45
  229.               External Chat Utilities...............................45
  230.               Suspend Time During Chat..............................45
  231.               Automatic Logging of Chat Sessions....................45
  232.               Paging Availability Schedule..........................46
  233.             New Users...............................................46
  234.               Security..............................................46
  235.               Flags.................................................46
  236.               Credit................................................49
  237.               Group.................................................49
  238.               ANSI..................................................50
  239.               AVATAR................................................50
  240.               ClrScr................................................50
  241.               More..................................................50
  242.               Sub Days..............................................50
  243.               Upload Credit (number of files).......................50
  244.               EchoMail Check........................................51
  245.               Sex...................................................51
  246.               Data Phone............................................51
  247.               Voice Phone...........................................51
  248.               One Word Names........................................51
  249.               Handle................................................51
  250.               Birth Date............................................52
  251.               Hot-Keys..............................................52
  252.               Full-Screen Message Viewer............................52
  253.  
  254.       ────────────────────────────────────────────────────────────
  255.  
  256.       ────────────────────────────────────────────────────────────
  257.  
  258.               Full-Screen Message Editor............................52
  259.               IEMSI.................................................53
  260.               Language..............................................54
  261.               Date Format...........................................54
  262.               Capitalize Location...................................54
  263.               Upload Credit Kilobytes...............................54
  264.               Mailing Address.......................................54
  265.               Telephone Scan........................................55
  266.             System..................................................55
  267.               Fast Log-Ons..........................................55
  268.               Check Multi-Node Access...............................55
  269.               Remote Sysop..........................................55
  270.               Exclude Sysop.........................................55
  271.               Text Shells...........................................56
  272.               Log Style.............................................56
  273.               Multi-Node............................................57
  274.               Environment...........................................57
  275.               Screen Blanking.......................................57
  276.               Pausing After System Messages.........................57
  277.               ALT-J Swap (Shelling to DOS)..........................58
  278.               Use XMS...............................................58
  279.               Use EMS...............................................58
  280.               IEMSI.................................................58
  281.               Password Echo Character...............................58
  282.               Automatic ANSI Detection..............................58
  283.               Password Tries........................................59
  284.               Password Change Forcing...............................59
  285.               Strict Password Checking..............................59
  286.               Minimum Password Length...............................59
  287.               Log-on Time...........................................59
  288.               User Inactivity Timeout...............................60
  289.               Watchdog Area.........................................60
  290.               Sysop Area............................................60
  291.               Check DOB.............................................61
  292.             Prompts.................................................61
  293.               Log-on Prompt.........................................61
  294.               Left and Right Brackets...............................61
  295.               Language Prompt.......................................61
  296.               Language Header.......................................61
  297.             Printer.................................................62
  298.               Selecting the Printer Port............................62
  299.           THE MODEM MENU............................................62
  300.             Options.................................................62
  301.               Comport...............................................62
  302.               Speed.................................................63
  303.               Lock..................................................63
  304.               Answer................................................63
  305.               Delay.................................................64
  306.               Buffer................................................64
  307.               Break.................................................64
  308.               Tries.................................................64
  309.               Offhook...............................................65
  310.             Commands................................................65
  311.               Initialization Strings................................65
  312.               Busy..................................................66
  313.               Answer................................................66
  314.             Responses...............................................66
  315.               Init..................................................66
  316.  
  317.       ────────────────────────────────────────────────────────────
  318.  
  319.       ────────────────────────────────────────────────────────────
  320.  
  321.               Busy..................................................67
  322.               Ring..................................................67
  323.               Secure................................................67
  324.               300 - 38400...........................................68
  325.           THE MANAGER MENU..........................................68
  326.             Message Areas...........................................68
  327.               Name..................................................69
  328.               Origin................................................69
  329.               Read, Write and Sysop Security........................69
  330.               Type..................................................70
  331.               Status................................................70
  332.               Users.................................................71
  333.               Days Old, Days Rcvd and Max Msgs......................71
  334.               Echoinfo..............................................72
  335.               Combined..............................................72
  336.               Attaches..............................................72
  337.               SoftCRs...............................................72
  338.               Deletes...............................................72
  339.               AKA...................................................73
  340.               Age...................................................73
  341.               Group.................................................73
  342.               Area Type.............................................73
  343.               JAMbase...............................................74
  344.               AltGroup1, AltGroup2 and AltGroup3....................75
  345.             Message Groups..........................................75
  346.               Name..................................................76
  347.             File Areas..............................................76
  348.               Name..................................................76
  349.               Path..................................................76
  350.               Download, List and Upload Security....................77
  351.               New...................................................77
  352.               Dupes.................................................77
  353.               CD-ROM................................................78
  354.               Free..................................................78
  355.               LongDesc..............................................78
  356.               DirectDL..............................................78
  357.               PwdUL.................................................78
  358.               UL Scan...............................................78
  359.               ArcType...............................................79
  360.               DL Days...............................................79
  361.               FD Days...............................................79
  362.               MoveArea..............................................79
  363.               Min Age...............................................80
  364.               Password..............................................80
  365.               Group.................................................80
  366.               Def. Cost.............................................81
  367.               Uploads...............................................81
  368.               Alternate File Groups.................................81
  369.               Device................................................81
  370.               AllGroups.............................................82
  371.             File Groups.............................................82
  372.             Protocols...............................................83
  373.               Name..................................................85
  374.               Key...................................................85
  375.               Ext Ctl File..........................................85
  376.               Batch.................................................85
  377.               Status................................................86
  378.               Log File..............................................86
  379.               Control File..........................................86
  380.  
  381.       ────────────────────────────────────────────────────────────
  382.  
  383.       ────────────────────────────────────────────────────────────
  384.  
  385.               DL and UL Command Line................................86
  386.               DL Ctl String.........................................87
  387.               UL Ctl String.........................................87
  388.               DL Log Keyword and UL Log Keyword.....................87
  389.               Log Name Keyword......................................88
  390.               Log Desc Word.........................................88
  391.             Languages...............................................89
  392.             Alt-Function Keys.......................................91
  393.             Events..................................................92
  394.               Start.................................................93
  395.               Status................................................93
  396.               Errorlevel............................................93
  397.               Forced................................................93
  398.               Days..................................................94
  399.             Menus...................................................94
  400.             Control Files...........................................94
  401.             Combined................................................95
  402.             Limits..................................................95
  403.               Security..............................................96
  404.               Time..................................................96
  405.               Download Limits for Individual Baud Rates.............96
  406.               Local.................................................96
  407.               RatioNum..............................................97
  408.               RatioK................................................97
  409.               PerMin................................................97
  410.           Chapter 3.................................................98
  411.           Menu Administration.......................................98
  412.             ABOUT MENUS.............................................99
  413.             MENU LAYOUT.............................................99
  414.             AUTOMATIC COMMANDS.....................................104
  415.             TEMPLATES..............................................105
  416.             MESSAGE AND FILE GROUPS................................107
  417.             THE TOP MENU...........................................108
  418.             SPECIAL SWITCHES.......................................109
  419.             GLOBAL MENU............................................109
  420.             CREATING MENUS.........................................109
  421.             MENU TYPES LISTING.....................................122
  422.           Chapter 4................................................174
  423.           External Support Files...................................174
  424.             OVERVIEW...............................................175
  425.             TEXT FILES EXPLAINED...................................175
  426.             CONTROL CODES..........................................177
  427.             CONTROL CODES LISTING..................................180
  428.               System Function Codes................................180
  429.               System Data Codes....................................181
  430.               User Data Codes......................................183
  431.               Color Control Codes..................................184
  432.             TEXT FILES LISTING.....................................185
  433.             CONTROL FILES..........................................197
  434.               Editing Control Files................................197
  435.             CONTROL FILES LISTING..................................199
  436.           Chapter 5................................................203
  437.           User Administration......................................203
  438.             NEW USER DEFAULTS......................................204
  439.             USING REMOTEACCESS MANAGER.............................204
  440.               Modifying a User.....................................205
  441.               Finding a User.......................................205
  442.               Adding a User........................................205
  443.               Deleting a User......................................205
  444.  
  445.       ────────────────────────────────────────────────────────────
  446.  
  447.       ────────────────────────────────────────────────────────────
  448.  
  449.               Account Record Fields................................206
  450.               Guest Accounts.......................................207
  451.             RAUSER.................................................208
  452.           Chapter 6................................................209
  453.           Message Database Administration..........................209
  454.             SPECIFICATIONS.........................................210
  455.               JAM Database Files...................................210
  456.               Hudson Database Files................................211
  457.               Something in Common..................................212
  458.             LIMITATIONS............................................212
  459.             MAINTENANCE............................................212
  460.               Running RAMSG........................................213
  461.               Errorlevels..........................................215
  462.           Chapter 7................................................216
  463.           File Database Administration.............................216
  464.             ABOUT THE FILE DATABASE................................217
  465.             Administration Utilities...............................218
  466.               GENFBASE.EXE.........................................218
  467.               RAFILE.EXE...........................................224
  468.                 RAFILE Command-line Parameter Descriptions.........225
  469.               RAMGR.EXE............................................230
  470.           Chapter 8................................................236
  471.           Questionnaires...........................................236
  472.             WHAT IS A QUESTIONNAIRE?...............................237
  473.             Automatic Questionnaires...............................238
  474.             Script Command Listing.................................239
  475.             Example Questionnaires.................................248
  476.           Chapter 9................................................253
  477.           Multi-node Operation.....................................253
  478.             CONFIGURATION..........................................254
  479.               RACONFIG.............................................254
  480.               Paths................................................254
  481.               CONFIG.SYS and AUTOEXEC.BAT..........................255
  482.               Individual Node Configuration........................255
  483.             Exit and Log Files.....................................256
  484.             Batch Files............................................257
  485.           Chapter 10...............................................258
  486.           Mail Networking..........................................258
  487.           PRINCIPALS OF A MAIL NETWORK.............................259
  488.             ADDITIONAL REQUIREMENTS................................259
  489.             CONFIGURING REMOTEACCESS...............................260
  490.               Node Number..........................................260
  491.               Message Areas........................................261
  492.               Origin Lines.........................................261
  493.               NetMail Areas........................................262
  494.             Installing the Nodelist Files..........................262
  495.             Cost Control...........................................263
  496.               A Sample NODECOST.CTL File...........................264
  497.           Chapter 11...............................................265
  498.           Reference Information....................................265
  499.             Sysop Keys and the Status Bar..........................266
  500.               Sysop Function Keys..................................266
  501.               Sysop ALT Keys.......................................267
  502.               Other Sysop Keys.....................................268
  503.             RemoteAccess Environment Variables.....................269
  504.             RA.EXE Command-line Parameters.........................270
  505.             Shell to Mailer Mode...................................273
  506.             Errorlevels Returned by RemoteAccess...................274
  507.             Batch Files Examples...................................275
  508.  
  509.       ────────────────────────────────────────────────────────────
  510.  
  511.       ────────────────────────────────────────────────────────────
  512.  
  513.               A Single-node System.................................275
  514.               A Multi-node System..................................277
  515.               A Multi-node System in Shell to Mailer Mode..........279
  516.  
  517.           ════════════════════════════════════════════════════════════
  518.  
  519.  
  520.                                      
  521.           Chapter 1
  522.           Introduction
  523.           *    
  524.           *    
  525.           *    
  526.           *    
  527.           This chapter explains how to use this manual as a procedural
  528.           guide as well as a reference guide.  It also explains the
  529.           icons, sidebars and procedural steps which were included to
  530.           illustrate step-by-step procedures and highlight various
  531.           features and functions.
  532.  
  533.  
  534.  
  535.  
  536.  
  537.  
  538.  
  539.  
  540.  
  541.  
  542.  
  543.  
  544.  
  545.  
  546.  
  547.  
  548.  
  549.  
  550.  
  551.  
  552.  
  553.  
  554.  
  555.  
  556.  
  557.  
  558.  
  559.  
  560.  
  561.  
  562.  
  563.  
  564.  
  565.  
  566.  
  567.  
  568.  
  569.  
  570.  
  571.  
  572.  
  573.  
  574.  
  575.  
  576.  
  577.  
  578.  
  579.  
  580.  
  581.  
  582.  
  583.  
  584.                                    - 4 -
  585.           Top Down View
  586.           ════════════════════════════════════════════════════════════
  587.           This manual was written with a twofold target audience.
  588.           First, the novice; one who has never used RemoteAccess
  589.           before, and second; the experienced Sysop.  For the novice,
  590.           this manual provides clear, in-depth descriptions of
  591.           concepts and features as well as check-list procedures to
  592.           assist in feature implementation.  For the experienced
  593.           Sysop, the same features are available in addition to many
  594.           reference examples and a useful index.
  595.  
  596.           In an effort to provide comprehensive documentation, we've
  597.           taken a top-down approach.  Each feature and concept is
  598.           explained in the order in which it is implemented or
  599.           configured.  The chapters themselves are laid out in order
  600.           of implementation and usage progression.  If you start at
  601.           the beginning of this manual and work your way through its
  602.           chapters, you will have learned RemoteAccess from a top down
  603.           perspective and will be on your way to setting up a unique
  604.           system all your own.
  605.           
  606.           Throughout this manual, you will notice various symbols and 
  607.           text formatting which are used to attract your attention or 
  608.           indicate an action or reference.  The following legend gives an 
  609.           explanation for each.
  610.  
  611.           
  612.           The "NOTE" Symbol
  613.            
  614.           This symbol is used to attract your attention to important 
  615.           notes.  Wherever you see this symbol, read the notes that 
  616.           follow.
  617.  
  618.           
  619.           The CHEVRON POINTER Symbol ">"
  620.  
  621.           This symbol is used within a line of text to illustrate how
  622.           to get to a specific option or feature in the RemoteAccess
  623.           configuration program (RACONFIG) by selecting the sub- menus
  624.           pointed to.  Wherever you see the > symbol, you will see a
  625.           map instructing you which pick-list menus should be selected
  626.           to access a specific area of RACONFIG.
  627.  
  628.           Pick-list menus are pull-down or pop-up menus that contain a
  629.           list of selections from which to choose.  Pick-list menus
  630.           are often available from other pick-list menus.  The
  631.           following example shows how the pointer symbol is used to
  632.           indicate a position in RACONFIG:
  633.           
  634.                                  System > Paths
  635.           
  636.           This indicates that from the main pick-list menu in
  637.           RACONFIG, you should select the System pick-list menu. From
  638.           the System pick-list menu, you should select Paths. Many
  639.           references to specific areas of RACONFIG are made in this
  640.           manner throughout this manual, in order to give you an
  641.           instant indication where to find a given area in RACONFIG.
  642.           
  643.  
  644.  
  645.  
  646.  
  647.  
  648.                                    - 5 -
  649.           CHECK LIST Procedures
  650.  
  651.           This manual guides you through several step-by- step
  652.           check-lists that allow easy implementation of certain
  653.           features of RemoteAccess.  Wherever you see numbered lists
  654.           (i.e. 1), 2), 3)), you will find a check-list procedure.
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.  
  668.  
  669.  
  670.  
  671.  
  672.  
  673.  
  674.  
  675.  
  676.  
  677.  
  678.  
  679.  
  680.  
  681.  
  682.  
  683.  
  684.  
  685.  
  686.  
  687.  
  688.  
  689.  
  690.  
  691.  
  692.  
  693.  
  694.  
  695.  
  696.  
  697.  
  698.  
  699.  
  700.  
  701.  
  702.  
  703.  
  704.  
  705.  
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.                                    - 6 -
  713.           Preamble and Credits
  714.           ════════════════════════════════════════════════════════════
  715.           RemoteAccess started as one of those spare-time projects in
  716.           early 1989. After about eight months of initial development I
  717.           released version 0.01 on the 25th of January, 1990. Over three
  718.           years later as this is written, after five major releases, a
  719.           couple of maintenance releases, several thousand registered
  720.           users (thanks!) and an uncountable number of other changes in
  721.           my life, RemoteAccess has become a full-time occupation.
  722.  
  723.  
  724.           I'd like to thank John Parlin for his patience in updating
  725.           this documentation, along with the RemoteAccess support and
  726.           beta groups. The size of the list of individuals who have 
  727.           contributed in other ways has become ridiculous, so rather
  728.           than name everyone separately, I will take the easy way out
  729.           and say "thanks". You know who you are.
  730.  
  731.  
  732.  
  733.  
  734.                                             Andrew Milner,
  735.                                             Clearwater, Florida, USA. 
  736.                                             ─────────────────────────
  737.  
  738.  
  739.  
  740.  
  741.  
  742.  
  743.  
  744.  
  745.  
  746.  
  747.  
  748.  
  749.  
  750.  
  751.  
  752.  
  753.  
  754.  
  755.  
  756.  
  757.  
  758.  
  759.  
  760.  
  761.  
  762.  
  763.  
  764.  
  765.  
  766.  
  767.  
  768.  
  769.  
  770.  
  771.  
  772.  
  773.  
  774.  
  775.  
  776.                                    - 7 -
  777.           Licensing Information (Shareware version)
  778.           ════════════════════════════════════════════════════════════
  779.  
  780.           "RA" refers to the executable programs and documentation
  781.           contained in RemoteAccess Bulletin Board Software distribution
  782.           archives released by Wantree Development (shareware version).
  783.  
  784.           1. RA is the copyrighted material of Wantree Development. It
  785.           may only be used in accordance with the conditions set out in
  786.           this license agreement.
  787.         
  788.           2. You may use RA for a period of three weeks on a trial basis
  789.           in order to determine it's suitability for your particular
  790.           application. After this period you MUST register each copy of
  791.           RA that you run simultaneously. Multi-line installations that
  792.           share a common file base AND have the same name need only 
  793.           register one copy.
  794.  
  795.           3. Registration entitles you to use RA and any future versions
  796.           of RA for as long as you wish, subject to any special licensing
  797.           conditions attached to future versions. For details on the 
  798.           registration procedure, refer to the section in this document
  799.           "HOW TO REGISTER".
  800.              
  801.           4. Wantree Development is in no way obligated to provide future
  802.           versions of, or support for, RA.   
  803.  
  804.           5. Site and Group registrations are available, and are dealt
  805.           with on a case by case basis.
  806.  
  807.           6. You may not modify or otherwise reverse-engineer RA.
  808.  
  809.           7.  You are encouraged to distribute RA provided that no fee
  810.           is charged for its distribution, and that the distribution
  811.           archive is not modified in any way. Pay Bulletin Board Systems
  812.           may however charge their normal fee provided that no additional
  813.           charge for RA is levied.  
  814.  
  815.           8. RA may not be included as part of any software library
  816.           which is distributed on a commercial basis (commercial = "for
  817.           money") without prior written permission from Wantree
  818.           Development.
  819.  
  820.           9. RA may not be used in any unlawful or illegal manner.
  821.  
  822.           10. Wantree Development's liability resulting from your use
  823.           or inability to use RemoteAccess is limited to the amount
  824.           that the affected party has paid for it, or in the event that
  825.           RA was registered with a third party for payment to Wantree
  826.           Development, liability is limited to the amount that was
  827.           received by Wantree Development from that third party.
  828.  
  829.  
  830.  
  831.  
  832.  
  833.  
  834.  
  835.  
  836.  
  837.  
  838.  
  839.  
  840.                                    - 8 -
  841.           How to register
  842.           ════════════════════════════════════════════════════════════
  843.  
  844.           SHAREWARE version:
  845.  
  846.                Systems that qualify for this category must be          
  847.                physically run from a noncommercial site. A site is     
  848.                considered to be noncommercial only if it is a private  
  849.                residence at which no commercial activities are         
  850.                conducted.
  851.  
  852.           NOTE: As of this release, the shareware version only 
  853.           supports a maximum of TWO (2) nodes. The Professional
  854.           version supports up to 250.
  855.  
  856.           Print or reproduce the registration form at the end of this
  857.           section and send it with your registration payment to one of
  858.           the following sites:
  859.  
  860.  
  861.           AUSTRALIA: AUD60              CANADA: CDN60
  862.         
  863.                "Registration/RA"             "Registration/RA"
  864.                C/- Terry Harvey              C/- Royce Jones
  865.                PO Box 593                    PO Box 1825
  866.                Burwood NSW 2134              Bracebridge ON
  867.                AUSTRALIA                     CANADA
  868.                Accepts VISACARD,
  869.                MasterCard, BankCard
  870.         
  871.         
  872.           USA: $50                      CONTINENTAL EUROPE: DM90       
  873.         
  874.                "Registration/RA"             "Registration/RA"
  875.                C/- Ed Meloan                 C/- Frank Altenburg
  876.                1110 Terrace Circle Drive     Wickopweg 9
  877.                North Augusta SC 29841        64289 Darmstadt
  878.                USA                           GERMANY
  879.  
  880.         
  881.           ASIA: AUD60 or equivalent     UNITED KINGDOM: GBP33
  882.  
  883.                "Registration/RA"             "Registration/RA"
  884.                C/- Teo Chee Kian             C/- FlightPath BBS
  885.                PO Box 0685                   PO Box 268
  886.                Bukit Merah Central           Hounslow TW5 9PZ
  887.                SINGAPORE 9115                UNITED KINGDOM
  888.                                              Accepts MasterCard,
  889.                                              Access, Visa
  890.         
  891.           * You MUST fill out the registration form correctly in order 
  892.             for your details to be processed. Not doing so will result 
  893.             in delays in your key arriving.
  894.         
  895.           * Cheques and money orders should be made payable to the     
  896.             person at your registration site.
  897.         
  898.           * Please include either a FidoNet address or a stamped,      
  899.             self-addressed envelope so that receipt of your payment    
  900.             can be acknowledged.
  901.  
  902.  
  903.  
  904.                                    - 9 -
  905.           PROFESSIONAL version:
  906.              
  907.                If the system is physically run from a commercial site  
  908.                (ie. the site is not a private residence, or commercial 
  909.                activities are conducted at the site).
  910.         
  911.           This is professionally packaged with an expanded ring-bound
  912.           manual and includes three modules not available in the
  913.           shareware version:
  914.         
  915.           1. Real-Time Conferencing - supporting up to 250 users
  916.           concurrently, featuring public/private/password-protected
  917.           conferences, conference moderators and sub-conferences.
  918.         
  919.           2. RANETMGR -  The RemoteAccess Network Manager, a utility
  920.           designed to give you complete control over a busy multi-node
  921.           system. Dynamically view the status of each node as users log
  922.           on and off, what each user is doing, broadcast messages to any
  923.           combination of nodes and automatically take any combination of
  924.           nodes down for maintenance.
  925.         
  926.           3. RAEdit - A fully functional, specially customised and
  927.           registered version of GEdit, a premium full-screen message
  928.           editor.
  929.         
  930.           The professional version supports up to 250 nodes and 100 
  931.           languages, while the shareware version supports a maximum of
  932.           eight languages and 2 nodes.
  933.         
  934.           The professional version of RemoteAccess is sold on a
  935.           commercial basis only. It is NOT shareware. 
  936.         
  937.         
  938.           Enquiries for the professional version should be directed to:
  939.         
  940.           USA:                            Europe:
  941.        
  942.           Wantree Development USA         ComDas GmbH 
  943.           108 W. 3rd Street               Rathgeberstrabe 48c
  944.           Bonner Springs                  91074 Herzogenaurach
  945.           Kansas 66012                    GERMANY
  946.           USA
  947.  
  948.           Tel: 1 800 648 9800 Sales only  Tel: +49 9132 78160
  949.                1 913 441 1336                  
  950.           Fax: 1 913 441 0596             Fax: +49 9132 781615
  951.           BBS: 1 913 441 0595             BBS: +49 9132 781621
  952.  
  953.  
  954.  
  955.  
  956.  
  957.  
  958.  
  959.  
  960.  
  961.  
  962.  
  963.  
  964.  
  965.  
  966.  
  967.  
  968.                                    - 10 -
  969.                    *** RemoteAccess REGISTRATION FORM ***
  970.  
  971.  
  972.           Sysop Name _________________________________________________
  973.         
  974.           System Name ________________________________________________
  975.         
  976.           [The above two items are used to generate your registration  
  977.            key and must appear EXACTLY as they do in RACONFIG.]
  978.         
  979.         
  980.           Network Address (number and network name) __________________
  981.         
  982.         
  983.           Any other networks you are a member of _____________________
  984.         
  985.         
  986.           Primary BBS telephone number and baud ______________________ 
  987.  
  988.         
  989.           Voice telephone number _____________________________________
  990.         
  991.         
  992.           Hours of BBS operation _____________________________________
  993.         
  994.         
  995.           Postal Address :
  996.         
  997.           ____________________________________________________________
  998.         
  999.           ____________________________________________________________
  1000.   
  1001.           ____________________________________________________________
  1002.         
  1003.         
  1004.  
  1005.           Version of RemoteAccess registering ______.
  1006.         
  1007.         
  1008.           Registration amount enclosed _______, for ____ copies.
  1009.         
  1010.         
  1011.           What do you like about RemoteAccess?
  1012.         
  1013.           ____________________________________________________________
  1014.         
  1015.           ____________________________________________________________
  1016.         
  1017.  
  1018.         
  1019.           What enhancements/changes would you like to see in our next
  1020.           release?
  1021.         
  1022.           ____________________________________________________________
  1023.         
  1024.           ____________________________________________________________
  1025.  
  1026.  
  1027.  
  1028.  
  1029.  
  1030.  
  1031.  
  1032.                                    - 11 -
  1033.           The key system
  1034.           ════════════════════════════════════════════════════════════
  1035.         
  1036.           Upon registering you will receive your uniquely generated key.
  1037.           Each key is a small file approximately 2k in size which
  1038.           contains information about your registration. To install the
  1039.           key, simply rename it (if necessary) to RA.KEY and copy it to
  1040.           your RemoteAccess system directory.
  1041.         
  1042.           When RemoteAccess detects a valid key it switches into
  1043.           registered mode, identifying itself by placing a "+" at the
  1044.           end of the version number as well as displaying the name of
  1045.           the system and sysop it is registered to in the "version
  1046.           information" menu function.
  1047.         
  1048.           For example, logging on to a registered system you would see:
  1049.         
  1050.           RemoteAccess 2.02+
  1051.           Please enter your full name:
  1052.         
  1053.           Features marked in this manual with a {+} are only available
  1054.           when RemoteAccess is running in registered mode. These bonus
  1055.           features show our appreciation of your taking the time to
  1056.           register with us.
  1057.         
  1058.           It should be made absolutely clear that RemoteAccess is still
  1059.           fully functional before it is registered; the bonus features
  1060.           are "nice" but their absence makes the system no less usable.
  1061.           RemoteAccess is not and never will be "DemoWare" or
  1062.           "ExpireWare".
  1063.         
  1064.           WARNING! Your key is unique, and under NO circumstances should
  1065.           it be made available to anyone else. Doing so is a direct
  1066.           violation of the agreement you entered into with us by
  1067.           registering.
  1068.  
  1069.  
  1070.  
  1071.  
  1072.  
  1073.  
  1074.  
  1075.  
  1076.  
  1077.  
  1078.  
  1079.  
  1080.  
  1081.  
  1082.  
  1083.  
  1084.  
  1085.  
  1086.  
  1087.  
  1088.  
  1089.  
  1090.  
  1091.  
  1092.  
  1093.  
  1094.  
  1095.  
  1096.                                    - 12 -
  1097.           Product Support
  1098.           ════════════════════════════════════════════════════════════
  1099.         
  1100.           You  can always get the latest shareware version of
  1101.           RemoteAccess and technical support from the following systems:
  1102.  
  1103.  
  1104.           Australasia:
  1105.  
  1106.                Terry Harvey                       Teo Chee Kian
  1107.                The Eagles                         Interact BBS
  1108.                Sydney AUSTRALIA                   SINGAPORE
  1109.                (02) 745 3190 V32 V42              +65 5817024
  1110.                FidoNet@3:712/704                  FidoNet@6:600/601
  1111.          
  1112.  
  1113.           USA and Canada: (North American RemoteAccess Support group)
  1114.   
  1115.                Bruce Bodger                       Geoffrey Booher
  1116.                The TruckStop BBS                  The Gateway Net BBS
  1117.                Tulsa OK                           Freeport IL
  1118.                918 254 6618                       815 233 5008
  1119.                FidoNet@1:170/400                  FidoNet@1:2270/233
  1120.         
  1121.                Royce Jones                        Bob R.
  1122.                DAKIN BBS                          The Anonymous BBS
  1123.                Bracebridge Ontario                Menomonee Falls WI
  1124.                705 646 2726                       414 251 2580
  1125.                FidoNet@1:221/204                  FidoNet@1:154/40
  1126.  
  1127.                Mike Ehlert                        Jim Ray
  1128.                Pacific Coast Micro                FileQuest
  1129.                Thousand Oaks CA                   Waco TX
  1130.                805 494 9386                       817 662 2361
  1131.                FidoNet@1:102/1001                 FidoNet@1:388/14
  1132.  
  1133.                Jim Roe                            Ben Hamilton
  1134.                Middle Earth                       The Computer Connection
  1135.                Austin TX                          Copperas Cove TX
  1136.                512 835 4848                       817 547 7711
  1137.                FidoNet@1:382/19                   FidoNet@1:395/5
  1138.  
  1139.                Anthony Haxton
  1140.                InterFace BBS
  1141.                Tulsa OK
  1142.                918 665 3500
  1143.                FidoNet@1:170/703
  1144.  
  1145.  
  1146.  
  1147.  
  1148.  
  1149.  
  1150.  
  1151.  
  1152.  
  1153.  
  1154.  
  1155.  
  1156.  
  1157.  
  1158.  
  1159.  
  1160.                                    - 13 -
  1161.           Europe and others: (European RemoteAccess Support Group)
  1162.  
  1163.                Adrian Pop                         Can Dogancan
  1164.                Airtel Remote Access               Skylight BBS
  1165.                Copthorne ENGLAND                  Istanbul TURKEY
  1166.                +44 342 717800                     +90 1 414 3019
  1167.                FidoNet@2:440/64                   FidoNet@2:430/5
  1168.  
  1169.                john barton                        Michael Stenander
  1170.                Barnabas The Caring BBS            The Falcon BBS
  1171.                South Ockendon ENGLAND             Frederiksberg DENMARK
  1172.                +44 708 670068                     +45 31 87 63 35
  1173.                FidoNet@2:257/168                  FidoNet@2:231/19
  1174.  
  1175.                Joerg Dassler                      Frank Altenburg
  1176.                RA Support HQ                      DIE BOX
  1177.                GERMANY                            Darmstadt GERMANY
  1178.                +49 911 752799                     +49 6151 710809
  1179.                FidoNet@2:2400/1                   FidoNet@2:2464/3
  1180.  
  1181.                Peter Hermann                      Ugo Uggetti
  1182.                DataComm I/II                      Venus
  1183.                Braunschweig GERMANY               Pavia ITALY
  1184.                +49 531 13216                      +39 382 579981
  1185.                FidoNet@2:240/550                  FidoNet@2:331/318
  1186.  
  1187.                Matej Mihelic                      Ville Valpasvuo
  1188.                R.I.S.P.                           The Bermuda Triangle
  1189.                Ljubljana SLOVENIA                 FINLAND
  1190.                +38 61 199400                      +358 14 434695
  1191.                FidoNet@2:380/103                  FidoNet@2:221/11
  1192.  
  1193.                Peter Janssens                     Robert Soubie
  1194.                EasyBoard Venray                   Port de la Lune
  1195.                Venray THE NETHERLANDS             Gradignan FRANCE
  1196.                +31 4780 12484                     +33 56 89 51 12
  1197.                Fidonet@2:512/1                    FidoNet@2:324/1
  1198.                ra@ezboard.iaf.nl
  1199.  
  1200.                Clive Jones                        Tony van den Bogaert
  1201.                C.A.L.M.                           Aquarius
  1202.                Alberton SOUTH AFRICA              Antwerp BELGIUM
  1203.                +27 11 9001118                     +32 3 3663457
  1204.                FidoNet@5:7101/14                  FidoNet@2:292/843
  1205.  
  1206.  
  1207.  
  1208.  
  1209.  
  1210.  
  1211.  
  1212.  
  1213.  
  1214.  
  1215.  
  1216.  
  1217.  
  1218.  
  1219.  
  1220.  
  1221.  
  1222.  
  1223.  
  1224.                                    - 14 -
  1225.           SWRAS (Swedish RemoteAccess Support Group):
  1226.  
  1227.                Malte Erikson                      Johan Nilsson
  1228.                Odens Sal                          Starbase 42
  1229.                Onsala SWEDEN                      Helsingborg SWEDEN
  1230.                +46 300 29436                      +46 42 112714
  1231.                FidoNet@2:203/302                  FidoNet@2:200/212
  1232.  
  1233.                Rolle Meltzer                      Mats Wallin
  1234.                The "TOWER" of Helsingborg         FrontDoor Help Europe
  1235.                Helsingborg SWEDEN                 Hagersten SWEDEN
  1236.                +46 42 242480                      +46 8 6453285
  1237.                Fidonet@2:200/209                  FidoNet@2:201/329
  1238.  
  1239.  
  1240.           U.K. (United Kingdom RemoteAccess Support Group):
  1241.  
  1242.                 Mark Anderson                     Gary Smith
  1243.                 Dregal RemoteAccess               FlightPath
  1244.                 +44 279 444433                    +44 81 759 7775
  1245.                 FidoNet@2:257/605                 FidoNet@2:254/99
  1246.  
  1247.                 Adrian Pop                        Mark Kerr
  1248.                 Airtel                            Yukon Ho!
  1249.                 +44 342 717800                    +44 232 768163
  1250.                 FidoNet@2:440/64                  FidoNet@2:443/59
  1251.  
  1252.                 Dave Parker                       Edward Hobson
  1253.                 Frontier                          The Power House
  1254.                 +44 737 778607                    +44 829 782667
  1255.                 FidoNet@2:440/63                  FidoNet@2:258/24
  1256.  
  1257.  
  1258.  
  1259.  
  1260.  
  1261.  
  1262.  
  1263.  
  1264.  
  1265.  
  1266.  
  1267.  
  1268.  
  1269.  
  1270.  
  1271.  
  1272.  
  1273.  
  1274.  
  1275.  
  1276.  
  1277.  
  1278.  
  1279.  
  1280.  
  1281.  
  1282.  
  1283.  
  1284.  
  1285.  
  1286.  
  1287.  
  1288.                                    - 15 -
  1289.           Installation
  1290.           ════════════════════════════════════════════════════════════
  1291.  
  1292.           RemoteAccess should run on any IBM 80x86 compatible computer.
  1293.           The only two programs you will need in addition to the release
  1294.           package are DOS 3.x and a FOSSIL driver. The FOSSIL is a
  1295.           memory-resident program that many communications packages use
  1296.           to communicate with the modem. Two FOSSILs that have been
  1297.           successfully tested with RemoteAccess are Ray Gwinn's X00, and
  1298.           David Nugent's BNU. Either of these should be readily available
  1299.           from any local bulletin board.
  1300.  
  1301.           You will also need a modem that is capable of accepting Hayes-
  1302.           type commands. The minimum memory requirement is approximately
  1303.           350K, but 512K is recommended.
  1304.  
  1305.           1. Ensure that your CONFIG.SYS file contains these statements:
  1306.  
  1307.                     FILES=20
  1308.                     BUFFERS=25
  1309.                      
  1310.              If you intend to run a multi-node system you may      
  1311.              need to increase the number of file handles that DOS
  1312.              can open at one time, by raising the "FILES" value.
  1313.              NOTE: Each additional file handle will reduce available
  1314.              memory by 50 to 60 bytes.
  1315.  
  1316.              The more "BUFFERS" you allocate, the faster RemoteAccess
  1317.              will run. However, each additional buffer allocated will
  1318.              reduce memory available by 500 to 600 bytes.
  1319.     
  1320.           2. Create a directory to put the main program files in.      
  1321.              The configuration examples that follow later assume that
  1322.              this directory (the SYSTEM directory) is C:\RA.
  1323.  
  1324.           3. Ensure that your AUTOEXEC.BAT file contains a command to
  1325.              set the environment variable RA to your SYSTEM directory,
  1326.              so that RemoteAccess can find its configuration files:
  1327.  
  1328.                     SET RA=C:\RA
  1329.  
  1330.              It is possible to increase the overall performance of
  1331.              RemoteAccess by placing the file "RA.OVR" onto a ramdrive.
  1332.              If you elect to do this you must also set the following
  1333.              environment variable:
  1334.  
  1335.                     SET RAOVR=F:\
  1336.  
  1337.            4. Copy all of the executable and overlay files from the
  1338.               RemoteAccess distribution package into the SYSTEM directory. 
  1339.  
  1340.  
  1341.  
  1342.  
  1343.  
  1344.  
  1345.  
  1346.  
  1347.  
  1348.  
  1349.  
  1350.  
  1351.  
  1352.                                    - 16 -
  1353.            5. Create five more sub-directories:
  1354.  
  1355.               C:\RA\MSGBASE          This will hold the message      
  1356.                                      files the system creates.
  1357.   
  1358.               C:\RA\MENUS            To put your menus in,
  1359.   
  1360.               C:\RA\TXTFILES         To put files such as welcome      
  1361.                                      and disconnect screens in.
  1362.         
  1363.               C:\RA\ATTACH           To hold message file attaches. 
  1364.  
  1365.               C:\RA\FILEBASE         To hold the file database.
  1366.  
  1367.  
  1368.           This completes the installation, and you are now ready to move
  1369.           on to the CONFIGURATION section.
  1370.  
  1371.  
  1372.  
  1373.  
  1374.  
  1375.  
  1376.  
  1377.  
  1378.  
  1379.  
  1380.  
  1381.  
  1382.  
  1383.  
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390.  
  1391.  
  1392.  
  1393.  
  1394.  
  1395.  
  1396.  
  1397.  
  1398.  
  1399.  
  1400.  
  1401.  
  1402.  
  1403.  
  1404.  
  1405.  
  1406.  
  1407.  
  1408.  
  1409.  
  1410.  
  1411.  
  1412.  
  1413.  
  1414.  
  1415.  
  1416.                                    - 17 -
  1417.           Chapter 2
  1418.           Configuration
  1419.           *    
  1420.           *    
  1421.           *    
  1422.           *    
  1423.       This chapter explains the configuration of RemoteAccess
  1424.       which is accomplished with the use of the configuration
  1425.       program, RACONFIG. RemoteAccess can be configured almost
  1426.       completely from within this program.    Features and options
  1427.       are explained in the order in which they appear in RACONFIG.
  1428.       You'll learn how each feature functions as you step through
  1429.       this chapter.
  1430.  
  1431.  
  1432.  
  1433.  
  1434.  
  1435.  
  1436.  
  1437.  
  1438.  
  1439.  
  1440.  
  1441.  
  1442.  
  1443.  
  1444.  
  1445.  
  1446.  
  1447.  
  1448.  
  1449.  
  1450.  
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456.  
  1457.  
  1458.  
  1459.  
  1460.  
  1461.  
  1462.  
  1463.  
  1464.  
  1465.  
  1466.  
  1467.  
  1468.  
  1469.  
  1470.  
  1471.  
  1472.  
  1473.  
  1474.  
  1475.  
  1476.  
  1477.  
  1478.  
  1479.  
  1480.                                    - 18 -
  1481.           RACONFIG
  1482.           
  1483.       In the RemoteAccess system directory (usually \RA  after an
  1484.       initial installation), you'll find several programs which
  1485.       are discussed throughout this manual.  One of these is the
  1486.       very powerful, all-around configuration program called
  1487.       RACONFIG. If you're just getting started, you'll want to
  1488.       read this entire chapter which covers every aspect of the
  1489.       RACONFIG program. Or, if you've already configured
  1490.       RemoteAccess, use this chapter as a reference guide.
  1491.           
  1492.           
  1493.           The User Interface
  1494.       ════════════════════════════════════════════════════════════
  1495.       RACONFIG uses a full-screen user interface that is
  1496.       completely menu-driven.  More specifically, it uses menus
  1497.       that contain pick-lists.  A pick-list menu is one in which a
  1498.       list of options is available for selection.  This pick-list
  1499.       is usually contained within a small menu window or box.
  1500.       This type of menu selection system is very common and easy
  1501.       to use. Each menu contains a highlighted cursor-bar which is
  1502.       used to select an item to be edited.    Throughout this
  1503.       manual, the highlighted cursor-bar is referenced simply as
  1504.       the cursor-bar. The cursor-bar is positioned on any item to
  1505.       be edited or selected by using one of the two following
  1506.       methods:
  1507.           
  1508.       *    Pressing the first character of the menu item you wish
  1509.       to select.  For example, if one of the pick-list menu
  1510.       choices was File Areas, you could press F to position the
  1511.       cursor- bar or...
  1512.           
  1513.       *    Using the cursor positioning keys to move the
  1514.       cursor up or down the pick-list until the cursor-bar is
  1515.       positioned on the File Areas selection.
  1516.           
  1517.       In most instances, pressing <ENTER> with the cursor-bar
  1518.       positioned on the field you wish to edit will place you in
  1519.       edit mode.  However, some fields do not require any actual
  1520.       data entry and pressing <ENTER> will simply toggle these
  1521.       fields between the selections available. The escape key
  1522.       serves two purposes within RACONFIG.    It is used to exit
  1523.       areas of data entry in most instances.  For example, after
  1524.       making changes to a message area, pressing <ESCAPE> exits
  1525.       the message area screen and returns to the message area
  1526.       pick-list menu. Another function of the <ESCAPE> key is to
  1527.       abort field data entry.  For example, pressing <ESCAPE>
  1528.       while you are actually entering data will abandon any
  1529.       changes you may have made to that field, restoring it to its
  1530.       original value.
  1531.  
  1532.  
  1533.  
  1534.  
  1535.  
  1536.  
  1537.  
  1538.  
  1539.  
  1540.  
  1541.  
  1542.  
  1543.  
  1544.                                    - 19 -
  1545.           Running RACONFIG
  1546.       ════════════════════════════════════════════════════════════
  1547.       RACONFIG is executed from the DOS command-line.  Four
  1548.       command-line parameters are accepted by RACONFIG which alter
  1549.       the mode or manner in which RACONFIG is loaded.  The
  1550.       command-line parameters accepted are described below:
  1551.           
  1552.              -B    Forces black and white (monochrome) mode.
  1553.  
  1554.              -L    Use the language manager directly.
  1555.  
  1556.              -M    Use the menu editor directly.
  1557.           
  1558.           To run RACONFIG from the DOS prompt, type:
  1559.           
  1560.                 RACONFIG <ENTER>
  1561.           
  1562.           Or if you are using a monochrome display:
  1563.           
  1564.                 RACONFIG -B <ENTER>
  1565.           
  1566.       The screen that will appear on your display shows the top-
  1567.       level RACONFIG menu which contains five main menu options.
  1568.       Each option has an associated pick-list menu.  The five main
  1569.       options and the selections available under each is listed
  1570.       below:
  1571.  
  1572.           
  1573.           File
  1574.       ────────────────────────────────────────────────────────────
  1575.           Switches, Info, Exit and DOS shell.
  1576.  
  1577.  
  1578.           System
  1579.       ────────────────────────────────────────────────────────────
  1580.           Your BBS details; Paths, Site Info, Addresses and Security.
  1581.  
  1582.  
  1583.           Options
  1584.       ────────────────────────────────────────────────────────────
  1585.           Messages, files, restrictions, errorlevels, display,
  1586.           colors, paging, new users, system, prompts and printer
  1587.           options.
  1588.  
  1589.  
  1590.           Modem
  1591.       ────────────────────────────────────────────────────────────
  1592.           Modem options, commands and responses.
  1593.  
  1594.  
  1595.  
  1596.  
  1597.  
  1598.  
  1599.  
  1600.  
  1601.  
  1602.  
  1603.  
  1604.  
  1605.  
  1606.  
  1607.  
  1608.                                    - 20 -
  1609.           Manager
  1610.       ────────────────────────────────────────────────────────────
  1611.           Message and file areas and groups, protocols, languages,
  1612.           AltFN keys, events, menus, control files, combined area
  1613.           defaults and Limits.
  1614.  
  1615.       The remainder of this chapter covers each and every option
  1616.       and sub-option.  Many of these will require no modification
  1617.       in most new installations, although it is recommended that
  1618.       you select each option as you read through this chapter to
  1619.       get a firsthand look at how data is input and modified with
  1620.       this program.
  1621.           
  1622.  
  1623.           THE FILE MENU
  1624.  
  1625.       The first of the five main menu options is the File menu.
  1626.       It contains miscellaneous options and is the default menu
  1627.       displayed when RACONFIG is loaded.  Step through each of
  1628.       these options and see what they do...
  1629.  
  1630.           
  1631.           Switches
  1632.           ════════════════════════════════════════════════════════════
  1633.       This option displays the command-line parameters (also known
  1634.       as switches) that RACONFIG accepts.  These are the same
  1635.       parameters outlined on the previous page.
  1636.  
  1637.           
  1638.           Info
  1639.           ════════════════════════════════════════════════════════════
  1640.       This option displays the RemoteAccess version number for
  1641.       which RACONFIG was created along with the program copyright
  1642.       notice.
  1643.  
  1644.           
  1645.           Exit
  1646.           ════════════════════════════════════════════════════════════
  1647.       Selecting this option will end program execution and return
  1648.       you to DOS.  Pressing <ESCAPE> from a main option menu does
  1649.       the same thing.  If any changes have been made to the
  1650.       configuration, you will be prompted "Save changes (Y/n)?"
  1651.       before the program exits.  Pressing <ENTER> or "Y" will cause
  1652.       all changes to be saved.  Pressing "N" causes all changes to
  1653.       be discarded.  The program then exits to DOS.
  1654.  
  1655.           
  1656.           DOS Shell
  1657.           ════════════════════════════════════════════════════════════
  1658.           When this option is selected, a DOS shell is loaded so you
  1659.       can do other things.    To return to RACONFIG, type "EXIT"
  1660.       followed by <ENTER>, at the DOS prompt.
  1661.           
  1662.  
  1663.  
  1664.  
  1665.  
  1666.  
  1667.  
  1668.  
  1669.  
  1670.  
  1671.  
  1672.                                    - 21 -
  1673.           THE SYSTEM MENU
  1674.  
  1675.       The System menu is where high-level options for your overall
  1676.       BBS are configured.  File locations, site information,
  1677.       network addresses and system security are all configured
  1678.       here. The default settings provided are often times
  1679.       sufficient for proper operation.   The installation program
  1680.       inserts the necessary basic system information required.
  1681.       Look at the individual options in the System pick-list.
  1682.       Position the cursor- bar on System and then on Paths and
  1683.       press <ENTER>.
  1684.  
  1685.  
  1686.           Paths
  1687.       ═════════════════════════════════════════════════════════════
  1688.       The paths shown on your display are those which you
  1689.       specified during program installation.  These paths specify
  1690.       where all RemoteAccess files are stored.  If a directory
  1691.       path is entered that does not exist, you will be prompted
  1692.       whether to create the directory.  The following directory
  1693.       paths may be defined:
  1694.  
  1695.           
  1696.           System
  1697.       ────────────────────────────────────────────────────────────
  1698.       This field is used to specify where system and configuration
  1699.       files are stored.  This directory is referred to as the
  1700.       RemoteAccess system directory throughout this manual.
  1701.  
  1702.           
  1703.           Menus
  1704.       ────────────────────────────────────────────────────────────
  1705.       This field specifies the directory where default menus
  1706.       (*.MNU files) are stored.
  1707.  
  1708.           
  1709.           Text Files
  1710.       ────────────────────────────────────────────────────────────
  1711.       This field specifies the directory where default text files
  1712.       (*.A?? files) are stored.
  1713.  
  1714.           
  1715.           Msg Base
  1716.       ────────────────────────────────────────────────────────────
  1717.       Message and user database files are stored in this
  1718.       directory. The only exception to this is when JAM format
  1719.       message areas are in use and separate directories are
  1720.       assigned to JAM message areas.
  1721.  
  1722.  
  1723.  
  1724.  
  1725.  
  1726.  
  1727.  
  1728.  
  1729.  
  1730.  
  1731.  
  1732.  
  1733.  
  1734.  
  1735.  
  1736.                                    - 22 -
  1737.           File Base
  1738.       ────────────────────────────────────────────────────────────
  1739.       File database files are stored in this directory.
  1740.       RemoteAccess creates subdirectories under the directory
  1741.       specified here, to hold file database files for each file
  1742.       area.  The subdirectories created and maintained by
  1743.       RemoteAccess are:
  1744.           
  1745.       HDR    This directory contains all file database header
  1746.         files.
  1747.  
  1748.       IDX    This directory contains all file database index
  1749.                 files.
  1750.  
  1751.       TXT    This directory contains all file database
  1752.         description text files.
  1753.           
  1754.  
  1755.           File attach
  1756.       ────────────────────────────────────────────────────────────
  1757.       This field specifies the directory where files attached to
  1758.       local messages are stored.  RemoteAccess creates and
  1759.       maintains subdirectories under this directory automatically
  1760.       whenever files are attached to local messages.  These
  1761.       temporary subdirectories are deleted by RemoteAccess when
  1762.       the attached files have been downloaded or the message has
  1763.       been deleted.
  1764.           
  1765.           
  1766.           Nodelist
  1767.       ────────────────────────────────────────────────────────────
  1768.       This field specifies the directory where mail network
  1769.       nodelist files are stored.  If you are running RemoteAccess
  1770.       in conjunction with a mail network and a Front End Mailer,
  1771.       this directory is generally set to the directory containing
  1772.       the nodelist files used by your Front End Mailer.
  1773.           
  1774.           
  1775.           CD-ROM temp
  1776.       ────────────────────────────────────────────────────────────
  1777.       When CD-ROM files are downloaded, they are temporarily
  1778.       copied into this directory until the download is completed.
  1779.       This ensures that the CD-ROM drive is not busy for the
  1780.       duration of a download since the files are actually copied
  1781.       to and downloaded from the directory specified here.
  1782.           
  1783.           
  1784.           Semaphore
  1785.       ────────────────────────────────────────────────────────────
  1786.       This field specifies the directory where temporary and
  1787.       static files used for multi-node operations are stored.  A
  1788.       RAM disk is highly recommended.  The Real-Time Conference
  1789.       feature relies heavily on the use of semaphore files for
  1790.       passing information between nodes when NETBIOS functionality
  1791.       is not available. If you are running in a multi-node
  1792.       environment and do not have NETBIOS functionality available,
  1793.       the directory specified here should be the drive and path to
  1794.       a directory on a RAM disk.
  1795.  
  1796.  
  1797.  
  1798.  
  1799.  
  1800.                                    - 23 -
  1801.           Rearchive
  1802.       ────────────────────────────────────────────────────────────
  1803.       This field specifies the directory used to temporarily store
  1804.       files during an archive conversion process.  See the RAFILE
  1805.       REARC function described in the Message Database
  1806.       Administration chapter for information on this feature.
  1807.           
  1808.           
  1809.           System log
  1810.       ────────────────────────────────────────────────────────────
  1811.       This field specifies the full path and name of the system
  1812.       log file.  Optionally, you may specify the *N macro which
  1813.       expands into the current node number.  For example, if this
  1814.       is specified as C:\RA\RA*N.LOG, node one will write to the
  1815.       C:\RA\RA1.LOG file while node two will write to the
  1816.       C:\RA\RA2.LOG file.  By not specifying a path, the log file
  1817.       will be written in the current node directory.
  1818.           
  1819.           
  1820.           Site Info
  1821.       ════════════════════════════════════════════════════════════
  1822.       Selecting this option presents a pick-list menu which allows
  1823.       you to configure your System and Sysop names as well as the
  1824.       location of your BBS.  This information is displayed using
  1825.       various text file control codes or menu items within your
  1826.       BBS and is also used to generate your customer number, which
  1827.       was generated during program installation. Position the
  1828.       cursor-bar on Site Info and press <ENTER>. Enter the
  1829.       appropriate data in each of the three fields.
  1830.           
  1831.           
  1832.           Name
  1833.       ────────────────────────────────────────────────────────────
  1834.       This field specifies the name of your BBS.  The contents of
  1835.       this field is written to all exit files created when
  1836.       shelling or exiting to run external programs.
  1837.           
  1838.           
  1839.           Sysop
  1840.       ────────────────────────────────────────────────────────────
  1841.       This is the name of the System Operator (Sysop).  Any
  1842.       messages addressed to Sysop are automatically addressed to
  1843.       the name entered here.  The contents of this field is also
  1844.       written to all exit files created when shelling or exiting
  1845.       to run external programs.
  1846.           
  1847.           
  1848.           Location
  1849.       ────────────────────────────────────────────────────────────
  1850.       This field specifies the location of your BBS.  For example,
  1851.       this can be your city, state and country.
  1852.  
  1853.  
  1854.  
  1855.  
  1856.  
  1857.  
  1858.  
  1859.  
  1860.  
  1861.  
  1862.  
  1863.  
  1864.                                    - 24 -
  1865.           Addresses
  1866.       ────────────────────────────────────────────────────────────
  1867.       This option is used to enter your mail network address, if
  1868.       applicable.  Notice that in addition to a Main address, you
  1869.       may specify up to 9 AKA addresses.  With RemoteAccess, you
  1870.       can participate in up to a total of 10 mail networks by
  1871.       entering alternate network addresses here. If you will be
  1872.       participating in one or more mail networks, select your Main
  1873.       and AKA network addresses using the format:
  1874.           
  1875.                   Zone:Net/Node_number
  1876.  
  1877.       If you won't be participating in a mail network, leave these
  1878.           fields blank.  For more information on mail networking, see 
  1879.           the Mail Networking chapter later in this manual.
  1880.  
  1881.           
  1882.           Security
  1883.           ════════════════════════════════════════════════════════════
  1884.       This option allows you to select a password that would be
  1885.       required in order to load RACONFIG, RAMGR and RANETMGR as
  1886.       well as in order to select any Sysop Function Keys from
  1887.       the local console. {+} Registered only.
  1888.           
  1889.       NOTE:  The only way to remove this password is to delete the
  1890.       file CONFIG.RA from the system directory.  Therefore, if you
  1891.       decide to implement security at the local console, it may be
  1892.       wise to backup CONFIG.RA prior to implementation.
  1893.           
  1894.  
  1895.           THE OPTIONS MENU
  1896.  
  1897.       The third main option is the Options menu.  This menu is
  1898.       used to configure various features related to your overall
  1899.       system. Options available from this menu are grouped by
  1900.       their perspective areas.  Each group has its own pick-list
  1901.       menu. Position the cursor-bar on the Options selection.  The
  1902.       Options pick-list menu will be displayed automatically.  The
  1903.       cursor-bar automatically repositions itself over the
  1904.       Messages group selection.  Press <ENTER> for the Messages
  1905.       group pick-list menu.
  1906.           
  1907.  
  1908.           Messages
  1909.       ════════════════════════════════════════════════════════════
  1910.       The Messages group pick-list menu presents a list of
  1911.       features that may be configured which pertain to the overall
  1912.       message system.
  1913.  
  1914.           
  1915.           Check For New Mail During Log-on
  1916.       ────────────────────────────────────────────────────────────
  1917.       When enabled, this option forces RemoteAccess to scan the
  1918.       message base for new mail addressed to the user.  This
  1919.       option has three possible settings; Yes, No or Ask.  If set
  1920.       to Yes, RemoteAccess will automatically check for new mail
  1921.       during the log-on process.  If set to No, the user's mail-box
  1922.       will not be scanned.    If set to Ask, the user will be
  1923.       prompted whether to check for new mail during the log-on
  1924.       process.
  1925.  
  1926.  
  1927.  
  1928.                                    - 25 -
  1929.           Full Mail Check
  1930.       ────────────────────────────────────────────────────────────
  1931.       This option has two possible settings; Yes or No.  If set to
  1932.       Yes, RemoteAccess will scan the entire message base from
  1933.       beginning to end for mail addressed to the user that is
  1934.       marked as unread.  If set to No, the message base is only
  1935.       scanned from the last message that the user has read.  While
  1936.       this is much faster there is the possibility that some mail
  1937.       may be skipped if the user elected not to read mail during
  1938.       the previous log-on session.
  1939.           
  1940.           
  1941.           Quote String
  1942.       ────────────────────────────────────────────────────────────
  1943.       This option is used to select the string of characters which
  1944.       RemoteAccess will place before any message text that is
  1945.       quoted in a reply.  This is useful for separating quoted
  1946.       message text from reply message text within a message. For
  1947.       example, a message quote string specified as the ">"
  1948.       character might look like this:
  1949.           
  1950.       ┌───────────────────────────────────────────────┐
  1951.       │ > I have been using RemoteAccess for two      │
  1952.       │ > months now and love it!              │
  1953.       │                          │
  1954.       │ I have to agree with you there, John.      │
  1955.       └───────────────────────────────────────────────┘
  1956.           
  1957.       In this example, you can see that the message text that is
  1958.       being quoted begins with the defined Quote String.  This
  1959.       makes the message easier to understand.
  1960.  
  1961.       Two macro characters are also supported within the quote
  1962.       string.  They are:
  1963.           
  1964.       @  This macro character is expanded within message text into
  1965.       the upper-case initials of the person who is being quoted or
  1966.       replied to.
  1967.           
  1968.       #  This macro is expanded into the lower-case initials of
  1969.       the person who is being quoted or replied to.
  1970.           
  1971.       For example, if the quote string was specified as "@>",
  1972.       quoted message text might look something like this:
  1973.           
  1974.       ┌───────────────────────────────────────────────┐
  1975.       │ JP> I have been using RemoteAccess for two      │
  1976.       │ JP> months now and love it!           │
  1977.       │                          │
  1978.       │ I have to agree with you there, John.      │
  1979.       └───────────────────────────────────────────────┘
  1980.           
  1981.       This gives an even better idea of which message text is
  1982.       being quoted.
  1983.           
  1984.  
  1985.  
  1986.  
  1987.  
  1988.  
  1989.  
  1990.  
  1991.  
  1992.                                    - 26 -
  1993.           External Editor
  1994.       ────────────────────────────────────────────────────────────
  1995.       With this option, you can enable the use of an external,
  1996.       full-screen message editor. The full-screen editor allows
  1997.           messages to be entered in a word processing type of environment
  1998.       rather than a line-by-line text entry environment like the
  1999.       one used with the internal message editor.  Full-screen
  2000.       editors usually allow you to move the cursor around the full
  2001.       screen, entering and editing text. One such editor is GEdit.
  2002.  
  2003.       To configure RemoteAccess to use GEdit as the external
  2004.       editor, follow the check-list procedure below:
  2005.  
  2006.       1)     Assuming that your RemoteAccess system directory is
  2007.       defined as \RA, enter the following text in the External
  2008.       Editor field:
  2009.           
  2010.                 \RA\GEDIT.EXE
  2011.           
  2012.       As previously mentioned, any of the optional data macros
  2013.       supported in menu function type 7 - "Run an external program
  2014.       in a shell" can be used here.  For example, to swap
  2015.       RemoteAccess out of memory before loading GEdit, enter the
  2016.       following text in the External Editor field:
  2017.           
  2018.               \RA\GEDIT.EXE *M
  2019.           
  2020.       That's all there is to it.  With this field defined, users
  2021.       who have the full-screen editor enabled within their profile
  2022.       will now use GEdit as their message editor.
  2023.           
  2024.       NOTE:  Most full-screen editors require at least ANSI
  2025.       emulation on the user's end.  RemoteAccess will warn a user
  2026.       of this minimum requirement if the user does not have ANSI
  2027.       emulation enabled.
  2028.           
  2029.  
  2030.           Default Origin
  2031.           ────────────────────────────────────────────────────────────
  2032.           An origin line, which is appended to the end of EchoMail
  2033.           messages, is used in mail networks to show users of other
  2034.           systems where a message originated.  This option sets the
  2035.           default origin line which is appended to the end of all
  2036.           outgoing EchoMail messages.  This will take effect in all
  2037.           EchoMail areas except in areas where you have defined a
  2038.           specific origin line to be used.
  2039.           
  2040.           For example, if the following origin line was specified:
  2041.           
  2042.                          RemoteAccess Central
  2043.           
  2044.           When appended to an outgoing EchoMail message, would look
  2045.           something like this:
  2046.           
  2047.                * Origin: RemoteAccess Central (2:270/18)
  2048.  
  2049.  
  2050.  
  2051.  
  2052.  
  2053.  
  2054.  
  2055.  
  2056.                                    - 27 -
  2057.           Reply Header
  2058.           ────────────────────────────────────────────────────────────
  2059.           The reply header is displayed at the top of a message whose
  2060.           sender was not the originator or the receiver of the
  2061.           original message.  In other words, if a user replied to a
  2062.           message that was not originally addressed to him or her and
  2063.           the user was not the sender of the message being replied to,
  2064.           the reply header would be inserted at the beginning of the
  2065.           reply to indicate to other readers that the message was
  2066.           being replied to by a third party.
  2067.  
  2068.           The following macro characters may be used within this
  2069.           field:
  2070.           
  2071.           @  Expands into the person's name to which the original
  2072.           message was addressed.
  2073.           
  2074.           #  Expands into the person's name who posted the original
  2075.           message (the one being replied to).
  2076.           
  2077.           `  Expands into the date that the original message (the one
  2078.           being replied to) was posted.
  2079.           
  2080.           ~ Expands to the time that the original message (the one
  2081.           being replied to) was posted.
  2082.           
  2083.           For example, if the following reply header was specified:
  2084.           
  2085.                 In a message originally to @, # said:
  2086.           
  2087.           Would expand in a message to:
  2088.           
  2089.                 In a message originally to All, Joe User said:
  2090.           
  2091.           
  2092.           Message Uploads
  2093.           ────────────────────────────────────────────────────────────
  2094.           The Msg uploads option is used to allow users to upload
  2095.           message text.  If set to Yes, when a user enters a message,
  2096.           the user will be prompted whether to upload a prepared
  2097.           message. This allows the user to prepare a message off-line
  2098.           using any ASCII text editor, and upload it using any of the
  2099.           available internal file transfer protocols.
  2100.           
  2101.            
  2102.           NOTE:  Only internal protocols may be used to upload a
  2103.           message since RemoteAccess does not have enough control over
  2104.           external protocols.  The maximum size of a message that may
  2105.           be uploaded is 20 kilobytes.
  2106.           
  2107.  
  2108.  
  2109.  
  2110.  
  2111.  
  2112.  
  2113.  
  2114.  
  2115.  
  2116.  
  2117.  
  2118.  
  2119.  
  2120.                                    - 28 -
  2121.           Echo Net Replies
  2122.           ────────────────────────────────────────────────────────────
  2123.           The "Echo netreplies" option is used to allow or disallow
  2124.           users to reply to EchoMail messages via private NetMail.
  2125.           When replying to an EchoMail message, users will be prompted
  2126.           whether to send the reply via NetMail, when this option is
  2127.           enabled. For example, with this option enabled, and a user
  2128.           selects to reply to an EchoMail message, the following
  2129.           prompt will be given:
  2130.           
  2131.                  Reply via personal NetMail (y/N)? _
  2132.           
  2133.           If the user presses "Y", RemoteAccess will send the saved
  2134.           reply via NetMail.  If the user presses "N" or <ENTER>, the
  2135.           saved reply will be posted in the same EchoMail area as the
  2136.           message being replied to. {+} Registered only.
  2137.           
  2138.            
  2139.           NOTE:  This option is only available when RemoteAccess can
  2140.           successfully determine where the original message came from.
  2141.           
  2142.           
  2143.           Net Kill Sent
  2144.           ────────────────────────────────────────────────────────────
  2145.           The "Net.killsent" option applies to NetMail sent through a
  2146.           mail network.  When a message is entered, and this option is
  2147.           set to Ask, RemoteAccess will ask the user if the message
  2148.           should be deleted after it has been sent from the message
  2149.           database.  If this option is set to Yes, NetMail messages
  2150.           will be deleted automatically after being sent from the
  2151.           message database.
  2152.           
  2153.           
  2154.           Confirm Delete
  2155.           ────────────────────────────────────────────────────────────
  2156.           The "Confirm delete" option has two possible settings; Yes
  2157.           and No.  If set to Yes, users who delete a message will be
  2158.           prompted for confirmation prior to deletion.  If this field
  2159.           is set to No, RemoteAccess does not prompt for confirmation
  2160.           and the message is deleted as soon as the delete command is
  2161.           executed. Setting this option to Yes prevents users from
  2162.           accidentally deleting messages from the database.
  2163.           
  2164.           
  2165.           Net Crash Option
  2166.           ────────────────────────────────────────────────────────────
  2167.           The "Net.crash" option is used to specify the minimum
  2168.           security level required for users to be able to send a
  2169.           message as CrashMail. For example, if this field is set to a
  2170.           value of 100, then any user with a security level of 100 or
  2171.           greater will be prompted whether to send a NetMail message
  2172.           with the Crash flag set.
  2173.  
  2174.           NOTE:  CrashMail is network mail that is not held for
  2175.           delivery as regular NetMail is.  Therefore, making this
  2176.           option available to users in general could potentially lead
  2177.           to excessive long distance charges since CrashMail messages
  2178.           are generally sent at any time of the day.
  2179.           
  2180.  
  2181.  
  2182.  
  2183.  
  2184.                                    - 29 -
  2185.           Net Crash Force
  2186.           ────────────────────────────────────────────────────────────
  2187.           The "Net.crash force" option is used to specify the minimum
  2188.           security level for which NetMail messages will be forced to
  2189.           be sent as CrashMail. With the "Net.crash opt" field, you
  2190.           could specify the minimum security level required for asking
  2191.           the user if a message should be sent as CrashMail.  With
  2192.           this field, the setting specifies the security level where
  2193.           CrashMail will be forced. This field might be set to a level
  2194.           higher than that of even the Sysop in order to avoid sending
  2195.           CrashMail during inappropriate times of the day.
  2196.           
  2197.           
  2198.           Net Attach
  2199.           ────────────────────────────────────────────────────────────
  2200.           The "Net.attach" option is used to specify the minimum
  2201.           security level required to attach files to NetMail messages.
  2202.           In most mail networks, this is perfectly acceptable except
  2203.           where NetMail messages are routed through other systems
  2204.           within the network.  In such cases, the systems performing
  2205.           the routing of NetMail messages would also be burdened with
  2206.           the time and cost of sending any attached files with the
  2207.           messages. Messages generally take a few seconds to send
  2208.           whereas files can take several minutes to send.  Therefore,
  2209.           this option should be used with care and consideration for
  2210.           other mail network Sysops.
  2211.  
  2212.           When specifying a filename to attach to a NetMail message, a
  2213.           full drive:path\filename may be given.
  2214.           
  2215.           
  2216.           Group Mail
  2217.           ────────────────────────────────────────────────────────────
  2218.           This option is used to determine the minimum security level
  2219.           a user must have in order to post mail to users of a
  2220.           specific group.  Since group mail messages are actually
  2221.           individual messages addressed to each user of a given group
  2222.           or security level, it has the potential of using up a bit of
  2223.           disk space.  This is something that should be considered
  2224.           when setting this option.  Group mail is usually a feature
  2225.           that is used by the Sysop or Assistant Sysop only.
  2226.  
  2227.           See menu function type 27 - "Post message" in the Menu
  2228.           Administration chapter for more information on sending group
  2229.           mail.
  2230.           
  2231.  
  2232.  
  2233.  
  2234.  
  2235.  
  2236.  
  2237.  
  2238.  
  2239.  
  2240.  
  2241.  
  2242.  
  2243.  
  2244.  
  2245.  
  2246.  
  2247.  
  2248.                                    - 30 -
  2249.           CC Mail
  2250.           ────────────────────────────────────────────────────────────
  2251.           Use this option to specify the minimum security level
  2252.           required to send carbon copies of messages to other users.
  2253.           If enabled, and a user saves a message, RemoteAccess gives
  2254.           the following prompt:
  2255.           
  2256.               Send carbon copies to other users (y/N)? _
  2257.           
  2258.           If Yes is entered in response to this prompt, RemoteAccess
  2259.           prompts the user to enter another "To:" name.  For each
  2260.           valid name entered, a carbon copy of the original message is
  2261.           sent. Carbon copies contain the original message text, with
  2262.           a line inserted at the top of the message informing the
  2263.           recipient that the message is a copy:
  2264.           
  2265.               * Carbon copy, originally to:  Joe User
  2266.           
  2267.           
  2268.           Return Receipts
  2269.           ────────────────────────────────────────────────────────────
  2270.           Use this option to specify the minimum security level
  2271.           required to enable users to request return receipts.  Users
  2272.           having access to this feature who send messages to other
  2273.           users on your system may request return receipts which
  2274.           inform them when their messages have been read by the
  2275.           recipient.
  2276.  
  2277.           When this feature is enabled and a message is saved,
  2278.           RemoteAccess displays the following prompt:
  2279.           
  2280.                Would you like a return receipt (y/N)? _
  2281.           
  2282.           If the user answers Yes, RemoteAccess generates a receipt
  2283.           when the message is read by the recipient.  Messages for
  2284.           which a return receipt is requested contain the ReqRec flag
  2285.           in the message header.  This is displayed to the recipient
  2286.           of the message informing of the receipt request.
  2287.           
  2288.           Here's an example of a return receipt generated by
  2289.           RemoteAccess:
  2290.           
  2291.           
  2292.            Message #2323 - Message Area Name (Private) (RetRec)
  2293.               Date: 02-15-93 16:55
  2294.               From: RemoteAccess
  2295.                 To: Joe User
  2296.            Subject: Return receipt confirmation
  2297.           
  2298.            Confirmation receipt:
  2299.            To   : Jim User
  2300.            Date : 15-Feb-93 16:50
  2301.            Rcvd : 15-Feb-93 16:55
  2302.            Subj : Hi Joe
  2303.           
  2304.  
  2305.  
  2306.  
  2307.  
  2308.  
  2309.  
  2310.  
  2311.  
  2312.                                    - 31 -
  2313.           Net Receipts
  2314.           ────────────────────────────────────────────────────────────
  2315.           Like the return receipts which are used locally, you can
  2316.           also specify whether or not your system will allow the use
  2317.           of the NetMail Receipt feature.  This option allows you to
  2318.           specify the minimum security level required for access to
  2319.           this feature.
  2320.  
  2321.           When this feature is enabled, the sender of a NetMail
  2322.           message is given the opportunity to request a return
  2323.           receipt. While this might be ideal in certain situations,
  2324.           the majority of Sysops who participate in mail networks
  2325.           frown on return receipt requests since they can cause undue
  2326.           long distance charges in order to return receipts.  For this
  2327.           same reason, many Sysops do not honor return receipt
  2328.           requests via NetMail.
  2329.           
  2330.  
  2331.           Files
  2332.           ════════════════════════════════════════════════════════════
  2333.           The next option group in the Options pick-list is the Files
  2334.           option group.  This group contains a pick-list of features
  2335.           that pertain to the RemoteAccess file transfer system.  Step
  2336.           through each option as you read the descriptions that
  2337.           follow.
  2338.           
  2339.           
  2340.           Upload Credit
  2341.           ────────────────────────────────────────────────────────────
  2342.           This feature provides a way of rewarding your users for
  2343.           uploading files to you.  When this is set to a non-zero
  2344.           value, users are granted the number of seconds entered here
  2345.           for each one minute of time spent uploading.  For example,
  2346.           if this field is set to a value of 30 (seconds), and a user
  2347.           spends 10 minutes uploading, the user would be granted an
  2348.           extra 5 minutes for the current log-on session.
  2349.           
  2350.            
  2351.           NOTE:  The system timer is always disabled while an upload
  2352.           is in progress.
  2353.  
  2354.  
  2355.           Payback Credit
  2356.           ────────────────────────────────────────────────────────────
  2357.           This feature allows users to be credited with the number of
  2358.           credits specified here, each time a file which a user has
  2359.           previously uploaded is downloaded by another user.  For
  2360.           example, if this field is set to a value of 1 and Joe User
  2361.           uploads the file MYFILE.ARJ, Joe will be given 1 credit each
  2362.           time MYFILE.ARJ is downloaded by another user.
  2363.  
  2364.           NOTE:  If this field is set to a value of 255, then the
  2365.           uploader is credited with the cost (in credits) of the file
  2366.           to the downloader.
  2367.           
  2368.  
  2369.  
  2370.  
  2371.  
  2372.  
  2373.  
  2374.  
  2375.  
  2376.                                    - 32 -
  2377.           Touch Dates
  2378.           ────────────────────────────────────────────────────────────
  2379.           When a file is uploaded using a batch protocol such as
  2380.           Zmodem or Ymodem, the original date of the file is normally
  2381.           preserved when the file is saved in the upload area.
  2382.           However, if this option is set to Yes, RemoteAccess will
  2383.           reset the date stamp of the file to the date on which it was
  2384.           uploaded.
  2385.           
  2386.           
  2387.           Show Missing
  2388.           ────────────────────────────────────────────────────────────
  2389.           If this option is set to Yes, RemoteAccess will display file
  2390.           database entries even if the actual file is not present
  2391.           within the file area being listed.  For example, an entry
  2392.           may exist in the file database even though the actual file
  2393.           may have been deleted or moved.  If this is the case, and
  2394.           this option is set to Yes, RemoteAccess will display the
  2395.           entry for which the file is missing using the "Missing
  2396.           format" described later in this section.
  2397.           
  2398.           
  2399.           Upload Space
  2400.           ────────────────────────────────────────────────────────────
  2401.           It is possible to disable uploads when the amount of free
  2402.           space on your upload drive falls below a preset level.  For
  2403.           example, to disable uploads if there is less than 1 megabyte
  2404.           of free space available, enter 1024 (k) in this field.
  2405.           
  2406.           
  2407.           Logon New Files
  2408.           ────────────────────────────────────────────────────────────
  2409.           This option has three possible settings; Yes, No or Ask and
  2410.           is used to allow or disallow users to check for new files
  2411.           since their last call during the log-on process.  The
  2412.           effects of each setting is described in the following table:
  2413.           
  2414.           Setting   Description
  2415.           ────────────────────────────────────────────────────────────
  2416.           Yes       During the log-on process, RemoteAccess will
  2417.                     automatically scan the file database for files
  2418.                     that are new since the user's last log-on,
  2419.                     presenting the list to the user.
  2420.  
  2421.           Ask       During the log-on process, the user will be
  2422.                     prompted whether to scan the file database for new
  2423.                     files.
  2424.           
  2425.           No        No new files scan will be performed.
  2426.           
  2427.  
  2428.  
  2429.  
  2430.  
  2431.  
  2432.  
  2433.  
  2434.  
  2435.  
  2436.  
  2437.  
  2438.  
  2439.  
  2440.                                    - 33 -
  2441.           New Files Tag
  2442.           ────────────────────────────────────────────────────────────
  2443.           This option is used to enable or disable file tagging during
  2444.           the new files listing process.  For example, when this
  2445.           option is enabled, users may tag files for later download
  2446.           while viewing a list of files that are new since the user's
  2447.           last log-on. Each file that is tagged is stored in the
  2448.           user's tag-list which may be viewed, edited, cleared or
  2449.           downloaded during the log- on session.
  2450.           
  2451.           
  2452.           Download Start and Download End
  2453.           ────────────────────────────────────────────────────────────
  2454.           RemoteAccess allows you to define a period of time in which
  2455.           files may be downloaded by your users.  For example, you may
  2456.           not want your users to be able to download files between
  2457.           5:00pm (17:00) and 8:00pm (20:00).  In this case, Download
  2458.           Start would be set to 20:00 and Download End would be set to
  2459.           17:00, which would define the period (or window) of time in
  2460.           which files may be downloaded.
  2461.  
  2462.           Users who attempt to download files outside of the defined
  2463.           download schedule are presented with the DNLDHRS.A?? text
  2464.           file, if it exists.  This file is fully described later in
  2465.           the External Support Files chapter.
  2466.  
  2467.           To allow your users to download files at any time, set both
  2468.           of these fields to 00:00.
  2469.           
  2470.           NOTE:  Download hours are overridden by the xfer priority
  2471.           flag within a user's account record.  Users with this flag
  2472.           set may download at any time regardless of the schedule
  2473.           defined here.
  2474.           
  2475.           
  2476.           Download Speed
  2477.           ────────────────────────────────────────────────────────────
  2478.           This option is used to specify the minimum BPS connect speed
  2479.           that is required by your users in order to download files
  2480.           from your system.  For example, if this field is set to a
  2481.           value of 2400, only users having a connect speed of 2400 BPS
  2482.           or greater would be permitted to download files.
  2483.           
  2484.           
  2485.           No Dupe Extension
  2486.           ────────────────────────────────────────────────────────────
  2487.           RemoteAccess has the capability of checking for duplicate
  2488.           files before allowing an upload to proceed.  This eliminates
  2489.           the possibility of users uploading files which already exist
  2490.           within the file database.  However, when RemoteAccess checks
  2491.           for a duplicate filename, it may be configured to include or
  2492.           ignore the filename extensions when performing comparisons.
  2493.           This enables comparisons of different file archive types.
  2494.           For example, if the file MYFILE.LZH exists within the file
  2495.           database and a user attempts to upload the file MYFILE.ARJ,
  2496.           RemoteAccess will detect a duplicate filename when this
  2497.           option is set to Yes.
  2498.           
  2499.  
  2500.  
  2501.  
  2502.  
  2503.  
  2504.                                    - 34 -
  2505.           DL Description
  2506.           ────────────────────────────────────────────────────────────
  2507.           This field has three possible settings; Yes, No or Ask and
  2508.           is used to allow or disallow your users to include file
  2509.           descriptions when downloading files.
  2510.           
  2511.           Setting   Description
  2512.           ────────────────────────────────────────────────────────────
  2513.           Yes       RemoteAccess automatically includes a file
  2514.                     description list with downloaded files.
  2515.           
  2516.           Ask       Before a download is started, RemoteAccess asks
  2517.                     the user whether to include file descriptions with
  2518.                     the file being downloaded.
  2519.           
  2520.           No        RemoteAccess does not send file descriptions.
  2521.           
  2522.           
  2523.           List Format
  2524.           ────────────────────────────────────────────────────────────
  2525.           Using this option, you may configure the format in which
  2526.           file database entries are displayed to your users.  This is
  2527.           accomplished using a template for the display line.  This
  2528.           method allows you to completely customize the way in which
  2529.           your file lists are presented.  The following table lists
  2530.           the macros that are supported within this field as well as
  2531.           within the "Missing format" field described in this section.
  2532.           {+} Registered only.          
  2533.  
  2534.           Macro   String Data Represented by This Macro
  2535.           ────────────────────────────────────────────────────────────
  2536.           @NE     Filename, uppercase, with extension.
  2537.           @NN     Filename, uppercase, no extension.
  2538.           @SB     File size in bytes.
  2539.           @SK     File size in kilobytes.
  2540.           @UL     Name of the file Uploader.
  2541.           @UD     Date on which file was uploaded.
  2542.           @FD     Actual file date.
  2543.           @LD     Date on which the file was last downloaded.
  2544.           @TD     Number of times file has been downloaded.
  2545.           @Kn     Keyword [n] for the file (where n = 1 to 5).
  2546.           @CS     Cost of the file in credits (deducted from user's
  2547.                   credit).
  2548.           @DF     Formatted description of the file.
  2549.           @DU     Unformatted description of the file (also referred
  2550.                   to as user mode).
  2551.           @FR     Displays (Free) if the file is free, spaces if it is
  2552.                   not.
  2553.           @NA     Displays (NotAvail) if the file is marked as not
  2554.                   available.
  2555.           @NW     Displays an * character if the file is new, space if
  2556.                   it is not.
  2557.           @PW     Displays (Password) if the file is password-
  2558.                   protected.
  2559.  
  2560.  
  2561.  
  2562.  
  2563.  
  2564.  
  2565.  
  2566.  
  2567.  
  2568.                                    - 35 -
  2569.           Substituting a "%" character for the "@" character forces
  2570.           string type fields to lowercase.  Substituting a "^"
  2571.           character for the "@" character forces string type fields to
  2572.           uppercase. There is one additional special macro - "#nn"
  2573.           which is used to set the width for all following fields to
  2574.           "nn" characters.  When used, "nn" must be specified as two
  2575.           digits.  For example, specifying "#03" will truncate or pad
  2576.           all following fields to 3 characters in length.  Use "#00"
  2577.           to reset to default field widths.
  2578.           
  2579.           NOTE:  When used, the @DF and @DU macros must appear at the
  2580.           very end of the list format entry.
  2581.           
  2582.           When file lists contain special formatting such as boxed
  2583.           text, you should use the @DU macro to display unformatted
  2584.           file descriptions.  This user mode of display maintains any
  2585.           special formatting you may have applied to file descriptions
  2586.           and prevents RemoteAccess from automatically formatting or
  2587.           wrapping lines.
  2588.  
  2589.           In addition to these macros, the ^K[cc text file control
  2590.           code (change color) may also be used within this field.  See
  2591.           the External Support Files chapter for more information on
  2592.           this control code.  To obtain the hexadecimal color number
  2593.           to be used in conjunction with the ^K control code, press F1
  2594.           while editing this field.  This presents a color chart which
  2595.           can be used as a reference when selecting color numbers.
  2596.  
  2597.           The following example illustrates how a list format line
  2598.           might be defined.  This example includes codes which produce
  2599.           a file listing containing:
  2600.           
  2601.           *     The filename and extension, in uppercase characters
  2602.           displayed using a light yellow foreground on a black
  2603.           background.
  2604.           
  2605.           *     The date on which the file was uploaded, displayed
  2606.           using a light green foreground color on a black background.
  2607.           
  2608.           *     The size of the file in bytes displayed using a white
  2609.           foreground color on a black background.
  2610.           
  2611.           *     The number of times the file has been downloaded,
  2612.           displayed using a light magenta foreground color on a black
  2613.           background.
  2614.           
  2615.           *     An "*" character which is displayed for all new files
  2616.           since the caller's last log-on using a light red foreground
  2617.           color on a black background.
  2618.           
  2619.           *     The formatted file description displayed using a gray
  2620.           foreground color on a black background.
  2621.           
  2622.              ^K[0E@NE ^K[0A@UD ^K[0F@SB ^K[0D@TD ^K[0C@NW^K[07@DF
  2623.           
  2624.  
  2625.  
  2626.  
  2627.  
  2628.  
  2629.  
  2630.  
  2631.  
  2632.                                    - 36 -
  2633.           Missing Format
  2634.           ────────────────────────────────────────────────────────────
  2635.           Like "List Format", this field allows you to configure the
  2636.           format in which file database entries with missing files are
  2637.           displayed to your users.
  2638.           
  2639.           See the "List Format" field above for information on macros
  2640.           supported within this field.
  2641.           
  2642.           NOTE:  This entry is only useful when the Show Missing
  2643.           option is set to Yes.
  2644.           
  2645.           
  2646.           Upload Scan
  2647.           ────────────────────────────────────────────────────────────
  2648.           RemoteAccess allows uploaded files to be scanned, using
  2649.           external third-party software, to determine if the files
  2650.           have been infected by a computer virus.  This enables you to
  2651.           automatically detect files which contain a virus and take
  2652.           the appropriate actions before accepting the file or
  2653.           allowing its distribution.
  2654.  
  2655.           Position the cursor-bar on the Upload scan option and press
  2656.           <ENTER>.  A new pick-list menu will be displayed.  Press
  2657.           <ENTER> on the Scan Online option to toggle between the
  2658.           available settings.  When set to Yes, uploads will be
  2659.           scanned while the user is still on-line.  When set to No,
  2660.           uploads are scanned immediately after the user disconnects.
  2661.           When set to Ask, the text file UPLDSCAN.A?? is displayed (if
  2662.           it exists) just before the user is prompted, "Scan your
  2663.           uploads now?" which gives the user the option of waiting
  2664.           while the scan takes place or to scan the files after the
  2665.           user disconnects.
  2666.           
  2667.           NOTES:
  2668.  
  2669.           1.    Users are not credited for uploads until after the
  2670.           uploaded files pass the scan process.
  2671.           
  2672.           2.    To effect upload scanning you must also enable the UL
  2673.           Scan option for each file area in which this option should
  2674.           be active.
  2675.           
  2676.           Position the cursor-bar on the Failed Scan option and press
  2677.           <ENTER>.  A new pick-list menu will be displayed.  Use this
  2678.           menu to select which actions are to be taken when a file
  2679.           fails the virus scan.  You may either delete the file or
  2680.           mark it as unlisted or unavailable.  You may additionally
  2681.           move the file to another area by specifying the area number
  2682.           in the "Move To" field.  Any of these options may be
  2683.           combined with the exception of the Delete option.
  2684.  
  2685.           Position the cursor-bar on the Scan Utility field and press
  2686.           <ENTER>.  Enter the command-line to activate the external
  2687.           virus scan utility.  RemoteAccess simply executes this
  2688.           command-line for each uploaded file.  The full path and
  2689.           filename of each file may be passed by specifying the @
  2690.           macro character.
  2691.  
  2692.  
  2693.  
  2694.  
  2695.  
  2696.                                    - 37 -
  2697.           For example, to execute SCAN.EXE from the C:\UTILITY
  2698.           directory to scan a file just uploaded, this field might
  2699.           look like this:
  2700.           
  2701.                         C:\UTILITY\SCAN.EXE @
  2702.           
  2703.           If the scan utility returns a non-zero errorlevel to
  2704.           RemoteAccess, the file is assumed to be corrupt in some way
  2705.           and thus, fails the scan process.
  2706.           
  2707.           NOTE:  You must specify a full drive and path in the Scan
  2708.           Utility field.
  2709.           
  2710.  
  2711.           RAMGR Function Keys
  2712.           ────────────────────────────────────────────────────────────
  2713.           This option allows you to configure up to 5 external program
  2714.           command-lines which may be activated using the ALT-F1
  2715.           through ALT-F5 keys from within the RAMGR file list screen.
  2716.           Any @ characters within this field will be expanded into the
  2717.           full path and filename of the file that is currently
  2718.           highlighted.  The *M macro may be used to swap RAMGR out of
  2719.           memory before shelling to the external program.
  2720.  
  2721.           For example, to run the program FILEVIEW.EXE from the
  2722.           C:\UTILITY directory, passing the path and filename of the
  2723.           currently-highlighted file and swapping RAMGR before the
  2724.           shell:
  2725.           
  2726.                      C:\UTILITY\FILEVIEW.EXE @ *M
  2727.           
  2728.           
  2729.           External Archive Viewer
  2730.           ────────────────────────────────────────────────────────────
  2731.           RemoteAccess has an internal archive viewing utility that
  2732.           may be used to view the formatted contents of many types of
  2733.           file archives.  However, if you prefer, you can use an
  2734.           external archive viewing utility by specifying the full
  2735.           drive, path and filename of the viewer to be used, in this
  2736.           field. See menu function type 34-"View archive" in the Menu
  2737.           Administration chapter for more information on viewing
  2738.           archives. {+} Registered only.
  2739.  
  2740.  
  2741.           Archivers
  2742.           ────────────────────────────────────────────────────────────
  2743.           RemoteAccess supports the use of up to 10 archiver utility
  2744.           programs.  These are used primarily in converting archives
  2745.           from one format to another.
  2746.  
  2747.           When configuring file areas (later in this chapter) you can
  2748.           specify the archive format to convert all uploaded files to.
  2749.           For example, if you favor the .LZH format, you can specify
  2750.           that all uploads are to be converted to this type.  The
  2751.           conversion function is actually performed by the RAFILE
  2752.           utility which is discussed in the File Database
  2753.           Administration chapter. RAFILE uses the information entered
  2754.           here to carry out its REARC function.
  2755.  
  2756.  
  2757.  
  2758.  
  2759.  
  2760.                                    - 38 -
  2761.           If you don't want to convert uploaded archives, you don't
  2762.           have to specify anything here.  But if you do, you'll
  2763.           probably want to include at least the most popular archiver
  2764.           utilities. These utilities are available on most any BBS
  2765.           that offers shareware software programs for download.
  2766.  
  2767.           Position the cursor-bar on Archivers and press <ENTER>.
  2768.           Next, position the cursor-bar on "Arc 1" and press <ENTER>
  2769.           to edit the archiver command information.
  2770.           
  2771.           It doesn't matter what order in which the archivers are
  2772.           entered.  RemoteAccess simply looks at the filename
  2773.           extension and determines which archiver is to be used.  The
  2774.           information entered includes the archive filename extension,
  2775.           the command- line used to unpack archives of this type and
  2776.           the command-line used to pack archives of this type.
  2777.  
  2778.           When the @ macro character is used in this field, it is
  2779.           expanded into the full path and filename of the archive
  2780.           filename that functions are being performed on. The first
  2781.           field (Arc 1) is used to enter a 3-character filename
  2782.           extension which corresponds to the archive type being
  2783.           defined.  For example, if you're entering archiver
  2784.           information for the ARJ archiver utility, enter ARJ and
  2785.           press <ENTER>. Next, you will be prompted to enter the
  2786.           unpack command- line for this archiver.  For example, to
  2787.           enter the unpack command-line for the ARJ archiver (and
  2788.           assuming that, for the sake of this example, it exists in
  2789.           the directory C:\ARJ) you might enter the following
  2790.           command-line:
  2791.           
  2792.                           C:\ARJ\ARJ.EXE e @
  2793.           
  2794.           After pressing <ENTER> in this field, you will be prompted to 
  2795.           enter the pack command-line.  In keeping with our example, 
  2796.           you might enter:
  2797.           
  2798.                           C:\ARJ\ARJ.EXE a @
  2799.           
  2800.           After pressing <ENTER> in this field, you will be returned
  2801.           to the Archivers pick-list menu.  Continue entering the
  2802.           extension, unpack and pack information for all archiver
  2803.           types you wish to support.
  2804.           
  2805.            
  2806.           When entering the command-lines in the unpack and pack
  2807.           fields, you must specify a drive and path as well as the
  2808.           filename and extension.
  2809.           
  2810.  
  2811.           Restrictions
  2812.           ════════════════════════════════════════════════════════════
  2813.           The next option group is the Restrictions group.  This group
  2814.           simply offers three restriction settings that can be applied
  2815.           to your system. Position the cursor-bar on the Restrictions
  2816.           option and press <ENTER>.   Step through each of the pick-list
  2817.           options as you read the descriptions that follow.
  2818.           
  2819.  
  2820.  
  2821.  
  2822.  
  2823.  
  2824.                                    - 39 -
  2825.           Log-on Speed
  2826.           ────────────────────────────────────────────────────────────
  2827.           This option allows you to specify the minimum modem
  2828.           connection speed that is required in order for a user to be
  2829.           able to log-on to your system.
  2830.  
  2831.           For example, if this field has a setting of 2400, users
  2832.           connecting at a BPS rate less than 2400 would not be allowed
  2833.           to log-on.  Instead, the text file TOOSLOW.ASC is displayed
  2834.           just before the call is terminated.  See the External
  2835.           Support Files chapter for more information on this file.
  2836.           
  2837.           
  2838.           ANSI Speed
  2839.           ────────────────────────────────────────────────────────────
  2840.           This option is used to specify the minimum modem connection
  2841.           speed that is required in order for users to enable ANSI
  2842.           emulation.  Since ANSI escape codes are used to effect color
  2843.           changes and cursor positioning, they add to the
  2844.           communications overhead and can effectively slow throughput
  2845.           to callers of low BPS connection rates.
  2846.  
  2847.           For example, to restrict the use of ANSI emulation to
  2848.           callers with at least a 2400 BPS connect speed, set this
  2849.           field to 2400.
  2850.           
  2851.           
  2852.           No300 Start and No300 End
  2853.           ────────────────────────────────────────────────────────────
  2854.           RemoteAccess allows you to configure a period (or window) of
  2855.           time in which 300 BPS callers are not allowed to log-on to
  2856.           your system.  Although faster modems have become affordable,
  2857.           we realize that there are still some 300 BPS modem Die-hards
  2858.           out there who refuse to upgrade.
  2859.  
  2860.           If you wish to restrict your system to allow 300 BPS callers
  2861.           only during certain times of the day, set these fields to
  2862.           the starting and ending times of this period.
  2863.  
  2864.           For example, to disallow 300 BPS callers between the hours
  2865.           of 5:00pm (17:00) and 8:00pm (20:00), enter 17:00 in the
  2866.           No300 Start field and 20:00 in the No300 End field.
  2867.  
  2868.           When a 300 BPS caller attempts to log-on during the
  2869.           restricted time frame, RemoteAccess will display the text
  2870.           file NO300.ASC (if it exists) prior to terminating the call.
  2871.           
  2872.  
  2873.           Errorlevels
  2874.           ════════════════════════════════════════════════════════════
  2875.           The next option group is the Errorlevels group.  This group
  2876.           is used to specify the errorlevels that RemoteAccess will
  2877.           return when used in conjunction with a third-party Front End
  2878.           Mailer. Fax/modem support is also offered through the use of
  2879.           one of these options.
  2880.  
  2881.  
  2882.  
  2883.  
  2884.  
  2885.  
  2886.  
  2887.  
  2888.                                    - 40 -
  2889.           If you won't be using a Front End Mailer or a fax/modem,
  2890.           skip ahead to the Display options group.  If you will be
  2891.           using a Front End Mailer or a fax/modem, or would like to
  2892.           understand how one is used with RemoteAccess, position the
  2893.           cursor-bar on Errorlevels and press <ENTER>.  A new
  2894.           pick-list menu will be displayed which contains a selection
  2895.           list of connect speeds and their corresponding errorlevel
  2896.           numbers.
  2897.           
  2898.           Front End Mailer software is an application which is
  2899.           generally used to link a BBS to a mail network.  Within a
  2900.           mail network, systems exchange mail (NetMail), messages
  2901.           (EchoMail) and files.   Many Sysops participate in mail
  2902.           networks in order to provide their users with EchoMail
  2903.           message conferences which are message areas devoted to
  2904.           specific topics of all sorts.  This requires systems to
  2905.           adhere to guidelines set forth within individual mail
  2906.           networks.  It also requires systems to have the ability to
  2907.           answer an incoming call and determine whether the call is
  2908.           another node within the mail network or a human BBS caller.
  2909.           The system must then act accordingly.  If another node is
  2910.           calling, a protocol is used to exchange data between the
  2911.           nodes.  If the Front End Mailer detects a human BBS caller,
  2912.           it must be able to load the BBS. Under these conditions, you
  2913.           can probably see why separate Front End Mailer software is
  2914.           required in order to participate in a mail network.
  2915.           Although RemoteAccess does not act as a Front End Mailer to
  2916.           a mail network by itself, it does work in conjunction with
  2917.           most Front End Mailer software.
  2918.  
  2919.           Generally speaking, there are two basic methods of loading
  2920.           RemoteAccess while a Front End Mailer is in use.  The first
  2921.           method is to load the mailer directly from a batch file.
  2922.           The front end would then answer incoming calls and if a
  2923.           human BBS caller was detected, it would exit to the calling
  2924.           batch file with an errorlevel which is based on the caller's
  2925.           connection speed.  The calling batch file would trap the
  2926.           errorlevel and load RemoteAccess using the appropriate
  2927.           command-line parameters to set the BPS rate and other
  2928.           settings.
  2929.  
  2930.           The drawback to this method is that there may be long delays
  2931.           between the time the Front End Mailer detects the human BBS
  2932.           caller and the time RemoteAccess prompts the user to enter
  2933.           his or her log-on name.
  2934.  
  2935.           The second method greatly reduces this apparent loading time
  2936.           and sounds trickier to implement than it really is.  The
  2937.           Shell to Mailer feature permits RemoteAccess itself to be
  2938.           loaded first which, in turn, runs the Front End Mailer
  2939.           software in a DOS shell.  When a human BBS caller is
  2940.           detected by the Front End Mailer, it exits with the same DOS
  2941.           errorlevel set as in the first method.  But rather than
  2942.           control being passed back to the calling batch file, it is
  2943.           instead passed back to RemoteAccess which called the Front
  2944.           End Mailer software using the DOS shell.
  2945.  
  2946.  
  2947.  
  2948.  
  2949.  
  2950.  
  2951.  
  2952.                                    - 41 -
  2953.           The errorlevel that the Front End Mailer software returns to
  2954.           RemoteAccess is checked against the list of errorlevels
  2955.           defined in the Errorlevel pick-list.  If a match is found,
  2956.           RemoteAccess uses the connection speed corresponding to the
  2957.           matched errorlevel to communicate with the caller.
  2958.  
  2959.           The advantage of using the second method is that since
  2960.           RemoteAccess is already loaded when the DOS shell to load
  2961.           the Front End Mailer was executed, the BBS appears to load
  2962.           much faster and the caller doesn't experience a long delay
  2963.           (even if RemoteAccess is swapped to disk prior to shelling
  2964.           to the Front End Mailer software.
  2965.           
  2966.           NOTE:  When an errorlevel is passed which either does not
  2967.           match any of the errorlevels in the pick-list, or matches
  2968.           the errorlevel specified in the Fax field, RemoteAccess
  2969.           immediately exits to the calling batch file, passing the
  2970.           received errorlevel to it.
  2971.           
  2972.           For information on loading RemoteAccess in Shell to Mailer
  2973.           mode, see the RA.EXE Command-Line Parameters, Shell to
  2974.           Mailer and Batch File Examples sections of the Reference
  2975.           Information chapter.
  2976.           
  2977.           
  2978.           Fax
  2979.           ────────────────────────────────────────────────────────────
  2980.           The Fax field is used to specify the errorlevel that
  2981.           RemoteAccess is to exit with when a fax connect response is
  2982.           received from the modem (see Responses in the Modem section
  2983.           below).  When RemoteAccess answers an incoming call and the
  2984.           connect response from the modem matches the Fax connect
  2985.           response, it exits to the calling batch file, passing the
  2986.           errorlevel specified here.  This enables you to use a
  2987.           fax/modem as your BBS modem and still receive incoming
  2988.           faxes. {+} Registered only.
  2989.           
  2990.           
  2991.           Display
  2992.           ════════════════════════════════════════════════════════════
  2993.           The Display options group contains a pick-list of options
  2994.           that pertain to your computer's display monitor.   Through
  2995.           these options, RemoteAccess supports monochrome (black and
  2996.           white) and color monitors as well as 43 and 50 display line
  2997.           modes. For a list of display options, position the
  2998.           cursor-bar on Display and press <ENTER>.
  2999.           
  3000.           
  3001.           Monochrome
  3002.           ────────────────────────────────────────────────────────────
  3003.           Setting this option to Yes tells RemoteAccess to use
  3004.           monochrome mode.  In this mode, RemoteAccess remaps
  3005.           (changes) all color definitions to black and white.
  3006.           
  3007.  
  3008.  
  3009.  
  3010.  
  3011.  
  3012.  
  3013.  
  3014.  
  3015.  
  3016.                                    - 42 -
  3017.           Direct Screen Write Mode
  3018.           ────────────────────────────────────────────────────────────
  3019.           Specifies that fast direct screen writes are to be used.  If
  3020.           you are not using RemoteAccess in a multitasking
  3021.           environment, set this option to Yes.  This will cause all
  3022.           screen output to be written to video RAM directly instead of
  3023.           using your PCs BIOS functions to perform the task.  This
  3024.           results in a significantly increased screen write speed.  If
  3025.           you are using multitasking software, set this option to No.
  3026.           
  3027.           
  3028.           Snow Checking
  3029.           ────────────────────────────────────────────────────────────
  3030.           Some older CGA (Color Graphics Adapter) adapters are prone
  3031.           to snowing while an application program performs display
  3032.           output functions.  This occurs when software updates the
  3033.           computer display at high rates.  RemoteAccess can counter
  3034.           this effect if the Snow Check option is set to Yes. If you
  3035.           have a CGA adapter, set this option to No.  If you discover
  3036.           the snowing effect, change it to Yes.
  3037.           
  3038.           
  3039.           Display Lines (Size)
  3040.           ────────────────────────────────────────────────────────────
  3041.           The Display Lines option allows you to configure the display
  3042.           size (in lines) and has three possible settings:
  3043.           
  3044.           Setting   Description
  3045.           ────────────────────────────────────────────────────────────
  3046.           25        Standard 25-line mode.
  3047.           43/50     EGA 43-line and VGA 50-line mode.
  3048.           AUTO      When this setting is specified, RemoteAccess uses
  3049.                     the mode which is active at the time it is loaded.
  3050.           
  3051.           
  3052.           Colors
  3053.           ════════════════════════════════════════════════════════════
  3054.           The Colors option group contains a list of items that allow
  3055.           you to customize some of the more often used colors that the
  3056.           user sees.
  3057.  
  3058.           Select this option to display the pick-list of items that
  3059.           may be edited.  After selecting a particular item, a color
  3060.           selection pick-list menu will be displayed.  Use the UP,
  3061.           DOWN, LEFT and RIGHT keys to move the color selector within
  3062.           the pick-list.  As you move the selector, the hexadecimal
  3063.           color number located along the bottom of the menu changes to
  3064.           reflect the color at the current selector position.
  3065.  
  3066.  
  3067.  
  3068.  
  3069.  
  3070.  
  3071.  
  3072.  
  3073.  
  3074.  
  3075.  
  3076.  
  3077.  
  3078.  
  3079.  
  3080.                                    - 43 -
  3081.           Position the color selector on the desired combination and
  3082.           press <ENTER> to save it.  The items for which colors can be
  3083.           configured are listed below.
  3084.            
  3085.           Text        Default color of all text.
  3086.           Statbar     Color of the status bar.
  3087.           Highlight   Window highlight color.
  3088.           Window      Window normal color.
  3089.           Border      Window border color.
  3090.           Hiprompt    Highlighted text color.
  3091.           CRprompt    The Press <ENTER>  prompt color.
  3092.           Input       User input field color.
  3093.           Tag         Tag number (displayed in file lists) color.
  3094.           
  3095.           
  3096.           Paging
  3097.           ════════════════════════════════════════════════════════════
  3098.           The next option group contains items related to the
  3099.           RemoteAccess Paging functions.  The items used to control
  3100.           the paging system's characteristics, as well as a paging
  3101.           schedule are configured here.
  3102.  
  3103.           In addition to the options that follow, RemoteAccess
  3104.           supports text file display and custom page tunes.  These are
  3105.           discussed in the chapters on Menu Administration and
  3106.           External Support files.
  3107.  
  3108.           Position the cursor-bar on Paging and press <ENTER>.
  3109.           
  3110.           
  3111.           Duration
  3112.           ────────────────────────────────────────────────────────────
  3113.           Use this field to set the duration (in seconds) that the
  3114.           paging tune will sound at the local console.  If this time
  3115.           expires without any Sysop intervention, the user will be
  3116.           informed that the Sysop is unavailable.  The text file
  3117.           PAGED.A?? is displayed, if it exists.
  3118.           
  3119.           
  3120.           Maximum Number
  3121.           ────────────────────────────────────────────────────────────
  3122.           This field specifies the maximum number of times a user can
  3123.           page the Sysop unsuccessfully during one session.  When this
  3124.           limit has been reached, the user will not be able to page
  3125.           the Sysop any more during the current session.  If a page is
  3126.           answered by the Sysop, the number of unsuccessful page
  3127.           attempts is reset to zero.
  3128.           
  3129.           
  3130.           Ask Why
  3131.           ────────────────────────────────────────────────────────────
  3132.           If this field is set to Yes, users are prompted to enter a
  3133.           reason for the requested chat.  The response entered is then
  3134.           displayed on the status bar, and may be re-displayed later
  3135.           by pressing F6 on the local console keyboard.
  3136.           {+} Registered only.          
  3137.  
  3138.  
  3139.  
  3140.  
  3141.  
  3142.  
  3143.  
  3144.                                    - 44 -
  3145.           Sysop Messages
  3146.           ────────────────────────────────────────────────────────────
  3147.           If a page attempt is unsuccessful, the user can be prompted
  3148.           to leave a message addressed to the Sysop.  To enable this
  3149.           feature, enter the desired message area number that you
  3150.           would like these messages to be stored in the Sysop Msgs
  3151.           field. Setting this field to zero disables this feature.
  3152.           {+} Registered only.          
  3153.           
  3154.           External Chat Utilities
  3155.           ────────────────────────────────────────────────────────────
  3156.           The External field is used to specify the command-line of an
  3157.           external chat program.  If this field is not empty,
  3158.           RemoteAccess executes the specified program instead of using
  3159.           the built-in chat module.  All optional data macros
  3160.           supported by menu function type 7-"Run external program in
  3161.           a shell" may also be used within this field.
  3162.  
  3163.           For example, to use an external full-screen chat program
  3164.           called GCHAT.EXE located in the C:\RA directory, and swap
  3165.           RemoteAccess out of memory before loading the program, you
  3166.           might enter:
  3167.           
  3168.                           C:\RA\GCHAT.EXE *M
  3169.           
  3170.           Using the optional data parameter macros listed under menu
  3171.           function type 7-"Run an external program in a shell" in the
  3172.           Menu Administration chapter, you can pass any number of
  3173.           parameters that may be required by the external chat
  3174.           program. {+} Registered only.
  3175.           
  3176.           
  3177.           Suspend Time During Chat
  3178.           ────────────────────────────────────────────────────────────
  3179.           If the Suspend feature is set to Yes, RemoteAccess freezes
  3180.           the system timer while the Sysop is chatting with a user.
  3181.           This means that the user will exit the chat with the same
  3182.           time remaining as when the chat was initiated.
  3183.           
  3184.           
  3185.           Automatic Logging of Chat Sessions
  3186.           ────────────────────────────────────────────────────────────
  3187.           During a chat, the Sysop may press CTRL-A to record the
  3188.           conversation in an ASCII text log file.  If the Auto Log
  3189.           feature is enabled, the capture log is opened automatically
  3190.           each time a chat is initiated.
  3191.  
  3192.           Whether you open a capture log manually or automatically, a
  3193.           pop-up window appears on your display, prompting for the
  3194.           filename in which the chat session is to be recorded.
  3195.           
  3196.           Once a capture file is opened, it may be closed during the
  3197.           chat session by pressing CTRL-A.
  3198.           
  3199.  
  3200.  
  3201.  
  3202.  
  3203.  
  3204.  
  3205.  
  3206.  
  3207.  
  3208.                                    - 45 -
  3209.           Paging Availability Schedule
  3210.           ────────────────────────────────────────────────────────────
  3211.           In each of the Sunday through Saturday fields you may define
  3212.           the start and end times during which users are permitted to
  3213.           page the Sysop on a daily basis.  The first field for each
  3214.           day determines the start time, and the second field
  3215.           determines the end time during which users may page the
  3216.           Sysop.  To disable paging completely for any given day, set
  3217.           both fields to 00:00.
  3218.           
  3219.           
  3220.           New Users
  3221.           ════════════════════════════════════════════════════════════
  3222.           The New Users options group contains a pick-list of options
  3223.           which determine how your system will treat new users.
  3224.           
  3225.  
  3226.           Security
  3227.           ────────────────────────────────────────────────────────────
  3228.           This field is used to specify the security level that will
  3229.           be assigned to a new user who logs-on for the first time.
  3230.           If you run a private system, and do not want to allow new
  3231.           users to log-on, set this field to zero.  When configured as
  3232.           a private system, new users are notified that the system is
  3233.           private and are disconnected immediately.  See the
  3234.           PRIVATE.ASC text file description in the External Support
  3235.           Files chapter for more information.
  3236.           
  3237.           
  3238.           Flags
  3239.           ────────────────────────────────────────────────────────────
  3240.           When a new user logs-on to your system, you can assign
  3241.           default settings to the user's access flags.  Valid settings
  3242.           are ON or OFF (specified as X and -).
  3243.  
  3244.           You have probably already read sections boasting about the
  3245.           security system used by RemoteAccess.  The total flexibility
  3246.           and scope of the security system permits you to allow or
  3247.           deny access to various entities of your system based on
  3248.           security levels, time of day, user credits, file ratios,
  3249.           groups, user age and even user sex.  But to make this
  3250.           flexibility complete, RemoteAccess offers what are called
  3251.           access flags, also known as security flags which can be used
  3252.           individually or in combination with other restrictions to
  3253.           allow or deny access to virtually any part of your BBS.
  3254.  
  3255.           Before configuring access flags, it is important that you
  3256.           understand how they can be used.  Since the new user flags
  3257.           option brings forth your first encounter with access flags,
  3258.           now would be a good time to discover them.  Are access flags
  3259.           necessary?  As a matter of fact no, they are not.  But if
  3260.           you understand how they can be used, you might just find a
  3261.           practical use for them.
  3262.  
  3263.           Access flag settings are stored in each user's account
  3264.           record.  Each user's access flags setting can be compared to
  3265.           the flag settings specified for individual menu items,
  3266.           message areas and file areas.  Therefore, access to these
  3267.           areas can be completely controlled using access flags.
  3268.  
  3269.  
  3270.  
  3271.  
  3272.                                    - 46 -
  3273.           Think of access flags as a series of switches.  Each switch
  3274.           may be set to an ON or OFF state.  There are four sets of
  3275.           access flags which are lettered A through D.  Each set
  3276.           contains eight individual flags numbered 1 through 8.
  3277.           Individual access flags are therefore referenced by the set
  3278.           letter and flag number.  For instance, when referring to the
  3279.           first flag in the first set, we are referring to access flag
  3280.           A1.  Likewise, when referring to the last flag in the last
  3281.           set, we are referring to access flag D8.
  3282.  
  3283.           This series of switches, as we've called them, can be
  3284.           assigned to any of the items outlined above.  The flag
  3285.           settings contained in the user record must identically match
  3286.           the settings assigned to a given item before access is
  3287.           granted to that item.  A single access flag may be turned ON
  3288.           in a menu item, for instance.  The same flag must also be ON
  3289.           in a user's record before the user can access or even view
  3290.           the menu item. While a single access flag or switch might be
  3291.           sufficient, a series of switches may also be used.
  3292.  
  3293.           The following illustration shows a sample of a user record.
  3294.           Notice the access flag settings for this user.
  3295.  
  3296.  
  3297.  
  3298.  
  3299.  
  3300.  
  3301.  
  3302.  
  3303.  
  3304.  
  3305.  
  3306.  
  3307.  
  3308.  
  3309.  
  3310.  
  3311.  
  3312.  
  3313.  
  3314.  
  3315.  
  3316.  
  3317.  
  3318.  
  3319.  
  3320.  
  3321.  
  3322.  
  3323.  
  3324.  
  3325.  
  3326.  
  3327.  
  3328.  
  3329.  
  3330.  
  3331.  
  3332.  
  3333.  
  3334.  
  3335.  
  3336.                                    - 47 -
  3337.   ════════════════════════════════════════════════════════════════════════════
  3338.       Name : Clutch Cargo                                        Flags
  3339.     Handle : Clutch Cargo                                      Uploads : 0
  3340.   Location : Tuterville, LD                                    Dnloads : 6
  3341.   Password : Not visible                                       UploadK : 0
  3342.   Security : 100              Last time : 16:52                DnloadK : 100
  3343.      Home# : 612-555-1212     Last date : 02-15-93              TodayK : 0
  3344.      Data# : 612-555-1212      1st date : 02-10-93     Messages posted : 10
  3345.    A Flags : XX------          Sub date : 02-15-93       High msg read : 623
  3346.    B Flags : --------         Birthdate : 03-25-60     Number of calls : 7
  3347.    C Flags : -------X      Time used today : 5           Last msg area : 2
  3348.    D Flags : --------        Screen length : 25         Last file area : 1
  3349.     Credit : 90            Last pwd change : 7         Last file group : 1
  3350.    Pending : 20             Last DOB check : 7          Last msg group : 1
  3351.      Group : 1                 Date format : MM-DD-YY         Protocol :
  3352.        Sex : Male                                             Language : 0
  3353.  
  3354.    Fwd   :
  3355.    Addr1 : 13450 Sparrowsong court #14055
  3356.    Addr2 : Nowhere, USA
  3357.    Addr3 : 99099-9900
  3358.    Comnt : This is a test user
  3359.   ────────────────────────────────────────────────────────────────────────────
  3360.            
  3361.           In this record, the access flags A1, A2 and C8 are set to
  3362.           ON. In a user record, any access flag that is set to ON is
  3363.           denoted by the X character.  Inverse to this, any flag that
  3364.           is set to OFF is denoted by the - character.  Within a
  3365.           user's record, these are the only two possible settings.
  3366.  
  3367.  
  3368.  
  3369.  
  3370.  
  3371.  
  3372.  
  3373.  
  3374.  
  3375.  
  3376.  
  3377.  
  3378.  
  3379.  
  3380.  
  3381.  
  3382.  
  3383.  
  3384.  
  3385.  
  3386.  
  3387.  
  3388.  
  3389.  
  3390.  
  3391.  
  3392.  
  3393.  
  3394.  
  3395.  
  3396.  
  3397.  
  3398.  
  3399.  
  3400.                                    - 48 -
  3401.           Now for the sake of example, let's say that one menu item in
  3402.           the menu MAINMENU contained access flag settings as follows:
  3403.           
  3404.           A Flag:  -X-----O
  3405.           B Flag:  --------
  3406.           C Flag:  --------
  3407.           D Flag:  --------
  3408.           
  3409.           Notice that the A flag set has two settings.  Where did that
  3410.           "O" come from?  As mentioned, only the X and - settings are
  3411.           valid within a user's flag settings.  But in a menu item,
  3412.           message area or file area, a third setting is allowed.  By
  3413.           specifying the O character in one of these areas, we are
  3414.           saying that the flag is required to be OFF (set to a -
  3415.           character) in the user's record.
  3416.  
  3417.           Keep in mind that a user's access flags are considered to be
  3418.           static.  That is to say that they may be modified by various
  3419.           functions (such as questionnaires and menu items).  On the
  3420.           other hand, access flags in menu items, message areas and
  3421.           file areas specify a specific requirement.  For this reason,
  3422.           a menu item, for example, may require a flag to be ON or
  3423.           OFF.  Or, it may not care what a particular flag setting is,
  3424.           in which case the neutral setting may be specified using the
  3425.           - character. So in the above example, the menu item is
  3426.           accessible by the user shown in the sample user record.  The
  3427.           menu item requires the user's A2 flag to be set to ON, and
  3428.           the A8 flag to be set to OFF.  Our sample user record
  3429.           matches this requirement and therefore access to the item is
  3430.           granted.
  3431.  
  3432.           Access flags work the same way in message and file areas.
  3433.           Later in this chapter you will configure message and file
  3434.           areas for your BBS.  At that time, you may specify flag
  3435.           settings required to access the areas in different ways.
  3436.           
  3437.           
  3438.           Credit
  3439.           ────────────────────────────────────────────────────────────
  3440.           This field is used to set the initial number of credits
  3441.           given to new users.  When a user performs a function which
  3442.           has an associated cost in credits, it is deducted from this
  3443.           field.
  3444.           
  3445.           
  3446.           Group
  3447.           ────────────────────────────────────────────────────────────
  3448.           RemoteAccess allows you to use groups to customize and/or
  3449.           restrict your system to groups of users.  For example, one
  3450.           group of users may have access to files and messages of the
  3451.           same group.  Use this field to select the default group
  3452.           number assigned to new users.
  3453.  
  3454.           For more information, see Menu function 27-"Post message" in
  3455.           the Menu Administration chapter.
  3456.           
  3457.  
  3458.  
  3459.  
  3460.  
  3461.  
  3462.  
  3463.  
  3464.                                    - 49 -
  3465.           ANSI
  3466.           ────────────────────────────────────────────────────────────
  3467.           This setting is used to determine whether ANSI terminal
  3468.           emulation will be enabled for new users.  If set to Ask, new
  3469.           users are prompted whether to use ANSI emulation.
  3470.           
  3471.           
  3472.           AVATAR
  3473.           ────────────────────────────────────────────────────────────
  3474.           This setting is used to determine whether AVATAR terminal 
  3475.           emulation will be enabled for new users.  If set to Ask, new 
  3476.           users are prompted whether to use AVATAR emulation.
  3477.           
  3478.           
  3479.           ClrScr
  3480.           ────────────────────────────────────────────────────────────
  3481.           The ClrScr setting is used to determine whether new users
  3482.           will have screen clearing codes sent to their terminals.  If
  3483.           set to Yes, the user's screen will be cleared after each
  3484.           menu page. If set to Ask, users are prompted whether screen
  3485.           clearing codes should be sent.
  3486.           
  3487.           
  3488.           More
  3489.           ────────────────────────────────────────────────────────────
  3490.           The More setting determines whether new users will receive a
  3491.           More(Y/n/=)? prompt after each screen page is displayed.  If
  3492.           this option is enabled, RemoteAccess will present this
  3493.           prompt each time the user's defined screen length is reached
  3494.           while information is being displayed.
  3495.           
  3496.           
  3497.           Sub Days
  3498.           ────────────────────────────────────────────────────────────
  3499.           This field is used to define an initial free subscription
  3500.           period for new users.  Valid entries are from 0 to 255 days.
  3501.           When the user's subscription expires, the questionnaire
  3502.           script file SUBDATE.Q-A is executed automatically.   This
  3503.           allows you to take actions such as modifying the user's
  3504.           security level and/or reminding the user to renew the
  3505.           subscription.  See the Questionnaires chapter for
  3506.           information on questionnaire script files.
  3507.           
  3508.           
  3509.           Upload Credit (number of files)
  3510.           ────────────────────────────────────────────────────────────
  3511.           The UL Credit field allows you to define an initial upload
  3512.           credit, by number of files, that will be assigned to new
  3513.           users. This is usually used in conjunction with file ratios.
  3514.           For example, if you require your users to upload 1 file for
  3515.           every 10 files downloaded, but you want your users to be
  3516.           able to download 10 files before being required to upload a
  3517.           file, you would set this field to 1.  This would specify
  3518.           that new users are automatically credited with 1 upload.
  3519.  
  3520.           For more information, see Upload Credit (kilobytes) in this
  3521.           chapter.
  3522.           
  3523.  
  3524.  
  3525.  
  3526.  
  3527.  
  3528.                                    - 50 -
  3529.           EchoMail Check
  3530.           ────────────────────────────────────────────────────────────
  3531.           The EchoCheck option is used to determine whether EchoMail
  3532.           message areas will be included during mail-box scans.  For
  3533.           example, if set to No, RemoteAccess will not check message
  3534.           areas configured as EchoMail areas while checking a user's
  3535.           mail-box.
  3536.           
  3537.           
  3538.           Sex
  3539.           ────────────────────────────────────────────────────────────
  3540.           This option allows you to query users for their sexual
  3541.           gender during the log-on process.  If this option is
  3542.           enabled, RemoteAccess can make use of this data from within
  3543.           the menu system.  For example, menu items may be restricted
  3544.           to users of a specific sex.
  3545.           
  3546.           
  3547.           Data Phone
  3548.           ────────────────────────────────────────────────────────────
  3549.           If this option is set to Yes, RemoteAccess prompts new users
  3550.           to enter their business or data telephone number.  This
  3551.           information is stored in the user's permanent record and
  3552.           could be helpful if you are using an external call-back
  3553.           verification program which verifies user phone number
  3554.           information by calling the user back.
  3555.           
  3556.           
  3557.           Voice Phone
  3558.           ────────────────────────────────────────────────────────────
  3559.           If this option is set to Yes, RemoteAccess prompts new users
  3560.           to enter their voice/home telephone number.  This
  3561.           information is stored in the user's permanent record.
  3562.           
  3563.           
  3564.           One Word Names
  3565.           ────────────────────────────────────────────────────────────
  3566.           If this option is set to No, new users will be required to
  3567.           enter their name as two words with a total length of at
  3568.           least three characters.  This prevents new users from
  3569.           logging-on using a one-word handle or alias.
  3570.           
  3571.           NOTE:  This restriction only applies to new users.  A user
  3572.           already in the user database may log-on using a one-word
  3573.           name or handle.
  3574.           
  3575.           
  3576.           Handle
  3577.           ────────────────────────────────────────────────────────────
  3578.           If this option is set to Yes, new users will be prompted to
  3579.           choose an optional, unique handle or alias.  This is saved
  3580.           in the user's permanent record and may be used to log-on in
  3581.           subsequent sessions as well as when sending or receiving
  3582.           mail in designated message areas.  If a user elects not to
  3583.           enter a handle, RemoteAccess will substitute their real name
  3584.           for the handle entry.
  3585.  
  3586.  
  3587.  
  3588.  
  3589.  
  3590.  
  3591.  
  3592.                                    - 51 -
  3593.           RemoteAccess allows you to configure message areas which
  3594.           allow the use of handles.  When posting messages in these
  3595.           areas, the user's handle is automatically used.
  3596.           
  3597.           
  3598.           Birth Date
  3599.           ────────────────────────────────────────────────────────────
  3600.           If the Birthdate option is set to Yes, new users will be
  3601.           prompted to enter their full date of birth.  RemoteAccess
  3602.           will attempt to validate the date entered to ensure its
  3603.           legitimacy.
  3604.           
  3605.           
  3606.           Hot-Keys
  3607.           ────────────────────────────────────────────────────────────
  3608.           This option is used to determine how keystrokes received
  3609.           from users are interpreted.  If the Hotkeys option is
  3610.           enabled, RemoteAccess will act on the first key pressed
  3611.           without requiring the user to press <ENTER> to send the
  3612.           command.  If set to No, RemoteAccess waits for the user to
  3613.           press <ENTER> to signify the end of command entry.
  3614.  
  3615.           Setting this option to No also enables the user to enter
  3616.           multiple commands at any prompt.  This feature is known as
  3617.           command stacking.
  3618.  
  3619.           You can alternately set this option to Ask which allows your
  3620.           users to make the selection themselves.
  3621.  
  3622.           For example, in command stacking mode, if the main menu
  3623.           command to access the message menu was "M" and the read
  3624.           messages command was "R", a user could stack the commands by
  3625.           entering:  "MR <ENTER>" at the main menu prompt.
  3626.           
  3627.           
  3628.           Full-Screen Message Viewer
  3629.           ────────────────────────────────────────────────────────────
  3630.           The FS Msg View option is used to allow users to read
  3631.           messages using the internal full screen message viewer.  The
  3632.           viewer uses a fixed header format, designed for enhanced
  3633.           readability.  This means that the message header information
  3634.           section at the top of each message will remain on screen as
  3635.           the user scrolls through a multiple-page message.  If this
  3636.           option is disabled, the headers will scroll off the display
  3637.           with the message.  This option is only available to users
  3638.           with ANSI or AVATAR terminal emulation enabled.
  3639.  
  3640.           
  3641.           Full-Screen Message Editor
  3642.           ────────────────────────────────────────────────────────────
  3643.           The FS Msg Edit option is used to determine whether
  3644.           RemoteAccess will ask new users if they would like to use
  3645.           the full-screen editor.  If enabled when the user enters a
  3646.           message, the External Editor (such as GEDIT) will be used
  3647.           instead of the internal line editor.
  3648.           
  3649.  
  3650.  
  3651.  
  3652.  
  3653.  
  3654.  
  3655.  
  3656.                                    - 52 -
  3657.           IEMSI
  3658.           ────────────────────────────────────────────────────────────
  3659.           If this option is enabled, RemoteAccess allows new users to
  3660.           log-on automatically with the IEMSI protocol.
  3661.  
  3662.           Interactive EMSI (IEMSI) is a protocol which can be used by
  3663.           communications software programs to establish certain
  3664.           parameters for an interactive session, for example, a user
  3665.           logging on to a bulletin board.
  3666.  
  3667.           From within the IEMSI terminal's setup program, the user can
  3668.           define a number of user profiles, each of which includes a
  3669.           user name, handle, password, telephone number, location,
  3670.           etc. When IEMSI is enabled from within the terminal and the
  3671.           user calls a RemoteAccess BBS, the user's information is
  3672.           sent to the BBS automatically, enabling the user (the
  3673.           client) to log-on to a BBS (the server) without even
  3674.           touching the keyboard.  The IEMSI terminal and RemoteAccess
  3675.           will automatically exchange information such as software
  3676.           name and version number, screen parameters and local time.
  3677.  
  3678.           One particularly useful feature is the ability of the server
  3679.           to temporarily modify the user's display parameters for the
  3680.           current session only.  Typically, when a user calls a BBS,
  3681.           the user's screenlength setting is used to determine when
  3682.           page pausing is to occur.  However, on one occasion the user
  3683.           may activate the IEMSI terminal in 50 line mode.
  3684.           RemoteAccess will recognize this and set the screen length
  3685.           to 50 lines for the current session only, restoring it to
  3686.           the original setting when the user disconnects.  In
  3687.           addition, RemoteAccess will automatically activate whatever
  3688.           terminal emulation that it, as well as the client, supports.
  3689.  
  3690.           Another benefit is the ability to chat to users using a
  3691.           full- screen chat mode.  This is accomplished by the IEMSI
  3692.           remote terminal being able to maintain the chat screen
  3693.           locally. To see if a user is connected in IEMSI mode to your
  3694.           system, press F7.  If IEMSI is active, RemoteAccess displays
  3695.           the relevant information about the client's system on the
  3696.           status bar.  At the right side of the status bar the user's
  3697.           request flags are displayed.  A request flag is an option
  3698.           that the user asked for.  RemoteAccess currently supports
  3699.           these request flags:
  3700.           
  3701.           Request Flag   Description
  3702.           ────────────────────────────────────────────────────────────
  3703.           CHT            Full-screen chat mode capability indicator.
  3704.           CLR            Screen clear codes.
  3705.           NEWS           Display the NEWS.A?? file.
  3706.           MAIL           Check for new mail.
  3707.           FILE           Check for new files.
  3708.           HOT            Use hot-keys.
  3709.           HUSH           Activate do not disturb mode.
  3710.           FSED           Use the full-screen message editor.
  3711.           
  3712.  
  3713.  
  3714.  
  3715.  
  3716.  
  3717.  
  3718.  
  3719.  
  3720.                                    - 53 -
  3721.           Language
  3722.           ────────────────────────────────────────────────────────────
  3723.           This option sets the default language for new users before
  3724.           they select their preferred language.  If this option is set
  3725.           to zero, the first defined language in the language manager
  3726.           will be used, and new users will not be asked which language
  3727.           they wish to use.  For full details on languages, see the
  3728.           Language Manager section of this chapter.
  3729.           
  3730.           
  3731.           Date Format
  3732.           ────────────────────────────────────────────────────────────
  3733.           Is set to Ask, new users will be able to select the date
  3734.           format they would like to use when entering dates and when
  3735.           dates are displayed.  The available date formats are:
  3736.           
  3737.                     DD-MM-YY              MM-DD-YY
  3738.                     YY-MM-DD              DD-Mmm-YY
  3739.           
  3740.           The Sysop may choose to force a particular date format by
  3741.           selecting the format in this field.
  3742.           
  3743.           NOTE:  Users who have selected the DD-Mmm-YY format will be
  3744.           asked to supply all dates in DD-MM-YY format when prompted
  3745.           for date input.  This is normal behavior which minimizes
  3746.           errors in user input.
  3747.           
  3748.           
  3749.           Capitalize Location
  3750.           ────────────────────────────────────────────────────────────
  3751.           If the Cap Location option is enabled, RemoteAccess will
  3752.           automatically capitalize the first character of each word in
  3753.           the user's location as it is entered.
  3754.           
  3755.           
  3756.           Upload Credit Kilobytes
  3757.           ────────────────────────────────────────────────────────────
  3758.           The UL CreditK field allows you to define an initial upload
  3759.           credit, specified in kilobytes, that will be assigned to new
  3760.           users.  This is usually used in conjunction with file
  3761.           ratios.  For example, if you require your users to upload 1
  3762.           kilobyte for every 10 kilobytes downloaded, but you wanted
  3763.           them to be able to download 10 kilobytes before being
  3764.           required to upload, you would set this field to 1.  This
  3765.           would specify that new users are automatically credited with
  3766.           1 upload kilobyte.
  3767.  
  3768.           For more information, see Upload Credit (number of files) in
  3769.           this chapter.
  3770.           
  3771.           
  3772.           Mailing Address
  3773.           ────────────────────────────────────────────────────────────
  3774.           If Mail Address is enabled, new users are prompted to enter
  3775.           a mailing address of up to 3 lines in length.  This
  3776.           information is then stored as a part of the user's permanent
  3777.           record.
  3778.           
  3779.  
  3780.  
  3781.  
  3782.  
  3783.  
  3784.                                    - 54 -
  3785.           Telephone Scan
  3786.           ────────────────────────────────────────────────────────────
  3787.           If this field is set to Yes, RemoteAccess scans new user
  3788.           telephone numbers for duplicate entries within the user
  3789.           database.  This is usually the norm except in certain cases
  3790.           where the user database is extremely large.  In such cases,
  3791.           the scanning process may be avoided by disabling this
  3792.           option.
  3793.           
  3794.  
  3795.           System
  3796.           ════════════════════════════════════════════════════════════
  3797.           The System options group contains options that pertain to
  3798.           the hardware and software environment in addition to some
  3799.           other global options.
  3800.           
  3801.           
  3802.           Fast Log-Ons
  3803.           ────────────────────────────────────────────────────────────
  3804.           If this option is enabled and RemoteAccess is activated in
  3805.           local mode, it is assumed that the Sysop is the user who is
  3806.           logging on.  When this is the case, RemoteAccess prompts
  3807.           only for the log-on password for the Sysop.  If another user
  3808.           wishes to log-on at the local console, press <ENTER> at the
  3809.           "Password:" prompt and RemoteAccess will prompt for a full
  3810.           log-on name.
  3811.           
  3812.           NOTE:  When logging-on at the local console with this option
  3813.           enabled, the text file LOGO.A?? is not displayed even if it
  3814.           exists.  This is normal behavior in Fast log-on mode.
  3815.           
  3816.           
  3817.           Check Multi-Node Access
  3818.           ────────────────────────────────────────────────────────────
  3819.           When running more than one node you should set the Check
  3820.           Multi option to Yes.  This will prevent a user from logging
  3821.           on to more than one line at the same time and effectively
  3822.           using all allotted time and file transfers limits on each
  3823.           line concurrently.
  3824.           
  3825.           
  3826.           Remote Sysop
  3827.           ────────────────────────────────────────────────────────────
  3828.           If you never call your own BBS remotely, you might wish to
  3829.           set this option to No.  This makes it virtually impossible
  3830.           for an unknown hacker to gain access to your system via your
  3831.           own Sysop account.
  3832.           
  3833.           
  3834.           Exclude Sysop
  3835.           ────────────────────────────────────────────────────────────
  3836.           When this option is set to Yes, the Sysop's name is excluded
  3837.           from the "User List", "List of Today's Callers", "Who Else
  3838.           is On-line" and the "Last Caller" functions.
  3839.           
  3840.  
  3841.  
  3842.  
  3843.  
  3844.  
  3845.  
  3846.  
  3847.  
  3848.                                    - 55 -
  3849.           Text Shells
  3850.           ────────────────────────────────────────────────────────────
  3851.           By inserting a special control code in a text file, it is
  3852.           possible to automatically run an external program in a shell
  3853.           when the text file is displayed.  This is more fully
  3854.           explained in the External Support Files chapter.
  3855.  
  3856.           There are important security considerations that must be
  3857.           taken into account if this option is enabled.  For example,
  3858.           imagine the damage that could be done if the DOS FORMAT
  3859.           command was somehow embedded within a text file.  This type
  3860.           of security risk is usually only present when external
  3861.           programs which create or modify RemoteAccess text files are
  3862.           used. However, keep in mind that any external program
  3863.           written by an under-handed character might have the hidden
  3864.           ability to create a text file designed either to cause
  3865.           damage or obtain restricted data.
  3866.           
  3867.           NOTE:  As a security measure, this option should only be
  3868.           enabled if you fully intend to shell to external programs
  3869.           from within text files.  See the External Support Files
  3870.           chapter for more information on text file control codes.
  3871.           
  3872.           
  3873.           Log Style
  3874.           ────────────────────────────────────────────────────────────
  3875.           The logging format which RemoteAccess uses is determined by
  3876.           the style specified with this option.  The Expanded format
  3877.           mode contains more information, including the line number in
  3878.           a multi-node environment.  The Compact format occupies much
  3879.           less space.
  3880.  
  3881.           Following are samples of the two types of logging formats
  3882.           supported:
  3883.           
  3884.           Expanded
  3885.           
  3886.           13-Oct  16:34:03  RA03  Ken Jones on-line at 9600 BPS
  3887.           13-Oct  16:34:07  RA03  Security level 50, 90 minutes remaining
  3888.           13-Oct  16:35:14  RA03  Browsing file area #12: BBS Software
  3889.           13-Oct  16:37:09  RA03  Download [Zmodem] W:\BBS\RA200.ARJ
  3890.           13-Oct  16:45:15  RA03  Efficiency 154% (196464 bytes), 1574 Cps.
  3891.           13-Oct  16:47:37  RA03  User requested to terminate call
  3892.           13-Oct  16:47:44  RA03  User off-line
  3893.           
  3894.           Compact
  3895.           
  3896.           -------------  Sun 13 Oct 91, RA 2.02+ line #3
  3897.           > 16:34:03  Ken Jones on-line at 9600 BPS
  3898.           > 16:34:07  Security level 50, 90 minutes remaining
  3899.           > 16:35:14  Browsing file area #12: BBS Software
  3900.           > 16:37:09  Download [Zmodem] W:\BBS\RA200.ARJ
  3901.           > 16:45:15  Efficiency 154% (196464 bytes), 1574 Cps.
  3902.           > 16:47:37  User requested to terminate call
  3903.           > 16:47:44  User off-line
  3904.           
  3905.  
  3906.  
  3907.  
  3908.  
  3909.  
  3910.  
  3911.  
  3912.                                    - 56 -
  3913.           Multi-Node
  3914.           ────────────────────────────────────────────────────────────
  3915.           If you are installing RemoteAccess on a multi-node system
  3916.           (i.e. you are going to be running more than one line), you
  3917.           must set this option to Yes which enables extra file and
  3918.           message checking routines to ensure that a conflict between
  3919.           two nodes accessing the same data does not occur.  If you
  3920.           are running a single-node (one line) system, setting this
  3921.           option to No will disable this checking and slightly
  3922.           increase system speed.
  3923.           
  3924.           
  3925.           Environment
  3926.           ────────────────────────────────────────────────────────────
  3927.           This option refers to the type of multitasking system that
  3928.           you will be running RemoteAccess under.  If set to
  3929.           Auto-detect, RemoteAccess will attempt to automatically
  3930.           determine the type of multitasking software (if any) that is
  3931.           being used. In some hardware/software configurations
  3932.           RemoteAccess may not be able to detect the proper
  3933.           environment.  To overcome this, you can force RemoteAccess
  3934.           to assume that it is running under a specific multitasker.
  3935.           Environments currently supported are; Microsoft Windows 3.x
  3936.           (enhanced mode), DoubleDOS, DESQview, TopView, MultiLink,
  3937.           PC-MOS/386, OS/2 and AT-BIOS.
  3938.  
  3939.           RemoteAccess will time-slice, or give up CPU time, to other
  3940.           tasks when it is waiting for a call or at a prompt.  The
  3941.           result is a significant overall system performance
  3942.           improvement.
  3943.           
  3944.           
  3945.           Screen Blanking
  3946.           ────────────────────────────────────────────────────────────
  3947.           The Screen Blank option is used to specify the number of
  3948.           seconds that RemoteAccess will remain idle while waiting for
  3949.           an incoming call before activating the screen blanking
  3950.           function.  This avoids screen burn-in damage on display
  3951.           monitors that are susceptible to this. {+} Registered only.
  3952.  
  3953.           A blanked screen may be re-displayed by pressing any key on
  3954.           the keyboard.
  3955.           
  3956.           NOTE:  This option only takes effect when Front End Mailer
  3957.           software is not used to answer incoming calls.
  3958.           
  3959.           
  3960.           Pausing After System Messages
  3961.           ────────────────────────────────────────────────────────────
  3962.           After RemoteAccess displays a system message, the default
  3963.           action is to pause for one second before continuing.  You
  3964.           may alter this pause period by setting the After Msgs option
  3965.           to the desired number seconds.  Specifying a value of zero
  3966.           causes RemoteAccess to prompt the user to press <ENTER>
  3967.           before continuing.
  3968.           
  3969.  
  3970.  
  3971.  
  3972.  
  3973.  
  3974.  
  3975.  
  3976.                                    - 57 -
  3977.           ALT-J Swap (Shelling to DOS)
  3978.           ────────────────────────────────────────────────────────────
  3979.           If enabled, this option will cause RemoteAccess to swap
  3980.           itself out of memory before a Sysop shell to DOS (when A-J
  3981.           is pressed at the local console keyboard).  This enables
  3982.           programs which require a large amount of memory to be run
  3983.           while in the shell.  The swapping process may take a few
  3984.           seconds.
  3985.           
  3986.           
  3987.           Use XMS
  3988.           ────────────────────────────────────────────────────────────
  3989.           If your computer has extended memory, RemoteAccess can use
  3990.           it when swapping out of memory.  This reduces the amount of
  3991.           time it takes to execute the swap process.  When both XMS
  3992.           and EMS options are enabled, extended (XMS) memory will be
  3993.           used, if available, before expanded (EMS) memory is used.
  3994.           
  3995.           
  3996.           Use EMS
  3997.           ────────────────────────────────────────────────────────────
  3998.           If your computer has expanded memory, RemoteAccess can use
  3999.           it when swapping out of memory.  This reduces the amount of
  4000.           time it takes to execute the swap process.  When both XMS
  4001.           and EMS options are enabled, extended (XMS) memory will be
  4002.           used, if available, before expanded (EMS) memory is used.
  4003.           
  4004.           
  4005.           IEMSI
  4006.           ────────────────────────────────────────────────────────────
  4007.           The IEMSI option simply allows you to enable or disable
  4008.           IEMSI capabilities within RemoteAccess.  IEMSI is fully
  4009.           explained in the New Users section earlier in this chapter.
  4010.           
  4011.           
  4012.           Password Echo Character
  4013.           ────────────────────────────────────────────────────────────
  4014.           The Pwd Echo option allows you to define the character that
  4015.           is to be echoed back to the user when typing in a password.
  4016.           If this is left blank, no character is echoed back to the
  4017.           user.
  4018.           
  4019.           
  4020.           Automatic ANSI Detection
  4021.           ────────────────────────────────────────────────────────────
  4022.           When a user logs-on, and Auto ANSI is enabled, RemoteAccess
  4023.           will attempt to determine if the remote user's terminal
  4024.           supports ANSI emulation.  If ANSI is detected, the text file
  4025.           LOGO.ANS will be displayed instead of LOGO.ASC.  This text
  4026.           file is fully explained in the External Support Files
  4027.           chapter.
  4028.           
  4029.           NOTE:  Not all terminal programs that offer ANSI emulation
  4030.           support this operation.  Also, even when ANSI emulation is
  4031.           detected, once the caller logs-on the emulation setting
  4032.           within the caller's user record will override this
  4033.           determination, if necessary.
  4034.           
  4035.  
  4036.  
  4037.  
  4038.  
  4039.  
  4040.                                    - 58 -
  4041.           Password Tries
  4042.           ────────────────────────────────────────────────────────────
  4043.           The Pwd Tries field is used to set the maximum number of
  4044.           invalid password entries allowed at log-on.  After this
  4045.           value is exceeded, the user will be given the option to
  4046.           leave a message to the Sysop prior to being disconnected.
  4047.           
  4048.           
  4049.           Password Change Forcing
  4050.           ────────────────────────────────────────────────────────────
  4051.           The Pwd Change option is used to enhance system security.
  4052.           If set to a non-zero value, all users (excluding the Sysop)
  4053.           will be forced to change their password every Pwd Change
  4054.           number of log-ons.  For example, if this field is set to 30,
  4055.           users will be forced to change their log-on passwords every
  4056.           30 log-ons.
  4057.           
  4058.           
  4059.           Strict Password Checking
  4060.           ────────────────────────────────────────────────────────────
  4061.           The Pwd Strict option is an invaluable security feature
  4062.           which checks passwords that users enter against a
  4063.           Sysop-definable list of undesirable passwords which are held
  4064.           in a control file. It also prevents users from entering
  4065.           their first or last name as a log-on password.
  4066.           
  4067.           NOTE:  See the External Support Files chapter for
  4068.           information on the PWDTRASH.CTL control file.
  4069.           
  4070.           
  4071.           Minimum Password Length
  4072.           ────────────────────────────────────────────────────────────
  4073.           The Pwd length field is used to specify the minimum required
  4074.           length of passwords for all users.  Longer passwords offer
  4075.           increased security.  A value of 4 is recommended as an
  4076.           absolute minimum.
  4077.           
  4078.           
  4079.           Log-on Time
  4080.           ────────────────────────────────────────────────────────────
  4081.           This option specifies how much time (in minutes) to grant to
  4082.           a user before the system knows how much time the user is
  4083.           entitled to.  You should make this long enough for users to
  4084.           complete the new user procedures and questionnaire, if
  4085.           applicable.
  4086.  
  4087.           For example, when a new user logs on to your system, the new
  4088.           user process might be relatively short or very lengthy,
  4089.           depending on your system configuration.  Once this process
  4090.           is completed, RemoteAccess assigns the time limit assigned
  4091.           to the user's security level (you'll set this up later in
  4092.           this chapter).  But until this happens, you must assign a
  4093.           temporary time limit to the user.  If this field is set to
  4094.           15, a user will have 15 minutes in which to complete the
  4095.           log-on process, at which point RemoteAccess will assign the
  4096.           time limit assigned to the user's security level.
  4097.           
  4098.  
  4099.  
  4100.  
  4101.  
  4102.  
  4103.  
  4104.                                    - 59 -
  4105.           User Inactivity Timeout
  4106.           ────────────────────────────────────────────────────────────
  4107.           The User Timeout field determines how long to wait during
  4108.           periods of inactivity before disconnecting.  The inactivity
  4109.           time period is measured starting from the last character
  4110.           sent to the modem.  Users are given a warning message when
  4111.           they are near timer expiration.  This feature is
  4112.           automatically disabled when a user is logged-on at the local
  4113.           console, or by setting this field to zero.
  4114.           
  4115.           
  4116.           Watchdog Area
  4117.           ────────────────────────────────────────────────────────────
  4118.           When a user enters an incorrect log-on password the number
  4119.           of times specified in PwdTries, you may wish to notify the
  4120.           user that an attempt was made to gain access to his or her
  4121.           account. By specifying the message area number in the
  4122.           Watchdog Area field, RemoteAccess can notify a user of the
  4123.           security violation by addressing a message to the user using
  4124.           the date and time of the violation and inserting the ASCII
  4125.           text file WATCHDOG.MSG as the text body of the message.
  4126.           The ASCII text file must exist in the RemoteAccess system
  4127.           directory.
  4128.  
  4129.           For example, if this field is set to 1 and the file
  4130.           WATCHDOG.MSG is located in the system directory, when a
  4131.           caller enters a log-on name but fails password entry, the
  4132.           text contained in WATCHDOG.MSG will be inserted into a
  4133.           message addressed to the user for which the violation
  4134.           occurred in message area 1.  The WATCHDOG.MSG file might
  4135.           look like this:
  4136.           
  4137.              "This message is to inform you that on the date
  4138.              and time this message was created, an attempt was
  4139.              made to log-on to this system using your user
  4140.              name.  However, this attempt failed due to
  4141.              incorrect password entry.  If this was you, then
  4142.              disregard this message.  If this was not you,
  4143.              then be advised that someone has tried to gain
  4144.              access to your user account."
  4145.           
  4146.           
  4147.           Sysop Area
  4148.           ────────────────────────────────────────────────────────────
  4149.           When a user enters an incorrect log-on password the number
  4150.           of times specified in PwdTries, you may wish to give the
  4151.           user an opportunity to leave a message addressed to the
  4152.           Sysop prior to disconnecting the call.  By specifying the
  4153.           message area number in the Sysop Area field, users who fail
  4154.           to enter a correct log-on password will be prompted to leave
  4155.           a message to the Sysop.
  4156.  
  4157.           This is commonly used as a means of allowing the user to
  4158.           communicate with the Sysop in the event that he or she
  4159.           should forget their log-on password.
  4160.           
  4161.           NOTE:  See the External Support Files chapter for
  4162.           information on text files which enhance this feature.
  4163.           
  4164.  
  4165.  
  4166.  
  4167.  
  4168.                                    - 60 -
  4169.           Check DOB
  4170.           ────────────────────────────────────────────────────────────
  4171.           To enhance system security, you can require users to verify
  4172.           their date of birth periodically by specifying the number of
  4173.           log-ons between verifications in this field.
  4174.  
  4175.           For example, to require your users to enter their date of
  4176.           birth for verification every 10 log-ons, set this field to
  4177.           10.  If a user fails to correctly enter their date of birth,
  4178.           RemoteAccess activates a system questionnaire which gives
  4179.           you the opportunity to take actions which you specify.
  4180.  
  4181.           For information on files which support this feature, see the
  4182.           Questionnaires and External Support Files chapters.
  4183.           
  4184.  
  4185.           Prompts
  4186.           ════════════════════════════════════════════════════════════
  4187.           The Prompts option group allows you to define the global
  4188.           system prompts.  The prompts contained in this section are
  4189.           common to all languages.  You can additionally customize
  4190.           specific language prompts using the Language Manager
  4191.           discussed later in this chapter.
  4192.           
  4193.  
  4194.           Log-on Prompt
  4195.           ────────────────────────────────────────────────────────────
  4196.           This is the prompt displayed to users during the log-on
  4197.           process which prompts users to enter their log-on name.
  4198.           
  4199.           
  4200.           Left and Right Brackets
  4201.           ────────────────────────────────────────────────────────────
  4202.           These two fields are used to define the brackets which
  4203.           RemoteAccess places around "Yes/No" and similar prompts.
  4204.           For example, if the characters defined here are set to "{"
  4205.           and "}", the Yes/No prompt would appear as follows:
  4206.           
  4207.                                 {Y/n}?
  4208.           
  4209.           
  4210.           Language Prompt
  4211.           ────────────────────────────────────────────────────────────
  4212.           This prompt is displayed when RemoteAccess asks the user to
  4213.           select a language.
  4214.           
  4215.           
  4216.           Language Header
  4217.           ────────────────────────────────────────────────────────────
  4218.           This prompt is displayed prior to the list of available
  4219.           languages when prompting the user to select a language.
  4220.           
  4221.  
  4222.  
  4223.  
  4224.  
  4225.  
  4226.  
  4227.  
  4228.  
  4229.  
  4230.  
  4231.  
  4232.                                    - 61 -
  4233.           Printer
  4234.           ════════════════════════════════════════════════════════════
  4235.           The Printer options group allows you to define which printer
  4236.           port is to be used with RemoteAccess when the -P command-
  4237.           line parameter is specified or the ALT-P command is issued
  4238.           from the local console keyboard during a session. For
  4239.           information on the -P command-line parameter, see the
  4240.           Reference Information chapter later in this manual.
  4241.  
  4242.           
  4243.           Selecting the Printer Port
  4244.           ────────────────────────────────────────────────────────────
  4245.           To select a printer port, position the cursor-bar on the
  4246.           Printer options item and press <ENTER>.  A pick-list of
  4247.           valid selections will appear.  Move the cursor-bar to the
  4248.           desired printer port and press <ENTER> to select it.
  4249.           {+} Registered only.          
  4250.           
  4251.           
  4252.           THE MODEM MENU
  4253.  
  4254.           The fourth main option is the Modem menu.  This menu is used
  4255.           to configure various options related to your modem. Options
  4256.           available from this menu are grouped by function. Each group
  4257.           has its own pick-list menu.
  4258.  
  4259.           Some of these options do not apply when Front End Mailer
  4260.           software is being used.  However, if you are running in
  4261.           standalone mode (i.e. RemoteAccess answers incoming calls
  4262.           instead of a Front End Mailer), then all of these fields
  4263.           apply. Position the cursor-bar on the Modem selection.  The
  4264.           Modem pick-list menu will be displayed automatically.  The
  4265.           cursor-bar automatically repositions itself over the Options
  4266.           group selection.  Press <ENTER> for the Options group
  4267.           pick-list menu.
  4268.           
  4269.  
  4270.           Options
  4271.           ════════════════════════════════════════════════════════════
  4272.           The Options group pick-list contains items associated with
  4273.           the general configuration information for your modem.
  4274.           
  4275.           
  4276.           Comport
  4277.           ────────────────────────────────────────────────────────────
  4278.           This field should be set to the communications port number
  4279.           to which your modem is connected.  Valid entries are 1 to 8
  4280.           representing COM1 through COM8 respectively.  A setting of
  4281.           zero is also valid which forces RemoteAccess into local mode
  4282.           regardless of command-line parameters.
  4283.           
  4284.  
  4285.  
  4286.  
  4287.  
  4288.  
  4289.  
  4290.  
  4291.  
  4292.  
  4293.  
  4294.  
  4295.  
  4296.                                    - 62 -
  4297.           Speed
  4298.           ────────────────────────────────────────────────────────────
  4299.           This field refers to the highest modem-to-computer speed
  4300.           that your modem supports.  If your communications driver is
  4301.           configured to communicate with your modem at a fixed BPS
  4302.           rate, the fixed rate should be entered here. For example, if
  4303.           your communications driver is locked at a fixed rate of
  4304.           19200 BPS, set this field to 19200.  If your modem does not
  4305.           support fixed rates, enter the highest speed it supports.
  4306.  
  4307.           For more information on installing and configuring the
  4308.           communications driver, see the Communications Driver section
  4309.           of the Reference Information chapter.
  4310.           
  4311.           
  4312.           Lock
  4313.           ────────────────────────────────────────────────────────────
  4314.           If you are using a high-speed modem and your communications
  4315.           driver is locked at a fixed BPS rate, you should set this
  4316.           field to Yes to ensure maximum throughput.
  4317.  
  4318.           For more information on installing and configuring the
  4319.           communications driver, see the Communications Driver section
  4320.           of the Reference Information chapter.
  4321.           
  4322.           
  4323.           Answer
  4324.           ────────────────────────────────────────────────────────────
  4325.           Setting this field to Yes instructs RemoteAccess to make the
  4326.           modem answer the phone whenever it receives the RING string
  4327.           defined under Responses (later in this section).  This is
  4328.           accomplished by sending the Answer command (see the Commands
  4329.           section below).  If this field is set to No, then it is
  4330.           assumed that the modem will answer the call based on its own
  4331.           configuration.
  4332.  
  4333.           The preferred setting for this field is Yes because it
  4334.           ensures that your BBS will only answer the phone when it is
  4335.           ready. This feature is not used when Front End Mailer
  4336.           software is used which is usually only the case if you are
  4337.           participating in a mail network.
  4338.  
  4339.           When your modem is on-hook but RemoteAccess is doing other
  4340.           things (i.e. running a system event), you most likely would
  4341.           not want your modem to answer an incoming call.  By enabling
  4342.           this option, you are giving control to RemoteAccess to
  4343.           answer an incoming call only when it is ready.
  4344.  
  4345.           The other method of answering the phone is to configure your
  4346.           modem itself to answer incoming calls.  On a large majority
  4347.           of modems this is accomplished by setting the S0 register to
  4348.           the number of rings to wait before answering.  But remember,
  4349.           if your modem is configured to answer, the possibility
  4350.           exists that a caller will connect with your modem even
  4351.           though RemoteAccess is not prepared to take a call.  If some
  4352.           of your users are calling long distance, this method of
  4353.           answering calls will surely attract unwanted attention.
  4354.           
  4355.  
  4356.  
  4357.  
  4358.  
  4359.  
  4360.                                    - 63 -
  4361.           Delay
  4362.           ────────────────────────────────────────────────────────────
  4363.           This field refers to the delay, specified in tenths of a
  4364.           second, that RemoteAccess waits between characters sent to
  4365.           the modem in command mode.  Usually you will only need to
  4366.           enter a value greater than zero if you are using a modem
  4367.           that cannot process commands at high speeds.  A typical
  4368.           example of this is the US Robotics Courier HST modem, which
  4369.           works well with a delay of about 3 (3 tenths of a second).
  4370.  
  4371.           This does not apply to characters sent over the modem while
  4372.           connected with a remote modem.  It only applies to modem
  4373.           commands sent while in command mode.
  4374.  
  4375.  
  4376.           Buffer
  4377.           ────────────────────────────────────────────────────────────
  4378.           This field is used to set the size of the internal
  4379.           communications transmit buffer for speeds of up to 2400 BPS.
  4380.           You can change this to fine-tune your system for maximum
  4381.           throughput.  If you are using a slower machine (i.e. a 4.77
  4382.           MHz PC/XT), set this field to zero.   This disables the
  4383.           internal buffering system and its associated overhead.  On
  4384.           most systems, the default setting of 128 will not need to be
  4385.           changed.  However, in a multi- tasking environment you may
  4386.           achieve much better performance by increasing the buffer
  4387.           size.  Experimentation has shown values around 80 to 150 to
  4388.           be most effective.
  4389.  
  4390.           This setting does not apply to systems that have a high
  4391.           speed modem with a locked BPS rate since the modem and/or
  4392.           communications driver may provide transmit buffering.
  4393.           
  4394.           
  4395.           Break
  4396.           ────────────────────────────────────────────────────────────
  4397.           Some modems can be configured to clear their internal
  4398.           transmit buffer when the break signal is received from the
  4399.           local console.  If the Break option is enabled, RemoteAccess
  4400.           will send a break signal to the modem whenever it purges its
  4401.           own internal transmit buffer.  This results in faster
  4402.           hot-key response.
  4403.  
  4404.           NOTE:  Most modems cannot handle non-destructive break
  4405.           handling. Check your modem documentation to ensure that the
  4406.           modem will not pass the break signal on to the remote modem.
  4407.           
  4408.           
  4409.           Tries
  4410.           ────────────────────────────────────────────────────────────
  4411.           This field is used to specify the number of times that
  4412.           RemoteAccess will attempt to initialize the modem before
  4413.           aborting and returning an error condition.
  4414.  
  4415.           When RemoteAccess fails to initialize the modem, an
  4416.           errorlevel of 1 is returned to the calling batch file which
  4417.           in turn, may take appropriate action.
  4418.           
  4419.  
  4420.  
  4421.  
  4422.  
  4423.  
  4424.                                    - 64 -
  4425.           Offhook
  4426.           ────────────────────────────────────────────────────────────
  4427.           If this option is enabled, RemoteAccess will take the modem
  4428.           off-hook when RemoteAccess is exited.  This is done by
  4429.           sending the modem command defined in the Busy field
  4430.           (explained in the Commands section below).  If you prefer
  4431.           your system to appear busy to callers when it is not ready
  4432.           for calls, set this option to Yes.  Otherwise, set it to No.
  4433.           
  4434.            
  4435.           NOTE:  In some countries, placing the telephone line
  4436.           off-hook is illegal. If you unsure of your countries laws,
  4437.           check with your local telephone company.
  4438.           
  4439.  
  4440.           Commands
  4441.           ════════════════════════════════════════════════════════════
  4442.           The Commands group pick-list contains items associated with
  4443.           commands which are sent to your modem.  If you are using
  4444.           Front End Mailer software to answer incoming calls, then
  4445.           these commands will not be sent to your modem.  If this is
  4446.           the case, you may skip this section altogether.
  4447.  
  4448.           RemoteAccess recognizes certain characters embedded in the
  4449.           modem command strings outlined in this section.  The
  4450.           embedded characters are translated into special functions as
  4451.           a string is sent to the modem.  The supported characters
  4452.           are:
  4453.           
  4454.           Character   Function Performed
  4455.           ────────────────────────────────────────────────────────────
  4456.           ^           Raise data terminal ready (DTR) which enables
  4457.                       the modem to answer an incoming call.
  4458.           
  4459.           v           Lower DTR.  This disconnects a call if a
  4460.                       connection is established.  This also prevents
  4461.                       the modem from answering incoming calls.
  4462.           
  4463.           ~           Pause for 1/4 of a second before continuing.
  4464.           
  4465.           |           Send a carriage-return to the modem (same as
  4466.                       pressing <ENTER>).
  4467.           
  4468.           
  4469.           Initialization Strings
  4470.           ────────────────────────────────────────────────────────────
  4471.           The Init1 and Init2 options define the strings sent to the
  4472.           modem whenever RemoteAccess is loaded in wait for call mode.
  4473.           These command strings are used to prepare the modem to
  4474.           answer incoming calls.
  4475.  
  4476.           Two initialization command strings may be specified in order
  4477.           to accommodate extremely long strings.  When a second
  4478.           initialization string is specified using Init2 RemoteAccess
  4479.           will not wait for a modem response after sending Init1.
  4480.           Instead, Init1 will be sent immediately followed by Init2.
  4481.           RemoteAccess will wait for the proper modem response after
  4482.           Init2 has been sent.
  4483.           
  4484.  
  4485.  
  4486.  
  4487.  
  4488.                                    - 65 -
  4489.           Busy
  4490.           ────────────────────────────────────────────────────────────
  4491.           The Busy command string is sent to the modem when:
  4492.           
  4493.           *    You log-on locally.
  4494.           *    A DOS shell is invoked while in wait for call mode.
  4495.           *     When wait for call mode is exited by pressing the
  4496.                 <ESCAPE> key.
  4497.           
  4498.           This command string may be used to instruct the modem to be
  4499.           placed off-hook using a command such as ATH1|, or it may be
  4500.           used to simply lower the DTR signal by specifying the "V"
  4501.           embedded character as the string to be sent.
  4502.           
  4503.           NOTE:  In some countries, placing the telephone line
  4504.           off-hook is illegal. If you are unsure of the laws in your
  4505.           country, check with your local telephone company.
  4506.           
  4507.           
  4508.           Answer
  4509.           ────────────────────────────────────────────────────────────
  4510.           This field is used to specify the string which is sent to
  4511.           the modem to answer an incoming call.  This string is only
  4512.           sent if the Answer option (located in the Options group
  4513.           pick-list) is set to Yes.  For example, most modems will
  4514.           answer a call upon receiving an ATA| command from the local
  4515.           console.
  4516.           
  4517.  
  4518.           Responses
  4519.           ════════════════════════════════════════════════════════════
  4520.           The Responses group contains a pick-list of response
  4521.           messages or codes that your modem sends to RemoteAccess in
  4522.           response to a command or condition.
  4523.  
  4524.           If your modem is configured to return numeric responses to
  4525.           commands, you will need to know the numeric codes which
  4526.           correspond to various conditions.  In most cases, your modem
  4527.           should be configured to return word responses which are much
  4528.           more comprehensive than their numeric equivalents.
  4529.  
  4530.           If you are using Front End Mailer software to answer
  4531.           incoming calls, you may skip this section altogether since
  4532.           RemoteAccess will not be used to send commands to the modem.
  4533.           
  4534.           
  4535.           Init
  4536.           ────────────────────────────────────────────────────────────
  4537.           This field should contain the response that your modem will
  4538.           return when a valid initialization string is received from
  4539.           the local console.  For example, when word responses are
  4540.           enabled for a modem, the response here is typically defined
  4541.           as OK.
  4542.  
  4543.           When RemoteAccess sends the Init1 and Init2 command strings,
  4544.           the response specified here must be received before the
  4545.           command is considered to have been successful.
  4546.  
  4547.  
  4548.  
  4549.  
  4550.  
  4551.  
  4552.                                    - 66 -
  4553.           RemoteAccess will make as many attempts to initialize the
  4554.           modem as is defined in the Tries option in the Options group
  4555.           pick-list before considering the attempt a failure.  When an
  4556.           initialization failure occurs, RemoteAccess exits, passing
  4557.           an errorlevel of 1 to the calling batch file.
  4558.           
  4559.           
  4560.           Busy
  4561.           ────────────────────────────────────────────────────────────
  4562.           This field should contain the response that your modem will
  4563.           return when the Offhook command string is received from the
  4564.           local console.  For example, if the Offhook command is
  4565.           defined as ATM0H1|, the typical response from the modem
  4566.           would be OK.
  4567.           
  4568.           
  4569.           Ring
  4570.           ────────────────────────────────────────────────────────────
  4571.           This field should contain the response that your modem will
  4572.           return when someone calls your system.  This indicates that
  4573.           the call should be answered.  Most modems return a RING
  4574.           message while others return RINGING.  Check your modem
  4575.           documentation and set this accordingly.
  4576.            
  4577.           NOTE:  Some modems return a carriage-return after the RING
  4578.           response.  In such cases, this response must be specified as
  4579.           RING| before an incoming call is recognized.
  4580.           
  4581.           
  4582.           Secure
  4583.           ────────────────────────────────────────────────────────────
  4584.           This field should contain the response that your modem will
  4585.           return when it establishes an MNP error-free connection.  If
  4586.           your modem does not support MNP, you should leave this
  4587.           option setting blank.
  4588.  
  4589.           RemoteAccess uses this response to determine whether file
  4590.           transfer protocols which require an error-free connection
  4591.           will be made available to the caller.  Error-free
  4592.           connections are ones which utilize MNP (Microcom Networking
  4593.           Protocol) service levels 1 through 5.  MNP is generally
  4594.           supported directly by the modem although some terminal
  4595.           programs have implemented MNP emulation through software.
  4596.           The primary advantage of having MNP implemented within the
  4597.           modem is the increased throughput.
  4598.  
  4599.           Some file transfer protocols rely heavily on MNP connections
  4600.           and won't operate properly (if at all) without it. One
  4601.           example is the YModem-g internal protocol.  Without an MNP
  4602.           connection, this protocol should not be made available to a
  4603.           caller.  Therefore, it is important to allow RemoteAccess to
  4604.           determine when an MNP connection is present.
  4605.  
  4606.  
  4607.  
  4608.  
  4609.  
  4610.  
  4611.  
  4612.  
  4613.  
  4614.  
  4615.  
  4616.                                    - 67 -
  4617.           As an example, the US Robotics Courier HST/V32 modem returns
  4618.           the "ARQ" response when an error-free connection has been
  4619.           established.  Therefore, "ARQ" should be entered in this
  4620.           field.
  4621.  
  4622.           Check your modem documentation to determine the correct
  4623.           string to specify for your modem.
  4624.           
  4625.           
  4626.           300 - 38400
  4627.           ────────────────────────────────────────────────────────────
  4628.           These fields must be set to the responses that your modem
  4629.           returns when a connection is established at the respective
  4630.           BPS rate.  Most modems return the message CONNECT followed
  4631.           by the speed of the connection or a carriage-return for 300
  4632.           BPS connections.  These responses are used to determine the
  4633.           speed at which RemoteAccess will communicate with the
  4634.           caller's modem.  The following illustration shows some of
  4635.           the most popular responses used by today's modems.
  4636.           
  4637.           Notice the Fax connect response message.  This response
  4638.           warrants special treatment since it is used to support
  4639.           systems which utilize fax/modems.  As explained under
  4640.           Errorlevels in the Options section, RemoteAccess can
  4641.           determine when a fax connection is established and exit with
  4642.           a predefined errorlevel set.  When the response message
  4643.           specified in this field is received from the modem,
  4644.           RemoteAccess exits, passing the errorlevel defined under
  4645.           Errorlevels (in the Options group pick- list).  This enables
  4646.           the use of a fax/modem for receiving calls for both the BBS
  4647.           as well as for your fax since the fax software can be loaded
  4648.           from within the calling batch file.
  4649.  
  4650.           
  4651.           THE MANAGER MENU
  4652.  
  4653.           This is perhaps the most important and often-used portion of
  4654.           RACONFIG.  This menu is used when configuring message and
  4655.           file areas, groups, languages, protocols, menus, system
  4656.           events and more.  Each item in this option group is used to
  4657.           manage a different aspect of your overall system.  In the
  4658.           pages that follow, feature implementation and descriptions
  4659.           will be covered.
  4660.  
  4661.           
  4662.           Message Areas
  4663.           ════════════════════════════════════════════════════════════
  4664.           The first option in the group is Message Areas.   From here,
  4665.           you may define a virtually unlimited number of JAM format
  4666.           message areas and up to 200 Hudson format areas, each with
  4667.           its own attributes and security requirements.  Each of these
  4668.           two types of message database formats is outlined in this
  4669.           section under the Area Type field as well as in the Message
  4670.           Database Administration chapter.  It is suggested that you
  4671.           review the details on the two formats to help you in making
  4672.           a somewhat educated decision on which format to use when
  4673.           creating message areas.
  4674.  
  4675.  
  4676.  
  4677.  
  4678.  
  4679.  
  4680.                                    - 68 -
  4681.           The initial message area pick-list menu lists the first 17
  4682.           areas with some basic information about each.  If more areas
  4683.           exist, you can scroll through the entire list using the UP
  4684.           and DOWN keys.  Select an area to edit by positioning the
  4685.           cursor-bar on the desired selection and press <ENTER> to
  4686.           bring up the editing screen.  To create a new area, press
  4687.           INSERT and a new area will be added to the end of the list.
  4688.           To delete an area, position the cursor-bar on the desired
  4689.           area and press DELETE.
  4690.  
  4691.           From the editing screen, you can modify any of the area's
  4692.           individual attributes.
  4693.           
  4694.           
  4695.           Name
  4696.           ────────────────────────────────────────────────────────────
  4697.           With this field, you can give each individual message area a
  4698.           name.  This should be a meaningful description of its
  4699.           content (i.e. Cooking, Desktop Publishing, Private Messages,
  4700.           etc.).   The names you enter here will be displayed by
  4701.           various functions within RemoteAccess.
  4702.           
  4703.           
  4704.           Origin
  4705.           ────────────────────────────────────────────────────────────
  4706.           This field allows you to define a separate origin line for
  4707.           this particular message area.  This origin is appended to
  4708.           the end of all outgoing EchoMail messages.  If this is left
  4709.           blank, RemoteAccess will append the default origin line
  4710.           specified earlier under:
  4711.           
  4712.                  Options > Messages > Default Origin
  4713.           
  4714.           
  4715.           Read, Write and Sysop Security
  4716.           ────────────────────────────────────────────────────────────
  4717.           Access to each individual message area is controlled by
  4718.           Read, Write and Sysop security levels and access flags.
  4719.           This gives you separate control of Read, Write and Sysop
  4720.           functions within each area.  For example, this would enable
  4721.           you to allow users to read messages in an area but not write
  4722.           messages, or to give access to special Sysop message
  4723.           functions to advanced users (i.e. Co-Sysops).
  4724.  
  4725.           By setting the minimum security level requirement for any of
  4726.           these fields, it is possible to restrict access to users
  4727.           having an equal or greater level.  By setting access flag
  4728.           requirements, you can further restrict access to users whose
  4729.           access flags meet the requirements.  For complete
  4730.           information on access flags, see the New Users section
  4731.           earlier in this chapter.
  4732.           
  4733.           Each of the three access levels is described as follows:
  4734.           
  4735.           Read   This specifies the minimum security level and access
  4736.           flag combination the user must have before being allowed to
  4737.           read messages in the area.
  4738.  
  4739.  
  4740.  
  4741.  
  4742.  
  4743.  
  4744.                                    - 69 -
  4745.           Write  This is the minimum security level and access
  4746.           flag combination the user must have before being allowed to
  4747.           write messages in the area.
  4748.           
  4749.           Sysop  This is the minimum security level and access flag
  4750.           combination the user must have before access to special
  4751.           administrative functions are available. The Menu
  4752.           Administration chapter later in this manual describes the
  4753.           individual administrative functions that are available to
  4754.           users who meet this criteria.  In addition, users with this
  4755.           level of access can read and delete any messages (public or
  4756.           private) in the area.
  4757.           
  4758.           
  4759.           Type
  4760.           ────────────────────────────────────────────────────────────
  4761.           Each area can be one of three types.  The type of message
  4762.           area determines how RemoteAccess handles certain functions.
  4763.           The three types are:
  4764.  
  4765.           Local       The message area is available only to users on
  4766.                       your BBS (it is not related to a mail network).
  4767.           
  4768.           EchoMail    The message area is used in conjunction with a
  4769.                       mail network EchoMail conference (see the Mail
  4770.                       Networking chapter for more information).
  4771.           
  4772.           NetMail     The message area is designated for sending and
  4773.                       receiving mail network NetMail (see the Mail
  4774.                       Networking chapter for more information).
  4775.  
  4776.           
  4777.           Status
  4778.           ────────────────────────────────────────────────────────────
  4779.           This option controls the types of messages that users are
  4780.           allowed to post in the area.   Valid selections are are
  4781.           outlined below:
  4782.           
  4783.           Private Only    All messages posted in the area are marked
  4784.                           as Private and can only be read by the
  4785.                           sender, recipient and users with Sysop
  4786.                           access to the message area.
  4787.           
  4788.           Public Only     All messages posted in this area are
  4789.                           marked as Public and can be read by any
  4790.                           user with Read access to the message area.
  4791.           
  4792.           Private/Public  All messages posted in this area are
  4793.                           marked as Public or Private, selected by the
  4794.                           user at the time the message is posted.
  4795.           
  4796.           No Reply        All messages in this area are marked as
  4797.                           Public and No Reply.  All users with Read
  4798.                           access to the area may read messages but
  4799.                           no messages may be replied to.
  4800.  
  4801.  
  4802.  
  4803.  
  4804.  
  4805.  
  4806.  
  4807.  
  4808.                                    - 70 -
  4809.           Read Only       All messages in this area are marked as
  4810.                           Public and may be read by any user with
  4811.                           Read access to the area.  Messages may
  4812.                           only be posted by users with Sysop access
  4813.                           to the area.
  4814.           
  4815.           
  4816.           Users
  4817.           ────────────────────────────────────────────────────────────
  4818.           Use this option to allow users to post messages using Real
  4819.           Names Only, Handles Only (from the user's account record),
  4820.           or with an Alias which the user may select at the time the
  4821.           message is posted.  RemoteAccess will not allow users to
  4822.           select Sysop (or any other user's name or handle) as an
  4823.           alias.
  4824.  
  4825.           If a message area is configured to use Handles and a user
  4826.           does not have a handle recorded in his or her account
  4827.           record, the user's Real Name will be substituted.
  4828.           
  4829.           
  4830.           Days Old, Days Rcvd and Max Msgs
  4831.           ────────────────────────────────────────────────────────────
  4832.           These three fields are used to define message retention
  4833.           thresholds based on these three categories.  The message
  4834.           database maintenance utility RAMSG performs maintenance
  4835.           tasks which includes removing messages which meet the
  4836.           criteria defined in these fields.
  4837.           
  4838.           Days Old    This is the number of days to keep old messages.
  4839.                       For example, to retain messages for 30 days from
  4840.                       the message creation date, set this field to 30.
  4841.                       Any messages which exceed this threshold will
  4842.                       be removed when the RAMSG PACK function is
  4843.                       executed.
  4844.           
  4845.           Days Rcvd   This is the number of days to keep messages
  4846.                       that have been marked as received.  For
  4847.                       example, to delete messages 30 days after being
  4848.                       read by the recipient, set this field to 30.
  4849.           
  4850.           Max Msgs    This is the maximum number of messages that
  4851.                       are to be retained in the message area.  This
  4852.                       allows you to limit the number of messages that
  4853.                       will be stored in the area.  For example, to
  4854.                       limit the number of messages in the area to 200,
  4855.                       set this field to 200.  When the RAMSG PACK
  4856.                       operation is executed, the most recent 200
  4857.                       messages would be retained while all others
  4858.                       would be removed from the database.
  4859.           
  4860.           NOTE:  See the RAMSG section of the Message Database
  4861.           Administration chapter for more information on the RAMSG
  4862.           PACK function.
  4863.           
  4864.  
  4865.  
  4866.  
  4867.  
  4868.  
  4869.  
  4870.  
  4871.  
  4872.                                    - 71 -
  4873.           Echoinfo
  4874.           ────────────────────────────────────────────────────────────
  4875.           When a message area is defined as an EchoMail type,
  4876.           RemoteAccess appends the default origin line to the end of
  4877.           outgoing messages.  This may be disabled by setting this
  4878.           option to No.
  4879.           
  4880.           
  4881.           Combined
  4882.           ────────────────────────────────────────────────────────────
  4883.           This option determines whether users may select the message
  4884.           area as a part of their combined area.  As described later
  4885.           in the Menu Administration chapter, you may allow your users
  4886.           to configure their own combined message area.  A combined
  4887.           area acts as a folder containing all the individual message
  4888.           areas a user places into it.  When users read from their
  4889.           combined area, messages from each area in the folder are
  4890.           processed.
  4891.  
  4892.  
  4893.           Attaches
  4894.           ────────────────────────────────────────────────────────────
  4895.           RemoteAccess provides an extremely powerful facility which
  4896.           allows users to attach one or more files to a message.  This
  4897.           means that users can send each other files privately.  To
  4898.           enable this feature, set this option to Yes. {+} Registered
  4899.           only.
  4900.  
  4901.           When a user uploads files with a message, RemoteAccess
  4902.           stores them in a uniquely-named subdirectory which it
  4903.           creates in the File Attach directory specified earlier in
  4904.           RACONFIG:
  4905.           
  4906.                      System > Paths > File Attach
  4907.           
  4908.           After the recipient has received the message and confirmed
  4909.           that all attached files have been received, all of the files
  4910.           (along with the subdirectory) are deleted.
  4911.  
  4912.           If the user selects to attach a file while logged-on to a
  4913.           local node, RemoteAccess will prompt for the DOS path and
  4914.           filename of the file to be attached.
  4915.           
  4916.           
  4917.           SoftCRs
  4918.           ────────────────────────────────────────────────────────────
  4919.           RemoteAccess uses ASCII character number 8D (hexadecimal -
  4920.           decimal number 141) internally for message formatting.  This
  4921.           is usually invisible to the user, however in some countries
  4922.           such as Iceland, this character is part of the character
  4923.           set.  If enabled, this option will tell RemoteAccess to
  4924.           treat these special characters as normal characters.
  4925.           
  4926.           
  4927.           Deletes
  4928.           ────────────────────────────────────────────────────────────
  4929.           If this option is enabled, users will be allowed to delete
  4930.           messages in this area, provided that they are either the
  4931.           sender or recipient of the message.
  4932.  
  4933.  
  4934.  
  4935.  
  4936.                                    - 72 -
  4937.           NOTE:  In EchoMail areas, deleting a message is only
  4938.           effective if the above criteria is met and the message has
  4939.           not yet been exported from the message database to the mail
  4940.           network.
  4941.           
  4942.           
  4943.           AKA
  4944.           ────────────────────────────────────────────────────────────
  4945.           This field allows you to select the mail network address
  4946.           that is to be used for the message area.  You may select any
  4947.           of the AKA's defined earlier in RACONFIG:
  4948.           
  4949.                           System > Addresses
  4950.           
  4951.           If you only have one network address (or none at all) then 
  4952.           this option may be ignored.
  4953.           
  4954.           
  4955.           Age
  4956.           ────────────────────────────────────────────────────────────
  4957.           You may restrict access to the message area to users who are
  4958.           at least the age specified here.  If your system is
  4959.           configured to prompt users for their date of birth during
  4960.           the new user log-on process, then RemoteAccess can calculate
  4961.           individual user ages making restrictions based on age
  4962.           possible.
  4963.  
  4964.           For example, to restrict access to the area to users who are
  4965.           at least 18 years of age, enter a value of 18 in this field.
  4966.           
  4967.           
  4968.           Group
  4969.           ────────────────────────────────────────────────────────────
  4970.           As will be described in the next section on Message Groups,
  4971.           each area may belong in a primary group as well as up to
  4972.           three alternate groups, or it may belong to all groups.  If
  4973.           you plan to implement message groups, enter the primary
  4974.           group number the message area is to belong to.
  4975.  
  4976.           If you aren't familiar with message groups, it is suggested
  4977.           that you read the Message Groups section in this chapter.
  4978.           Message grouping can be easily changed at any time.
  4979.           
  4980.           
  4981.           Area Type
  4982.           ────────────────────────────────────────────────────────────
  4983.           RemoteAccess directly supports two types of message areas;
  4984.           JAM and Hudson.  Your message database may consist solely of
  4985.           one type or it may be a combination of both JAM and Hudson
  4986.           message areas.  In order for you to be able to make an
  4987.           educated decision on which format to use, a little history
  4988.           of the two formats is in order.
  4989.  
  4990.  
  4991.  
  4992.  
  4993.  
  4994.  
  4995.  
  4996.  
  4997.  
  4998.  
  4999.  
  5000.                                    - 73 -
  5001.           The Hudson format was developed by Adam Hudson and became
  5002.           popular as it was adopted by other BBS programs to maintain
  5003.           compatibility between competing software packages and
  5004.           message processing utility programs.  Though it is still
  5005.           supported by many BBS and message processing software
  5006.           programs, it has become somewhat outdated in that more and
  5007.           more systems require message databases that reach beyond the
  5008.           limitations of this format.  These limitations must be
  5009.           observed when configuring your message database.
  5010.  
  5011.           Specifically, the Hudson format supports a maximum of up to
  5012.           200 message areas.  This limitation in itself has become the
  5013.           primary reason other formats have been developed.
  5014.  
  5015.           You may select any combination of JAM and Hudson message
  5016.           area formats.  However, any areas configured as Hudson areas
  5017.           must be between area numbers 1 and 200 due to the structure
  5018.           of this format.
  5019.  
  5020.           Support for the Hudson message format is included in
  5021.           RemoteAccess in order to maintain compatibility with
  5022.           existing installations which use third-party message
  5023.           database processors which operate specifically with Hudson
  5024.           message databases.  If you are not currently using any
  5025.           third-party message or EchoMail processors that are
  5026.           specifically designed to use the Hudson format, it is
  5027.           recommended that you set this field to use the JAM format.
  5028.  
  5029.           The JAM message database format was developed by Joaquim H.
  5030.           Homrighausen, Andrew Milner and Mats Wallin (hence the
  5031.           name).  This exciting new format is limited only by the
  5032.           amount of disk space that is available.  There are no
  5033.           limitations in terms of the number of message areas you can
  5034.           have.  In fact, JAM supports approximately two billion
  5035.           messages per area and as many message areas as your hard
  5036.           disk can accommodate.  Each area is a separate database
  5037.           which may reside on any hard drive or network volume.  There
  5038.           is no limitation on the length of messages except those
  5039.           imposed by the editors that create them.
  5040.           
  5041.           
  5042.           JAMbase
  5043.           ────────────────────────────────────────────────────────────
  5044.           When configuring a JAM format message area, you must provide
  5045.           the directory and base filename for the area.  Each JAM
  5046.           message area can reside in its own directory, or multiple
  5047.           JAM areas can share the same directory.  Use the JAMbase
  5048.           field to specify the path and directory where the particular
  5049.           message area database files will reside.  In addition to the
  5050.           path and directory, also specify the base filename for the
  5051.           message area.  The base filename should be no more than 8
  5052.           characters in length and should not include a filename
  5053.           extension.
  5054.  
  5055.  
  5056.  
  5057.  
  5058.  
  5059.  
  5060.  
  5061.  
  5062.  
  5063.  
  5064.                                    - 74 -
  5065.           For example, to configure a JAM message area called Public
  5066.           Lobby with the message database files stored in the
  5067.           C:\RA\MSGS directory using a base filename of PUBLIC, the
  5068.           proper JAMbase field entry would be:
  5069.           
  5070.                           C:\RA\MSGS\PUBLIC
  5071.           
  5072.           When a message is entered into the Public Lobby area, the
  5073.           following JAM database files would be created in the
  5074.           C:\RA\MSGS directory:
  5075.           
  5076.                      PUBLIC.JDX            PUBLIC.JHR
  5077.                      PUBLIC.JDT            PUBLIC.JLR
  5078.           
  5079.           This design makes it possible to assign one or more JAM
  5080.           message areas to a single directory.  For more information
  5081.           on the JAM message database format, consult the Message
  5082.           Database Administration chapter.
  5083.           
  5084.           
  5085.           AltGroup1, AltGroup2 and AltGroup3
  5086.           ────────────────────────────────────────────────────────────
  5087.           In addition to belonging to a primary message group, each
  5088.           message area may belong to 3 alternate groups for a total of
  5089.           4 individual message groups.  For example, if a message area
  5090.           is to be designated as belonging to message groups 1 and 3,
  5091.           the primary group might be set to 1 while AltGroup1 might be
  5092.           set to 3.
  5093.  
  5094.           See the Message Groups section later in this chapter for
  5095.           more information on message groups.
  5096.           
  5097.  
  5098.           Message Groups
  5099.           ════════════════════════════════════════════════════════════
  5100.           This option allows you to configure up to 255 message groups
  5101.           for your system.  Like the Msg Areas option, a pick-list of
  5102.           groups allows you to select the group to be created, edited
  5103.           or deleted.
  5104.  
  5105.           Message groups are used to form groups of message areas.
  5106.           These may pertain to a specific topic.  For example, you
  5107.           might have 10 message areas dedicated to the topic of
  5108.           Cooking and another 10 areas dedicated to the topic of
  5109.           Desktop Publishing. In this example, it might be wise to
  5110.           create two message groups; one dedicated to each of the two
  5111.           topics.
  5112.  
  5113.           When defining message groups, a name is given to each group.
  5114.           Like the message areas, the security level and/or access
  5115.           flag requirements are also specified for each group allowing
  5116.           complete flexibility in restricting access to it.  Used
  5117.           together with the menu commands outlined in the Menu
  5118.           Administration chapter, users can select a message group and
  5119.           then process only the areas within that group.
  5120.  
  5121.  
  5122.  
  5123.  
  5124.  
  5125.  
  5126.  
  5127.  
  5128.                                    - 75 -
  5129.           This feature allows you to partition your system into
  5130.           sections that are manageable and useful to your users.  For
  5131.           example, if you participate in multiple mail networks and
  5132.           each network has a large number of associated EchoMail
  5133.           areas, it might be useful to group message areas by network.
  5134.           
  5135.           
  5136.           Name
  5137.           ────────────────────────────────────────────────────────────
  5138.           This field is used to specify the name of the message group.
  5139.           This name is displayed by various functions in RemoteAccess
  5140.           such as the internal message group selection menu. Security
  5141.           and Access Flags
  5142.  
  5143.           Like individual areas, message groups may be restricted to
  5144.           users whose security level and access flag settings meet the
  5145.           requirements specified in these fields.  For a complete
  5146.           description of access flags see the section earlier in
  5147.           RACONFIG:
  5148.           
  5149.                   Options > New Users > Access Flags
  5150.           
  5151.  
  5152.           File Areas
  5153.           ════════════════════════════════════════════════════════════
  5154.           Like the message system, RemoteAccess also uses a database
  5155.           format for its file system.  This format provides fast
  5156.           processing time and specialized functionality only found in
  5157.           databased systems.
  5158.  
  5159.           When this option is selected, a pick-list menu of file areas
  5160.           is displayed.  To edit an existing area, position the
  5161.           cursor-bar on the desired area and press <ENTER>.  To delete
  5162.           an area, position the cursor-bar on the desired area and
  5163.           press DELETE.  To add a new area to the end of the list,
  5164.           press INSERT.
  5165.  
  5166.           When an area is selected, the area editing screen is
  5167.           displayed.
  5168.           
  5169.           
  5170.           Name
  5171.           ────────────────────────────────────────────────────────────
  5172.           This field is used to specify the name of the file area.
  5173.           This is the name that is displayed by various internal
  5174.           functions such as hard-coded file lists.  You can enter up
  5175.           to 40 characters.
  5176.           
  5177.           
  5178.           Path
  5179.           ────────────────────────────────────────────────────────────
  5180.           This is the full directory path where the files for this
  5181.           area are located.  It may contain a drive letter and full
  5182.           path.
  5183.           
  5184.  
  5185.  
  5186.  
  5187.  
  5188.  
  5189.  
  5190.  
  5191.  
  5192.                                    - 76 -
  5193.           Download, List and Upload Security
  5194.           ────────────────────────────────────────────────────────────
  5195.           Access to each individual file area is controlled by
  5196.           download, list and upload security levels and access flags.
  5197.           This gives you separate control over each of these functions
  5198.           within the area. For example, this would enable you to allow
  5199.           users to list files in an area but not download or upload
  5200.           files.
  5201.  
  5202.           By setting the minimum security level requirement for any of
  5203.           these fields, it is possible to restrict access to users
  5204.           having an equal or greater level.  By setting access flag
  5205.           requirements, you can further restrict access to users whose
  5206.           access flags meet the requirements.  For complete
  5207.           information on access flags, see the New Users section
  5208.           earlier in this chapter.
  5209.           
  5210.           Each of the three access levels is described as follows:
  5211.           
  5212.           DL Security    This specifies the minimum security level 
  5213.                         and access flag combination the user must
  5214.                         have before being allowed to download files
  5215.                         from this area.
  5216.           
  5217.           List Security    This specifies the minimum security level 
  5218.                         and access flag combination the user must
  5219.                         have before being allowed to list files in
  5220.                         this area.
  5221.           
  5222.           UL Security    This specifies the minimum security level 
  5223.                         and access flag combination the user must
  5224.                         have before being allowed to upload files to
  5225.                         this area.
  5226.           
  5227.           NOTE:  In cases where you prefer uploaded files to be stored
  5228.           in a different area (perhaps an upload screening area), you
  5229.           can set the alternate upload area to the area number where
  5230.           uploads are to be directed.  See the Uploads field later in
  5231.           this section for more information.
  5232.           
  5233.           
  5234.           New
  5235.           ────────────────────────────────────────────────────────────
  5236.           This field is used to determine whether files in this area
  5237.           are to be included when scanning for new files.  Press
  5238.           <ENTER> to toggle this setting.
  5239.           
  5240.           
  5241.           Dupes
  5242.           ────────────────────────────────────────────────────────────
  5243.           This field is used to determine whether this file area will
  5244.           be included when checking for duplicate upload names.  When
  5245.           a user uploads a file, RemoteAccess compares the filename
  5246.           being uploaded to the filename entries of all areas that
  5247.           have this setting enabled.  This is done to avoid uploads of
  5248.           files that already exist in the database.  Press <ENTER> to
  5249.           toggle this setting.
  5250.           
  5251.  
  5252.  
  5253.  
  5254.  
  5255.  
  5256.                                    - 77 -
  5257.           CD-ROM
  5258.           ────────────────────────────────────────────────────────────
  5259.           This field is used to determine whether the area is on a CD-
  5260.           ROM drive.  If the file area being configured is on a CD-ROM
  5261.           device, this should be set to Yes.  Press <ENTER> to toggle
  5262.           this setting.
  5263.           
  5264.           
  5265.           Free
  5266.           ────────────────────────────────────────────────────────────
  5267.           If this field is set to Yes, then all files in this area are
  5268.           considered free files.  That is, they will not effect the
  5269.           user's file ratio or download limits.  However, the user
  5270.           must have sufficient time remaining to download the file.
  5271.           Press <ENTER> to toggle this setting.
  5272.  
  5273.           Files may also be defined as free files on an individual
  5274.           basis.  See the RAMGR section of the File Database
  5275.           Administration chapter for more information.
  5276.           
  5277.           
  5278.           LongDesc
  5279.           ────────────────────────────────────────────────────────────
  5280.           This field is used to determine whether users will be
  5281.           allowed to enter multiple-line file descriptions.  If set to
  5282.           No, users will be restricted to entering one-line file
  5283.           descriptions.  If set to Yes, users will be permitted to
  5284.           enter up to 20 lines of text with each line containing up to
  5285.           70 characters.  Press <ENTER> to toggle this setting.
  5286.           
  5287.           
  5288.           DirectDL
  5289.           ────────────────────────────────────────────────────────────
  5290.           If this field is set to Yes, users will be permitted to
  5291.           download files that reside in this area but are not in the
  5292.           file database. This is usually reserved for Sysop and
  5293.           Co-Sysop functions. Pressing <ENTER> toggles this setting.
  5294.           
  5295.           
  5296.           PwdUL
  5297.           ────────────────────────────────────────────────────────────
  5298.           If this field is set to Yes, users will be permitted to
  5299.           password- protect files they upload to this area.  When a
  5300.           file is password- protected, other users are required to
  5301.           enter the password in order to download the file.  Pressing
  5302.           <ENTER> toggles this setting.
  5303.           
  5304.           
  5305.           UL Scan
  5306.           ────────────────────────────────────────────────────────────
  5307.           When this field is set to Yes, any uploads to this area are
  5308.           scanned for corruption and viruses using the settings
  5309.           defined earlier in RACONFIG:
  5310.           
  5311.                     Options > Files > Upload Scan
  5312.           
  5313.  
  5314.  
  5315.  
  5316.  
  5317.  
  5318.  
  5319.  
  5320.                                    - 78 -
  5321.           ArcType
  5322.           ────────────────────────────────────────────────────────────
  5323.           This field specifies the archive format that uploads to this
  5324.           area are to be converted to by the RAFILE REARC function.
  5325.           RemoteAccess allows you to easily maintain one type of
  5326.           archive format on your system while still allowing users to
  5327.           upload archives using the format of their choice.
  5328.  
  5329.           Pressing <ENTER> on this field brings up a pick-list of
  5330.           archive format choices which were defined earlier in
  5331.           RACONFIG:
  5332.           
  5333.                      Options > Files > Archivers
  5334.           
  5335.           The file maintenance utility RAFILE includes a function
  5336.           which converts all archives found in the directory path for
  5337.           any file area that has an archive format specified in this
  5338.           field.  For more information on this function, see the
  5339.           RAFILE section of the File Database Administration chapter.
  5340.           
  5341.           
  5342.           DL Days
  5343.           ────────────────────────────────────────────────────────────
  5344.           With RemoteAccess, it is possible to automatically move or
  5345.           delete files that are not downloaded within the number of
  5346.           days specified in this field.  If a file has not been
  5347.           downloaded for the number of days specified here (between 1
  5348.           and 99999), it can be moved to another area or deleted from
  5349.           your system entirely. This is accomplished using the CLEAN
  5350.           function of the RAFILE file maintenance utility which is
  5351.           discussed in the File Database Administration chapter.
  5352.           
  5353.           
  5354.           FD Days
  5355.           ────────────────────────────────────────────────────────────
  5356.           Similar in function to the DL Days field, this field is used
  5357.           to specify the number of days to keep a file based on its
  5358.           DOS file date.  This makes it possible to move or delete
  5359.           files that have remained on your system for the number of
  5360.           days specified in this field, starting from the actual file
  5361.           date (regardless of whether the file is actively
  5362.           downloaded).
  5363.  
  5364.           When this defined time period has been exceeded, the file
  5365.           may be moved or deleted by using the CLEAN function of the
  5366.           RAFILE file maintenance utility.  For more information, see
  5367.           the RAFILE section of the File Database Administration
  5368.           chapter.
  5369.           
  5370.           
  5371.           MoveArea
  5372.           ────────────────────────────────────────────────────────────
  5373.           When a file has exceeded the parameters specified in the DL
  5374.           Days or FD Days fields, the file may be moved or deleted by
  5375.           the CLEAN function of the RAFILE file maintenance utility.
  5376.           This field is used to determine whether the file will be
  5377.           moved to another area or deleted from your system entirely.
  5378.           For example, you may want to review files before deletion.
  5379.  
  5380.  
  5381.  
  5382.  
  5383.  
  5384.                                    - 79 -
  5385.           If this field is set to zero, any files exceeding the
  5386.           specified DL Days or FD Days parameters will be deleted.
  5387.           Otherwise, they will be moved to the file area number
  5388.           specified here.
  5389.  
  5390.           
  5391.           Min Age
  5392.           ────────────────────────────────────────────────────────────
  5393.           In addition to other restrictions, RemoteAccess also allows
  5394.           you to restrict each file area to users who are at least a
  5395.           certain age. This field is used to specify the minimum age
  5396.           required for users to be able to download or list files in
  5397.           this area.  For example, to prevent users under the age of
  5398.           18 from listing or downloading files from the area, set this
  5399.           field to a value of 18.
  5400.            
  5401.           NOTE:  RemoteAccess must know the user's date of birth in
  5402.           order to calculate his or her age.  For this reason, if you
  5403.           plan to use this feature, it is imperative that you also
  5404.           configure your system to prompt new users to enter their
  5405.           date of birth during the log-on process.  See the following
  5406.           section earlier in RACONFIG:
  5407.           
  5408.                    Options > New Users > Birthdate
  5409.           
  5410.           
  5411.           Password
  5412.           ────────────────────────────────────────────────────────────
  5413.           This field is used to specify a password of up to 15
  5414.           characters which users must enter before being permitted to
  5415.           download any file from the area.  This password applies to
  5416.           every file in the area except files that have an individual
  5417.           password assigned to them which overrides this setting.
  5418.           
  5419.           
  5420.           Group
  5421.           ────────────────────────────────────────────────────────────
  5422.           This field specifies the primary file group that this area
  5423.           belongs to.  Each file area may belong to:
  5424.           
  5425.           *    All file groups
  5426.           *    One primary group, or...
  5427.           *    One primary group and up to 3 alternate groups
  5428.           
  5429.           For example, you may have two file groups on your system;
  5430.           Cooking and Desktop Publishing.  Each group may have 3
  5431.           specific file areas dedicated to its specific topic.  Each
  5432.           of these areas can be assigned or dedicated to that file
  5433.           group.  At the same time, 3 other areas may be of interest
  5434.           to users of both groups.  These 3 areas can be configured as
  5435.           belonging to all groups or as belonging primarily to one of
  5436.           the two groups and alternately to the other.
  5437.           
  5438.  
  5439.  
  5440.  
  5441.  
  5442.  
  5443.  
  5444.  
  5445.  
  5446.  
  5447.  
  5448.                                    - 80 -
  5449.           Def. Cost
  5450.           ────────────────────────────────────────────────────────────
  5451.           This field is used to determine the cost (in credits) of
  5452.           each file in this area.  When this is set to a non-zero
  5453.           value, each file is said to have a cost associated with it.
  5454.           In turn, this value is deducted from the user's Credit field
  5455.           when a file is downloaded from this area.
  5456.  
  5457.           If a user attempts to download a file that has an associated
  5458.           cost, but does not have sufficient credits remaining,
  5459.           RemoteAccess will not permit the download except when the
  5460.           user's Post Billing flag is enabled which allows the user to
  5461.           accumulate a negative credit balance.
  5462.           
  5463.           
  5464.           Uploads
  5465.           ────────────────────────────────────────────────────────────
  5466.           This field allows you to specify an alternate file area to
  5467.           which uploaded files will be redirected.  For example, if
  5468.           you would like your users to be able to upload from any file
  5469.           area but would like all uploaded files to be directed to a
  5470.           single area, specify the area number here.
  5471.            
  5472.           NOTE:  When this feature is used, any fields relating to
  5473.           uploaded files are overridden by the same fields in the
  5474.           alternate upload area. For example, if long file
  5475.           descriptions are enabled for file area 1 and uploads to area
  5476.           1 are redirected to area 10 which has long descriptions
  5477.           disabled, users who upload to area 1 will not be permitted
  5478.           to enter long file descriptions.
  5479.           
  5480.           
  5481.           Alternate File Groups
  5482.           ────────────────────────────────────────────────────────────
  5483.           As mentioned in the description of the Group field, when a
  5484.           file area is not defined as belonging to all groups, it can
  5485.           be configured as belonging to one primary and up to three
  5486.           alternate file groups.  This means that if a file area is
  5487.           not defined as belonging to all groups, it can belong to up
  5488.           to 4 file groups.
  5489.  
  5490.           Use the AltGroup1, AltGroup2 and AltGroup3 fields to
  5491.           designate up to three alternate file groups the file area
  5492.           should be assigned to.
  5493.  
  5494.           For example, to designate a file area as belonging to file
  5495.           group one, three and five, you could define the primary
  5496.           group as 1 using the Group field and then entering 3 in the
  5497.           AltGroup1 field and 5 in the AltGroup2 field.
  5498.           
  5499.           
  5500.           Device
  5501.           ────────────────────────────────────────────────────────────
  5502.           This field is used only on systems where a multi-disc CD-ROM
  5503.           player is attached.  A conflict may arise when such devices
  5504.           are attached to multi-node systems because of the
  5505.           possibility that two users may request to download files
  5506.           residing on separate discs in the same multi-disc unit at
  5507.           the same time.
  5508.  
  5509.  
  5510.  
  5511.  
  5512.                                    - 81 -
  5513.           A scenario which describes this conflict is in order.  Let's
  5514.           say you have file areas A and B which reside on separate CDs
  5515.           on the same multi-disc player.  Let's say that a user on
  5516.           line one requests to download a file from area A at the same
  5517.           time that a user on line two requests a file from area B.
  5518.           RemoteAccess begins copying the file from area A into the
  5519.           CD-ROM temp holding directory.  While this is happening, the
  5520.           user on line two selects the download option.  RemoteAccess
  5521.           goes to retrieve the file in area B on the other disc, and
  5522.           the CD-ROM device responds by ejecting the CD which holds
  5523.           area A in order to make area B available.  An obvious
  5524.           problem.
  5525.  
  5526.           To avoid this type of conflict, assign an arbitrary number
  5527.           from 1 to 255 to each multi-disc CD-ROM unit.  Then, when
  5528.           setting up individual file areas, set the device field to
  5529.           this arbitrary number.  When multiple requests for the same
  5530.           multi- disc device number are made, RemoteAccess can manage
  5531.           the requests, avoiding the conflict as described in the
  5532.           above scenario.
  5533.  
  5534.           For example, if you have one multi-disc unit containing 6
  5535.           CD-ROM discs, each holding its own set of file areas, you
  5536.           would assign one arbitrary number to the entire multi-disc
  5537.           unit.  This same number would be entered in the device field
  5538.           for each of the file areas on each of the discs within the
  5539.           multi- disc unit.  This allows RemoteAccess to know when the
  5540.           multi- disc unit is busy servicing other requests,
  5541.           permitting proper management of multiple requests for the
  5542.           same device number, in order to avoid any possible
  5543.           conflicts.
  5544.           
  5545.           
  5546.           AllGroups
  5547.           ────────────────────────────────────────────────────────────
  5548.           Use this field to define the file area as belonging to all
  5549.           file groups.  When this is set to Yes, the file area being
  5550.           defined can be accessed by users of any file group.
  5551.           
  5552.  
  5553.           File Groups
  5554.           ════════════════════════════════════════════════════════════
  5555.           This option allows you to configure up to 255 file groups
  5556.           for your system.  Like the File Areas option, a pick-list of
  5557.           groups allows you to select the group to be created, edited
  5558.           or deleted. File groups are configured and used just as
  5559.           message groups are.  Individual file areas may belong to one
  5560.           or more (up to four) file groups.  Each group may be
  5561.           restricted by security level and access flag setting
  5562.           combinations.
  5563.  
  5564.           For a more detailed explanation, see the Message Groups
  5565.           section earlier in this chapter.
  5566.           
  5567.  
  5568.  
  5569.  
  5570.  
  5571.  
  5572.  
  5573.  
  5574.  
  5575.  
  5576.                                    - 82 -
  5577.           Protocols
  5578.           ════════════════════════════════════════════════════════════
  5579.           This pick-list option allows you to define which internal
  5580.           and external file transfer protocols are to be used by your
  5581.           BBS. Selecting this option from the pick-list menu presents
  5582.           another pick-list menu offering the choice of internal or
  5583.           external protocols.
  5584.  
  5585.           Internal protocols are those that are built into
  5586.           RemoteAccess.  Simply enabling or disabling these protocols
  5587.           is all that is required to turn them on or off.  External
  5588.           protocols are third-party, external transfer protocols that
  5589.           may be added using the protocol definition screen.
  5590.  
  5591.           Selecting the Internal option from the protocols pick-list
  5592.           menu presents another pick-list menu of individual internal
  5593.           protocols which can be enabled, disabled or made available
  5594.           only on an error-free (i.e. MNP) connection.  MNP (Microcom
  5595.           Networking Protocol), also known as ARQ (Automatic Repeat
  5596.           Request), is a method by which modems can detect and correct
  5597.           transmission errors.  This type of connection can only be
  5598.           facilitated when two modems supporting this error correction
  5599.           are connected.  Since when using MNP, error correction is
  5600.           carried out by the modem hardware, the software does not
  5601.           need to watch the incoming data for errors or wait for the
  5602.           receiving modem to confirm that it has received all the data
  5603.           correctly.  Some protocols are written especially for MNP
  5604.           modems and therefore achieve very fast throughput.  If you
  5605.           use such a protocol you should set it for error free connect
  5606.           only.  An example of such a protocol in the internal
  5607.           protocol list is Ymodem-G.
  5608.  
  5609.           When using an error free protocol, RemoteAccess will
  5610.           establish whether the user is using an MNP modem by looking
  5611.           at the modem connection string to see if it contains an
  5612.           error-free response string.  This string is defined in
  5613.           RACONFIG: {+} Registered only.          
  5614.           
  5615.                       Modem > Responses > Secure
  5616.           
  5617.           To toggle the status of any of the internal protocols,
  5618.           position the cursor-bar over the desired protocol and press
  5619.           <ENTER>.  Protocols can be set to Available, Not available
  5620.           or Error free.  The internal protocols that are available
  5621.           are described below.
  5622.           
  5623.           Xmodem
  5624.  
  5625.           This protocol transfers data in 128-byte blocks. It is
  5626.           considered to be somewhat reliable but slow, due to the
  5627.           nature of its error-detection design.
  5628.           
  5629.           
  5630.           Xmodem/1K
  5631.  
  5632.           This protocol is similar in design to the Xmodem protocol
  5633.           except that it transfers data in 1K blocks.  This increases
  5634.           its throughput ability over its predecessor although the
  5635.           error detection method still slows it down.
  5636.  
  5637.  
  5638.  
  5639.  
  5640.                                    - 83 -
  5641.           Xmodem/1K-g
  5642.  
  5643.           This protocol is a result of the evolution of the Xmodem
  5644.           protocol.  It transfers data in 1K blocks and realizes
  5645.           faster throughput than the Xmodem/1K protocol since it
  5646.           relies on error free modems to perform all error detection
  5647.           and correction.
  5648.           
  5649.           
  5650.           Ymodem
  5651.  
  5652.           The Ymodem protocol is similar in function to the Xmodem/1K
  5653.           protocol in that it transfers data in 1K blocks and requires
  5654.           the receiving system to send an acknowledgment for each
  5655.           correctly received block.
  5656.           
  5657.           
  5658.           Ymodem-g
  5659.  
  5660.           This is the error-free version of Ymodem which is much
  5661.           faster since it relies on the modem hardware to perform all
  5662.           error detection and correction.
  5663.           
  5664.           
  5665.           Zmodem
  5666.  
  5667.           This protocol is extremely efficient by today's standards.
  5668.           It transmits data and does not stop to wait for an
  5669.           acknowledgment for correctly received data.  The receiving
  5670.           system detects errors and sends a message to the sending
  5671.           system only when an error is detected.  The sending system
  5672.           is then able to begin resending data from the point at which
  5673.           the error occurred.
  5674.           
  5675.           Another factor that makes this protocol so efficient is the
  5676.           fact that it can shift to larger blocks as a transfer
  5677.           progresses.  It also offers crash recovery which is a system
  5678.           that allows a transfer to be resumed from the point at which
  5679.           it previously failed.
  5680.           
  5681.           
  5682.           The External option allows you to interface up to fifteen
  5683.           external protocols for use on your system in addition to the
  5684.           internal protocols.  These are third-party protocols which
  5685.           are usually available from BBSs that offer shareware
  5686.           programs. You should keep in mind that this section details
  5687.           the actual interface which is designed to be flexible in
  5688.           order to support most external protocol programs.  When
  5689.           installing an external protocol, it is important that you
  5690.           first understand how the particular protocol works.  When
  5691.           you are familiar with what is required, this section will
  5692.           aid you in proper installation. Selecting the External
  5693.           option presents a protocol pick-list menu.  Position the
  5694.           cursor-bar on an available entry and press <ENTER> to bring
  5695.           up the protocol definition screen.
  5696.           
  5697.  
  5698.  
  5699.  
  5700.  
  5701.  
  5702.  
  5703.  
  5704.                                    - 84 -
  5705.           Name
  5706.           ────────────────────────────────────────────────────────────
  5707.           This field is the protocol name as it will be displayed to
  5708.           your users when download or upload commands are used.  If
  5709.           you use the text file XFERPROT.A?? to override the
  5710.           hard-coded protocol selection menu, this name will not be
  5711.           displayed.  See the External Support Files chapter for more
  5712.           information on the XFERPROT.A?? text file.
  5713.           
  5714.           
  5715.           Key
  5716.           ────────────────────────────────────────────────────────────
  5717.           The key is the command key that will be used to activate the
  5718.           protocol.  This key must be unique.  For example, since
  5719.           Zmodem is an internal protocol and the command key used to
  5720.           activate it is "Z", you cannot use the letter "Z" to
  5721.           activate an external protocol.
  5722.           
  5723.           
  5724.           Ext Ctl File
  5725.           ────────────────────────────────────────────────────────────
  5726.           Before RemoteAccess activates an external protocol, it
  5727.           creates a control file that tells the protocol which files
  5728.           to send or receive.  This file consists of some general
  5729.           information and a list of files, one per line.  If you
  5730.           select this field, RemoteAccess will include information
  5731.           needed by protocols written to support a standard protocol
  5732.           interface file.  These are also sometimes referred to as
  5733.           Opus compatible external protocol files.  This information
  5734.           is then written at the top of the control file before the
  5735.           file list.  Check the documentation for each protocol you
  5736.           install to determine whether it is Opus compatible.
  5737.  
  5738.           When this option is selected, the following header is
  5739.           written to the control file before the list of files to be
  5740.           transferred:
  5741.           
  5742.           Port  <Communications port>
  5743.           
  5744.           Baud  <Caller's connection speed>
  5745.           
  5746.           Log   <RemoteAccess log filename>
  5747.           
  5748.           Time  <Caller's time remaining>
  5749.           
  5750.           
  5751.           Batch
  5752.           ────────────────────────────────────────────────────────────
  5753.           If the protocol has the ability to transfer more than one
  5754.           file at a time, set this field to Yes.  This simply
  5755.           determines whether or not users may select this protocol
  5756.           when transferring more than one file at a time.
  5757.           
  5758.  
  5759.  
  5760.  
  5761.  
  5762.  
  5763.  
  5764.  
  5765.  
  5766.  
  5767.  
  5768.                                    - 85 -
  5769.           Status
  5770.           ────────────────────────────────────────────────────────────
  5771.           This field is used to determine the status of the protocol
  5772.           which may be set to one of three states:
  5773.           
  5774.           Always available  The protocol is enabled and available in
  5775.                             both normal and error free connection
  5776.                             modes.
  5777.           
  5778.           Not available     The protocol is disabled.  It may not be
  5779.                             used while in this state.
  5780.           
  5781.           Error free        The protocol is only available during
  5782.                             error-free connection sessions.  This
  5783.                             option is particularly useful if you use
  5784.                             protocols such as Ymodem-G which are
  5785.                             specifically designed to work with error
  5786.                             correcting modems.
  5787.           
  5788.           
  5789.           Log File
  5790.           ────────────────────────────────────────────────────────────
  5791.           This field specifies the full path and filename of the log
  5792.           file that the external protocol writes.  This file contains
  5793.           information about what files were actually sent or received.
  5794.           Without this information, RemoteAccess cannot update the
  5795.           user's record.  Most protocols have the facility to create a
  5796.           log of the files that were actually transferred.  If the
  5797.           protocol you are defining does not support this, it is
  5798.           advisable not to use it.
  5799.           
  5800.           
  5801.           Control File
  5802.           ────────────────────────────────────────────────────────────
  5803.           This field specifies the full path and filename of the
  5804.           control file that RemoteAccess creates before activating the
  5805.           protocol.  In order to allow the use of as many different
  5806.           protocols as possible, you have full control over the format
  5807.           of this file.
  5808.           
  5809.           
  5810.           DL and UL Command Line
  5811.           ────────────────────────────────────────────────────────────
  5812.           The DL Command Line and UL Command Line fields specify what
  5813.           program name to execute in order to activate the external
  5814.           protocol.  It is possible to insert variables into the
  5815.           command line using special control codes.  These codes are
  5816.           explained in the Menu Administration chapter under menu
  5817.           function type 7-Run an external program in a shell.
  5818.  
  5819.           For example, the control code *B expands to the current
  5820.           connection speed.  Therefore, if a caller was on-line at
  5821.           2400 BPS, the line:
  5822.           
  5823.                          PROTNAME.EXE Send *B
  5824.           
  5825.           Would be expanded to:
  5826.           
  5827.                         PROTNAME.EXE Send 2400
  5828.  
  5829.  
  5830.  
  5831.  
  5832.                                    - 86 -
  5833.           In addition to these control codes, the # character can also
  5834.           be used to specify the filename to be transferred on the
  5835.           command-line.  This code simply expands into the actual
  5836.           filename being transferred.
  5837.           
  5838.           
  5839.           DL Ctl String
  5840.           ────────────────────────────────────────────────────────────
  5841.           This field represents the download control string that is
  5842.           used to determine the format of each file entry that is
  5843.           written to the control file during a download.  Inserting
  5844.           the @ character in this field causes the full path and
  5845.           filename being transferred to be expanded in its place.
  5846.  
  5847.           For example, if the full path and filename of the file being
  5848.           transferred was C:\FILES\FUN\CASINO.ZIP and the Opus
  5849.           compatible protocol being used required the keyword Send
  5850.           followed by the path and filename to be transferred, you
  5851.           would define the string:
  5852.  
  5853.                                 Send @
  5854.           
  5855.           When the download control file was created, this string
  5856.           would be expanded to:
  5857.           
  5858.                      Send C:\FILES\FUN\CASINO.ZIP
  5859.           
  5860.           If the user selects a batch download using a wildcard as a
  5861.           part of the filename (i.e. RA*.ZIP), the wildcard pattern
  5862.           match will be expanded to a list of the full paths and
  5863.           filenames to be downloaded.
  5864.           
  5865.           
  5866.           UL Ctl String
  5867.           ────────────────────────────────────────────────────────────
  5868.           This field represents the upload control string that is used
  5869.           to determine the format of the control file during an
  5870.           upload.  This is identical in function to the DL Ctl String
  5871.           field except that for batch uploads, instead of specifying
  5872.           the full filename, the @ character expands only into the
  5873.           upload directory path since the filenames are not known
  5874.           prior to the upload.
  5875.           
  5876.           
  5877.           DL Log Keyword and UL Log Keyword
  5878.           ────────────────────────────────────────────────────────────
  5879.           When the external protocol has finished and control is
  5880.           returned to RemoteAccess, the log file that was created is
  5881.           scanned to extract information about what files were sent or
  5882.           received.  RemoteAccess scans the file for the UL or DL Log
  5883.           Keyword.  When it finds that word, it will scan forward x
  5884.           number of words to get the name of the file transferred as
  5885.           well as the description, if available.  To illustrate how
  5886.           this works, look at this extract from a BiModem protocol
  5887.           log:
  5888.           
  5889.                  = 10 Sep 14:10:10 BMOD DL-B \GRAPH\VGA.ZIP
  5890.                  = 10 Sep 14:12:22 BMOD DL-B \GRAPH\MAP.ZIP
  5891.  
  5892.  
  5893.  
  5894.  
  5895.  
  5896.                                    - 87 -
  5897.           The DL or UL Log Keyword can be any word in the log file
  5898.           that indicates the transfer of a single file.  The keyword
  5899.           in the above example should be set to DL-B indicating that
  5900.           RemoteAccess should scan forward x number of words from the
  5901.           point at which DL-B starts in the current line.
  5902.           
  5903.           
  5904.           Log Name Keyword
  5905.           ────────────────────────────────────────────────────────────
  5906.           This field is used to specify the number of words that
  5907.           RemoteAccess should scan after locating the DL or UL Log
  5908.           Keyword in the protocol log file.  In the example listed in
  5909.           the DL and UL Log Keyword fields, this field would be set to
  5910.           1 since RemoteAccess must scan ahead 1 word after finding
  5911.           DL-B to obtain the downloaded filename.
  5912.           
  5913.           
  5914.           Log Desc Word
  5915.           ────────────────────────────────────────────────────────────
  5916.           When a user uploads, RemoteAccess can also obtain a file
  5917.           description from the log file if the protocol used supports
  5918.           description logging.  It can then write this description
  5919.           directly to the file database description field.  To achieve
  5920.           this, you can set this field to the number of words
  5921.           RemoteAccess must scan after it finds the DL or UL Log
  5922.           Keyword in the log file.  If the protocol doesn't support
  5923.           description logging or RemoteAccess cannot find a
  5924.           description, the user is prompted for the description by
  5925.           RemoteAccess.
  5926.           
  5927.           Example:  Installing Lynx as an external protocol
  5928.           
  5929.           The following example illustrates how the Lynx protocol is
  5930.           defined:
  5931.           
  5932.           Name:           : Lynx
  5933.           Key             : L
  5934.           Ext ctl file    : No
  5935.           Batch           : Yes
  5936.           Status          : Enabled
  5937.           Log file        : C:\RA\DSZLOG.TXT
  5938.           Control file    : C:\RA\LYNX.CTL
  5939.           DL command line : Lynx.Exe S /*P /*B /S /H @Lynx.Ctl
  5940.           UL command line : Lynx.Exe R /*P /*B /S /D /H #
  5941.           DL ctl string   : @
  5942.           UL ctl string   :
  5943.           DL log keyword  : x
  5944.           UL log keyword  : X
  5945.           Log name word   : 10
  5946.           Log desc word   : 0
  5947.           
  5948.           Note the case status of the download and upload log keyword
  5949.           entries (one is lowercase and the other is uppercase).
  5950.  
  5951.  
  5952.  
  5953.  
  5954.  
  5955.  
  5956.  
  5957.  
  5958.  
  5959.  
  5960.                                    - 88 -
  5961.           The above example assumes that your system directory is
  5962.           C:\RA.  To complete the installation of this protocol,
  5963.           you'll need to set the DSZLOG environment variable to the
  5964.           full path and name of the log file that Lynx writes.  This
  5965.           is done by entering the DOS command from the local console
  5966.           or from your BBS batch file:
  5967.           
  5968.                      SET DSZLOG=C:\RA\DSZLOG.TXT
  5969.           
  5970.           When these settings are required, they are usually explained
  5971.           in the documentation that accompanies the external protocol
  5972.           software.
  5973.           
  5974.  
  5975.           Languages
  5976.           ════════════════════════════════════════════════════════════
  5977.           RemoteAccess contains full support for multiple languages.
  5978.           This means that you can have different prompts, text files,
  5979.           questionnaires and menus for up to eight different languages.
  5980.  
  5981.           Selecting the Languages option from the Manager pick-list
  5982.           menu displays a selection of currently installed languages.
  5983.           By default, RemoteAccess comes with the English language.
  5984.  
  5985.           You can run the language editor directly without going
  5986.           through RACONFIG menus by using the -L parameter on the
  5987.           RACONFIG command-line.   For example:
  5988.           
  5989.                                  RACONFIG -L
  5990.           
  5991.           Executes RACONFIG and runs the language editor directly.
  5992.           
  5993.           To edit an installed language, position the cursor-bar over
  5994.           the desired language and press <ENTER>.  To generate a new
  5995.           language file, position the cursor-bar over a blank entry
  5996.           and press <ENTER>.
  5997.           
  5998.           This pick-list menu represents the configuration of the
  5999.           selected language.  As you will see, you can change any of
  6000.           the settings provided.  Each field is explained as follows:
  6001.           
  6002.           Name          This field holds the name for the language.
  6003.                         Since this is the name which will be displayed
  6004.                         to users when they are asked to select a
  6005.                         language, you should use the country of
  6006.                         origin's spelling rather than your own.  For
  6007.                         example, the name for the German language
  6008.                         should be entered as Deutsch.
  6009.           
  6010.           Available    If you do not wish to make the language 
  6011.                         available, toggle this field to No.
  6012.           
  6013.           Security    This field is used to specify the minimum 
  6014.                         security level a user must have in order to
  6015.                         select the language.  Setting this field to
  6016.                         zero causes the language to be made available
  6017.                         to users of any security level.
  6018.  
  6019.  
  6020.  
  6021.  
  6022.  
  6023.  
  6024.                                    - 89 -
  6025.           Flags         These fields are used to specify the flag
  6026.                         settings a user must have in order to select
  6027.                         the language.  For example, setting the first
  6028.                         flag in set A to ON (setting it to an X) would
  6029.                         specify that users must have their A1 flag set
  6030.                         to ON in order to select this language.
  6031.           
  6032.           Language Text    Selecting this field enters the language text 
  6033.                         editor which allows you to alter every one of
  6034.                         the almost 700 different prompts.  Using the
  6035.                         editor is easy.  Position the cursor-bar over
  6036.                         the text prompt you wish to change and press
  6037.                         <ENTER>.
  6038.           
  6039.           At the top of the editor screen, the default English text
  6040.           appears for the currently-selected prompt.  Any valid text
  6041.           file control characters may be inserted into the prompt text
  6042.           for automatic translation while the user in on-line.  See
  6043.           the Control Codes Listing section of the External Support
  6044.           Files chapter for a list of control codes that may be used.
  6045.           
  6046.           While in the prompt text editor, the following keys may be
  6047.           used:
  6048.           
  6049.           ALT-C   Changes the default color for the selected prompt.
  6050.                   Selecting this command brings up a color chart pick-
  6051.                   list menu.  Position the block cursor on the desired
  6052.                   color setting and press <ENTER> to assign it to the
  6053.                   selected prompt.
  6054.           
  6055.           ALT-D   Each language has default text associated with each
  6056.                   prompt.  When positioning the cursor-bar on a
  6057.                   prompt, you will notice the default prompt text
  6058.                   displayed on the top of your display.  This is
  6059.                   useful for identifying the original prompt text.
  6060.                   Using this command copies the default prompt text
  6061.                   into the selected prompt.
  6062.           
  6063.           ALT-S   Use this command to search for any text strings.
  6064.                   This search looks for any occurrences of the string
  6065.                   you enter here and positions the cursor-bar on the
  6066.                   next match.
  6067.           
  6068.           Though editing prompt text is a simple process, there are a
  6069.           few things you should keep in mind.
  6070.           
  6071.           *     You will notice that some prompts ask for keys before
  6072.           you can edit the actual text.  These are the keys that the
  6073.           user presses to activate an associated option.  For example,
  6074.           the key for the Yes prompt is "Y".  If you change the prompt
  6075.           to Ja you should be sure to change the activation key to
  6076.           "J".
  6077.           
  6078.           *     Some prompts are the headers for listing functions,
  6079.           such as Today's Callers, Who's On-line, etc.  You will see
  6080.           that these have obvious spacing built-in which must be
  6081.           maintained if you change any part of the prompt text.
  6082.  
  6083.  
  6084.  
  6085.  
  6086.  
  6087.  
  6088.                                    - 90 -
  6089.           *     If you're translating the text into another language,
  6090.           there are two rules of thumb:
  6091.           
  6092.           1.    Translate all text as literally as possible.
  6093.           2.    Try to use generic words and phrases.
  6094.           
  6095.           For example, RemoteAccess uses the same prompt for the
  6096.           "Access denied!" message when a user enters an incorrect
  6097.           password during log-on as it does when a user tries to
  6098.           access a passworded menu and fails.  Therefore, you wouldn't
  6099.           want to change the text to "Access denied, logging you
  6100.           off!".
  6101.           
  6102.           Menu Path    Each language can have its own set of menus.  
  6103.                         In this field you can define the paths to
  6104.                         menus for each specific language.  If one or
  6105.                         more menus in the language-specific directory
  6106.                         are missing, RemoteAccess will substitute the
  6107.                         menu of the same name from the directory
  6108.                         path specified earlier in RACONFIG:
  6109.           
  6110.                                      System > Paths
  6111.           
  6112.           Text Path    Each language can also have its own set of 
  6113.                         text files.  The same rules for missing menu
  6114.                         substitution apply to text files.
  6115.           
  6116.           Ques Path    In this field you may enter the path to the 
  6117.                         directory where the questionnaire files are
  6118.                         stored for the selected language.
  6119.           
  6120.           NOTE:  Questionnaire answer files (*.ASW files) are always
  6121.           written to the RemoteAccess system directory.  See the
  6122.           Questionnaires chapter for more information on answer files.
  6123.           
  6124.           Filename    This field is used to define the filename for 
  6125.                         the selected language.  It is not necessary to
  6126.                         enter an extension to the filename as the
  6127.                         extension .RAL will be added automatically.
  6128.           
  6129.           NOTE:  Text editing is disabled until a filename is entered
  6130.           in this field.
  6131.           
  6132.           
  6133.           Alt-Function Keys
  6134.           ════════════════════════════════════════════════════════════
  6135.           RemoteAccess can be configured to take three types of
  6136.           actions when one of the ten function keys on your keyboard
  6137.           is pressed in conjunction with the ALT key.  These ALT key
  6138.           definitions are configured using this option.
  6139.  
  6140.           Pressing <ENTER> on the AltFn Keys option from the Manager
  6141.           pick-list displays a new pick-list of ALT-F1 through ALT-F10
  6142.           function key definitions.  Position the cursor-bar on the
  6143.           key to be edited and press <ENTER>.
  6144.  
  6145.  
  6146.  
  6147.  
  6148.  
  6149.  
  6150.  
  6151.  
  6152.                                    - 91 -
  6153.           One of three actions may assigned to ALT-function keys:
  6154.           
  6155.           *    Execute a DOS command-line.
  6156.           
  6157.           To assign a DOS command to one of the keys, simply enter the
  6158.           DOS command-line that is to be executed.
  6159.           
  6160.           *     Display a specified text file from the text files
  6161.                 directory.
  6162.           
  6163.           To display a specific text file from the text files
  6164.           directory, enter the # character followed by the name of the
  6165.           text file.  For example, to display the text file
  6166.           GOODBYE.A??, the key would be defined as:
  6167.           
  6168.                                #GOODBYE
  6169.           
  6170.           *    Exit to DOS with an errorlevel set.
  6171.           
  6172.           To exit to DOS with a specific errorlevel set, enter the ?
  6173.           character followed by the errorlevel number you wish to pass
  6174.           back to DOS.  For example, to exit with errorlevel 100 set,
  6175.           the key would be defined as:
  6176.           
  6177.                                  ?100
  6178.           
  6179.           Suppose three entries looked like the following example:
  6180.           
  6181.                                5: ?110
  6182.                                6: C:\COMMAND.COM
  6183.                                7: #WELCOME
  6184.           
  6185.           Pressing ALT-F5 would cause RemoteAccess to exit to DOS,
  6186.           passing an errorlevel of 110.  Pressing ALT-F6 would execute
  6187.           COMMAND.COM in a shell, and ALT-F7 would display the
  6188.           WELCOME.A?? file to the user currently on-line.
  6189.           
  6190.  
  6191.           Events
  6192.           ════════════════════════════════════════════════════════════
  6193.           The next item in the Manager pick-list menu is Events.
  6194.           RemoteAccess allows you to set pre-defined times during the
  6195.           week in which to perform certain functions, such as system
  6196.           maintenance.  For example, let's say that every night at
  6197.           midnight RemoteAccess should exit with an errorlevel of 100
  6198.           set.  The BBS batch file can trap this errorlevel and jump
  6199.           to a segment of the batch file that runs maintenance
  6200.           routines such as message database packing using RAMSG.
  6201.  
  6202.           Up to 20 events may be defined for any day.  Each event may
  6203.           be setup to run at a predetermined time and may also be
  6204.           configured to run on any number of days.
  6205.  
  6206.  
  6207.  
  6208.  
  6209.  
  6210.  
  6211.  
  6212.  
  6213.  
  6214.  
  6215.  
  6216.                                    - 92 -
  6217.           What happens when a user logs-on prior to an upcoming system
  6218.           event?  If the user's time remaining is greater than the
  6219.           number of minutes until the upcoming event, the user's time
  6220.           remaining will be trimmed down to ensure the event is not
  6221.           missed.  If the same user logs-on after the event has taken
  6222.           place, the time that was trimmed earlier will be restored.
  6223.           See the Forced field below for more details.
  6224.  
  6225.           System events are also commonly used when operating in
  6226.           conjunction with a mail network.  In such cases, the events
  6227.           configured here are usually used to ensure that a user is
  6228.           not logged-on at a time when a Front End Mailer event is to
  6229.           run.
  6230.  
  6231.           Selecting the Events option from the pick-list menu presents
  6232.           you with the Event Editor display.  Position the cursor-bar
  6233.           on an event to be created or edited and press <ENTER>.
  6234.           
  6235.           
  6236.           Start
  6237.           ────────────────────────────────────────────────────────────
  6238.           This field is used to define the time at which an event is
  6239.           to start.  This time is specified in 24-hour format.  For
  6240.           example, to define a start time of midnight, enter 00:00.
  6241.           
  6242.           
  6243.           Status
  6244.           ────────────────────────────────────────────────────────────
  6245.           This field is used to enable or disable a system event.
  6246.           When an event is disabled, RemoteAccess ignores it.
  6247.           
  6248.           
  6249.           Errorlevel
  6250.           ────────────────────────────────────────────────────────────
  6251.           This field is used to specify the errorlevel that
  6252.           RemoteAccess should return to the calling batch file.  Your
  6253.           batch file should then trap this errorlevel and take the
  6254.           appropriate action.
  6255.           
  6256.           NOTE:  Take care when selecting errorlevels to ensure that
  6257.           there are no conflicts with errorlevels used by
  6258.           RemoteAccess.  A list of the errorlevels used is outlined in
  6259.           the Batch Files chapter of this manual.
  6260.           
  6261.           
  6262.           Forced
  6263.           ────────────────────────────────────────────────────────────
  6264.           If a user's file transfer overruns a system event which is
  6265.           Forced, the transfer will be aborted and the user
  6266.           disconnected to ensure that the event runs at the proper
  6267.           time.  It is possible for events which are not forced to be
  6268.           missed if a file transfer takes longer than expected to
  6269.           complete.
  6270.  
  6271.  
  6272.  
  6273.  
  6274.  
  6275.  
  6276.  
  6277.  
  6278.  
  6279.  
  6280.                                    - 93 -
  6281.           RemoteAccess calculates file download times based on the
  6282.           size of the files to be transferred and the caller's
  6283.           connection speed.  However if errors or other anomalies
  6284.           occur which cause the transfer to take longer, only forcing
  6285.           the event will ensure that the event is not missed.  Also it
  6286.           is not possible for RemoteAccess to determine how long a
  6287.           batch transfer will take during an upload.
  6288.  
  6289.           To toggle this setting, position the cursor-bar on the
  6290.           Forced option and press <ENTER>.
  6291.           
  6292.           
  6293.           Days
  6294.           ────────────────────────────────────────────────────────────
  6295.           Selecting this field presents a pick-list menu containing
  6296.           the seven days of the week.
  6297.           
  6298.           To select the days to run the event, position the cursor-bar
  6299.           on the day of the week to be changed and press <ENTER>. Days
  6300.           marked with the "X" character are considered selected while
  6301.           days marked with the "-" character are not selected.  When
  6302.           you are satisfied with the settings, press <ESCAPE> to
  6303.           return to the event editor.
  6304.           
  6305.  
  6306.           Menus
  6307.           ════════════════════════════════════════════════════════════
  6308.           The next item in the Manager pick-list menu is the Menus
  6309.           option.  RemoteAccess features a powerful, state-of-the-art
  6310.           menu system.  The menu system and the menu editor accessed
  6311.           with this option are fully explained in the Menu
  6312.           Administration chapter.  It may seem confusing to simply
  6313.           make a reference to another chapter but when you realize the
  6314.           power and potential of the menu system, you'll understand
  6315.           why a full chapter has been devoted to the subject.
  6316.           
  6317.  
  6318.           Control Files
  6319.           ════════════════════════════════════════════════════════════
  6320.           The next item in the Manager pick-list menu is Ctl Files.
  6321.           This option allows you to edit all of the system control
  6322.           files.  Control files reside in the RemoteAccess system
  6323.           directory and are identified by the filename extension of
  6324.           .CTL.
  6325.  
  6326.           Control files are one group of external support files used
  6327.           by RemoteAccess.  External support files enhance
  6328.           RemoteAccess through their flexibility and functionality.
  6329.           It would be unfair to briefly discuss control files in this
  6330.           section.  Therefore, a full chapter has been dedicated to
  6331.           give you complete explanations and instructions.  Refer to
  6332.           the Control Files section of the External Support Files
  6333.           chapter later in this manual for complete information on
  6334.           this option.
  6335.           
  6336.  
  6337.  
  6338.  
  6339.  
  6340.  
  6341.  
  6342.  
  6343.  
  6344.                                    - 94 -
  6345.           Combined
  6346.           ════════════════════════════════════════════════════════════
  6347.           The next item in the Manager pick-list menu is the Combined
  6348.           option.  Selecting this option presents a pick-list menu of
  6349.           configured message areas.
  6350.  
  6351.           One of the features of the message database system is the
  6352.           ability for users to select individual message areas to be
  6353.           included in their combined message area.  This combined area
  6354.           acts as a file folder which holds all messages contained in
  6355.           the areas included in the user's combined area.  This allows
  6356.           your users to select and process only those message areas
  6357.           that he or she is interested in.
  6358.  
  6359.           When a new user logs-on to your system, it is possible to
  6360.           define a default set of message areas to be included in the
  6361.           user's combined message area.  These default settings can
  6362.           later be changed by the user.  To select or deselect the
  6363.           default combined message areas, position the cursor-bar on
  6364.           the desired areas and press <ENTER>.  When an area is
  6365.           selected for inclusion, a small block character will be
  6366.           displayed to the left of the message area number.   When you
  6367.           are satisfied with the settings, press <ESCAPE> and answer y
  6368.           to the Save changes? prompt.
  6369.           
  6370.           NOTE:  The Combined function is also discussed in the Menu
  6371.           Administration chapter under menu function 28-"Select
  6372.           combined areas", as well as earlier in this chapter under the
  6373.           Message areas option of the Manager pick-list menu.
  6374.           
  6375.           
  6376.           Limits
  6377.           ════════════════════════════════════════════════════════════
  6378.           The next item in the Manager pick-list menu is the Limits
  6379.           option.  Pressing <ENTER> on this option presents a security
  6380.           level pick-list menu which is used to define time and file
  6381.           transfer limits and file ratios for individual security
  6382.           levels used by your BBS.
  6383.           
  6384.           Some planning may be required if you intend to use several
  6385.           security levels on your BBS.  Each security level you plan
  6386.           to use should have an entry in this pick-list in order for
  6387.           RemoteAccess to know what time and file transfer limits are
  6388.           to be placed on users with these security levels.
  6389.  
  6390.           To add a new security level to the pick-list, press INSERT.
  6391.           You will notice a new entry in the pick-list that contains
  6392.           zeros in all of its fields.  The next step is to edit the
  6393.           entry just created. To edit an existing entry or an entry
  6394.           just created, position the cursor-bar on the desired entry
  6395.           and press <ENTER>.  An Edit pick-list menu is displayed
  6396.           which contains the security level field and other fields for
  6397.           which restrictions can be applied.
  6398.           
  6399.           Move through the pick-list selecting each item, entering the
  6400.           desired values.
  6401.           
  6402.  
  6403.  
  6404.  
  6405.  
  6406.  
  6407.  
  6408.                                    - 95 -
  6409.           Security
  6410.           ────────────────────────────────────────────────────────────
  6411.           This field is used to define the security level to which the
  6412.           limits will be applied.  Valid security level entries are 1
  6413.           to 65535.
  6414.           
  6415.           
  6416.           Time
  6417.           ────────────────────────────────────────────────────────────
  6418.           This field specifies the time (in minutes) that users of the
  6419.           defined security level are given per day.  For example, to
  6420.           give users of the defined security level one hour of access
  6421.           time per day, enter a value of 60 here.
  6422.           
  6423.           
  6424.           Download Limits for Individual Baud Rates
  6425.           ────────────────────────────────────────────────────────────
  6426.           The fields 300, 1200, 2400, 4800, 7200, 9600, 12000, 14400,
  6427.           16800, 19200 and 38400 are used to define the daily download
  6428.           kilobyte limits that are to be applied to users of the
  6429.           defined security level at different connection speeds.  This
  6430.           allows you to effectively increase or decrease the amount of
  6431.           files (in kilobytes) that may be downloaded daily, by users
  6432.           of varying connection speeds.
  6433.  
  6434.           For example, if the 1200 field is set to 1024 and the 9600
  6435.           field is set to 2048, then users of the defined security
  6436.           level who are connected at 1200 BPS may download up to 1024
  6437.           kilobytes of files while users connected at 9600 BPS may
  6438.           download up to 2048 kilobytes.
  6439.  
  6440.           If a user logs-on at a connection speed which has a setting
  6441.           of zero here, RemoteAccess will use the next highest speed
  6442.           setting until it finds one that has a non-zero value.  For
  6443.           example, if the 300 field is set to 1024 and all higher
  6444.           speed settings are set to zero, users of all connection
  6445.           speeds will be limited to 1024 kilobytes.
  6446.           
  6447.           
  6448.           Local
  6449.           ────────────────────────────────────────────────────────────
  6450.           The Local field is used to define the amount of files per
  6451.           day (in kilobytes) that may be downloaded locally.  Local
  6452.           downloads are possible with RemoteAccess and allow a file
  6453.           transfer from the selected file area to a DOS drive and
  6454.           directory.
  6455.  
  6456.           For example, this allows you to transfer files from your BBS
  6457.           to a floppy diskette while maintaining transfer limits and
  6458.           ratios imposed.
  6459.  
  6460.           Local downloads are discussed further under menu function
  6461.           32-"Download a file from area" and menu function 33-"Upload
  6462.           a file" in the Menu Administration chapter.
  6463.           
  6464.  
  6465.  
  6466.  
  6467.  
  6468.  
  6469.  
  6470.  
  6471.  
  6472.                                    - 96 -
  6473.           RatioNum
  6474.           ────────────────────────────────────────────────────────────
  6475.           This field is used to define the upload to download ratio,
  6476.           by number of files, that the user must maintain in order to
  6477.           download.  Usually used to encourage user uploading, this
  6478.           allows you to specify the number of files a user may
  6479.           download before being required to upload 1 file.
  6480.  
  6481.           For example, to require your users to upload 1 file for
  6482.           every 20 files they download, set this field to 20.
  6483.  
  6484.           It is also possible to give new users an initial upload
  6485.           credit. Refer to earlier sections of this chapter:
  6486.           
  6487.                    Options > New Users > UL Credit
  6488.  
  6489.  
  6490.           RatioK
  6491.           ────────────────────────────────────────────────────────────
  6492.           This field is used to define the upload to download ratio,
  6493.           by number of kilobytes, that the user must maintain in order
  6494.           to download.  This allows you to specify the number of files
  6495.           (in kilobytes) a user may download before being required to
  6496.           upload 1 kilobyte.
  6497.  
  6498.           For example, to require your users to upload 1 kilobyte for
  6499.           every 20 kilobytes they download, set this field to 20. It
  6500.           is also possible to give new users an initial upload
  6501.           kilobyte credit.  Refer to earlier sections of this chapter:
  6502.           
  6503.                    Options > New Users > UL CreditK
  6504.           
  6505.           
  6506.           PerMin
  6507.           ────────────────────────────────────────────────────────────
  6508.           This field is used to define the per-minute cost (in
  6509.           credits) that is to be deducted from the Credit field in the
  6510.           users account record.  This is used in some subscription
  6511.           systems and allows you to effectively charge a specific rate
  6512.           for each minute of usage.  When a user's credit balance
  6513.           reaches zero, the questionnaire file NOCREDIT.Q-A is
  6514.           initiated unless the Post Bill flag is set to Yes in the
  6515.           user's account record, in which case a negative balance is
  6516.           allowed to accumulate.
  6517.  
  6518.           In order to handle decimal numbers allowed in this field,
  6519.           RemoteAccess stores the credit field internally as a real
  6520.           number.  However, the credit field is always rounded and
  6521.           stored as a whole number when a user logs-off.  This causes
  6522.           a minimal amount of accuracy to be lost, but allows
  6523.           third-party program developers to easily access the credit
  6524.           field in the user database.
  6525.  
  6526.  
  6527.  
  6528.  
  6529.  
  6530.  
  6531.  
  6532.  
  6533.  
  6534.  
  6535.  
  6536.                                    - 97 -
  6537.           Chapter 3
  6538.           Menu Administration
  6539.           *    
  6540.           *    
  6541.           *    
  6542.           *    
  6543.           One of the most powerful features you will find in
  6544.           RemoteAccess is its menu system.  From giving your BBS its
  6545.           own unique look and feel to creating menus for specialized
  6546.           services, this system is top notch! You'll have complete
  6547.           control over each individual menu item which can be
  6548.           restricted according to criteria such as security level,
  6549.           group number, flag settings, age, sex, time of day and much
  6550.           more.
  6551.  
  6552.  
  6553.  
  6554.  
  6555.  
  6556.  
  6557.  
  6558.  
  6559.  
  6560.  
  6561.  
  6562.  
  6563.  
  6564.  
  6565.  
  6566.  
  6567.  
  6568.  
  6569.  
  6570.  
  6571.  
  6572.  
  6573.  
  6574.  
  6575.  
  6576.  
  6577.  
  6578.  
  6579.  
  6580.  
  6581.  
  6582.  
  6583.  
  6584.  
  6585.  
  6586.  
  6587.  
  6588.  
  6589.  
  6590.  
  6591.  
  6592.  
  6593.  
  6594.  
  6595.  
  6596.  
  6597.  
  6598.  
  6599.  
  6600.                                    - 98 -
  6601.           ABOUT MENUS
  6602.  
  6603.           This is possibly the most important aspect of configuring
  6604.           your BBS.  The menu system that you create will give your
  6605.           system its own unique look and feel.  It gives you complete
  6606.           control not only cosmetically, but also in allowing and
  6607.           disallowing access to certain functions and parts of your
  6608.           BBS.
  6609.  
  6610.           Menus are line-oriented.  Using the menu manager in
  6611.           RACONFIG, you enter the lines one at a time.  Each line
  6612.           contains text that is displayed to the user, a menu function
  6613.           type, a field for optional data parameters, a hot-key
  6614.           assignment, minimum and maximum security levels, flag
  6615.           settings required to access the particular menu item and a
  6616.           host of other optional settings that make each individual
  6617.           menu item completely configurable.  There are over seventy
  6618.           menu function types that may be activated at the press of a
  6619.           key or even automatically.
  6620.  
  6621.           This flexibility allows you to design your BBS in any number
  6622.           of ways.  Practically anything your imagination can dream up
  6623.           can be implemented using the menu system incorporated in
  6624.           RemoteAccess.  Therefore, understanding this system is a
  6625.           paramount factor in customizing your BBS.
  6626.  
  6627.           Each menu function type offered will be outlined in detail
  6628.           in this chapter.  But first, we'll explain the concept of
  6629.           menus, other menu features and how to create menus.
  6630.           
  6631.           NOTE:  RemoteAccess supports a maximum of 100 line items per
  6632.           menu.
  6633.           
  6634.           MENU LAYOUT
  6635.  
  6636.           The key to a good menu system is planning.  And the best way
  6637.           to plan a menu system is to sketch it out on paper.  Menus
  6638.           are easier to design on paper and menus designed on paper
  6639.           are easier to implement.  Now there's a subtle hint!  If you
  6640.           put your layout to paper, you won't regret the extra effort,
  6641.           especially if you've never used this powerful menu system
  6642.           before.
  6643.  
  6644.           A menu system is typically divided into sections; messages
  6645.           are accessed from a message menu, files are accessed from a
  6646.           file menu, games from a game menu, and so on.  This
  6647.           sectioning, if done logically, creates a topology that is
  6648.           generally easy to comprehend and makes a system easier to
  6649.           navigate.  Of course, this doesn't mean you have to have a
  6650.           typical menu system but for the purposes of demonstration
  6651.           this section refers to typical menu systems.
  6652.  
  6653.           Two widely-used menu topologies will be outlined in detail
  6654.           in this section.  These are the functional topology (the
  6655.           more popular of the two) and the subjective topology.  Each
  6656.           has its merits and should be considered when designing the
  6657.           structure of your menu system.  Whatever topology you decide
  6658.           to use, RemoteAccess provides the flexibility to compliment,
  6659.           enhance and blend topologies.
  6660.  
  6661.  
  6662.  
  6663.  
  6664.                                    - 99 -
  6665.           Consider a functional topology; one where menus are
  6666.           organized according to their function.  Examine the
  6667.           following functional topology.
  6668.  
  6669.                                 ┌───────────┐
  6670.                                 │ Main Menu │
  6671.                                 └─────┬─────┘
  6672.                         ┌─────────────┴─────────────┐
  6673.               ┌─────────┴─────────┐       ┌─────────┴─────────┐
  6674.               │ Message Menu      │       │ File Menu         │
  6675.               └─────────┬─────────┘       └─────────┬─────────┘
  6676.               ┌─────────┴─────────┐       ┌─────────┴─────────┐
  6677.               │ Public Messages   │       │ General Files     │
  6678.               └─────────┬─────────┘       └─────────┬─────────┘
  6679.               ┌─────────┴─────────┐       ┌─────────┴─────────┐
  6680.               │ Private E-Mail    │       │ DOS Utility Files │
  6681.               └───────────────────┘       └───────────────────┘
  6682.  
  6683.           This simple system is grouped by function (hence the name).
  6684.           In this example, there are a total of 3 main sections; the
  6685.           Main Menu, Message Menu and File Menu.  This topology is
  6686.           very simple to design and implement and makes it easy to add
  6687.           other main sections.  For example, a Statistics Menu could
  6688.           be easily added off the Main Menu.  From there, menu items
  6689.           could be added which display system usage graphs, user
  6690.           statistics and the like.
  6691.           
  6692.                                 ┌───────────┐
  6693.                                 │ Main Menu │
  6694.                                 └─────┬─────┘
  6695.                   ┌───────────────────┼────────────────────┐
  6696.           ┌───────┴────────┐ ┌────────┴─────────┐ ┌────────┴───────┐
  6697.           │ Message Menu   │ │ File Menu        │ │ Statistics Menu│
  6698.           └───────┬────────┘ └────────┬─────────┘ └────────┬───────┘
  6699.           ┌───────┴────────┐ ┌────────┴─────────┐ ┌────────┴───────┐
  6700.           │ Public Messages│ │ General Files    │ │ System Graph   │
  6701.           └───────┬────────┘ └────────┬─────────┘ └────────┬───────┘
  6702.           ┌───────┴────────┐ ┌────────┴─────────┐ ┌────────┴───────┐
  6703.           │ Private E-Mail │ │ DOS Utility Files│ │ User Statistics│
  6704.           └────────────────┘ └──────────────────┘ └────────────────┘
  6705.           
  6706.           This type of functional topology is virtually endless.  This
  6707.           is why it is important to plan your menu system beforehand.
  6708.           But don't get out a pencil and paper just yet.  It is
  6709.           recommended that you read this entire chapter first, so that
  6710.           you realize the full potential of the menu system.  Because
  6711.           there are tools that will help you minimize the number of
  6712.           menus you will need to meet your requirements.  Tools such
  6713.           as templates (explained later in this chapter) are valuable
  6714.           time-savers that will add even more power to your menus
  6715.           while keeping them streamlined and easy to maintain.
  6716.  
  6717.           When you are satisfied with your overall functional topology
  6718.           plan, it may be wise to detail each of the main and/or
  6719.           sub-sections.  Not only does this ease the menu
  6720.           implementation process, it also serves as a guide when
  6721.           configuring other aspects such as the message and file
  6722.           areas.
  6723.  
  6724.  
  6725.  
  6726.  
  6727.  
  6728.                                    - 100 -
  6729.                            ┌─────────────────────────┐
  6730.                            │ Messages Menu           │
  6731.                            │                         │
  6732.                            │ Security Level: 0 (all) │
  6733.                            │ Menu Name: MSGMAIN      │
  6734.                            └────────────┬────────────┘
  6735.                            ┌────────────┴────────────┐
  6736.                            │ Area: Public Messages   │
  6737.                            │ Area Number: 1          │
  6738.                            │ Group Number: 1         │
  6739.                            │ Read Security: 0 (all)  │
  6740.                            │ Write Security: 50      │
  6741.                            │ Sysop Security: 100 (me)│
  6742.                            └────────────┬────────────┘
  6743.                            ┌────────────┴────────────┐
  6744.                            │ Area: Private E-Mail    │
  6745.                            │ Area Number: 2          │
  6746.                            │ Group Number: 1         │
  6747.                            │ Read Security: 0 (all)  │
  6748.                            │ Write Security: 50      │
  6749.                            │ Sysop Security: 100 (me)│
  6750.                            └─────────────────────────┘
  6751.  
  6752.           As you can see, a flowchart such as the one shown above
  6753.           would be helpful not only in building menus but in
  6754.           configuring message areas as well.  The included information
  6755.           might save you from jumping around from place to place
  6756.           within RACONFIG.
  6757.  
  6758.           The same sort of aid can be used to document the File Menu
  6759.           sections shown earlier.  Examine the following flow chart of
  6760.           a sample four-area file system.  You'll notice that it gives
  6761.           you a clear indication of the menu structure as well as a
  6762.           detailed chart of how each file area is to be set up.
  6763.  
  6764.  
  6765.  
  6766.  
  6767.  
  6768.  
  6769.  
  6770.  
  6771.  
  6772.  
  6773.  
  6774.  
  6775.  
  6776.  
  6777.  
  6778.  
  6779.  
  6780.  
  6781.  
  6782.  
  6783.  
  6784.  
  6785.  
  6786.  
  6787.  
  6788.  
  6789.  
  6790.  
  6791.  
  6792.                                    - 101 -
  6793.                           ┌─────────────────────────┐
  6794.                           │ Files Menu              │
  6795.                           │                         │
  6796.                           │ Security Level: 0 (all) │
  6797.                           │ Menu Name: FILEMAIN     │
  6798.                           └────────────┬────────────┘
  6799.                        ┌───────────────┴───────────────┐
  6800.           ┌────────────┴────────────┐     ┌────────────┴────────────┐
  6801.           │ Area:  General Files    │     │ Area:  BBS Files        │
  6802.           │ Group Number: 1         │     │ Group Number: 1         │
  6803.           │ Area Number: 1          │     │ Area Number: 3          │
  6804.           │ Download Security: 50   │     │ Download Security: 50   │
  6805.           │ List Security: 0 (all)  │     │ List Security: 0 (all)  │
  6806.           │ Upload Security: 100    │     │ Upload Security: 100    │
  6807.           │ Upload Area: 4          │     │ Upload Area: 4          │
  6808.           └────────────┬────────────┘     └────────────┬────────────┘
  6809.           ┌────────────┴────────────┐     ┌────────────┴────────────┐
  6810.           │ Area:  DOS Utility Files│     │ Area:  Uploads          │
  6811.           │ Group Number: 1         │     │ Group Number: 1         │
  6812.           │ Area Number: 2          │     │ Area Number: 4          │
  6813.           │ Download Security: 50   │     │ Download Security: 100  │
  6814.           │ List Security: 0 (all)  │     │ List Security: 100      │
  6815.           │ Upload Security: 100    │     │ Upload Security 50      │
  6816.           │ Upload Area: 4          │     │ All Groups: Yes         │
  6817.           └─────────────────────────┘     └─────────────────────────┘
  6818.            
  6819.           Even more information could be added about each individual
  6820.           area.  Information such as inclusion in new files searches,
  6821.           upload duplicate checking, allowing long file descriptions
  6822.           and a wealth of other options may be indicated here if you
  6823.           configure these differently for each area.
  6824.  
  6825.           So much for functional topologies.  You can see how dynamic
  6826.           they are and hopefully, the logical grouping of the various
  6827.           sections makes sense to you.  Now it's time to discuss
  6828.           another topology -- the subjective topology.  In the
  6829.           functional topology sections were grouped according to their
  6830.           function.  A subjective topology is one in which menus are
  6831.           grouped by subject.
  6832.  
  6833.           For example, if a BBS was to primarily serve two subjects -
  6834.           let's say Cooking and Desktop Publishing (also known as
  6835.           DTP), the menus could be grouped according to subject.  Each
  6836.           subject could have its own related message and file areas.
  6837.  
  6838.  
  6839.  
  6840.  
  6841.  
  6842.  
  6843.  
  6844.  
  6845.  
  6846.  
  6847.  
  6848.  
  6849.  
  6850.  
  6851.  
  6852.  
  6853.  
  6854.  
  6855.  
  6856.                                    - 102 -
  6857.                                 ┌───────────┐
  6858.                                 │ Main Menu │
  6859.                                 └─────┬─────┘
  6860.                         ┌─────────────┴─────────────┐
  6861.               ┌─────────┴─────────┐       ┌─────────┴─────────┐
  6862.               │ Cooking Menu      │       │ DTP Menu          │
  6863.               └─────────┬─────────┘       └─────────┬─────────┘
  6864.               ┌─────────┴─────────┐       ┌─────────┴─────────┐
  6865.               │ Cooking Messages  │       │ DTP Messages      │
  6866.               └─────────┬─────────┘       └─────────┬─────────┘
  6867.               ┌─────────┴─────────┐       ┌─────────┴─────────┐
  6868.               │ Cooking Files     │       │ DTP Files         │
  6869.               └───────────────────┘       └───────────────────┘
  6870.            
  6871.           In the above example, two sub-sections are defined off the
  6872.           Main Menu.  Each is dedicated to its own subject.  Users
  6873.           interested in the DTP subject need only enter the DTP sub-
  6874.           section from the Main Menu.  There they will have access to
  6875.           both the DTP message and file areas.  The same goes for the
  6876.           Cooking sub-section.  While this type of topology is easy to
  6877.           use, it requires a little extra effort in the maintenance
  6878.           department if there are many subjects to support.
  6879.  
  6880.           Whether you decide to use a functional or subjective menu
  6881.           topology, or even a completely different approach, you can
  6882.           see the importance of planning your menu system.  The fact
  6883.           that you can implement just about any menu design, indicates
  6884.           the power and potential that RemoteAccess has to offer.  The
  6885.           sections that follow will detail the menu tools available
  6886.           which will help you to design and implement a powerful menu
  6887.           system.
  6888.  
  6889.  
  6890.  
  6891.  
  6892.  
  6893.  
  6894.  
  6895.  
  6896.  
  6897.  
  6898.  
  6899.  
  6900.  
  6901.  
  6902.  
  6903.  
  6904.  
  6905.  
  6906.  
  6907.  
  6908.  
  6909.  
  6910.  
  6911.  
  6912.  
  6913.  
  6914.  
  6915.  
  6916.  
  6917.  
  6918.  
  6919.  
  6920.                                    - 103 -
  6921.           AUTOMATIC COMMANDS
  6922.  
  6923.           A menu function is usually executed when a user presses the
  6924.           hot-key assigned to that particular menu item.  But menu
  6925.           functions can also be executed automatically.  Each menu
  6926.           item contains an AutoExec field.  By default, this field is
  6927.           set to No, but by toggling it to Yes, the menu item can be
  6928.           made to execute when it is played back (displayed) by
  6929.           RemoteAccess.
  6930.  
  6931.           As you read through the menu function types outlined in this
  6932.           chapter, you may come to realize that this is a very
  6933.           powerful feature.  For example, when used with the menu
  6934.           function that displays a text file, you can design very
  6935.           elaborate, graphical text file menus that you wouldn't
  6936.           normally be able to display in a line-by-line menu.
  6937.  
  6938.           With RemoteAccess, you can determine whether or not users
  6939.           can turn off hot-keys on a system-wide or per-user basis.
  6940.           When hot-keys are not active, the user is said to have
  6941.           command stacking enabled.  How this feature interacts with a
  6942.           user whose hot-keys are not activated is a bit tricky and
  6943.           should be noted.
  6944.  
  6945.           With hot-keys active, the user selects menu commands simply
  6946.           by pressing the hot-key assigned to a given menu item. When
  6947.           this is done, any text that is being displayed is
  6948.           interrupted and the command associated with the hot-key is
  6949.           executed immediately.  With hot-keys disabled (command
  6950.           stacking mode), the user is required to press the hot-key
  6951.           followed by pressing <ENTER>.  Additionally, when a user is
  6952.           in command stacking mode, several commands may be entered at
  6953.           once followed by pressing the <ENTER> key.  This allows a
  6954.           user to pass through menus to get right to a specific
  6955.           command.  This requires the user to be familiar with the
  6956.           menu structure of the system which usually doesn't take the
  6957.           user long to do.
  6958.  
  6959.  
  6960.  
  6961.  
  6962.  
  6963.  
  6964.  
  6965.  
  6966.  
  6967.  
  6968.  
  6969.  
  6970.  
  6971.  
  6972.  
  6973.  
  6974.  
  6975.  
  6976.  
  6977.  
  6978.  
  6979.  
  6980.  
  6981.  
  6982.  
  6983.  
  6984.                                    - 104 -
  6985.           When a user passes through a menu by using stacked menu
  6986.           commands, you can still control how your menu system will
  6987.           react.  In some cases you may want an automatic command to
  6988.           execute, for example to redirect the user to another menu.
  6989.           On the other hand, if the command is only for cosmetic
  6990.           purposes (perhaps a text file to display some user
  6991.           statistics), it would be better to skip the command and
  6992.           continue straight to the next menu.  The rule is that when
  6993.           command stacking is used to pass through a menu, the
  6994.           automatic menu command will only be executed;  a) if it is
  6995.           the first item in the menu and;  b) it is not a display text
  6996.           file type function.  So if you use automatic execution and
  6997.           allow users to disable hot-key functionality, you'll want to
  6998.           keep this rule in mind.
  6999.  
  7000.           Automatic execution can be used in many other instances as
  7001.           well.  Just to give you some ideas, it might be used to
  7002.           display a text file to users who have a security level equal
  7003.           to or greater than a certain level.  Or, it might be used to
  7004.           execute an external program for users who have certain
  7005.           access flags turned on.  Yet another use is to execute
  7006.           multiple function menus which are used to execute several
  7007.           functions when a single command key is entered.
  7008.  
  7009.           For example, let's suppose you run a voting booth as an
  7010.           external program and that you want to perform 3 separate
  7011.           functions each time the voting booth is selected from your
  7012.           menu.  You could create a new multiple function menu which
  7013.           contains 3 automatic menu commands:
  7014.           
  7015.           *    Create a log entry indicating that the user entered the 
  7016.                 voting booth.
  7017.           *    Run the external voting booth program.
  7018.           *    Return to MAINMENU.
  7019.           
  7020.           When a user selects the voting booth option from the
  7021.           MAINMENU, the multiple function menu is called (perhaps as a
  7022.           Gosub) which writes a log entry, runs the voting booth and
  7023.           returns to MAINMENU.
  7024.           
  7025.  
  7026.           TEMPLATES
  7027.  
  7028.           Another one of the advantages of RemoteAccess is that it
  7029.           gives the Sysop the flexibility of designing menus with the
  7030.           least amount of maintenance required.  Not long ago, it was
  7031.           necessary to have a separate menu for each message and file
  7032.           area.  In the past, this has led to Sysop tedium because
  7033.           Sysops were required to add a separate menu, for example, to
  7034.           add a message or file area.  The menu templating system
  7035.           alleviates this problem by allowing you to set up one menu
  7036.           that will act as a skeleton for all your message and file
  7037.           areas.
  7038.  
  7039.  
  7040.  
  7041.  
  7042.  
  7043.  
  7044.  
  7045.  
  7046.  
  7047.  
  7048.                                    - 105 -
  7049.           Four template variables are available for your use.  They
  7050.           are the /M, /MG, /F and /FG variables.  The /M variable
  7051.           represents the currently-selected message area.  The /MG
  7052.           variable represents the currently-selected message group.
  7053.           The /F variable represents the currently-selected file area.
  7054.           And finally, /FG represents the currently-selected file
  7055.           group.
  7056.  
  7057.           When referenced, these variables return a numeric value.
  7058.           Likewise, when these variables are modified, a numeric value
  7059.           must be assigned to them.  Template variables are used in
  7060.           conjunction with several message and file menu functions to
  7061.           indicate on which groups or areas the function is to be
  7062.           performed.
  7063.  
  7064.           Variables are simply labels which hold values assigned to
  7065.           them.  They can be referenced as well as modified.  They can
  7066.           also be used to change the way that certain menu functions
  7067.           operate.  Complete details are given in the appropriate menu
  7068.           function types listed later in this chapter.  For now, we
  7069.           will touch briefly on value assignments using the /M and /F
  7070.           variables.
  7071.  
  7072.           To install a value into one of these two template variables,
  7073.           simply specify /M=<area number> or /F=<area number> in the
  7074.           optional data field of a type 1, 2 or 4 menu command.  For
  7075.           example, let's say you set up a message area template menu
  7076.           called MSGMENU, and in this menu you had a number of menu
  7077.           items, each with its own functions relating to the message
  7078.           database.   An example is laid out in the following table:
  7079.           
  7080.           Key   Menu Function        Optional Data   Menu Type
  7081.           ────────────────────────────────────────────────────────────
  7082.           R     Read messages        /M              23
  7083.           S     Scan messages        /M              24
  7084.           Q     QuickScan messages   /M              25
  7085.           P     Post message         /M              27
  7086.           
  7087.           In this example, you'll notice a few things.  First, each
  7088.           function is specific to the message database and requires
  7089.           the message area to act upon in the optional data field.  We
  7090.           simply used /M in the optional data field to tell
  7091.           RemoteAccess to use the template variable which refers to
  7092.           the user's currently- selected message area.
  7093.  
  7094.           When the menu MSGMENU is called with /M in the optional data
  7095.           field, RemoteAccess knows which message area in which to
  7096.           perform these menu functions.  So to continue our example,
  7097.           let's say that you are calling MSGMENU from MAINMENU menu.
  7098.           It might look something like this:
  7099.           
  7100.           Key   Menu Function       Optional Data   Menu Type
  7101.           ────────────────────────────────────────────────────────────
  7102.           L     Goto Logoff Menu    LOGOFF          1
  7103.           M     Goto Message Menu   MSGMENU /M=1    1
  7104.  
  7105.  
  7106.  
  7107.  
  7108.  
  7109.  
  7110.  
  7111.  
  7112.                                    - 106 -
  7113.           By looking at this example, you can see that when a user
  7114.           presses the M key, the menu MSGMENU will be displayed and
  7115.           that all message database menu functions that refer to /M
  7116.           will perform their function on message area one.
  7117.  
  7118.           Now for a new twist!  You aren't required to set the value
  7119.           of the /M variable using the method in the previous table.
  7120.           When you omit the <area number>  assignment from the /M
  7121.           parameter, RemoteAccess uses the user's last-selected
  7122.           message area number.  If the user has never logged on
  7123.           before, this value will default to 1, or to the lowest
  7124.           message area number that the user has access to.  If the
  7125.           user has called before, RemoteAccess will remember the
  7126.           last-selected message area for that particular user and the
  7127.           value of  /M will be set to that area number.
  7128.  
  7129.           You are probably beginning to see why menu templates are so
  7130.           valuable.  Without the /M variable, you would need to
  7131.           specify a message area number in the optional data field of
  7132.           each of the message-base menu functions.  This would require
  7133.           a separate menu for each message area.  What a chore this
  7134.           would be!  By using the variable that stores the message
  7135.           area number, this requirement is obliterated and one message
  7136.           menu can be used for all message areas.
  7137.  
  7138.           This also applies to file areas as well.  The example just
  7139.           outlined applies directly to the manner in which file areas
  7140.           are handled.  But what about groups?  Now there is a
  7141.           completely different concept!  Continue reading the next
  7142.           section.
  7143.  
  7144.           
  7145.           MESSAGE AND FILE GROUPS
  7146.  
  7147.           The Configuration chapter outlined specific details on
  7148.           message and file group administration.  If for some reason
  7149.           you skipped that chapter, it is recommended that you read
  7150.           it after finishing this section if you plan to implement
  7151.           message or file groups.
  7152.  
  7153.           While this section does not attempt to fully explain how to
  7154.           implement groups, it does attempt to explain the concept of
  7155.           groups and how they might apply to your BBS.  The menu
  7156.           function types listing later in this chapter explains
  7157.           technically how menu functions which apply to groups are
  7158.           implemented. Message and file areas can belong to specific
  7159.           groups.  Users might have access to all message and file
  7160.           areas in one group but not another.    This allows logical
  7161.           partitioning of your BBS by group, or topic.
  7162.  
  7163.  
  7164.  
  7165.  
  7166.  
  7167.  
  7168.  
  7169.  
  7170.  
  7171.  
  7172.  
  7173.  
  7174.  
  7175.  
  7176.                                    - 107 -
  7177.           For example, let's say that your BBS will cater to two
  7178.           audiences; 1) professional programmers and; 2) computer game
  7179.           enthusiasts.  You might have three message and file areas
  7180.           dedicated to programming topics, and three message and file
  7181.           areas dedicated to computer gaming topics.  You might not
  7182.           want computer gaming enthusiasts to have access to the areas
  7183.           dedicated to professional programmers and vise versa.  In
  7184.           such a case, the message and file areas dedicated to each
  7185.           topic may be placed in their own group.  Each group may be
  7186.           configured separately to allow or disallow access to users
  7187.           of a given security level, or to users who meet specific
  7188.           access flag setting requirements.
  7189.  
  7190.           Additionally, an individual message or file area can belong
  7191.           to all groups, one specific group, or to one specific group
  7192.           and up to three alternate groups.  For instance, while a
  7193.           message area called Gaming appropriately belongs to the
  7194.           group dedicated to computer gaming enthusiasts, a message
  7195.           area called User to User E-Mail is an appropriate area for
  7196.           users in both groups. Therefore, the E-Mail message area may
  7197.           be configured as belonging to all groups, or it may be
  7198.           configured to belong primarily to group one and alternately
  7199.           to group two.  Each of these two types of configuration
  7200.           achieves the intended goal of allowing access to the message
  7201.           area to users in both groups.
  7202.  
  7203.           You should also keep in mind that if you decide not to
  7204.           implement groups during your initial setup, they can be
  7205.           added quite easily later on.  Your system's design can still
  7206.           be quite diverse without the use of groups.
  7207.  
  7208.  
  7209.           THE TOP MENU
  7210.  
  7211.           RemoteAccess uses one hard-coded menu called TOP.MNU. Each
  7212.           time a user completes the log-on process, the TOP menu is
  7213.           presented to the user.  If this menu does not exist,
  7214.           RemoteAccess cannot continue operation and will display an
  7215.           error message just before terminating the session.  The TOP
  7216.           menu can be the main menu, or as some Sysops prefer, it can
  7217.           be used simply as a means to call the first, or main menu.
  7218.           When installing RemoteAccess for the first time, the TOP
  7219.           menu that is created is a simple one-line menu.  The menu
  7220.           item it contains is an AutoExec entry which calls menu
  7221.           function type 1 - Goto another menu which executes a menu
  7222.           called MAINMENU.  The reason that the TOP menu is installed
  7223.           in this manner is to allow advanced behind the scenes
  7224.           functions to be processed in the TOP menu each time a user
  7225.           logs-on but before the main menu is displayed. For example,
  7226.           one Sysop runs an external program from the TOP menu each
  7227.           time a user logs-on.  This program reads the RemoteAccess
  7228.           exit files and performs functions such as verifying the
  7229.           user's phone number and address information. Then, when the
  7230.           program terminates, the TOP menu continues and executes a
  7231.           type 1 - Goto another menu which brings the user to the
  7232.           actual main menu.
  7233.  
  7234.  
  7235.  
  7236.  
  7237.  
  7238.  
  7239.  
  7240.                                    - 108 -
  7241.           To summarize, the TOP menu must exist and can be used as the
  7242.           main system menu if that's what you prefer.  It can be used
  7243.           to execute behind the scenes functions, or just to call the
  7244.           main menu, or as the first menu a user sees.
  7245.           
  7246.  
  7247.           SPECIAL SWITCHES
  7248.  
  7249.           As you'll learn in the sections that follow, each menu item
  7250.           contains an optional data field used to manipulate the way
  7251.           in which certain menu functions are executed.  You should
  7252.           know going in, that there are two special switches which may
  7253.           be placed at the end of the optional data field for any menu
  7254.           function.  They are:
  7255.           
  7256.           /NS    This switch suppresses the usual clear screen code
  7257.                  that is sent when a new menu is displayed.  This is
  7258.                  usually only useful when used with a menu
  7259.                  navigation (GOTO, GOSUB, etc.) command.  This
  7260.                  switch is known to have been used on systems
  7261.                  where ANSI graphic pull down menus were
  7262.                  implemented and screen clearing needed to be
  7263.                  suppressed regardless of the caller's screen clearing
  7264.                  setting.  It is also useful where menu prompts
  7265.                  follow one another in succession without clearing
  7266.                  the screen.
  7267.           
  7268.           
  7269.           /K=xxx This switch places the specified text <xxx> into the
  7270.                  user's input buffer to be processed exactly as if it
  7271.                  had been entered by the user as a stacked
  7272.                  command.  This is an extremely powerful facility
  7273.                  which can be used to link a number of menu
  7274.                  commands together and customize a large number
  7275.                  of hard-coded selection menus. {+} Registered only.
  7276.           
  7277.           
  7278.           GLOBAL MENU
  7279.  
  7280.           It is likely that there are some commands that you will want
  7281.           to have available from every menu that your users see.
  7282.           Rather than duplicating these menu functions in every menu,
  7283.           you can simply place them by themselves in a menu called
  7284.           GLOBALRA.  RemoteAccess searches for this special menu, and
  7285.           if it exists, automatically appends it to the end of every
  7286.           menu.
  7287.  
  7288.           RemoteAccess appends the global menu in its entirety.  In
  7289.           other words, it appends not only the commands but any
  7290.           visible text as well.  Additionally, the global menu will
  7291.           always inherit the highlight colors of the current menu that
  7292.           it is appended to. For example, if you wanted to offer the
  7293.           user a log-off command from every menu, you could simply
  7294.           place this command in the global menu, including the text
  7295.           displayed to the user. {+} Registered only.
  7296.           
  7297.  
  7298.  
  7299.  
  7300.  
  7301.  
  7302.  
  7303.  
  7304.                                    - 109 -
  7305.           CREATING MENUS
  7306.  
  7307.           Earlier in this chapter, we summarized menu layouts and how
  7308.           important it is to plan your menu system.  You learned about
  7309.           various features such as templates, special switches and the
  7310.           global menu.  Now it's time to put what you've learned to
  7311.           use in creating your own menus.
  7312.  
  7313.           When you installed RemoteAccess, a set of initial, default
  7314.           menus were placed onto your system.  If you decide to use
  7315.           these menus, then perhaps all you need to do is edit them to
  7316.           suit your tastes and needs.  If you would rather start your
  7317.           menu system from scratch, you will probably want to delete
  7318.           the default menus from your system.  To do this, follow the
  7319.           check-list procedure below:
  7320.           
  7321.           1)    Change to the menu directory (usually \RA\MENUS).
  7322.           
  7323.                 CD \RA\MENUS <ENTER>
  7324.           
  7325.           2)    Delete all menu files in this directory.
  7326.           
  7327.                 DEL *.MNU <ENTER>
  7328.           
  7329.           3)    Change to the RemoteAccess system directory.
  7330.           
  7331.                 CD \RA <ENTER>
  7332.           
  7333.           4)    Fire up RACONFIG.
  7334.           
  7335.                 RACONFIG <ENTER>
  7336.           
  7337.           5)    Once in RACONFIG, select:
  7338.           
  7339.                 Manager > Menus
  7340.           
  7341.                 This will take you into the RemoteAccess menu editing
  7342.           portion of RACONFIG.
  7343.           
  7344.           The first screen displayed is the language pick-list menu.
  7345.           In most cases, you will only have one language to select
  7346.           from.
  7347.           
  7348.           Use the UPand DOWN keys to move the cursor-bar to the
  7349.           language selection of your choice and then press <ENTER>.
  7350.           
  7351.           NOTE:  In most cases, you need only press <ENTER> to select
  7352.           the default language provided during your initial
  7353.           installation.
  7354.           
  7355.           The next screen that you will see is the menu pick-list.
  7356.           This is a pick list of all existing menus.  To edit an
  7357.           existing menu, you would simply position the cursor-bar on
  7358.           the desired menu name and press <ENTER>.
  7359.  
  7360.           To create a new menu, press the INSERT key.  Next, you will
  7361.           see the menu editing screen on your display.
  7362.  
  7363.  
  7364.  
  7365.  
  7366.  
  7367.  
  7368.                                    - 110 -
  7369.           As you will see, the menu is blank.  The name NONAME.MNU has
  7370.           been temporarily assigned as the menu name and is displayed
  7371.           in the upper-right corner.  You can give the menu a more
  7372.           meaningful name when you save it later.  For now, we will
  7373.           work with this default menu name.
  7374.  
  7375.           You will also notice a series of commands at the bottom of
  7376.           the display.  These commands are available while you're in
  7377.           this screen.  They are described in the following table:
  7378.           
  7379.           ENTER   Edit the currently selected menu item.
  7380.           
  7381.           
  7382.           INSERT  Insert a new menu item immediately before the
  7383.                   currently selected item.
  7384.           
  7385.           
  7386.           DELETE  Delete the currently selected menu item.
  7387.           
  7388.           ESCAPE  Exit the menu editor.
  7389.           
  7390.           
  7391.           ALT-L   Discard the current menu and load another from disk.
  7392.           
  7393.           ALT-S   Save the current menu to disk.
  7394.           
  7395.           ALT-P   View or modify the menu prompt, its display and
  7396.                   highlight colors as well as whether or not to
  7397.                   suppress all carriage-return, line-feed and color
  7398.                   change sequences.
  7399.           
  7400.                   This option allows you to define four settings that
  7401.                   are specific to this menu. They are:
  7402.           
  7403.                   *     The prompt that is to be displayed after this
  7404.                         menu.  Text file control codes as well as
  7405.                         control codes outlined later in this chapter
  7406.                         under the User Display field may be used
  7407.                         here.
  7408.           
  7409.                   *     The prompt display color to be used.
  7410.           
  7411.                   *     The prompt highlight color to be used.
  7412.           
  7413.                   *     Whether or not carriage-return, line-feed and
  7414.                         color change sequences will be disabled.  This
  7415.                         option supports non-native emulations which do
  7416.                         not support ANSI or AVATAR fallback, such as
  7417.                         NAPLPS and RIP.
  7418.           
  7419.           ALT-D   Simulate what the menu would look like to a user.
  7420.                   This handy option lets you take a peek at how your
  7421.                   menu will look.
  7422.           
  7423.           Press INSERT to create the first item in your new menu. When
  7424.           you do this, you will notice a change in the first line of
  7425.           your menu.  It has actually become a completely blank menu
  7426.           item.
  7427.  
  7428.  
  7429.  
  7430.  
  7431.  
  7432.                                    - 111 -
  7433.           Now edit the new item you've created.  Notice that the
  7434.           cursor-bar is already positioned on the new item.  (Press
  7435.           <ENTER> for the Edit Menu Item screen.)
  7436.  
  7437.           This is the editor used to edit all menu items.  As you can
  7438.           see, there are several fields that need explanation.  But
  7439.           first, take a look at the Edit Menu Item screen layout.
  7440.           
  7441.           The top portion of the display shows the user display text
  7442.           as well as the optional data fields.  A ruler is also
  7443.           displayed just above the user display text to aid you in
  7444.           formatting the text that is displayed to your users.
  7445.  
  7446.           The lower portion of the display shows a list of fields that
  7447.           may be edited along with data pertaining to each field.  Use
  7448.           the UP, DOWN and <ENTER> keys to select the fields you wish
  7449.           to edit. Edit the fields in sequence and discover the
  7450.           purpose of each one.
  7451.  
  7452.           
  7453.           Action
  7454.           ────────────────────────────────────────────────────────────
  7455.           The Action field determines what menu function will be
  7456.           performed by this particular menu item.  Move the cursor-bar
  7457.           to the Action field and press <ENTER>.  Upon doing so, the
  7458.           Menu Action Groups pick-list menu is displayed to make easy
  7459.           work of selecting a menu function.
  7460.           
  7461.           The default menu action group that is initially presented is
  7462.           the Menu Functions group since it is usually the group most
  7463.           commonly used.  Press <ESCAPE> to move to the Menu Action
  7464.           Groups pick-list.  Notice there are eight groups to choose
  7465.           from.  These are:
  7466.           
  7467.           Display only (no command)
  7468.  
  7469.           Selecting this function simply indicates that no actual
  7470.           function is to be performed and that the menu item is used
  7471.           solely for display purposes.
  7472.           
  7473.           Menu Functions
  7474.  
  7475.           This group contains a list of menu functions related to
  7476.           other menus.
  7477.           
  7478.           Display Text Files
  7479.  
  7480.           This group contains functions related to text file display.
  7481.           
  7482.           General System Options
  7483.  
  7484.           This group contains a pick-list of functions related to the
  7485.           overall system.
  7486.           
  7487.           Message-base Commands
  7488.  
  7489.           This group contains a pick-list of functions relating to the
  7490.           message system.
  7491.  
  7492.  
  7493.  
  7494.  
  7495.  
  7496.                                    - 112 -
  7497.           File-area Commands
  7498.  
  7499.           This group contains a list of function selections that
  7500.           pertain to the files system.
  7501.           
  7502.           External - Door, Exits
  7503.  
  7504.           This group contains a pick-list of functions relating to
  7505.           running external programs.
  7506.           
  7507.           Change User Options
  7508.  
  7509.           This group contains a pick-list of functions pertaining to
  7510.           user configuration.
  7511.           
  7512.           Using the UP, DOWN, <ENTER> and <ESCAPE> keys, you can
  7513.           navigate through the menu pick-lists.  Pressing <ESCAPE>
  7514.           returns you to the previous pick-list menu.
  7515.  
  7516.           Since the purpose of the TOP menu that you are creating is
  7517.           to simply call MAINMENU, you'll need to use menu function
  7518.           type 1 - Goto another menu.  The cursor-bar should already
  7519.           be positioned on this selection by default.  Therefore, just
  7520.           press <ENTER> to select this function.  You'll notice the
  7521.           Action field will now contain the menu function type that
  7522.           you just selected.
  7523.           
  7524.  
  7525.           User Display
  7526.           ────────────────────────────────────────────────────────────
  7527.           This field allows you to define what will be displayed to
  7528.           the user when this item is processed.  With the cursor-bar
  7529.           positioned on the Display field, press <ENTER>.
  7530.  
  7531.           You may enter text along with any valid text file control
  7532.           codes.  Text file control codes act as macros within display
  7533.           text and can be used to automatically display user and
  7534.           system data by embedding them in the text entered in this
  7535.           field.  Text file control codes are explained in detail in
  7536.           the External Support Files chapter.
  7537.  
  7538.           Text file control codes are preceded with a control
  7539.           character.  Whether the text file control code is a single
  7540.           or multiple-character code, the first code entered is always
  7541.           a control character.  Throughout this manual as well as in
  7542.           most computer-related documentation, control characters are
  7543.           illustrated in text as a capital letter preceded by the
  7544.           caret "^" character.  For example, a CTRL-A character is
  7545.           illustrated as ^A.
  7546.  
  7547.           The following two-step checklist explains how to enter a
  7548.           control code in the user display text:
  7549.           
  7550.           1)    While pressing the "Ctrl" key, press "P".  This prepares
  7551.           RACONFIG for the next, literal character.  After pressing
  7552.           this key combination, you will notice the cursor change in
  7553.           appearance from a line cursor to a block cursor.
  7554.  
  7555.  
  7556.  
  7557.  
  7558.  
  7559.  
  7560.                                    - 113 -
  7561.           2)    While pressing the "Ctrl" key, press the control
  7562.           character you wish to enter.  For example, to enter ^A as
  7563.           the control code (which prompts the user to press <ENTER>),
  7564.           you would press CTRL-A.  In the user display text, you will
  7565.           notice that the letter "A" has been highlighted, indicating
  7566.           that it is actually a ^A character.
  7567.           
  7568.           You'll learn more about specific text file control codes
  7569.           that can be used in this field in the chapter on External
  7570.           Support Files in this manual.
  7571.           
  7572.  
  7573.           Special User Display Characters
  7574.  
  7575.           In addition to the text file control codes that you can
  7576.           embed directly into user display text, a special set of
  7577.           control characters is also supported.  These characters are
  7578.           used to alter the way in which user display text is
  7579.           presented to the user.  They are also used to display
  7580.           specific system data. Take a look at each of the special
  7581.           characters and what data that each represents.
  7582.           
  7583.           Semicolon ";"
  7584.  
  7585.           After displaying the contents of the user display field,
  7586.           RemoteAccess normally moves the cursor down one line to
  7587.           prepare for the next menu item.  This is known as a
  7588.           carriage- return and line-feed sequence.  However, if you
  7589.           place the semicolon character at the end of the user display
  7590.           line, the user display text from the next menu item will be
  7591.           appended to the same line.  In other words, using the
  7592.           semicolon causes the carriage-return/line-feed sequence to
  7593.           be suppressed.
  7594.           
  7595.           Caret "^"
  7596.  
  7597.           The caret character switches between the normal line colors
  7598.           and the defined menu highlight color.  For example, to
  7599.           display the letter "G" using the highlight color specified
  7600.           for the current menu, you would enter ^G^ in the user
  7601.           display text.
  7602.  
  7603.           Tilde "~"
  7604.  
  7605.           The tilde character causes the user's time remaining today
  7606.           (in minutes) to be displayed at the current cursor location.
  7607.           This is handy when used within the menu prompt text. For
  7608.           example, if the menu prompt contents were:
  7609.           
  7610.                     Your Time: ^~ mins^  Command:
  7611.           
  7612.           The corresponding prompt that would be displayed would look
  7613.           something like this:
  7614.           
  7615.                     Your Time: 55 mins  Command: _
  7616.  
  7617.  
  7618.  
  7619.  
  7620.  
  7621.  
  7622.  
  7623.  
  7624.                                    - 114 -
  7625.           Each (at) "@"
  7626.  
  7627.           The each character (also known as the at character) expands
  7628.           to display the name of the currently-selected file template
  7629.           area as defined in RACONFIG.
  7630.           
  7631.           Accent "`"
  7632.           The accent character expands to display the name of the
  7633.           currently-selected message template area as defined in
  7634.           RACONFIG.
  7635.           
  7636.           NOTE:  This is not the apostrophe character.  It is usually
  7637.           located on the same key as the tilde character.
  7638.            
  7639.           Remember that in our example the TOP menu will be created,
  7640.           and that its sole purpose is to call a menu called MAINMENU.
  7641.           Now that you've experimented with the various user display
  7642.           characters, delete all text in the user display field and
  7643.           simply enter a semicolon.   Having done this, your TOP menu
  7644.           will display nothing to the user (not even a carriage-
  7645.           return line-feed sequence).
  7646.  
  7647.           
  7648.           Optional Data
  7649.           ────────────────────────────────────────────────────────────
  7650.           Position the cursor-bar and select the optional data field.
  7651.           You'll notice the cursor is repositioned in the upper
  7652.           portion of the screen.  This is where optional data is
  7653.           entered.  For our example menu item, the optional data
  7654.           required is the menu name to Goto.  For the sake of the
  7655.           example, type MAINMENU and press <ENTER>.
  7656.  
  7657.           Different menu function types require different optional
  7658.           data.  Consult the menu types listing in this chapter for
  7659.           optional data field information.
  7660.  
  7661.  
  7662.           Hot-Key
  7663.           ────────────────────────────────────────────────────────────
  7664.           This field is used to specify the key that is to activate this 
  7665.           menu item.  For example, if you wanted this menu item to be 
  7666.           executed when the user pressed A, simply enter A into this 
  7667.           field.
  7668.  
  7669.           ┌──────────────────────────────────────────────────────────┐
  7670.           │ Here's a Tip!                                            │
  7671.           │                                                          │
  7672.           │ It's possible to link a command to the <ENTER> key to    │
  7673.           │ create a "default" action for a menu.  This is done using│
  7674.           │ the ^M text file control code.  Enter CTRL-P followed by │
  7675.           │ CTRL-M in the Hot-Key field to use <ENTER> as a command  │
  7676.           │ hot-key.                                                 │
  7677.           └──────────────────────────────────────────────────────────┘
  7678.  
  7679.           Since our example item does not require the press of a key,
  7680.           leave this field blank.  If you've already entered a
  7681.           character, it can be removed by pressing the DELETE key.
  7682.           
  7683.  
  7684.  
  7685.  
  7686.  
  7687.  
  7688.                                    - 115 -
  7689.           AutoExec
  7690.           ────────────────────────────────────────────────────────────
  7691.           This field is used to indicate whether this particular menu
  7692.           item is to be executed automatically or if the user will be
  7693.           required to press the associated hot-key to select it.
  7694.  
  7695.           This field has two possible settings; Yes or No.  To change
  7696.           the current setting, position the cursor-bar on AutoExec and
  7697.           press <ENTER>.
  7698.  
  7699.           Toggle this field to Yes since our example calls for this
  7700.           menu item to be executed automatically.
  7701.           
  7702.  
  7703.           Color
  7704.           ────────────────────────────────────────────────────────────
  7705.           This field allows you to define the foreground and
  7706.           background colors of the text that is displayed to the user.
  7707.  
  7708.           Selecting this field presents a color chart pick-list menu.
  7709.           The initial color of a new menu item is black on black.  Use
  7710.           the cursor keys to move the selector around the chart.  When
  7711.           you find a color combination that suits you, press <ENTER>
  7712.           to select it.
  7713.  
  7714.           You probably noticed the small indicator at the bottom of
  7715.           the color chart.  This indicator displays the background and
  7716.           foreground color numbers of the current selector position in
  7717.           hexadecimal format.
  7718.  
  7719.           After selecting the color combination, the Edit Menu Item
  7720.           screen displays an example of your selection so that you can
  7721.           see how the displayed text will appear to your users.
  7722.  
  7723.           For the sake of our example, it doesn't matter which colors
  7724.           you use since this menu item will not display any text to
  7725.           the user.
  7726.           
  7727.  
  7728.           MinSec
  7729.           ────────────────────────────────────────────────────────────
  7730.           This field is used to define the minimum security level
  7731.           required for the user to see and select this menu item. For
  7732.           example, if you wanted this item to be available only to
  7733.           users with a security level of 100 or more, you would set
  7734.           this field to a value of 100.
  7735.  
  7736.           In our example, you'll want all users to be able to get to
  7737.           the main menu.  Therefore, set a security level of zero here
  7738.           (which is the default value).
  7739.           
  7740.  
  7741.  
  7742.  
  7743.  
  7744.  
  7745.  
  7746.  
  7747.  
  7748.  
  7749.  
  7750.  
  7751.  
  7752.                                    - 116 -
  7753.           MaxSec
  7754.           ────────────────────────────────────────────────────────────
  7755.           This field is used to define the maximum security level
  7756.           required to see and select this menu item.   When used
  7757.           together with MinSec you can effectively create menu items
  7758.           that can only be seen and accessed by users of a given
  7759.           security level range.  Imagine the possibilities that this
  7760.           presents in terms of customization.
  7761.  
  7762.           If you're following along with our example, leave this field
  7763.           set to zero since you won't need to restrict it in any way.
  7764.           
  7765.  
  7766.           Flags
  7767.           ────────────────────────────────────────────────────────────
  7768.           The access flags in a menu item function just as they do in
  7769.           other areas of RemoteAccess (i.e. message and file area
  7770.           access). You can restrict menu items not only to users who
  7771.           have a security level that falls in the range defined by
  7772.           MinSec and MaxSec, but also to users who have specific
  7773.           access flag settings.
  7774.  
  7775.           For example, if you wanted a menu item to be available only
  7776.           to users with access flag A1 set to ON,  position the
  7777.           cursor-bar on A Flags and press <ENTER>.   From the
  7778.           pick-list of access flags, select the flag you wish to
  7779.           change (the A Flag in this case) and press <ENTER>.  You'll
  7780.           notice that the flag toggles to one of three possible
  7781.           states; "X" (ON), "O" (OFF), or "-" (ON or OFF).  Press
  7782.           <ESCAPE> when you are satisfied with the flag settings. When
  7783.           a flag is set to X or O, users must have the same flag
  7784.           setting stored in their user account record in order to view
  7785.           or select the menu item.
  7786.  
  7787.           If you skipped the section on Access Flags in the
  7788.           Configuration chapter, it is recommended that you read it to
  7789.           gain at least a basic understanding of how flags are used.
  7790.           Many Sysops never have a need to use access flags and you
  7791.           may never need them either.  But if you understand how they
  7792.           function, it might help you to better plan your system.
  7793.  
  7794.           For the sake of our example, move the cursor-bar past the
  7795.           four flag fields since none of these needs to be set.
  7796.           
  7797.           
  7798.           TimeUsed
  7799.           ────────────────────────────────────────────────────────────
  7800.           This field is used to define the number of minutes that a
  7801.           user must be logged-on before the menu item can be selected.
  7802.           In cases where external programs such as time banks are
  7803.           used, this setting can be used to discourage users from
  7804.           logging-on solely for the purposes of storing their daily
  7805.           time and/or download limits.
  7806.  
  7807.           For example, if this field was set to a value of 5, a user
  7808.           would be required to be logged-on for at least 5 minutes
  7809.           before being able to select this menu item.
  7810.  
  7811.           If you're following along with our example, leave this field
  7812.           set to zero since you won't need to restrict it in any way.
  7813.  
  7814.  
  7815.  
  7816.                                    - 117 -
  7817.           TimeLeft
  7818.           ────────────────────────────────────────────────────────────
  7819.           This field allows you to define the minimum amount of time
  7820.           (in minutes) that a user is required to have remaining in
  7821.           order to select this menu item.  A practical application for
  7822.           this field may be when the menu item is used to load an
  7823.           external program such as an on-line game where there would
  7824.           not be enough time left for the user to effectively play the
  7825.           game. For example, if this field was set to a value of 5, a
  7826.           user would be required to have at least 5 minutes remaining
  7827.           in order to access this menu item.
  7828.  
  7829.           If you're following along with our example, leave this field
  7830.           set to zero since you won't need to restrict it in any way.
  7831.           
  7832.  
  7833.           Age
  7834.           ────────────────────────────────────────────────────────────
  7835.           This field allows you to restrict a menu item to users of at
  7836.           least a certain age.  If you have your system configured to
  7837.           prompt users for their date of birth, it is possible for
  7838.           RemoteAccess to calculate the user's age and compare it to
  7839.           the value of this field.
  7840.  
  7841.           For example, if this field is set to a value of 18, then no
  7842.           user whose date of birth calculates to less than 18 years of
  7843.           age will be able to access this menu item.
  7844.  
  7845.           If you're following along with our example, leave this field
  7846.           set to zero since you won't need to restrict it in any way.
  7847.           
  7848.           NOTE:  In order for RemoteAccess to calculate a user's age,
  7849.           it must know the user's date of birth.  To require your
  7850.           users to enter their date of birth, activate the option in
  7851.           RACONFIG:
  7852.           
  7853.                        Options > New Users > Birthdate
  7854.  
  7855.           
  7856.           MinSpeed
  7857.           ────────────────────────────────────────────────────────────
  7858.           This field is used to restrict menu items to calls that are
  7859.           established at a minimum BPS rate.  This is great for
  7860.           restricting only certain functions (such as file
  7861.           downloading) to users who are connected at faster speeds.
  7862.  
  7863.           For example, to restrict a menu item to users connected at a
  7864.           minimum of 2400 BPS, set this field to a value of 2400. If
  7865.           you're following along with our example, leave this field
  7866.           set to zero since you won't need to restrict it in any way.
  7867.  
  7868.  
  7869.  
  7870.  
  7871.  
  7872.  
  7873.  
  7874.  
  7875.  
  7876.  
  7877.  
  7878.  
  7879.  
  7880.                                    - 118 -
  7881.           MaxSpeed
  7882.           ────────────────────────────────────────────────────────────
  7883.           The opposite of MinSpeed, this field is used to restrict
  7884.           access to a menu item to callers of up to a given BPS rate.
  7885.           For example, if this field was set to a value of 2400, any
  7886.           user connected at a BPS rate of greater than 2400 would not
  7887.           be allowed access to this menu item.
  7888.  
  7889.           If you're following along with our example, leave this field
  7890.           set to zero since you won't need to restrict it in any way.
  7891.           
  7892.  
  7893.           Credit
  7894.           ────────────────────────────────────────────────────────────
  7895.           This field is used to restrict access to users who have a
  7896.           minimum amount of credit on account.  The value specified
  7897.           here is not deducted from the user's current credit amount.
  7898.           It is used simply to restrict access based on the user's
  7899.           existing credit amount.
  7900.  
  7901.           For example, if a menu item had a cost of 10 credits
  7902.           associated with it and a user had 8 credits remaining on
  7903.           account, you might want to restrict access to that menu item
  7904.           to prevent the user from using more credits than what is on
  7905.           account.
  7906.  
  7907.           When post billing is used, it is generally acceptable for
  7908.           users to accrue negative credit amounts.  However in cases
  7909.           where post billing is not used, this option should be
  7910.           considered.
  7911.  
  7912.           If you're following along with our example, leave this field
  7913.           set to zero since you won't need to restrict it in any way.
  7914.           
  7915.  
  7916.           FlatCost
  7917.           ────────────────────────────────────────────────────────────
  7918.           This field is used to specify the amount of credits, if any,
  7919.           that should be deducted from the user's account each time
  7920.           this menu item is selected.  If the user has less than the
  7921.           specified amount of credits remaining, the user will accrue
  7922.           a negative credit amount.
  7923.  
  7924.           If you're following along with our example, leave this field
  7925.           set to zero since you won't need to restrict it in any way.
  7926.           
  7927.  
  7928.           TimeCost
  7929.           ────────────────────────────────────────────────────────────
  7930.           This field is used to specify the amount of credits, if any,
  7931.           that should be deducted for each minute that the caller uses
  7932.           this menu item.  RemoteAccess begins timing when the menu
  7933.           item is selected and stops timing when the menu is
  7934.           redisplayed.
  7935.  
  7936.           For example, to deduct 1 credit for each minute that a menu
  7937.           item is used, set this field to a value of 1.
  7938.  
  7939.           If you're following along with our example, leave this field
  7940.           set to zero since you won't need to restrict it in any way.
  7941.  
  7942.  
  7943.  
  7944.                                    - 119 -
  7945.           Terminal
  7946.           ────────────────────────────────────────────────────────────
  7947.           Use this field to restrict access to a menu item to callers
  7948.           who have a specific emulation enabled.  For example, if you
  7949.           were running an external program that did not detect a
  7950.           user's emulation and a minimum emulation of ANSI was
  7951.           required, you could set this option to ANS to restrict its
  7952.           use to callers with ANSI emulation enabled.  This would
  7953.           effectively prevent callers with no terminal emulation above
  7954.           ASCII text to select the menu item.
  7955.  
  7956.           By de-selecting both .ANS and .AVT in the pick-list menu,
  7957.           callers of any terminal emulation type will be allowed to
  7958.           select the menu item.  On the other hand, selecting both
  7959.           .ANS and .AVT allows users of either emulation type to
  7960.           select the menu item.
  7961.  
  7962.           If you're following along with our example, leave this field
  7963.           set to its default, unrestricted setting.
  7964.           
  7965.  
  7966.           Nodes
  7967.           ────────────────────────────────────────────────────────────
  7968.           This option lets you restrict a menu item to callers who are
  7969.           on a specific node or nodes.  RemoteAccess supports up to
  7970.           255 nodes.  Pressing <ENTER> on this field will present you
  7971.           with a large pick list of all node numbers.  To select or
  7972.           deselect a node, move the cursor-bar to the node number and
  7973.           press <SPACEBAR> to toggle it.  Selected nodes are indicated
  7974.           by a block character and all nodes are selected by default.
  7975.           Additionally, you may also select (tag) or de-select
  7976.           (un-tag) all nodes by pressing ALT-T or ALT-U.  Pressing
  7977.           <ESCAPE> or <ENTER> saves the current selection.
  7978.  
  7979.           If you're following our example, leave all nodes selected
  7980.           since you won't need to restrict this menu item in any way.
  7981.           
  7982.  
  7983.           Groups
  7984.           ────────────────────────────────────────────────────────────
  7985.           This option allows you to restrict a menu item to users of
  7986.           specified groups.  RemoteAccess supports up to 255 groups,
  7987.           all of which are selected by default.  The groups can be
  7988.           selected and de-selected in the same manner as explained
  7989.           under the Nodes option above.
  7990.  
  7991.           If you're following our example, leave all groups selected
  7992.           since you won't need to restrict this menu item in any way.
  7993.           
  7994.  
  7995.  
  7996.  
  7997.  
  7998.  
  7999.  
  8000.  
  8001.  
  8002.  
  8003.  
  8004.  
  8005.  
  8006.  
  8007.  
  8008.                                    - 120 -
  8009.           DayTimes
  8010.           ────────────────────────────────────────────────────────────
  8011.           This option is used to restrict a menu item so that it can
  8012.           only be selected during certain times of the day.  Pressing
  8013.           <ENTER> at this option will present you with a scheduler
  8014.           pick-list.  You can even restrict a menu item to certain
  8015.           times for each day of the week.  By default, a menu item is
  8016.           not restricted by time of day.
  8017.  
  8018.           If you're following our example, leave the day times set to
  8019.           their default values since you won't need to restrict this
  8020.           menu item in any way.
  8021.           
  8022.  
  8023.           If you've followed along with our example, you've probably 
  8024.           learned a great deal about the power and flexibility that 
  8025.           RemoteAccess lends to your menu system.  Your menu item 
  8026.           didn't utilize many of the options available but you should 
  8027.           have valid data in the following fields:
  8028.           
  8029.           *    Action (type 1 - Goto another menu)
  8030.           *    Display (a semicolon character)
  8031.           *    OptData (the menu name MAINMENU)
  8032.           *    AutoExec (should be set to Yes)
  8033.           
  8034.           Press <ESCAPE> to exit the Edit Menu Item screen and return
  8035.           to the main menu editor screen.  Press <ESCAPE> or A-S and
  8036.           when prompted for the filename to save, type TOP <ENTER>.
  8037.           You've now created a menu.  Granted, it was a lengthy process
  8038.           this time, however next time you'll be able to go through the
  8039.           steps much more quickly.
  8040.  
  8041.           You are now ready to create your first actionable menu.
  8042.           Remember to call it MAINMENU and have fun!
  8043.           
  8044.  
  8045.  
  8046.  
  8047.  
  8048.  
  8049.  
  8050.  
  8051.  
  8052.  
  8053.  
  8054.  
  8055.  
  8056.  
  8057.  
  8058.  
  8059.  
  8060.  
  8061.  
  8062.  
  8063.  
  8064.  
  8065.  
  8066.  
  8067.  
  8068.  
  8069.  
  8070.  
  8071.  
  8072.                                    - 121 -
  8073.           MENU TYPES LISTING
  8074.  
  8075.           This section describes each individual menu function type
  8076.           that is available.  Each menu type listed includes
  8077.           explanations of usage syntax and function description.  In
  8078.           many cases, a usage example is also provided.
  8079.  
  8080.           Certain symbols are used to describe variables and
  8081.           parameters throughout this section.  Take a moment to review
  8082.           these now so that you will better comprehend the material
  8083.           that follows.
  8084.           
  8085.           <variable>    Where the chevrons < > are used, you can
  8086.                         expect to find a required variable parameter.
  8087.                         Variables can be filenames, strings of
  8088.                         characters, or integer (numeric) values.
  8089.                         Substitute the variable between the chevrons
  8090.                         with a valid value.  Where chevrons are used,
  8091.                         the data is not optional.  It must be supplied.
  8092.               
  8093.           Example:    Optional data:  <menu name>
  8094.           
  8095.                         Substitute a valid menu name in place of
  8096.                         <menu name>.
  8097.           
  8098.           [parameter]   Where brackets [ ] are used, you can expect to
  8099.                         to find an optional parameter.  Optional
  8100.                         parameters are not required input.
  8101.           
  8102.           Example:     Optional data: <menu name> [password]
  8103.           
  8104.                         Substitute a valid menu name in place of
  8105.                         <menu name> (required input) and optionally
  8106.                         substitute a password to this menu in place of
  8107.                         [password].
  8108.           
  8109.           
  8110.           
  8111.           Type: 1
  8112.           Goto another menu
  8113.           ────────────────────────────────────────────────────────────
  8114.           Optional data:
  8115.  
  8116.           <menu name> [password] [/M=<message area|+|-|>|<]
  8117.           [/F=<file area|+|-|>|<]
  8118.           
  8119.           Description:
  8120.  
  8121.           This function causes RemoteAccess to jump to menu <menu
  8122.           name>.  If  a [password] is specified, the user will be
  8123.           prompted to enter a non-case-sensitive password before being
  8124.           allowed access to the menu.
  8125.           
  8126.           The <message area> and <file area> variables are used when
  8127.           assigning a value to the message and file area template
  8128.           variables (/M and /F).  Optionally, the + - > or <
  8129.           parameters can be specified instead of the <message area> or
  8130.           <file area> numbers.  These have the following effects:
  8131.  
  8132.  
  8133.  
  8134.  
  8135.  
  8136.                                    - 122 -
  8137.           +   Sets the currently selected message or file area to the
  8138.               next available area.
  8139.  
  8140.           -   Sets the currently selected message or file area to the
  8141.               previous area.
  8142.  
  8143.           >   Sets the currently selected message or file area to the
  8144.               next available area within the current group.
  8145.  
  8146.           <   Sets the currently selected message or file area to the
  8147.               previous area within the current group.
  8148.               
  8149.           Each of these options assigns the new area number to the /M
  8150.           or /F template variables.
  8151.           
  8152.           Examples:
  8153.  
  8154.           To jump to a menu called FILES:
  8155.           
  8156.               Optional data:  FILES
  8157.           
  8158.           To jump to a menu called MESSAGE and set the currently
  8159.           selected message area to 1:
  8160.               
  8161.               Optional data:  MESSAGE /M=1
  8162.           
  8163.           To jump to a menu called SYSOP and require a non-case-
  8164.           sensitive password of SECRET:
  8165.           
  8166.               Optional data:  SYSOP SECRET
  8167.           
  8168.           To jump to a menu called FILES, set the currently selected
  8169.           file area to 10, set the currently selected message area to
  8170.           10 and require a password of UNCLE:
  8171.           
  8172.               Optional data:  FILES UNCLE /M=10 /F=10
  8173.           
  8174.           To jump to a menu called MESSAGE and set the currently
  8175.           selected message area to the next available message area:
  8176.           
  8177.               Optional data:  MESSAGE /M=+
  8178.           
  8179.           To jump to a menu called FILES and set the currently
  8180.           selected file area to the previous area within the same file
  8181.           group:
  8182.           
  8183.               Optional data:  FILES /F=< 
  8184.           
  8185.           
  8186.  
  8187.  
  8188.  
  8189.  
  8190.  
  8191.  
  8192.  
  8193.  
  8194.  
  8195.  
  8196.  
  8197.  
  8198.  
  8199.  
  8200.                                    - 123 -
  8201.           Type: 2
  8202.           Gosub another menu
  8203.           ────────────────────────────────────────────────────────────
  8204.           Optional data:
  8205.  
  8206.           <menu name> [password] [/M=<message area|+|-|>|<]
  8207.           [/F=<file area|+|-|>|<]
  8208.           
  8209.           Description:
  8210.  
  8211.           This is identical in function to the type 1 with the
  8212.           exception that RemoteAccess saves the calling menu name on a
  8213.           stack, making it possible to return to the calling menu
  8214.           using a type 3 function.  All optional data parameters are
  8215.           the same as those used with menu function type 1.
  8216.           
  8217.           Example:
  8218.  
  8219.           This is a popular menu function which performs well when
  8220.           used consistently. Whenever you use this function, the
  8221.           current menu location is saved on a stack. Then, when a type
  8222.           3 function is executed (return from Gosub), RemoteAccess
  8223.           returns to the last menu that was put on the stack. You can
  8224.           look at a stack just as you would a stack of paper.  The
  8225.           last one placed onto the stack is on top and is therefore
  8226.           the first one pulled off the stack.
  8227.           
  8228.           This stacking allows you to nest menus.  It also allows you
  8229.           to easily return from menus without having to specify the
  8230.           <menu name> to return to.
  8231.            
  8232.           NOTE:  Menus called in this manner can be nested to a
  8233.           maximum of 50 levels.
  8234.           
  8235.           
  8236.           
  8237.           Type: 3
  8238.           Return from Gosub
  8239.           ────────────────────────────────────────────────────────────
  8240.           Optional data:     None.
  8241.           
  8242.           Description:
  8243.  
  8244.           This function is used to return to the last menu from which
  8245.           a Gosub (type 2) was used.  Keep in mind; this will return
  8246.           to the last menu that was saved on the stack by a Gosub
  8247.           function.
  8248.           
  8249.           Example:
  8250.  
  8251.           A user enters a menu called FILES from the MAINMENU menu via
  8252.           a type 2 Gosub function and then enters a menu called IBM,
  8253.           again using the type 2 Gosub function.  Once in the IBM
  8254.           menu, if the user executes a type 3 Return from Gosub
  8255.           function, the menu that the user will be returned to is the
  8256.           FILES menu.  If the user executes another type 3 Return from
  8257.           Gosub function, he will be returned to the TOP menu.
  8258.  
  8259.  
  8260.  
  8261.  
  8262.  
  8263.  
  8264.                                    - 124 -
  8265.           In this example, two menus were placed onto the stack.  Both
  8266.           menus were returned to using the type 3 function thereby
  8267.           clearing stack.
  8268.           
  8269.           
  8270.           Type: 4
  8271.           Goto menu after clearing menu stack
  8272.           ────────────────────────────────────────────────────────────
  8273.           Optional data:
  8274.  
  8275.           <menu name> [password] [/M=<message area|+|-|>|<]
  8276.           [/F=<file area|+|-|>|<]
  8277.           
  8278.           Description:
  8279.  
  8280.           This is identical in function to type 1, with the exception
  8281.           that before the specified menu is called, the menu stack is
  8282.           cleared. For this reason, you cannot use a type 3 function
  8283.           immediately after using this.
  8284.           
  8285.           All optional data parameters are the same as those used with
  8286.           the menu function type 1.
  8287.           
  8288.           
  8289.           Type: 5
  8290.           Display a .A?? text file
  8291.           ────────────────────────────────────────────────────────────
  8292.           Optional data:
  8293.  
  8294.           <1-8 character filename> [/BINARY]
  8295.           
  8296.           Description:
  8297.  
  8298.           This menu type will display a file from your text file
  8299.           directory (as defined in RACONFIG) to the user on-line.
  8300.           RemoteAccess will display the file specified in the optional
  8301.           data field using one of three filename extensions.  If the
  8302.           user has AVATAR codes enabled, RemoteAccess will display the
  8303.           file <filename.AVT> to the user. However, if <filename.AVT>
  8304.           is missing or the user does not have AVATAR enabled but does
  8305.           have ANSI enabled, the file <filename.ANS> will be
  8306.           displayed. Likewise, if the user has only ASCII enabled or
  8307.           both <filename.AVT> and <filename.ANS> are missing, the file
  8308.           <filename.ASC will be displayed.
  8309.            
  8310.           These files may contain any text or graphical information
  8311.           within the limitations of the text format.  For example, you
  8312.           cannot display ANSI color in an ASCII text file.  Along with
  8313.           text and graphics, it is also possible to display
  8314.           comprehensive system and user details by inserting special
  8315.           control codes in these files.  These codes are listed in the
  8316.           External Support Files chapter of this manual.
  8317.  
  8318.           If the optional /BINARY parameter is specified, the file
  8319.           will be transmitted with no translation at all.  For
  8320.           example, embedded control codes will not be interpreted when
  8321.           this parameter is specified.  If you use this parameter, it
  8322.           must be the last parameter in the optional data field.
  8323.           
  8324.  
  8325.  
  8326.  
  8327.  
  8328.                                    - 125 -
  8329.           Type: 6
  8330.           Bulletin Menu
  8331.           ────────────────────────────────────────────────────────────
  8332.           Optional data:
  8333.  
  8334.           <[path\] 1-7 character filename>
  8335.           
  8336.           Description:
  8337.  
  8338.           Displays the file <filename.A??> from the text file
  8339.           directory.  If an optional path is specified, RemoteAccess
  8340.           will search for all associated bulletin files in this path
  8341.           instead of the standard text file directory.
  8342.           
  8343.           Once <filename> is displayed, the user is prompted for a
  8344.           file suffix of (8 - length of <filename>) (thus the
  8345.           restriction of a 7- character filename in the optional data
  8346.           field).  The suffix is appended to the original filename
  8347.           specified and the .A?? file is then displayed as it would be
  8348.           using menu function type 45.
  8349.           
  8350.           This function is used to display a master bulletin file to
  8351.           the user.  It usually contains text and graphical
  8352.           information that depicts a list of bulletin choices that are
  8353.           available for selection.  In other words, this can be used
  8354.           as a main bulletin menu if you have more than one bulletin
  8355.           that you would like to make available to your users.
  8356.           
  8357.           Example:
  8358.  
  8359.           Optional data:  BULLETT
  8360.           
  8361.           As you can see, the 1-7 character filename specified in this
  8362.           example is BULLETT which is a 7-character filename.  Since
  8363.           the maximum length of a filename (not including the filename
  8364.           extension) is eight characters, the user will be required to
  8365.           enter a 1-character suffix.  If the filename specified in
  8366.           the optional data field was 5 characters in length, the user
  8367.           would be prompted to enter a 3-character suffix, and the
  8368.           <ENTER> key.
  8369.           
  8370.           Let's say, for the sake of example, that you'll offer two
  8371.           bulletin choices off your main bulletin menu BULLETT:
  8372.  
  8373.               ┌───────────────────────────────────────┐
  8374.               │ Select The Bulletin To View           │
  8375.               │                                       │
  8376.               │ 1)  Latest System News                │
  8377.               │ 2)  DTP News                          │
  8378.               │                                       │
  8379.               │ Bulletin to view (Enter = quit):      │
  8380.               └───────────────────────────────────────┘
  8381.  
  8382.           If the user presses 1, the filename BULLETT1.A?? is
  8383.           displayed.  If the user presses 2, the file BULLETT2.A?? is
  8384.           displayed.  If the user presses <ENTER> the BULLETT menu is
  8385.           exited.
  8386.  
  8387.  
  8388.  
  8389.  
  8390.  
  8391.  
  8392.                                    - 126 -
  8393.           NOTE:  If an invalid selection is made, the user will be
  8394.           prompted Press <ENTER> to continue: and the BULLETT file
  8395.           will be redisplayed.
  8396.           
  8397.           
  8398.           Type: 7
  8399.           Run an external program in a shell (Doors)
  8400.           ────────────────────────────────────────────────────────────
  8401.           Optional data:
  8402.  
  8403.           <command line> [control codes]
  8404.           
  8405.           Description:
  8406.  
  8407.           This function will run an external program, or door in a
  8408.           shell while the user is on-line. Examples range from on-line
  8409.           games to external file transfer programs and the like.
  8410.           (Refer also to menu function type 15-"Exit to DOS with
  8411.           errorlevel" for an alternative method of running external
  8412.           programs without shelling).  The full name of the program
  8413.           must be specified if it is a .EXE or .COM file.  To run one
  8414.           of these two types of programs, simply put the name of the
  8415.           program in the optional data field.  If you wish to call a
  8416.           batch file, this must be done via COMMAND.COM, the DOS
  8417.           memory-resident command line processor (an example is given
  8418.           below).
  8419.           
  8420.           Many programs require extra information to be passed on the
  8421.           command line. Therefore, the following control codes may be
  8422.           used.  In each case, the code is replaced by the value it
  8423.           represents.  See the examples listed below for usage syntax.
  8424.           
  8425.           Parameters:
  8426.  
  8427.           *A
  8428.           Write the user's handle (if any) in the DORINFO1.DEF exit
  8429.           file rather than the user's real name.
  8430.           
  8431.           *B
  8432.           User's BPS connection speed, or 0 if logged- on locally.
  8433.           
  8434.           *C
  8435.           Full path and name to COMMAND.COM.
  8436.           
  8437.           *D
  8438.           Forces RemoteAccess to generate the old-style DORINFO1.DEF
  8439.           exit file.  This format does not include the -R parameter in
  8440.           the baudrate field which is normally used to indicate an
  8441.           error-free connection.
  8442.           
  8443.           *F
  8444.           User's first name.
  8445.           
  8446.           *G
  8447.           The user's current ANSI graphics setting; 0=Off / 1=On.
  8448.  
  8449.  
  8450.  
  8451.  
  8452.  
  8453.  
  8454.  
  8455.  
  8456.                                    - 127 -
  8457.           *H
  8458.           Normally, the communications driver is de- initialized
  8459.           before running an external program in order to avoid
  8460.           possible conflicts between the driver and the external
  8461.           program.  Specifying this parameter leaves the driver hot,
  8462.           or active.
  8463.           
  8464.           *L
  8465.           User's last name.
  8466.           
  8467.           *M
  8468.           Activate the MemorySwap feature. RemoteAccess attempts to
  8469.           swap itself and all the memory it occupies to XMS and EMS
  8470.           memory (if available) or to disk, leaving only 3KB resident.
  8471.           This is ideal when running memory-hungry programs but takes
  8472.           a few seconds longer in order to perform the swap.  If the
  8473.           swap cannot be accomplished, RemoteAccess will attempt to
  8474.           load the program in a normal shell.
  8475.           
  8476.           NOTE:  Some programs cause memory fragmentation to occur and
  8477.           will not work with MemorySwap.  Some programs compiled in
  8478.           QuickBASIC, in particular have exhibited this problem.
  8479.                
  8480.           
  8481.           *N
  8482.           The current node number, as specified by the -N command line
  8483.           parameter when RemoteAccess was loaded.
  8484.           
  8485.           *Oxxx
  8486.           Override the BPS rate value passed on to the called program
  8487.           with xxx (for example, a locked BPS rate).
  8488.           
  8489.           *P
  8490.           Communications port being used (1 - 8).
  8491.           
  8492.           *R
  8493.           User's record number in the user file.
  8494.           
  8495.           *S<filename>
  8496.           Generates a custom exit file using the template filename
  8497.           <filename>.RAT which must be located in the system
  8498.           directory. This file contains any valid text file control
  8499.           codes (macros) as outlined in the External Support Files
  8500.           chapter of this manual.
  8501.               
  8502.           The file <filename> is the base filename. That is to say
  8503.           that when RemoteAccess reads the template file it looks for
  8504.           <base filename>.RAT.  When it writes the custom exit file
  8505.           created by this template, it writes the base filename
  8506.           without a filename extension.  It places the newly-created
  8507.           exit file in the directory where the EXITINFO.BBS exit file
  8508.           is stored.
  8509.           
  8510.           For example, if you specify a base filename of MYEXIT,
  8511.           RemoteAccess looks for the file MYEXIT.RAT in the system
  8512.           directory. When the custom exit file is written,
  8513.           RemoteAccess writes MYEXIT in the same directory where the
  8514.           EXITINFO.BBS file is stored.
  8515.  
  8516.  
  8517.  
  8518.  
  8519.  
  8520.                                    - 128 -
  8521.           *T
  8522.           Time remaining (in minutes) for the current call.
  8523.           
  8524.           *U<activity>
  8525.           When menu function type 52-"Who's On-line" list is executed,
  8526.           RemoteAccess reports the status of each user that is logged
  8527.           on.  If the user is running a program that was executed
  8528.           using types 7 or 15, the activity reported in the Status
  8529.           field is simply Door. This parameter allows you to define
  8530.           the activity that is to be displayed in the Status field.
  8531.           The text specified as <activity> must be 1 to 10 characters
  8532.           in length. {+} Registered only.
  8533.           
  8534.           *!
  8535.           Freeze the system timer for the duration of the shell.
  8536.           Useful for running external utilities like full-screen chat
  8537.           programs, or other programs where you do not want the user's
  8538.           time to decrement while in the shell.
  8539.  
  8540.           *#
  8541.           Turn off the Wants Chat indicator on return from the shell.
  8542.           This is to facilitate proper installation of external chat
  8543.           programs.
  8544.           
  8545.           *0 (zero)
  8546.           The full path to the currently selected file template area.
  8547.           
  8548.           *1
  8549.           The number of the currently selected template message area.
  8550.           
  8551.           In addition to the command-line information that can be
  8552.           passed, RemoteAccess also creates three data files before
  8553.           the shell.  These data files are called exit files which are
  8554.           sometimes referred to as drop files.  DORINFO1.DEF, which is
  8555.           a RBBS-compatible file, DOOR.SYS (52-line format) and
  8556.           EXITINFO.BBS, which contains an extremely comprehensive
  8557.           amount of system and user information, are created whenever
  8558.           a menu function type 7 or 15 is executed.  It should also be
  8559.           noted that all system files are written to and closed off
  8560.           before the shell is activated.  They are then reopened and
  8561.           scanned upon return from the shell.  This means that
  8562.           programs that modify system files (eg: USERS.BBS) can be run
  8563.           safely in a type 7 shell. RemoteAccess also supports
  8564.           Doorway's DOOR.SYS parameter file directly. Note that the
  8565.           external program must do its own time limit and carrier 
  8566.           detect monitoring in the event that the user does not exit
  8567.           from the program correctly.
  8568.  
  8569.  
  8570.  
  8571.  
  8572.  
  8573.  
  8574.  
  8575.  
  8576.  
  8577.  
  8578.  
  8579.  
  8580.  
  8581.  
  8582.  
  8583.  
  8584.                                    - 129 -
  8585.           Examples:
  8586.  
  8587.                 C:\RA\MAILSCAN.EXE *R *P *T
  8588.  
  8589.           Executes the external program MAILSCAN.EXE located in the
  8590.           C:\RA directory, and passes the user's record number (*R),
  8591.           communications port (*P) and time remaining for the current
  8592.           call (*T) on the command line.
  8593.  
  8594.               *C /C C:\RA\DOORS\TW2.BAT *N *M
  8595.  
  8596.           Executes the batch file (/C) TW2.BAT using the DOS memory
  8597.           resident command processor (*C), with the node number (*N)
  8598.           being passed to the batch file, and RemoteAccess swapping
  8599.           itself out of memory (*M).
  8600.           
  8601.           
  8602.               C:\RA\READ.EXE *R *UMsg_Read
  8603.  
  8604.           Executes the external program READ.EXE located in the C:\RA
  8605.           directory.  Passes the user's record number (*R) on the
  8606.           command line.  Also, when menu function type 52 is executed,
  8607.           RemoteAccess will display Msg_Read in the Status field.
  8608.           
  8609.           Example of *S (create exit file):
  8610.  
  8611.           By using the *S parameter, it is possible to generate a
  8612.           custom exit file, which in turn makes it possible for
  8613.           RemoteAccess to run almost any door program written for
  8614.           another BBS software package.  The custom exit file may
  8615.           contain any valid text file control codes.  An example of
  8616.           one such exit file might be:
  8617.           
  8618.                 ^FA
  8619.                 ^F3
  8620.                 ^FB
  8621.                 ^FX
  8622.                 ^KO
  8623.                 ^KW
  8624.           
  8625.           This example would create an exit file with the following
  8626.           information:
  8627.           
  8628.                 Full user name
  8629.                 Handle
  8630.                 Location
  8631.                 ANSI graphics setting
  8632.                 Minutes remaining today
  8633.                 Line number
  8634.            
  8635.           NOTE:  Remember, the caret character "^" indicates that the
  8636.           CTRL key should be held down while the next key is pressed.
  8637.           For instance, to enter ^FA you should press the CTRL and "F"
  8638.           keys together and then the "A" key by itself.
  8639.  
  8640.  
  8641.  
  8642.  
  8643.  
  8644.  
  8645.  
  8646.  
  8647.  
  8648.                                    - 130 -
  8649.           Exit File Formats
  8650.  
  8651.           The exit files created by menu function types 7 and 15 are
  8652.           described as follows:
  8653.           
  8654.           Filename:    DORINFO1.DEF
  8655.           Description:  A standard exit file created in the current
  8656.                         (node) directory.  This is a standard ASCII
  8657.                         text file and has the following format:
  8658.           
  8659.           Line 1:  System name
  8660.           Line 2:  Sysop first name
  8661.           Line 3:  Sysop last name
  8662.           Line 4:  Communications port in use (COM0 if local)
  8663.           Line 5:  Communications port settings:
  8664.                      BPS rate,parity,data bits,stop bits
  8665.                    The BPS rate is specified as 0 during local sessions
  8666.                    and is followed by the word BAUD.  During error-
  8667.                    free connects, the word BAUD is followed by -R.
  8668.                    The parity setting is always set to N for no parity.
  8669.                    The data bits are always set to 8 and the stop bits
  8670.                    are always set to 1.
  8671.           Line 6:  Reserved (always zero)
  8672.           Line 7:  User first name
  8673.           Line 8:  User last name
  8674.           Line 9:  User location
  8675.           Line 10: User emulation (0=ASCII, 1=ANSI, 2=AVATAR)
  8676.           Line 11: User security level
  8677.           Line 12: User time remaining (in minutes)
  8678.           
  8679.           Example DORINFO1.DEF:
  8680.           
  8681.                 REMOTE ACCESS CENTRAL
  8682.                 ANDREW
  8683.                 MILNER
  8684.                 COM1
  8685.                 19200 BAUD-R,N,8,1
  8686.                 0
  8687.                 JOHN
  8688.                 PARLIN
  8689.                 BROOKLYN CENTER, MN, USA
  8690.                 1
  8691.                 100
  8692.                 60
  8693.           
  8694.           Filename:    DOOR.SYS
  8695.           Description:  A standard exit file created in the current
  8696.                         (node) directory.  This is a standard ASCII
  8697.                         text file used by many external programs.
  8698.                         Although this exit file is extremely detailed
  8699.                         and includes information that cannot be
  8700.                         generated by every BBS type, efforts were made
  8701.                         to include as much information as possible.
  8702.                         The format RemoteAccess uses for this file is
  8703.                         as follows:
  8704.  
  8705.  
  8706.  
  8707.  
  8708.  
  8709.  
  8710.  
  8711.  
  8712.                                    - 131 -
  8713.           Line 1:  Communications port (COM0: if local)
  8714.           Line 2:  BPS rate
  8715.           Line 3:  Data bits
  8716.           Line 4:  Node number
  8717.           Line 5:  DTE rate (locked rate)
  8718.           Line 6:  Screen display (snoop) (Y=On N=Off)
  8719.           Line 7:  Printer toggle (Y=On N=Off)
  8720.           Line 8:  Page bell (Y=On N=Off)
  8721.           Line 9:  Caller alarm (Y=On N=Off)
  8722.           Line 10: User full name
  8723.           Line 11: User location
  8724.           Line 12: Home/voice telephone number
  8725.           Line 13: Work/data telephone number
  8726.           Line 14: Password (not displayed)
  8727.           Line 15: Security level
  8728.           Line 16: User's total number of calls to the system
  8729.           Line 17: User's last call date
  8730.           Line 18: Seconds remaining this call
  8731.           Line 19: Minutes remaining this call
  8732.           Line 20: Graphics mode (GR=ANSI, NG=ASCII)
  8733.           Line 21: Screen length
  8734.           Line 22: User mode (always set to N)
  8735.           Line 23: Always blank
  8736.           Line 24: Always blank
  8737.           Line 25: Subscription expiration date
  8738.           Line 26: User's record number
  8739.           Line 27: Default protocol
  8740.           Line 28: User's total number of uploads
  8741.           Line 29: User's total number of downloads
  8742.           Line 30: User's daily download kilobytes total
  8743.           Line 31: Daily download kilobyte limit
  8744.           Line 32: User's date of birth
  8745.           Line 33: Path to the user database files
  8746.           Line 34: Path to the message database files
  8747.           Line 35: Sysop full name
  8748.           Line 36: User's handle (alias)
  8749.           Line 37: Next event starting time
  8750.           Line 38: Error-free connection (Y=Yes N=No)
  8751.           Line 39: Always set to N
  8752.           Line 40: Always set to Y
  8753.           Line 41: Text color as defined in RACONFIG
  8754.           Line 42: Always set to 0
  8755.           Line 43: Last new files scan date
  8756.           Line 44: Time of this call
  8757.           Line 45: Time of last call
  8758.           Line 46: Always set to 32768
  8759.           Line 47: Number of files downloaded today
  8760.           Line 48: Total kilobytes uploaded
  8761.           Line 49: Total kilobytes downloaded
  8762.           Line 50: Comment stored in user record
  8763.           Line 51: Always set to 0
  8764.           Line 52: Total number of messages posted
  8765.  
  8766.  
  8767.  
  8768.  
  8769.  
  8770.  
  8771.  
  8772.  
  8773.  
  8774.  
  8775.  
  8776.                                    - 132 -
  8777.           Example DOOR.SYS:
  8778.           
  8779.                 COM1:
  8780.                 9600
  8781.                 8
  8782.                 1
  8783.                 19200
  8784.                 Y
  8785.                 N
  8786.                 N
  8787.                 Y
  8788.                 John Parlin
  8789.                 Brooklyn Center, MN, USA
  8790.                 012-345-6789
  8791.                 012-345-9876
  8792.                 100
  8793.                 379
  8794.                 04-19-93
  8795.                 18780
  8796.                 313
  8797.                 GR
  8798.                 24
  8799.                 N
  8800.                 12-31-93
  8801.                 0
  8802.                 Z
  8803.                 3
  8804.                 7
  8805.                 0
  8806.                 8192
  8807.                 03-25-60
  8808.                 \RA\MSGBASE\
  8809.                 \RA\MSGBASE\
  8810.                 Andrew Milner
  8811.                 Andrew Milner
  8812.                 01:55
  8813.                 Y
  8814.                 N
  8815.                 Y
  8816.                 7
  8817.                 0
  8818.                 04-19-93
  8819.                 14:37
  8820.                 07:30
  8821.                 32768
  8822.                 0
  8823.                 396
  8824.         580
  8825.         Regular user
  8826.         0
  8827.         296
  8828.           
  8829.  
  8830.  
  8831.  
  8832.  
  8833.  
  8834.  
  8835.  
  8836.  
  8837.  
  8838.  
  8839.  
  8840.                                    - 133 -
  8841.           Type: 8
  8842.           Product information
  8843.       ────────────────────────────────────────────────────────────
  8844.       Optional data:
  8845.  
  8846.       None
  8847.           
  8848.       Description:
  8849.  
  8850.       This function displays the RemoteAccess product information
  8851.       including the version number, copyright information and
  8852.       licensing information.  If a user is on-line remotely, the
  8853.       name and version of the communications driver in use is also
  8854.       displayed.
  8855.           
  8856.           
  8857.           Type: 9
  8858.           Terminate the session
  8859.       ────────────────────────────────────────────────────────────
  8860.       Optional data:
  8861.  
  8862.       None
  8863.           
  8864.       Description:
  8865.  
  8866.       This function displays the GOODBYE.?? text file from the
  8867.       text file directory and hangs up on the user by dropping the
  8868.       DTR signal to the modem.  To this end, make sure your
  8869.       modem's DTR line is not forced high continuously.
  8870.           
  8871.           
  8872.           Type: 10
  8873.           System usage graph
  8874.       ────────────────────────────────────────────────────────────
  8875.       Optional data:
  8876.  
  8877.       None
  8878.           
  8879.       Description:
  8880.  
  8881.       This displays a nicely-formatted, full- screen, auto-scaling
  8882.       graph that depicts system usage in terms of percentage of
  8883.       use per hour.  Each node keeps a separate system usage graph
  8884.       so you can see how busy each individual node is.  To reset
  8885.       this graph, delete the file TIMELOG.BBS from your system
  8886.       directory or, if you are running multi-node, from each node
  8887.       directory.
  8888.           
  8889.  
  8890.  
  8891.  
  8892.  
  8893.  
  8894.  
  8895.  
  8896.  
  8897.  
  8898.  
  8899.  
  8900.  
  8901.  
  8902.  
  8903.  
  8904.                                    - 134 -
  8905.           Type: 11
  8906.           Page System Operator for chat
  8907.       ────────────────────────────────────────────────────────────
  8908.       Optional data:
  8909.  
  8910.       [/P=alt page name] [paging string]
  8911.           
  8912.       Description:
  8913.  
  8914.       This function displays the text specified as [paging string]
  8915.       (i.e. Paging the Sysop. Please wait...) to the user and
  8916.       pages the Sysop for a chat by playing a paging tune on the
  8917.       local console.  If [paging string] is left blank, no message
  8918.       is displayed to the user prior to the page.
  8919.           
  8920.       A user-definable prompt may be displayed, prompting the user
  8921.       to enter a reason for requesting the chat if the Ask why
  8922.       option has been enabled in RACONFIG:
  8923.           
  8924.                           Options > Paging > Ask why
  8925.               
  8926.       After the user has entered a reason for requesting the chat,
  8927.       RemoteAccess checks the paging schedule to see if paging is
  8928.       allowed at the current time.
  8929.           
  8930.       While the paging tune is being played, a small menu will be
  8931.       presented to the Sysop on the local console.    From this
  8932.       menu, the Sysop may select "C" to chat with the user, or "A"
  8933.       to abort the page.
  8934.           
  8935.       The Sysop may break in for a chat with a user at any other
  8936.       time by pressing ALT-C. During a chat, the system timer is
  8937.       frozen, if specified in RACONFIG:
  8938.           
  8939.                           Options > Paging > Suspend
  8940.           
  8941.       The timer is re-started when the chat is terminated.    This
  8942.       prevents the user's time remaining from decrementing while
  8943.       chatting with the Sysop.  The Sysop may terminate chat mode
  8944.       at any time by pressing the <ESCAPE> key.
  8945.           
  8946.       While in chat mode, the Sysop may open a capture file to
  8947.       record all that is typed during the chat session, by
  8948.       pressing CTRL-A. Pressing CTRL-A a second time closes the
  8949.       capture file.  A capture file can be opened automatically
  8950.       each time chat mode is entered if the Auto log option is
  8951.       enabled in RACONFIG:
  8952.           
  8953.                          Options > Paging > Auto Log
  8954.  
  8955.  
  8956.  
  8957.  
  8958.  
  8959.  
  8960.  
  8961.  
  8962.  
  8963.  
  8964.  
  8965.  
  8966.  
  8967.  
  8968.                                    - 135 -
  8969.       The times at which a user is allowed to page the Sysop for a
  8970.       chat as well as the number of times a user may page the
  8971.       Sysop during one session are controlled in RACONFIG:
  8972.           
  8973.                                Options > Paging
  8974.           
  8975.       ┌─────────────────────────────────────────────────────────┐
  8976.       │ Here's a Tip!                                           │
  8977.       │                                │
  8978.       │ You can disable any sounds produced by RemoteAccess when│
  8979.       │ a user pages you.  Simply activate the SCROLL LOCK key  │
  8980.       │ to disable paging sounds. Paging functions operate        │
  8981.       │ normally, except that no sounds are produced while        │
  8982.       │ SCROLL LOCK is activated.                    │
  8983.       └─────────────────────────────────────────────────────────┘
  8984.  
  8985.       You can override the times at which users can page by
  8986.       pressing A-O while a user is on-line.
  8987.           
  8988.       When a page goes unanswered, users are prompted whether to
  8989.       leave a message to the Sysop.  If the user elects to do so,
  8990.       the reason for chat entered prior to the page is
  8991.       automatically inserted into the subject field of the
  8992.       message.
  8993.           
  8994.       The default paging tune is a constant beep- beep tone that
  8995.       lasts for the defined duration of the page.  You may define
  8996.       your own page tune by creating a text file called PAGE.RA in
  8997.       the system directory.  The following keywords are valid
  8998.       within the PAGE.RA text file:
  8999.           
  9000.                   TONE [hz] [1/100's second]
  9001.                   WAIT  [1/100's second]
  9002.            
  9003.       Additionally, you can use an alternate page file instead of
  9004.       PAGE.RA by specifying the [/P=page file] parameter.  This
  9005.       makes it possible to allow users with different security
  9006.       levels to have different sounding page tunes.
  9007.  
  9008.       The following table lists six musical octaves.  The correct
  9009.       frequency value associated with each note in an octave is
  9010.       also shown.
  9011.  
  9012.                                   O C T A V E
  9013.                Note   1      2      3      4      5      6
  9014.                C      45     134    268    536    1071   2145
  9015.                C#     71     142    284    568    1136   2273  F
  9016.                D      75     150    301    602    1204   2408  R
  9017.                D#     80     159    319    638    1275   2551  E
  9018.                E      84     169    338    676    1351   2703  Q
  9019.                F      90     179    358    716    1432   2864  U
  9020.                F#     95     190    379    758    1517   3034  E
  9021.                G      100    201    402    804    1607   3215  N
  9022.                G#     106    213    426    851    1703   3406  C
  9023.                A      113    225    451    902    1804   3608  Y
  9024.                A#     119    239    478    956    1991   3823
  9025.                B      127    253    506    1012   2035   4050
  9026.  
  9027.  
  9028.  
  9029.  
  9030.  
  9031.  
  9032.                                    - 136 -
  9033.       The RemoteAccess distribution package includes a sample
  9034.       PAGE.RA.  So if you're musically inclined, feel free to edit
  9035.       the sample file or, delete it if you'd prefer the default
  9036.       beep-beep tune.
  9037.           
  9038.       Examples:
  9039.  
  9040.         Menu Type:  11
  9041.               Optional Data:  Paging... Please wait...
  9042.           
  9043.       In this example, the text Paging... Please wait... is
  9044.       displayed to the user.  The default PAGE.RA file will be
  9045.       played, if it exists.  If it does not exist, a default
  9046.       beep-beep tune will be played.
  9047.           
  9048.               Menu Type:  11
  9049.               Optional Data:  /P=MYPAGE Paging Sysop
  9050.           
  9051.       In this example, the text Paging Sysop is displayed to the
  9052.       user.  Also, the page file MYPAGE.RA will be played instead
  9053.       of PAGE.RA.
  9054.           
  9055.       NOTE:  It is important to note that if an alternate page
  9056.       tune file is specified, it should be the first parameter
  9057.       specified in the optional data field.
  9058.           
  9059.           
  9060.           Type: 12
  9061.           Questionnaire
  9062.       ────────────────────────────────────────────────────────────
  9063.       Optional data:
  9064.  
  9065.       <1-8 character filename> [/N]
  9066.           
  9067.       Description:
  9068.  
  9069.       This function executes a questionnaire script file. The file
  9070.       <filename> is the base filename of the questionnaire file.
  9071.       That is to say that the filename extension should not be
  9072.       specified in the optional data field. The actual DOS
  9073.       filename of a questionnaire must have an extension of .Q-A
  9074.       and must reside in the directory specified in RACONFIG:
  9075.           
  9076.                Manager > Languages > Ques path
  9077.           
  9078.       Any information that is written to disk from within the
  9079.       questionnaire is stored in an answer file which is given the
  9080.       name <filename>.ASW.    Unlike the questionnaire file, answer
  9081.       files are stored in the RemoteAccess system directory.
  9082.           
  9083.       There is a full chapter dedicated to questionnaires later in
  9084.       this manual which includes:
  9085.           
  9086.           *    Complete script language definitions.
  9087.       *    Details on questionnaire (.Q-A) and answer (.ASW)
  9088.         files.
  9089.       *    Information on automatic questionnaires.
  9090.       *    Sample questionnaire scripts.
  9091.  
  9092.  
  9093.  
  9094.  
  9095.  
  9096.                                    - 137 -
  9097.       Normally, the execution of a questionnaire is recorded in
  9098.       the system log.  However, placing the /N parameter after the
  9099.       questionnaire filename in the optional data field will
  9100.       suppress this log entry.
  9101.           
  9102.           
  9103.           Type: 13
  9104.           User listing
  9105.       ────────────────────────────────────────────────────────────
  9106.       Optional data:
  9107.  
  9108.       [/G[=group]] [/H]
  9109.           
  9110.       Description:
  9111.  
  9112.       Displays a list of users in the user file.  It lists the
  9113.       user's name, location, file ratio, and the last time the
  9114.       user logged-on to the system.  This function has some basic
  9115.       pattern matching capabilities on the name field.
  9116.           
  9117.       By default, all users are listed.  However, if /G is
  9118.       specified in the optional data field, the user will only see
  9119.       users who are in the same group.  Note that this restriction
  9120.       does not apply to the Sysop who is always shown a complete
  9121.       user listing.
  9122.           
  9123.       Additionally, if the /G parameter includes a group
  9124.       assignment (/G=group) the user will only see users who are
  9125.       in the group number specified.
  9126.           
  9127.       If /H is specified in the optional data field, user handles
  9128.       will be displayed in place of user names.  If the user
  9129.       handle field is blank, the real name is displayed.
  9130.           
  9131.       The /G and /H options may be used at the same time to
  9132.       produce a group user listing by handle.
  9133.           
  9134.       Example:
  9135.  
  9136.         Optional data:    /G /H
  9137.           
  9138.       Lists users in the same group as the current user and
  9139.       displays user handles instead of user names.
  9140.           
  9141.               Optional data:  /G=1 
  9142.           
  9143.       Lists users in group one.
  9144.  
  9145.         Optional data:    None
  9146.           
  9147.       Lists all users in the user database.
  9148.           
  9149.  
  9150.  
  9151.  
  9152.  
  9153.  
  9154.  
  9155.  
  9156.  
  9157.  
  9158.  
  9159.  
  9160.                                    - 138 -
  9161.           Type: 14
  9162.           Time
  9163.       ────────────────────────────────────────────────────────────
  9164.       Optional data:
  9165.  
  9166.       None
  9167.           
  9168.       Description:
  9169.  
  9170.       This function displays the current date and time, along with
  9171.       the user's daily time limit, time used and time remaining
  9172.       for the day.
  9173.           
  9174.           
  9175.           Type: 15
  9176.           Exit to DOS with errorlevel
  9177.       ────────────────────────────────────────────────────────────
  9178.       Optional data:
  9179.  
  9180.       <errorlevel> [*A] [*D]
  9181.           
  9182.       Description:
  9183.  
  9184.       This function causes RemoteAccess to exit to DOS completely,
  9185.       returning an errorlevel to your BBS batch file.  The
  9186.       optional data field should contain the errorlevel that you
  9187.       wish to pass to the batch file.  The batch file should trap
  9188.       the errorlevel and act accordingly.
  9189.           
  9190.       If you use this exit while the user is still on- line, the
  9191.       user may be logged back into RemoteAccess using the command
  9192.       line parameter -R.  This forces RemoteAccess to read the
  9193.       EXITINFO.BBS file that was written at the time of the exit
  9194.       so that it can restore system and user information,
  9195.       presenting the user with the TOP menu.
  9196.            
  9197.       NOTE:  Errorlevels 0 through 5 are reserved for internal use
  9198.       by RemoteAccess.  For a complete description of these
  9199.       internal errorlevels and how they are used, see the
  9200.       Errorlevels section of the Reference chapter.
  9201.           
  9202.       There are two optional control code parameters that may be
  9203.       specified in the optional data field:
  9204.           
  9205.       *A
  9206.       Write the user's handle (alias) in the DORINFO1.DEF exit
  9207.       file, instead of the user's real name.
  9208.           
  9209.       *D
  9210.           Forces RemoteAccess to generate the old-style DORINFO1.DEF
  9211.       exit file.  This format does not include the -R parameter in
  9212.       the baudrate field which is normally used to indicate an
  9213.       error-free connection.
  9214.           
  9215.  
  9216.  
  9217.  
  9218.  
  9219.  
  9220.  
  9221.  
  9222.  
  9223.  
  9224.                                    - 139 -
  9225.           Type: 16
  9226.           Alter location
  9227.       ────────────────────────────────────────────────────────────
  9228.       Optional data:
  9229.  
  9230.       None
  9231.           
  9232.       Description:
  9233.  
  9234.       This function allows users to change the location field in
  9235.       their user account record.
  9236.           
  9237.           
  9238.           Type: 17
  9239.           Alter password
  9240.       ────────────────────────────────────────────────────────────
  9241.       Optional data:
  9242.  
  9243.       None
  9244.           
  9245.       Description:
  9246.  
  9247.       Allows users to change their log-on password.  Before users
  9248.       may change their passwords, they are first prompted to re-
  9249.       enter their current password for verficiation.  Frequent
  9250.       password changes should be encouraged to ensure system
  9251.       security.  In fact, there is an option to force users to
  9252.       change their passwords every certain number of log-ons, in
  9253.       RACONFIG:
  9254.           
  9255.                         Options > System > Pwd Change
  9256.           
  9257.           
  9258.           Type: 18
  9259.           Alter screen length
  9260.       ────────────────────────────────────────────────────────────
  9261.       Optional data:
  9262.  
  9263.       None
  9264.           
  9265.       Description:
  9266.  
  9267.       Allows users to alter the length of their screen display.
  9268.       This affects the page pausing prompt (i.e. Continue?) in
  9269.       that this prompt will appear every <screen length> number of
  9270.       lines during textual displays.
  9271.           
  9272.           
  9273.           Type: 19
  9274.           Toggle screen clearing
  9275.       ────────────────────────────────────────────────────────────
  9276.       Optional data:
  9277.  
  9278.       None
  9279.           
  9280.       Description:
  9281.  
  9282.       Allows users to specify whether screen clearing codes should
  9283.       be sent.
  9284.  
  9285.  
  9286.  
  9287.  
  9288.                                    - 140 -
  9289.           Type: 20
  9290.           Toggle page pausing
  9291.       ────────────────────────────────────────────────────────────
  9292.       Optional data:
  9293.  
  9294.       None
  9295.           
  9296.       Description:
  9297.  
  9298.       Allows users to enable or disable the page pausing prompt
  9299.       (i.e. Continue?) at the end of each screen page (as defined
  9300.       by the their screen length setting).
  9301.           
  9302.           
  9303.           Type: 21
  9304.           Toggle ANSI graphics
  9305.       ────────────────────────────────────────────────────────────
  9306.       Optional data:
  9307.  
  9308.       None
  9309.           
  9310.       Description:
  9311.  
  9312.       Allows users to enable or disable ANSI graphics emulation.
  9313.           
  9314.       NOTE:  If a user disables ANSI graphics and has the
  9315.       full-screen editor enabled, RemoteAccess will display a
  9316.       message stating that ANSI graphics are required by the
  9317.       full-screen editor.  The user will then be asked whether to
  9318.       continue to use the full-screen editor.  Although the
  9319.       full-screen message reader also uses ANSI and AVATAR control
  9320.       codes, it must be disabled manually if it is enabled when
  9321.       ANSI graphics are disabled.
  9322.           
  9323.           
  9324.           Type: 22
  9325.           Check mailbox for unread mail
  9326.       ────────────────────────────────────────────────────────────
  9327.       Optional data:
  9328.  
  9329.       None
  9330.           
  9331.       Description:
  9332.  
  9333.       This function checks to see if there is any unread mail
  9334.       addressed to the user.  This can be done automatically
  9335.       during the logon process when defined in RACONFIG:
  9336.           
  9337.                       Options > Messages > Logon Newmail
  9338.           
  9339.       Refer to the Configuration chapter for details on the two
  9340.       types of mail-checks that are available.
  9341.           
  9342.       All new messages are marked for later retrieval using the
  9343.       Read Marked option (see menu function type 23).
  9344.  
  9345.  
  9346.  
  9347.  
  9348.  
  9349.  
  9350.  
  9351.  
  9352.                                    - 141 -
  9353.       NOTE:  The user will only be notified of unread mail in
  9354.       areas to which the user has read access, as defined in
  9355.       RACONFIG:
  9356.           
  9357.                              Manager > Msg areas
  9358.           
  9359.       Although the system only prompts the user to Read mail now
  9360.       [Yes/no], (this can be changed using the language editor
  9361.       which is explained in the Configuration chapter), several
  9362.       commands can actually be used:
  9363.           
  9364.       Read
  9365.  
  9366.       Read the unread mail that has been found during the
  9367.       mail-check.
  9368.           
  9369.       Scan
  9370.  
  9371.       Scan the unread mail displaying a header description which
  9372.       includes Date, To, From and Subject fields.
  9373.           
  9374.       QuickScan
  9375.  
  9376.       Scan the unread mail displaying a brief listing of
  9377.       information including the From and Subject fields of each
  9378.       message.
  9379.           
  9380.       Kill
  9381.  
  9382.       Delete all unread mail without reading it.
  9383.           
  9384.       Received
  9385.  
  9386.       Mark all unread mail as received, without reading it.
  9387.           
  9388.           
  9389.           
  9390.           Type: 23
  9391.           Read messages
  9392.       ────────────────────────────────────────────────────────────
  9393.       Optional data:
  9394.  
  9395.       <message area # or /M>
  9396.           
  9397.       Description:
  9398.  
  9399.       This command initiates the message reading routines.    Before
  9400.       a user can read any message, RemoteAccess checks that the
  9401.       user has read access to the selected area. The <message area
  9402.       #> variable defines which message area number will be read.
  9403.       If a value of zero (0) is passed as <message area #>
  9404.       RemoteAccess will use the user's Combined settings to read
  9405.       messages in all areas that the user has configured.  This
  9406.       mode enables users to read messages by order of message area
  9407.       until the messages in the user's combined settings are
  9408.       exhausted. For more information, see menu function type
  9409.       28-Select combined areas and the Configuration chapter and
  9410.       RACONFIG:
  9411.  
  9412.  
  9413.  
  9414.  
  9415.  
  9416.                                    - 142 -
  9417.                               Manager > Combined
  9418.           
  9419.       If a /M is placed in the optional data field in place of the
  9420.       message area number, RemoteAccess will substitute it with
  9421.       the currently selected template message area (see the
  9422.       Templates section earlier in this chapter for details).
  9423.           
  9424.       After selecting this function, the user may select from
  9425.       eight different reading modes:
  9426.           
  9427.       Forward
  9428.  
  9429.       Read forward from the selected message number to the last
  9430.       message in the area.
  9431.           
  9432.       Reverse
  9433.  
  9434.       Read reverse from the selected message number to the first
  9435.       message in the area.
  9436.           
  9437.       Individual
  9438.  
  9439.       Read an individual message.  The user is prompted for the
  9440.       message number to read.
  9441.           
  9442.       Help
  9443.  
  9444.       Displays the text file MAILHELP.A?? to the user, if it
  9445.       exists (see the External Support Files chapter for details
  9446.       on this text file).
  9447.           
  9448.       New msgs
  9449.  
  9450.       Read new mail since the last time the user called.
  9451.           
  9452.       Selected
  9453.  
  9454.       Read messages by selected search criteria on the To, From or
  9455.       Subject fields.  This selection also allows you to read
  9456.       messages which contain a specific keyword within the message
  9457.       text.
  9458.           
  9459.       Quit
  9460.  
  9461.       Abort the message reading menu.
  9462.               
  9463.       The menu bar displayed at the end of each message also
  9464.       provides several options. Each of these options are
  9465.       explained below:
  9466.  
  9467.           -  Read previous reply.  RemoteAccess keeps track of reply
  9468.              chains which are strings of messages that pertain to the
  9469.              same subject. These messages are invisibly linked so that
  9470.              the user may read only those messages pertaining to a
  9471.              specific subject, quickly and easily.  The - and + keys
  9472.              are used in conjunction with this feature.
  9473.  
  9474.  
  9475.  
  9476.  
  9477.  
  9478.  
  9479.  
  9480.                                    - 143 -
  9481.           +  Read next reply.  Used in conjunction with the - key,
  9482.              this command allows the user to read the next message in
  9483.              this reply chain. See the explanation of the - key for
  9484.              complete details.
  9485.           
  9486.           A  Redisplays the last message.  This option is typically
  9487.              used in cases where the user may be experiencing
  9488.              telephone line noise.
  9489.           
  9490.           N  Reads the next message in progression. When the end of
  9491.              progression is reached, the message End of messages is
  9492.              displayed to the user.
  9493.           
  9494.           L  Reads the previous message read.  This option is only
  9495.              available when there is a message available for reading
  9496.              in reverse order.
  9497.           
  9498.           R  Post a reply to the message just read.  This option is
  9499.              identical to menu function type 27 -"Post message" with
  9500.              two exceptions; the "To" field of the new message is
  9501.              automatically filled with the name contained in the
  9502.              "From" field of the message being replied to and; the
  9503.              "Subject" field of the new message takes on the same
  9504.              value as that of the message being replied to.  The user
  9505.              is given the opportunity to change the "Subject" field
  9506.              during message entry.
  9507.           
  9508.              Upon saving the reply, the message is linked to the
  9509.              message thread pertaining to the thread subject.  If the
  9510.              + command was not previously available to the user, it is
  9511.              after this option is used.
  9512.           
  9513.           E  Enter a new message in the current area. Like the <ENTER>
  9514.              command, this option is identical to menu function 27
  9515.              except that the To and Subject fields are not
  9516.              automatically provided.
  9517.           
  9518.           F  Download files that are attached to the message.  If
  9519.              files have been attached to the message by the sender,
  9520.              this command will be seen by the receiver of the message.
  9521.              The user will also be notified of the attached files
  9522.              after the message header is displayed.
  9523.           
  9524.           D  Delete the displayed message.   Like menu function type
  9525.              26-"Delete message", this option allows the user to
  9526.              delete the message just read if certain criteria are met.
  9527.              Be sure to see the description of menu function type 26,
  9528.              where this powerful option is discussed in detail.
  9529.           
  9530.           S  Stop reading messages.  The user is returned to the point
  9531.              where the read function was initiated.
  9532.           
  9533.       In addition to those just outlined, the following options
  9534.       are available only to users who have Sysop access to the
  9535.       message area being processed:
  9536.  
  9537.  
  9538.  
  9539.  
  9540.  
  9541.  
  9542.  
  9543.  
  9544.                                    - 144 -
  9545.           !  Display ^A kludge lines which are normally hidden.  These
  9546.              lines contain message control information.  This is
  9547.              advanced information which is used by developers of
  9548.              message processing utilities.
  9549.           
  9550.           *  Edit the attributes of the current message. This option
  9551.              allows you to change a number of attributes related to
  9552.              the message that has just been read:
  9553.           
  9554.         Area no     Message area number.  Use this
  9555.                 option to move the message to another
  9556.                 message area.
  9557.               
  9558.         From        Change the From field of the message.
  9559.           
  9560.         To        Change the To field of the message.
  9561.           
  9562.         Subject     Change the Subject field of the message.
  9563.  
  9564.         Attributes  Allows you to toggle certain attributes,
  9565.                 or flags related to the message such as
  9566.                 Deleted, NetMail, Private, Received and
  9567.                 Local Flags.
  9568.           
  9569.         Exported    If the message is an EchoMail message,
  9570.                 this determines if the message has been
  9571.                 exported.  This is handy if you need
  9572.                 messages to be exported a second time
  9573.                 (i.e. a problem with a mail processor
  9574.                 occurs).
  9575.           
  9576.           X  Export the message to a file or to the printer.  This
  9577.              option allows you to capture a message to a DOS filename
  9578.              or to a connected printer.  If printer is selected, the
  9579.              message is output to the DOS standard device PRN.
  9580.           
  9581.           /  Forward the message to another user in any area.  When
  9582.              this command is executed, you will be prompted for the
  9583.              message area to forward the message in as well as other
  9584.              address information.  If forwarding to a NetMail area,
  9585.              RemoteAccess prompts for a destination network address in
  9586.              addition to other header information.
  9587.           
  9588.           =  Mark the message as unreceived and go on to the next
  9589.              message in progression.  This is a great option for
  9590.              Sysops who wish to save a message for later reading.  The
  9591.              message is marked as unreceived and will again be
  9592.              presented as a new message the next time a mail-check is
  9593.              done.
  9594.           
  9595.           U  Modify the security level of the user who posted the
  9596.              currently displayed message, provided the user is listed
  9597.              in the user file. This is another handy feature designed
  9598.              to make the Sysop's life easier and is great for on the
  9599.              fly user verification.  When selected, this command
  9600.              searches the user file for the name of the sender of the
  9601.              message.  If the name is found, the Sysop is prompted for
  9602.              the new security level to assign to the sender.
  9603.              {+} Registered only.
  9604.  
  9605.  
  9606.  
  9607.  
  9608.                                    - 145 -
  9609.              NOTE:  The user's security level being upgraded cannot be
  9610.              set to a level greater than that of the user doing the
  9611.              upgrading.
  9612.           
  9613.           
  9614.           Type: 24
  9615.           Scan messages
  9616.       ────────────────────────────────────────────────────────────
  9617.       Optional data:
  9618.  
  9619.       <message area # or /M>
  9620.           
  9621.       Description:
  9622.  
  9623.       This function accepts the same parameter variables as menu
  9624.       function type 23 just explained, except that only the
  9625.       message header of each message is displayed.    The user has
  9626.       the option of marking messages for later retrieval.
  9627.       Messages are retrieved simply by using the read message menu
  9628.       function type 23 and then selecting Marked messages.
  9629.           
  9630.           
  9631.           Type: 25
  9632.           QuickScan messages
  9633.       ────────────────────────────────────────────────────────────
  9634.       Optional data:
  9635.  
  9636.       <message area # or /M>
  9637.           
  9638.       Description:
  9639.  
  9640.       This function accepts the same parameter variables as menu
  9641.       function type 23 - Read messages, except that each message
  9642.       is listed as a single-line entry containing message number,
  9643.       sender of the message, who it is addressed to, and the
  9644.       subject field.
  9645.           
  9646.           
  9647.           Type: 26
  9648.           Delete message
  9649.       ────────────────────────────────────────────────────────────
  9650.       Optional data:
  9651.  
  9652.       </M or message area #>
  9653.           
  9654.       Description:
  9655.  
  9656.       Allows a user to delete a message in the currently selected
  9657.       message area (when /M is specified) or in <message area#>,
  9658.       when the following criteria are met:
  9659.           
  9660.       *    The user has Sysop access to the area the message is
  9661.         in, or...
  9662.           
  9663.       *    The message is in a Local or NetMail area and the user
  9664.         is the sender or recipient of the message and the
  9665.         message area is configured to allow users to delete
  9666.         messages, or...
  9667.  
  9668.  
  9669.  
  9670.  
  9671.  
  9672.                                    - 146 -
  9673.       *    The message is in an EchoMail message area and the
  9674.         user is the sender of the message and the message area
  9675.         is configured to allow users to delete messages and
  9676.         the message has not yet been exported from the
  9677.         message-base.
  9678.           
  9679.           
  9680.           Type: 27
  9681.           Post message
  9682.       ────────────────────────────────────────────────────────────
  9683.       Optional data:
  9684.  
  9685.       <area number or /M> [/T=<user_name>] [/U] [/H] [/L]
  9686.       [/N=zone:net/node.point]
  9687.           
  9688.       Description:
  9689.  
  9690.       This function posts a message in message area number <area
  9691.       number> (or the currently selected template message area if
  9692.       /M is specified).  The user must have either write or Sysop
  9693.       access to the message area as defined in RACONFIG.
  9694.               
  9695.       Specifying a message area number of zero forces RemoteAccess
  9696.       to display all message areas that the user has write access
  9697.       to and will prompt the user for the message area to post the
  9698.       message in.
  9699.           
  9700.       Normally, users are not permitted to post messages to
  9701.       non-existent users in a local message area.  However if the
  9702.       /U parameter is specified, this restriction can be
  9703.       overridden, giving the user the opportunity to browse the
  9704.       user list.
  9705.           
  9706.       To force the display handles only option while displaying
  9707.       the user list in conjunction with the /U parameter, simply
  9708.       include the /H parameter in the optional data field.
  9709.           
  9710.       The optional /L parameter will log the user off immediately
  9711.       after the message is saved (useful for menu options such as
  9712.       Leave message to Sysop before disconnecting?).
  9713.           
  9714.       The /T= parameter will force the message to be addressed to
  9715.       a <user_name>.  Simply place the user's name in the optional
  9716.       data field after the /T= parameter to select this option.
  9717.       You should note that any spaces in <user_name> must be
  9718.       replaced with the underscore character.
  9719.           
  9720.       The optional /N parameter will force the message to be
  9721.       directed to the network address specified as
  9722.       <zone:net/node.point> if the message is posted in a NetMail
  9723.       message area. {+} Registered only.
  9724.  
  9725.  
  9726.  
  9727.  
  9728.  
  9729.  
  9730.  
  9731.  
  9732.  
  9733.  
  9734.  
  9735.  
  9736.                                    - 147 -
  9737.           Users having access to the Group Mail feature may use any
  9738.           of the following macros in the To: field of a message:
  9739.  
  9740.           To Field      Action Description
  9741.           --------      ------------------
  9742.  
  9743.           @group        Post message to all users in group <group>
  9744.           @ALL          Post message to all users
  9745.           =security     Post message to all users with security
  9746.                         level equal to <security>
  9747.           >security     Post message to all users with security
  9748.                         level greater than <security>
  9749.           <security     Post message to all users with security
  9750.                         level less than <security>
  9751.  
  9752.           A separately addressed message is generated for each
  9753.           qualifying user. Therefore, large group mailings can take
  9754.           a while to process and can occupy a large amount of disk
  9755.           space.
  9756.           
  9757.       Example:
  9758.  
  9759.       A log-off menu may have the following entry:
  9760.           
  9761.               Menu Type:  27
  9762.               Optional data:  60 /L /T=Andrew_Milner
  9763.           
  9764.       In this example, you can see:
  9765.           
  9766.         *   The menu function used was specified as a type 27.
  9767.           
  9768.         *   The message will be posted in message area number
  9769.             60.
  9770.           
  9771.         *   The user will be logged-off as soon as the message
  9772.             is saved.
  9773.           
  9774.         *   The message will be posted to Andrew Milner.
  9775.             Notice that there is no space between Andrew and
  9776.             Milner. Instead, there is an underscore _
  9777.             character. The underscore character must be
  9778.             specified instead of a space. When processed, the
  9779.             underscore character will be translated back into
  9780.             a space character.
  9781.           
  9782.       NOTE:  Any messages addressed to Sysop are redirected
  9783.       automatically to the Sysop name as defined in RACONFIG:
  9784.           
  9785.                          System > Site info > Name
  9786.           
  9787.  
  9788.  
  9789.  
  9790.  
  9791.  
  9792.  
  9793.  
  9794.  
  9795.  
  9796.  
  9797.  
  9798.  
  9799.  
  9800.                                    - 148 -
  9801.           Type: 28
  9802.           Select combined areas
  9803.       ────────────────────────────────────────────────────────────
  9804.       Optional data:
  9805.  
  9806.       [/MG or /MG=#####] [/1]
  9807.           
  9808.       Description:
  9809.  
  9810.       Your users may select specific message areas to add to one
  9811.       combined message area. When this function is selected, a
  9812.       list of message areas to which the user has access is
  9813.       displayed.  From this list, the user may toggle any of the
  9814.       message areas ON or OFF.  Message areas that are toggled ON
  9815.       are added to the user's combined message area.  These areas
  9816.       are then saved as a part of the user's permanent record and
  9817.       are available during each log-on session.
  9818.  
  9819.       To allow your users to process combined message areas, use
  9820.       the same menu function types you would on any other message
  9821.       area (read, scan, etc.) but when specifying the message area
  9822.       number in the optional data field, use a zero (0).  This
  9823.       will cause RemoteAccess to process the user's combined
  9824.       message area.
  9825.           
  9826.       The optional data parameters accepted by this function are
  9827.       as follows:
  9828.           
  9829.       /1
  9830.  
  9831.       Displays a singular column list of available areas instead
  9832.       of the default two column list.
  9833.               
  9834.       /MG
  9835.  
  9836.       Displays only message areas in the user's currently selected
  9837.       message group.  If the currently selected group is set to
  9838.       zero (in cases where groups have just been implemented), the
  9839.       user will first be prompted to select a message group.
  9840.           
  9841.       /MG=0
  9842.  
  9843.       Displays a list of all groups to which the user has access.
  9844.       The user is then prompted to select areas in the current
  9845.       message group.
  9846.           
  9847.       /MG=<group number>
  9848.  
  9849.       Displays a list of all message areas in group <group number>
  9850.       to which the user has access.  The user is then prompted to
  9851.       select an area from this group.
  9852.           
  9853.       NOTE:  It is possible to define a default selection of
  9854.       combined message areas for new users in RACONFIG:
  9855.           
  9856.                               Manager > Combined
  9857.           
  9858.  
  9859.  
  9860.  
  9861.  
  9862.  
  9863.  
  9864.                                    - 149 -
  9865.           Type: 29
  9866.           Move a file
  9867.       ────────────────────────────────────────────────────────────
  9868.       Optional data:
  9869.  
  9870.       </F or file area#>
  9871.           
  9872.       Description:
  9873.  
  9874.       Primarily designed as a Sysop or Assistant Sysop function,
  9875.       this allows the user to perform a variety of functions on
  9876.       any given file.
  9877.           
  9878.       The file area number must be specified in the optional data
  9879.       field as either <file area#> or /F (to use the currently
  9880.       selected template file area.
  9881.           
  9882.       When this function is executed, RemoteAccess prompts for the
  9883.       filename to move/copy.  Wildcard and search pattern matching
  9884.       characters (* and  ?) are valid. After a valid filename is
  9885.       entered (one that exists both in the directory for the
  9886.       specified file area as well in the file database), the user
  9887.       is presented with the following six options:
  9888.  
  9889.       Move
  9890.  
  9891.       When this option is selected, the user is presented with a
  9892.       list of file areas (to which the user has access) to move
  9893.       the file to. After selecting an area, the file (along with
  9894.       its description) is moved to the directory for the target
  9895.       file area and the file database is updated accordingly.
  9896.           
  9897.       Copy
  9898.  
  9899.       When this option is selected, the user is presented with a
  9900.       list of file areas (to which the user has access) to copy
  9901.       the file to. After selecting an area, the file (along with
  9902.       its description) is copied to the directory of the target
  9903.       file area.  The file database information is updated
  9904.       accordingly, saving the file information in both the source
  9905.       and target file areas.
  9906.           
  9907.       Delete
  9908.  
  9909.       When this option is selected, the file is deleted from both
  9910.       the directory of the specified file area as well as the file
  9911.       database.
  9912.           
  9913.       Edit Description
  9914.  
  9915.       When this option is specified the user is prompted to enter
  9916.       a new file description. The file database is updated
  9917.       accordingly.
  9918.           
  9919.       Skip
  9920.  
  9921.       When this option is selected, the file is skipped (not
  9922.       processed) and RemoteAccess continues searching for files
  9923.       that match the input search pattern.
  9924.  
  9925.  
  9926.  
  9927.  
  9928.                                    - 150 -
  9929.       Quit
  9930.  
  9931.       When this option is selected, this function is aborted
  9932.       returning the user to the calling menu.
  9933.           
  9934.       Example:
  9935.  
  9936.         Optional data:    /F
  9937.           
  9938.            File to move/copy (wildcards valid):  TEST.TXT
  9939.           
  9940.           TEST.TXT  (M)ove, (C)opy, (D)elete, (E)dit desc, (S)kip, (Q)uit: _
  9941.           
  9942.           
  9943.           
  9944.           Type: 30
  9945.           Directory
  9946.       ────────────────────────────────────────────────────────────
  9947.       Optional data:
  9948.  
  9949.       </F or file area#>
  9950.           
  9951.       Description:
  9952.  
  9953.       Displays an MS-DOS style directory listing of the directory
  9954.       path for the currently selected template file area (if /F is
  9955.       specified), or file area <file area#>.
  9956.           
  9957.       This listing includes filename, length and date of each
  9958.       entry.  The user will be prompted for optional search
  9959.       pattern matching.  Wildcard characters * ? are accepted
  9960.       within the search pattern.
  9961.  
  9962.       Example:
  9963.  
  9964.       To list the directory using a search pattern match of *.BBS:
  9965.           
  9966.       File name pattern match (Enter=all files): *BBS
  9967.           
  9968.       File Name           Size             Date
  9969.       -------------------  --------------------  -----------------
  9970.       FILES.BBS           3599             01-06-93
  9971.       -------------------  --------------------  -----------------
  9972.       1 files           3599 bytes
  9973.           
  9974.           
  9975.           Type: 31
  9976.           List files
  9977.       ────────────────────────────────────────────────────────────
  9978.       Optional data:
  9979.  
  9980.       </F or file area#> [/T]
  9981.           
  9982.       Description:
  9983.  
  9984.       This option displays a list of files available for download
  9985.       from the currently selected file area (if /F is specified)
  9986.       or from file area <file area#>.  If the /T parameter is
  9987.       specified, users are permitted to tag files for download
  9988.       during the listing process.
  9989.  
  9990.  
  9991.  
  9992.                                    - 151 -
  9993.       The format in which files are listed may be altered using
  9994.       RACONFIG:
  9995.           
  9996.                          Options > Files > List Format
  9997.           
  9998.       Refer to the Configuration chapter for full details on the
  9999.       List Format option.
  10000.           
  10001.           
  10002.           Type: 32
  10003.           Download a file from area
  10004.       ────────────────────────────────────────────────────────────
  10005.       Optional data:
  10006.  
  10007.       </F or file area#> [password]
  10008.           
  10009.       Description:
  10010.  
  10011.       Enables the user to download any file that is contained in
  10012.       the currently selected template file area (when /F is
  10013.       specified) or in file area <file area#>.
  10014.           
  10015.       If files have been tagged for download, the tag list is
  10016.       presented to the user.  The user is given the opportunity to
  10017.       add to the list of tagged files, delete files from the tag
  10018.       list, clear all tag list entries, or continue with the
  10019.       download.
  10020.           
  10021.       The file must exist in the file area download directory and
  10022.       must also be listed in the file database.
  10023.           
  10024.       If  [password] is specified, the user will be prompted to
  10025.       enter a non-case-sensitive password before being allowed to
  10026.       proceed with the download.
  10027.           
  10028.       RemoteAccess supports local downloading. This enables the
  10029.       Sysop or another local user to download or copy files from
  10030.       the current file area to another system directory.  For
  10031.       example, this can be used to copy files to a diskette or a
  10032.       network directory.  When this option is used, the Downloads
  10033.       and DownloadK fields in the on-line user's profile are
  10034.       updated accordingly.    In other words, it counts as an actual
  10035.       download.
  10036.            
  10037.       See menu function type 59-"Global download" for a more
  10038.       powerful variation of this function.
  10039.           
  10040.  
  10041.  
  10042.  
  10043.  
  10044.  
  10045.  
  10046.  
  10047.  
  10048.  
  10049.  
  10050.  
  10051.  
  10052.  
  10053.  
  10054.  
  10055.  
  10056.                                    - 152 -
  10057.           Type: 33
  10058.           Upload a file
  10059.       ────────────────────────────────────────────────────────────
  10060.       Optional data:
  10061.  
  10062.       </F | file area# | /FG>
  10063.           
  10064.       Description:
  10065.  
  10066.       This function enables the user to upload (send) a file to
  10067.       your system.    The upload is initially directed to the
  10068.       currently selected template file area (if /F is specified) or
  10069.       to file area <file area#>.  However, the file may be
  10070.       redirected further based on the settings specified in the
  10071.       file area configuration.  For example, all file areas may be
  10072.       configured to redirect uploads to a specific file area.
  10073.           
  10074.       If the /FG parameter is specified, duplicate file checking
  10075.       will be limited to the currently selected file group.  This
  10076.       parameter can be used together with either the /F or <file
  10077.       area#> parameters.
  10078.           
  10079.       Upon successful completion of an upload, the user is
  10080.       prompted to enter a description of the uploaded file.  Long
  10081.       descriptions may be allowed in each individual file area
  10082.       configuration.  Additionally, new uploads may be scanned for
  10083.       integrity or the presence of a computer virus using an
  10084.       external program as configured in RACONFIG:
  10085.           
  10086.                          Options > Files > Upload scan
  10087.           
  10088.       For complete details on file area configuration, see the
  10089.       Configuration chapter.
  10090.           
  10091.       RemoteAccess supports local uploading which enables the
  10092.       Sysop or another local user to upload files from a diskette
  10093.       or other directory directly to the BBS as if the file had
  10094.       been sent from a remote location.
  10095.           
  10096.       When this option is used, the Uploads and UploadK fields in
  10097.       the user's profile are updated accordingly.  In other words,
  10098.       it counts as an actual upload.
  10099.           
  10100.  
  10101.  
  10102.  
  10103.  
  10104.  
  10105.  
  10106.  
  10107.  
  10108.  
  10109.  
  10110.  
  10111.  
  10112.  
  10113.  
  10114.  
  10115.  
  10116.  
  10117.  
  10118.  
  10119.  
  10120.                                    - 153 -
  10121.           Type: 34
  10122.           View archive
  10123.       ────────────────────────────────────────────────────────────
  10124.       Optional data:
  10125.  
  10126.       </F or file area#>
  10127.           
  10128.       Description:
  10129.  
  10130.       Allows users to view the contents of an archived file in the
  10131.       currently selected file area (when /F is specified) or in
  10132.       <file area#>.  The following archive types are supported:
  10133.           
  10134.               .ARC / .PAC / .PKA
  10135.               .ZIP
  10136.               .LZH / .LZS
  10137.               .DWC
  10138.               .MD
  10139.               .LBR
  10140.               .ARJ
  10141.               .HYP
  10142.               .GIF {+} Registered only.
  10143.           
  10144.       If the file being viewed is a .GIF file, RemoteAccess
  10145.       displays the graphics and color resolution of the file.
  10146.           
  10147.           
  10148.           Type: 35
  10149.           File search by keyword
  10150.       ────────────────────────────────────────────────────────────
  10151.       Optional data:
  10152.  
  10153.       [/F or area1 area2 area3... or /FG] [/T] [/Q]
  10154.           
  10155.       Description:
  10156.  
  10157.       This function searches the specified file areas for an
  10158.       embedded keyword that is supplied by the user.  Search
  10159.       pattern matching is performed on both the filenames and
  10160.       descriptions.
  10161.           
  10162.       The default is to scan all areas to which the user has
  10163.       access.  However, you may specify that only certain areas
  10164.       will be searched by either including one or more file area
  10165.       numbers in the optional data field, or by specifying the /F
  10166.       parameter which limits the search to the currently selected
  10167.       file area.  You may also limit the search to file areas
  10168.       within the currently selected file group by specifying the
  10169.       /FG parameter.
  10170.           
  10171.       If the /T parameter is specified, file tagging is offered
  10172.       during the search process.
  10173.  
  10174.  
  10175.  
  10176.  
  10177.  
  10178.  
  10179.  
  10180.  
  10181.  
  10182.  
  10183.  
  10184.                                    - 154 -
  10185.       If the /Q parameter is specified, it must be the last
  10186.       parameter in the optional data field.  This option causes
  10187.       the search to use the 5 keywords in the file header record
  10188.       rather than the description text.  This type of search is
  10189.       much faster than the description search (which is the
  10190.       default), but has two drawbacks; 1) you must maintain the
  10191.       keywords for each file separately and; 2) only exact (not
  10192.       partial) keyword matches will be found.
  10193.           
  10194.           
  10195.           Type: 36
  10196.           File search by filename
  10197.       ────────────────────────────────────────────────────────────
  10198.       Optional data:
  10199.  
  10200.       [/F or area1 area2 area3... or /FG] [/T]
  10201.           
  10202.       Description:
  10203.  
  10204.       Like menu function type 35, except that this function
  10205.       searches for a filename match rather than an embedded
  10206.       keyword. Wildcard and pattern matching characters (* and  ?)
  10207.       are also valid.
  10208.           
  10209.       The default is to scan all areas to which the user has
  10210.       access.  However, you may specify that only certain areas
  10211.       will be searched by either specifying one or more file area
  10212.       numbers in the optional data field or by specifying the /F
  10213.       parameter which limits the search to the currently selected
  10214.       file area.   You may also limit the search to file areas
  10215.       within the currently selected file group by specifying the
  10216.       /FG parameter.
  10217.               
  10218.       If the /T parameter is specified, file tagging is offered
  10219.       during the search process.
  10220.           
  10221.           
  10222.           Type: 37
  10223.           Show new files
  10224.       ────────────────────────────────────────────────────────────
  10225.       Optional data:
  10226.  
  10227.       [/F or area1 area2 area3... or /FG] [/T]
  10228.           
  10229.       Description:
  10230.  
  10231.       If no optional data is specified, this function scans all
  10232.       file areas to which the user has access for files that have
  10233.       an upload date more recent than the date specified by the
  10234.       user.  By default, this search includes files that are new
  10235.       since the user's last log-on.
  10236.           
  10237.       Although the default is to scan all areas to which the user
  10238.       has access, you may limit the areas to be scanned by either
  10239.       specifying one or more file area numbers in the optional
  10240.       data field or by specifying the /F parameter which limits
  10241.       the search to the currently selected file area.  You may
  10242.       also limit the search to file areas within the currently
  10243.       selected file group by specifying the /FG parameter.
  10244.  
  10245.  
  10246.  
  10247.  
  10248.                                    - 155 -
  10249.       If the /T parameter is specified, the user may use file
  10250.       tagging from within the new files listing.
  10251.           
  10252.       Example:
  10253.  
  10254.         Optional data:    1 2 3 /T
  10255.  
  10256.       Searches for new files in file areas 1, 2 and 3 and also
  10257.       offers file tagging during the process.
  10258.           
  10259.               Optional data:  /FG /T
  10260.           
  10261.       Searches for new files in all file areas within the
  10262.       currently selected file group to which the user has access.
  10263.       File tagging is offered during the listing process.
  10264.           
  10265.               Optional data:  /F
  10266.           
  10267.       Searches for new files in only the currently selected file
  10268.       area.
  10269.           
  10270.           
  10271.           Type: 38
  10272.           Type (view) a text file
  10273.       ────────────────────────────────────────────────────────────
  10274.       Optional data:
  10275.  
  10276.       </F or file area#>
  10277.           
  10278.       Description:
  10279.  
  10280.       Allows the user to display the contents of a plain ASCII /
  10281.       ANSI / AVATAR text file. RemoteAccess searches for the file
  10282.       in either the currently selected template file area (when /F
  10283.       is specified) or in the area specified as <file area#>.
  10284.           
  10285.           
  10286.           Type: 39
  10287.           Display a fully named text file
  10288.       ────────────────────────────────────────────────────────────
  10289.       Optional data:
  10290.  
  10291.       <filename [/A=area#]>
  10292.           
  10293.       Description:
  10294.  
  10295.       This function displays a direct text file using one of the
  10296.       two following methods:
  10297.           
  10298.       Method One:
  10299.  
  10300.       By specifying full path and filenames of the text files to
  10301.       be displayed.
  10302.  
  10303.  
  10304.  
  10305.  
  10306.  
  10307.  
  10308.  
  10309.  
  10310.  
  10311.  
  10312.                                    - 156 -
  10313.       Method Two:
  10314.  
  10315.       By specifying filenames followed by the /A=area# parameter.
  10316.       Using this method, the file is displayed from the directory
  10317.       path configured for file area area#.
  10318.           
  10319.       NOTES:  1.  No security checking is done on the file area
  10320.               before the file is displayed.
  10321.           
  10322.           2.  Text file control codes (outlined in the chapter
  10323.               on External Support Files) are valid within a
  10324.               direct text file.
  10325.           
  10326.           
  10327.           Type: 40
  10328.           Display .A?? file with hot-keys
  10329.       ────────────────────────────────────────────────────────────
  10330.       Optional data:
  10331.  
  10332.           <1-8 character filename> [/BINARY]
  10333.           
  10334.       Description:
  10335.  
  10336.       This menu type will display a text file from your text file
  10337.       directory (as defined in RACONFIG) to the user, leaving
  10338.       hot-keys active while the file is being displayed.  Any
  10339.       command hot-key defined in the calling menu that the user
  10340.       has access to will be considered a valid hot-key.  If a
  10341.       valid hot- key is pressed, the associated menu function will
  10342.       be executed immediately.
  10343.           
  10344.       This allows the use of elaborate, graphic menus that would
  10345.       be impossible to create with the line editor.  See the
  10346.       section on Automatic Commands earlier in this chapter for
  10347.       more information on this type of menu use.
  10348.           
  10349.       RemoteAccess will display the file specified in the optional
  10350.       data field using one of three filename extensions.  If the
  10351.       user has AVATAR codes enabled, RemoteAccess will display the
  10352.       file <filename.AVT> to the user. However, if <filename.AVT>
  10353.       is missing, or the user does not have AVATAR enabled but
  10354.       does have ANSI enabled, the file <filename.ANS> will be
  10355.       displayed.
  10356.           
  10357.       Likewise, if the user has only ASCII emulation enabled or
  10358.       both the files <filename.AVT> and <filename.ANS> are
  10359.       missing, the file <filename.ASC will be displayed.
  10360.            
  10361.       These files may contain any text or graphical information
  10362.       within the limitations of the text format.  For example, you
  10363.       cannot display ANSI color in an ASCII text file.
  10364.           
  10365.       Along with text and graphics it is also possible to display
  10366.       comprehensive system and user details by inserting special
  10367.       control codes in these files.  These codes are listed in the
  10368.       External Support Files chapter of this manual.
  10369.  
  10370.  
  10371.  
  10372.  
  10373.  
  10374.  
  10375.  
  10376.                                    - 157 -
  10377.           If the optional /BINARY parameter is specified, the file
  10378.           will be transmitted with no translation at all.  For
  10379.           example, embedded control codes will not be interpreted when
  10380.           this parameter is specified.  If you use this paramter, it
  10381.           must be the last parameter in the optional data field.
  10382.           
  10383.           
  10384.           Type: 41
  10385.           Toggle full-screen editor
  10386.       ────────────────────────────────────────────────────────────
  10387.       Optional data:
  10388.  
  10389.       None
  10390.           
  10391.       This function toggles the state of the user's full-screen
  10392.       editor setting between ON and OFF.  Use of the editor should
  10393.       only be permitted if the user has ANSI graphics emulation
  10394.       capability, but RemoteAccess gives the user the opportunity
  10395.       to disable ANSI graphics while leaving the full-screen
  10396.       editor enabled.  This may help users who disable ANSI to
  10397.       increase throughput speed but still prefer to use the
  10398.       full-screen editor.
  10399.           
  10400.           
  10401.           Type: 42
  10402.           Toggle hot-keys
  10403.       ────────────────────────────────────────────────────────────
  10404.       Optional data:
  10405.  
  10406.       None
  10407.           
  10408.       Description:
  10409.  
  10410.       Allows users to choose between hot-keys or command stacking.
  10411.       In hot-key mode, users need only press a command key
  10412.       associated with a menu item; no <ENTER> key is required.  In
  10413.       command stacking mode, several commands, or key-presses, can
  10414.       be entered on one command-line, followed by pressing the
  10415.       <ENTER> key.
  10416.           
  10417.           
  10418.           Type: 43
  10419.           NewMail {+} Registered only.
  10420.       ────────────────────────────────────────────────────────────
  10421.       Optional data:
  10422.  
  10423.       [/MG or /MG=#####] [/1]
  10424.           
  10425.       Description:
  10426.  
  10427.       This function displays a list of all message areas to which
  10428.       the user has access.    Those areas that contain new unread
  10429.       messages are highlighted with an asterisk * character.
  10430.  
  10431.  
  10432.  
  10433.  
  10434.  
  10435.  
  10436.  
  10437.  
  10438.  
  10439.  
  10440.                                    - 158 -
  10441.       The optional parameters accepted by this function are as
  10442.       follows:
  10443.           
  10444.       /1
  10445.  
  10446.       Displays a singular column list of available areas instead
  10447.       of the default two column list.
  10448.               
  10449.       /MG
  10450.  
  10451.       Displays only message areas in the user's currently selected
  10452.       message group.  If the currently selected group is set to
  10453.       zero (in cases where groups have just been implemented), the
  10454.       user will first be prompted to select a message group.
  10455.           
  10456.       /MG=0
  10457.  
  10458.       Displays a list of all groups to which the user has access.
  10459.       The user is then prompted to select a message group to list
  10460.       areas for.
  10461.           
  10462.       /MG=<group number>
  10463.  
  10464.       Displays a list of all message areas in group <group number>
  10465.       to which the user has access.  The user is then prompted to
  10466.       select an area from this group.
  10467.           
  10468.           
  10469.           Type: 44
  10470.           Reset combined areas setting
  10471.       ────────────────────────────────────────────────────────────
  10472.       Optional data:
  10473.  
  10474.       None
  10475.           
  10476.       Description:
  10477.  
  10478.       This function allows the user to include or exclude all
  10479.       message areas from his or her combined message area folder.
  10480.       Sometimes, especially on systems with numerous message
  10481.       areas, it may be easier for a user to select combined
  10482.       message areas if they are all turned ON or OFF to begin
  10483.       with.
  10484.           
  10485.       Example:
  10486.  
  10487.       If a user wanted to have all but two areas included in the
  10488.       combined message area folder, it might be easier to select
  10489.       all areas and then use menu function type 28 to deselect the
  10490.       two areas desired.
  10491.           
  10492.  
  10493.  
  10494.  
  10495.  
  10496.  
  10497.  
  10498.  
  10499.  
  10500.  
  10501.  
  10502.  
  10503.  
  10504.                                    - 159 -
  10505.           Type: 45
  10506.           Display text file and wait
  10507.       ────────────────────────────────────────────────────────────
  10508.       Optional data:
  10509.  
  10510.       <1-8 character filename>
  10511.           
  10512.       Description:
  10513.  
  10514.       This is identical to menu function type 5 except that the
  10515.       user is prompted to press <ENTER> before continuing.    This
  10516.       is useful for displaying text files that are generated
  10517.       automatically by utilities that don't append a ^A (wait for
  10518.       <ENTER> control code) at the end of the file.
  10519.           
  10520.       See menu function type 5 for more information.
  10521.           
  10522.           
  10523.           Type: 46
  10524.           Display direct text file with CR
  10525.       ────────────────────────────────────────────────────────────
  10526.       Optional data:
  10527.  
  10528.       <filename [/A=area#]>
  10529.           
  10530.       Description:
  10531.  
  10532.       This function is identical to menu function type 39 except
  10533.       that the user is prompted to press <ENTER> before
  10534.       continuing.  This displays a direct text file using one of
  10535.       the two following methods:
  10536.           
  10537.       Method One:
  10538.  
  10539.       By specifying a full path and filename of the text file to
  10540.       be displayed.
  10541.           
  10542.       Method Two:
  10543.  
  10544.       By specifying a filename followed by the /A=area# parameter.
  10545.       Using this method, the file is displayed from the directory
  10546.       path configured for file area area#.
  10547.           
  10548.       NOTES:  1.  No security checking is done on the file area
  10549.               before the file is displayed.
  10550.           
  10551.           2.  Text file control codes (outlined in the chapter
  10552.               on External Support Files) are valid within a
  10553.               direct text file.
  10554.  
  10555.  
  10556.  
  10557.  
  10558.  
  10559.  
  10560.  
  10561.  
  10562.  
  10563.  
  10564.  
  10565.  
  10566.  
  10567.  
  10568.                                    - 160 -
  10569.       Type: 47
  10570.       Create a log entry
  10571.       ────────────────────────────────────────────────────────────
  10572.       Optional data:
  10573.  
  10574.       <log entry>
  10575.           
  10576.       Description:
  10577.  
  10578.       When this function is executed, it simply takes the text
  10579.       specified in the optional data field and writes it to the
  10580.       system log as if it were a normal hard-coded log entry.
  10581.       Macro characters that are valid within <log entry> are:
  10582.           
  10583.       @   Insert the name of the current template file area
  10584.           
  10585.       `   Insert the name of the current template message area.
  10586.           Remember, this is the accent character, not the
  10587.           apostrophe character.
  10588.           
  10589.       In addition to these two macros, all text file control codes
  10590.       are also supported within <log entry>.
  10591.           
  10592.       Example:
  10593.  
  10594.       If Joe User just logged on using a handle of Joe Doe and the
  10595.       optional data field was defined as follows:
  10596.           
  10597.               Optional data:  ^FA logged-on as ^F3
  10598.           
  10599.       The resulting log entry would be:
  10600.           
  10601.               > 21:30:00  Joe User logged on as Joe Doe
  10602.           
  10603.           
  10604.           Type: 48
  10605.           Download a specific file
  10606.       ────────────────────────────────────────────────────────────
  10607.       Optional data:
  10608.  
  10609.       <FILE1.EXT FILE2.EXT FILE3.EXT...>
  10610.               or...
  10611.       <FILE1.EXT FILE2.EXT [/A=area#]>
  10612.           
  10613.       Description:
  10614.  
  10615.       This function enables the user to download a file or set of
  10616.       files that you have pre- defined, using a protocol of the
  10617.       user's choice.  This is done using one of the two following
  10618.       methods:
  10619.           
  10620.       Method One:
  10621.  
  10622.       Specify one or more files including the full path and
  10623.       filenames of each.  Wildcard and pattern matching characters
  10624.       * ? are valid.
  10625.  
  10626.  
  10627.  
  10628.  
  10629.  
  10630.  
  10631.  
  10632.                                    - 161 -
  10633.       Method Two:
  10634.  
  10635.       Specify one or more files followed by the optional /A=area#
  10636.       parameter.  When using this method, the filenames do not
  10637.       require a full path and filename to be specified since the
  10638.       files are downloaded from the directory for the file area
  10639.       specified by the /A parameter.
  10640.           
  10641.       This latter method must be used if you want the file
  10642.       download counter and last date downloaded fields to be
  10643.       updated when this function is executed.
  10644.            
  10645.       NOTE: When specifying  wildcard and pattern match characters
  10646.       in the filename, the user will be forced to use a batch
  10647.       transfer protocol.
  10648.           
  10649.       Examples:
  10650.  
  10651.       The two examples that follow demonstrate each of the methods
  10652.       just described:
  10653.           
  10654.               Optional data:
  10655.               \DLOAD\ALLFILES.ARJ  \RA\MYNODE.TXT
  10656.           
  10657.       Would send the file ALLFILES.ARJ from the \DLOAD directory
  10658.       and the MYNODE.TXT file from the \RA directory (method one).
  10659.           
  10660.         Optional data:
  10661.           
  10662.                 RA*.ARJ /A=10
  10663.           
  10664.       Would send all files in the directory for file area 10 that
  10665.       match the search pattern RA*.ARJ using a batch transfer
  10666.       protocol (method two).
  10667.           
  10668.           
  10669.           Type: 49
  10670.           Select message area
  10671.       ────────────────────────────────────────────────────────────
  10672.       Optional data:
  10673.  
  10674.       [/MG or /MG=#####] [/1]
  10675.  
  10676.       Description:
  10677.  
  10678.       This function allows users to select a new message area.  If
  10679.       no optional parameters are specified, a list of message
  10680.       areas to which the user has access is displayed.
  10681.           
  10682.       The optional parameters that may be specified are as
  10683.       follows:
  10684.           
  10685.       /1
  10686.  
  10687.       Displays a singular column list of available areas instead
  10688.       of the default two column list.
  10689.  
  10690.  
  10691.  
  10692.  
  10693.  
  10694.  
  10695.  
  10696.                                    - 162 -
  10697.       /MG
  10698.  
  10699.       Displays only message areas in the user's currently selected
  10700.       message group.  If the currently selected group is set to
  10701.       zero (in cases where groups have just been implemented), the
  10702.       user will first be prompted to select a message group.
  10703.           
  10704.       /MG=0
  10705.  
  10706.       Displays a list of all groups to which the user has access.
  10707.       The user is then prompted to select a message area from the
  10708.       currently selected message group.
  10709.           
  10710.       /MG=<group number>
  10711.  
  10712.       Displays a list of all message areas in group <group number>
  10713.       to which the user has access.  The user is then prompted to
  10714.       select an area from this group.
  10715.           
  10716.       The currently selected template message area is set to the
  10717.       area number that the user selects.  If applicable, the
  10718.       user's currently selected message group number is set to the
  10719.       group number selected.  This allows the Sysop to run a very
  10720.       low maintenance system, since all that is required to add or
  10721.       delete a message area is to modify the message area
  10722.       configuration using RACONFIG.
  10723.           
  10724.       Example:
  10725.  
  10726.       Suppose the user selects this function and has read access
  10727.       to the following message areas:
  10728.           
  10729.        Message Areas: ----------
  10730.  
  10731.          1      Messages to the Operator    2    General Messages
  10732.          3      Private Messages (E-Mail)   4    DeskTop Publishing
  10733.  
  10734.        Select area: _
  10735.           
  10736.       If the user selected message area 1, the currently selected
  10737.       template message area would be set to 1.  Then, any menu
  10738.       function that refers to the /M template variable will take
  10739.       on a value of 1.  This eliminates ever having to set the
  10740.       value of the /M template variable manually from within a
  10741.       menu.
  10742.           
  10743.           
  10744.           Type: 50
  10745.           Select file area
  10746.       ────────────────────────────────────────────────────────────
  10747.       Optional data:
  10748.  
  10749.       [/FG or /FG=#####] [/1]
  10750.           
  10751.       Description:
  10752.  
  10753.  
  10754.  
  10755.  
  10756.  
  10757.  
  10758.  
  10759.  
  10760.                                    - 163 -
  10761.       Similar to the type 49 function for message areas, this
  10762.       function allows the user to select a new file area.  If no
  10763.       optional parameters are specified, a list of file areas to
  10764.       which the user has access is displayed.
  10765.           
  10766.       The optional parameters that may be specified are as
  10767.       follows:
  10768.           
  10769.       /1
  10770.  
  10771.       Displays a singular column list of available areas instead
  10772.       of the default two column list.
  10773.               
  10774.       /FG
  10775.  
  10776.       Displays only file areas in the user's currently selected
  10777.       file group.  If the user's currently selected group is set
  10778.       to zero (in cases where groups have just been implemented),
  10779.       the user will first be prompted to select a file group.
  10780.           
  10781.       /FG=0
  10782.  
  10783.       Displays a list of all file groups to which the user has
  10784.       access.  After selecting a group, the user is prompted to
  10785.       select a file area from the currently selected file group.
  10786.           
  10787.       /FG=<group number>
  10788.  
  10789.       Displays a list of all file areas in group <group number> to
  10790.       which the user has access.  The user is then prompted to
  10791.       select an area from this group.
  10792.           
  10793.       The currently selected template file area is set to the area
  10794.       number that the user selects.  If applicable, the user's
  10795.       currently selected file group number is set to the group
  10796.       number selected.
  10797.           
  10798.           
  10799.           Type: 51
  10800.           List today's callers
  10801.       ────────────────────────────────────────────────────────────
  10802.       Optional data:
  10803.  
  10804.       [/H]
  10805.           
  10806.       Description:
  10807.  
  10808.       This function displays a list of all users who have
  10809.       logged-on to your system since midnight, showing
  10810.       log-on/log-off times, connection speed and what node (line)
  10811.       the call user was logged-on to.  If the optional /H
  10812.       parameter is specified, user handles are displayed in place
  10813.       of real names.
  10814.           
  10815.  
  10816.  
  10817.  
  10818.  
  10819.  
  10820.  
  10821.  
  10822.  
  10823.  
  10824.                                    - 164 -
  10825.           Type: 52
  10826.           Show all users on-line
  10827.       ────────────────────────────────────────────────────────────
  10828.       Optional data:
  10829.  
  10830.       [/H]
  10831.           
  10832.       Description:
  10833.  
  10834.       This function lists all users who are currently on-line.
  10835.       This would only be useful in a multi-node installation.  If
  10836.       the optional /H parameter is specified, user handles are
  10837.       displayed in place of real names.
  10838.           
  10839.           
  10840.           Type: 53
  10841.           Toggle "Do not disturb"
  10842.       ────────────────────────────────────────────────────────────
  10843.       Optional data:
  10844.  
  10845.       None
  10846.           
  10847.       Description:
  10848.  
  10849.       This function is intended for use on multi- node
  10850.       installations where the Sysop has provided access to menu
  10851.       function type 54 - Send an on-line message.  It allows the
  10852.       user to toggle the ability to receive on-line messages from
  10853.       other users.
  10854.           
  10855.       Example:
  10856.  
  10857.       Let's say that the user on node 1 selects to send an on-line
  10858.       message to the user on node 2 (i.e. "Joe, I see you're
  10859.       logged on line 2. Let's chat!").  If the user on node 1 has
  10860.       his Do not disturb flag set to OFF, he would receive the
  10861.       message:
  10862.  
  10863.               ***MESSAGE*** from John Doe on node 1:
  10864.               "Joe, I see you're logged on line 2.  Let's chat"
  10865.           
  10866.       If the user on node 2 had his Do not disturb setting turned
  10867.       ON, the user on node 1 would not have been allowed to enter
  10868.       the on-line message.
  10869.            
  10870.       NOTE: The Sysop has the ability to override Do not disturb
  10871.       settings and may send on-line messages to any user currently
  10872.       on-line.
  10873.           
  10874.  
  10875.  
  10876.  
  10877.  
  10878.  
  10879.  
  10880.  
  10881.  
  10882.  
  10883.  
  10884.  
  10885.  
  10886.  
  10887.  
  10888.                                    - 165 -
  10889.           Type: 54
  10890.           Send an on-line message
  10891.       ────────────────────────────────────────────────────────────
  10892.       Optional data:
  10893.  
  10894.       None
  10895.           
  10896.       Description:
  10897.  
  10898.       This function is intended for use in a multi- node
  10899.       environment and allows users to send one-line messages to
  10900.       other users who are currently logged-on to other nodes,
  10901.       provided that the receiving user has the Do not disturb flag
  10902.       set to OFF.
  10903.           
  10904.       When executed, this function first displays a list of users
  10905.       who are currently on-line (see menu function type 52-"Show
  10906.       all users on-line") and then prompts the user to enter the
  10907.       line (node) number of the user to send the message to.  The
  10908.       sender is allowed to enter a brief (one-line) message.  If
  10909.       the sender presses <ENTER> without entering a message, the
  10910.       operation is aborted.
  10911.           
  10912.           
  10913.           Type: 55
  10914.           Download any file
  10915.       ────────────────────────────────────────────────────────────
  10916.       Optional data:
  10917.  
  10918.       None
  10919.           
  10920.       Description:
  10921.  
  10922.       This is an extremely powerful function which was designed
  10923.       for use by the Sysop when logging-on remotely.  It allows
  10924.       the user to download any file from any valid DOS drive and
  10925.       directory using any of the available file transfer
  10926.       protocols.  Having said this, you might see why, if this
  10927.       function is used, it would be better restricted to Sysop use
  10928.       only.
  10929.           
  10930.       NOTE:  This is the only download function that takes no
  10931.       account of download limits, file ratios or transfer time,
  10932.       and does not update the user record to reflect the
  10933.       download.  However, if you would like to make files
  10934.       available to your users without regard to download
  10935.       statistics, this can be accomplished by declaring specific
  10936.       files as Free Files.    See the File Database Administration
  10937.       chapter for more information.
  10938.           
  10939.  
  10940.  
  10941.  
  10942.  
  10943.  
  10944.  
  10945.  
  10946.  
  10947.  
  10948.  
  10949.  
  10950.  
  10951.  
  10952.                                    - 166 -
  10953.           Type: 56
  10954.           Browse the nodelist {+} Registered only.
  10955.       ────────────────────────────────────────────────────────────
  10956.       Optional data:
  10957.  
  10958.       None
  10959.           
  10960.       Description:
  10961.  
  10962.       If you are a member of a mail network, you might find this
  10963.       function useful.  It allows users to browse the current
  10964.       nodelist created by RANODE (see the chapter on Mail
  10965.       Networking for more information) and includes functions to
  10966.       list all zones, all nets and regions in a zone, and all
  10967.       nodes in a net or region.
  10968.  
  10969.       Example:
  10970.  
  10971.       When selected, this function displays a summarized list of
  10972.       possible commands, and prompts the user for input:
  10973.           
  10974.               * NODELIST BROWSING * (blank line quits):
  10975.               ? to list all zones
  10976.               z:? to list nets in zone z
  10977.               n/? to list nodes in net n
  10978.               :
  10979.           
  10980.       For each option, RemoteAccess displays a formatted list to
  10981.       the user.
  10982.            
  10983.       NOTE:  This function is also built-in to menu function type
  10984.       27-"Post message" and is available when performing operations
  10985.       on a NetMail message area.  Specifically, this function is
  10986.       available when entering a network address.
  10987.           
  10988.           
  10989.           Type: 57
  10990.           Change home/voice number
  10991.       ────────────────────────────────────────────────────────────
  10992.       Optional data:
  10993.  
  10994.       None
  10995.           
  10996.       Description:
  10997.  
  10998.       This function allows users to modify their voice telephone
  10999.       number and records the modification in the user's permanent
  11000.       record.
  11001.           
  11002.  
  11003.  
  11004.  
  11005.  
  11006.  
  11007.  
  11008.  
  11009.  
  11010.  
  11011.  
  11012.  
  11013.  
  11014.  
  11015.  
  11016.                                    - 167 -
  11017.           Type: 58
  11018.           Change business/data number
  11019.       ────────────────────────────────────────────────────────────
  11020.       Optional data:
  11021.  
  11022.       None
  11023.           
  11024.       Description:
  11025.  
  11026.       This function allows users to modify their business/data
  11027.       telephone number and records the modification in the user's
  11028.       permanent record.
  11029.           
  11030.           
  11031.           Type: 59
  11032.           Global download {+} Registered only.
  11033.       ────────────────────────────────────────────────────────────
  11034.       Optional data:
  11035.  
  11036.       [/FG]
  11037.           
  11038.       Description:
  11039.  
  11040.       Allows users to download files in the same manner as menu
  11041.       function type 32-"Download a file from area", except that
  11042.       the user is not confined to one area.  This function
  11043.       searches all areas that the user has access to for the
  11044.       requested file(s).  All normal time and security
  11045.       restrictions apply. You can use menu function type 59-
  11046.           "Global download" to download files from any area. 
  11047.           Normally, users may download only from the currently
  11048.       selected file area.
  11049.           
  11050.       If the /FG parameter is specified, this function will
  11051.       download a file from any area within the user's currently
  11052.       selected file group.
  11053.           
  11054.       NOTE:  You might prefer this function over the type 32
  11055.       download function since it does not require the user to be
  11056.       in the same file area as the files that are to be
  11057.       downloaded.
  11058.           
  11059.           
  11060.           Type: 60
  11061.           Change handle
  11062.       ────────────────────────────────────────────────────────────
  11063.       Optional data:
  11064.  
  11065.       None
  11066.           
  11067.       Description:
  11068.  
  11069.       Allows users to select a new handle, or alias.  Users are
  11070.       not allowed to choose a name which is in use by another
  11071.       user.  This function will also not allow the use of SYSOP or
  11072.       any handle listed in the HANDLES.CTL control file (see the
  11073.       chapter on External Support Files for more information on
  11074.       this control file).
  11075.           
  11076.  
  11077.  
  11078.  
  11079.  
  11080.                                    - 168 -
  11081.           Type: 61
  11082.           Toggle AVATAR
  11083.       ────────────────────────────────────────────────────────────
  11084.       Optional data:
  11085.  
  11086.       None
  11087.           
  11088.       Description:
  11089.  
  11090.       This function toggles the use of AVATAR codes in
  11091.       RemoteAccess and related text files.    See the External
  11092.       Support Files chapter for more information on AVATAR text
  11093.       files.
  11094.           
  11095.           
  11096.           Type: 62
  11097.       Toggle full-screen message viewer
  11098.       ────────────────────────────────────────────────────────────
  11099.       Optional data:
  11100.  
  11101.       None
  11102.  
  11103.       Description:
  11104.  
  11105.       Allows users to select between using the full-screen message
  11106.       viewer or the line-by-line message viewer.  When set to ON
  11107.       with this function, the full-screen message viewer displays
  11108.       all messages with a fixed header in the upper portion of the
  11109.       display while displaying message text in a page window below
  11110.       the header.  The full-screen message viewer utilizes ANSI
  11111.       and AVATAR codes for special screen manipulation.
  11112.           
  11113.           
  11114.           Type: 63
  11115.           Select a new language
  11116.       ────────────────────────────────────────────────────────────
  11117.       Optional data:
  11118.  
  11119.       None
  11120.           
  11121.       Description:
  11122.  
  11123.       This function allows users to change the current language
  11124.       setting.  This option is useful if you have more than one
  11125.       language available to your callers.  For more information,
  11126.       see the Configuration chapter and RACONFIG:
  11127.           
  11128.                               Language > Manager
  11129.           
  11130.  
  11131.  
  11132.  
  11133.  
  11134.  
  11135.  
  11136.  
  11137.  
  11138.  
  11139.  
  11140.  
  11141.  
  11142.  
  11143.  
  11144.                                    - 169 -
  11145.           Type: 64
  11146.           Select a new date format
  11147.       ────────────────────────────────────────────────────────────
  11148.       Optional data:
  11149.  
  11150.       None
  11151.           
  11152.       Description:
  11153.  
  11154.       This function gives the user the ability to change the
  11155.       current date format that RemoteAccess will use each time the
  11156.       user logs-on.  The user has a choice of the following date
  11157.       formats (the date used in the examples below is February 12,
  11158.       1993):
  11159.  
  11160.                  Format       Example
  11161.                  ───────────────────────
  11162.                  DD-MM-YY       12-02-93
  11163.                  MM-DD-YY       02-12-93
  11164.                  YY-MM-DD       93-02-12
  11165.                  DD-Mmm-YY       12-Feb-93
  11166.           
  11167.           
  11168.           Type: 65
  11169.           Change user flags {+} Registered only.
  11170.       ────────────────────────────────────────────────────────────
  11171.       Optional data:
  11172.  
  11173.       <flagset><flagnum><action>
  11174.           
  11175.       Description:
  11176.  
  11177.       This function adds even more power and flexibility to
  11178.       RemoteAccess as it allows you to toggle any of the user's
  11179.       access flags settings.  The action determines how the flag
  11180.       is to be set.  Valid actions are:
  11181.           
  11182.           -    Turn the specified flag OFF
  11183.           +    Turn the specified flag ON
  11184.       *    Toggle the specified flag from its current state to
  11185.         the opposite state (i.e. if the flag is ON, toggle it
  11186.         OFF).
  11187.           
  11188.       Example:
  11189.  
  11190.                 Optional data:  A1+ A2- D8*
  11191.           
  11192.       In the above example, A1 would be set to ON, A2 would be set
  11193.       to OFF and D8 would be toggled.  Notice the spaces between
  11194.       each flag specified.
  11195.           
  11196.               Optional data:  A1+
  11197.           
  11198.       In the above example, A1 would be set to OFF.
  11199.           
  11200.               Optional data: B1*
  11201.           
  11202.       In the above example, the user's B1 flag would be toggled to
  11203.       its opposite state.
  11204.  
  11205.  
  11206.  
  11207.  
  11208.                                    - 170 -
  11209.           Type: 66
  11210.           Toggle shells
  11211.       ────────────────────────────────────────────────────────────
  11212.       Optional data:
  11213.  
  11214.       <ON or OFF>
  11215.           
  11216.       Description:
  11217.  
  11218.       Determines the availability of the Shell from text file
  11219.       feature for the current session only.  This option overrides
  11220.       the setting in RACONFIG:
  11221.           
  11222.                         Options > System > Text Shells
  11223.           
  11224.           See the chapter on External Support Files for more
  11225.           information on the Shell from text file feature.
  11226.           
  11227.           
  11228.           Type: 67
  11229.           Toggle auto message forwarding
  11230.       ────────────────────────────────────────────────────────────
  11231.       Optional data:
  11232.  
  11233.       [/U]
  11234.           
  11235.       Description:
  11236.  
  11237.       If a user is not able to log-on for an extended period of
  11238.       time, all messages entered that are addressed to the user
  11239.       may be redirected (forwarded) to another user. When this
  11240.       function is selected, the user is prompted for the name of
  11241.       another user to forward mail to.  This name must be a valid
  11242.       user name contained in the system user list.
  11243.           
  11244.       If the named entered cannot be located in the user list, and
  11245.       the /U parameter is specified in the optional data field,
  11246.       the user will be given the opportunity to view/search the
  11247.       user database and then reselect the user to forward mail to.
  11248.           
  11249.       Example:
  11250.  
  11251.       John Doe is going to be out of town on business for one
  11252.       month.  While he is gone, he would like his mail redirected
  11253.       to Suzie Queue.  John would simply select this function,
  11254.       entering Suzie's full user name when prompted.  Then, all
  11255.       messages created on the system that are addressed to John
  11256.       Doe will be automatically redirected to Suzie Queue.    When
  11257.       John returns from his trip, he may cancel the redirection by
  11258.       reselecting this function.  A truly handy feature indeed!
  11259.           
  11260.  
  11261.  
  11262.  
  11263.  
  11264.  
  11265.  
  11266.  
  11267.  
  11268.  
  11269.  
  11270.  
  11271.  
  11272.                                    - 171 -
  11273.           Type: 68 
  11274.           Create RTC
  11275.       ────────────────────────────────────────────────────────────
  11276.           Optional data:
  11277.  
  11278.           None
  11279.           
  11280.       Description:
  11281.  
  11282.       Create a new Real-Time-Conference (RTC). As detailed in the
  11283.       section on RTCs in the chapter on Multi-Node Operation, up
  11284.       to 125 RTCs can be created.
  11285.           
  11286.           
  11287.           Type: 69 
  11288.           Join RTC
  11289.       ────────────────────────────────────────────────────────────
  11290.       Optional data:
  11291.  
  11292.       None
  11293.           
  11294.       Description:
  11295.  
  11296.       This function allows the user to join (enter) an existing
  11297.       Real-Time-Conference (RTC). See the section on RTCs in the
  11298.       Multi-Node Operation chapter later in this manual.
  11299.           
  11300.           
  11301.           Type: 70 
  11302.           Delete RTC
  11303.       ────────────────────────────────────────────────────────────
  11304.       Optional data:
  11305.  
  11306.       None
  11307.           
  11308.       Description:
  11309.  
  11310.       This function allows the user to delete an existing
  11311.       Real-Time-Conference (RTC).     See the section on RTCs in
  11312.       the Multi-Node Operation chapter later in this manual.
  11313.           
  11314.           
  11315.           Type: 71 
  11316.           Edit tag list
  11317.       ────────────────────────────────────────────────────────────
  11318.       Optional data:
  11319.  
  11320.       None
  11321.           
  11322.       Description:
  11323.  
  11324.       This function allows users to edit the current list of files
  11325.       that are tagged for download.  When selected, the user is
  11326.       given the choice of deleting files from the tag list or
  11327.       clearing the entire list of tagged files.
  11328.           
  11329.       This function is also offered automatically during the file
  11330.       tagging process.
  11331.           
  11332.  
  11333.  
  11334.  
  11335.  
  11336.                                    - 172 -
  11337.           Type: 72 
  11338.           Select default protocol
  11339.       ────────────────────────────────────────────────────────────
  11340.       Optional data:
  11341.  
  11342.       None
  11343.           
  11344.       Description:
  11345.  
  11346.       This function allows the user to select a default file
  11347.       transfer protocol.  When this function is executed, a list
  11348.       of supported transfer protocols is displayed and the user is
  11349.       prompted to select a protocol.  The protocol selected will
  11350.       become the default
  11351.           
  11352.       If the file XFERPROT.A?? exists, it will be displayed
  11353.       instead of the internal, hard- coded listing.
  11354.           
  11355.           
  11356.           Type: 73 
  11357.       Toggle EchoMail in mail-box scan
  11358.       ────────────────────────────────────────────────────────────
  11359.       Optional data:
  11360.  
  11361.       None
  11362.           
  11363.       Description:
  11364.  
  11365.       This function is used to include or exclude EchoMail message
  11366.       areas during a mail-box check.  When enabled, EchoMail areas
  11367.       are included during a mail-box check.  This is useful to
  11368.       users who do not participate in EchoMail conferences.
  11369.           
  11370.           
  11371.           Type: 74 
  11372.           Change mailing address
  11373.       ────────────────────────────────────────────────────────────
  11374.       Optional data:
  11375.  
  11376.       None
  11377.           
  11378.       Description:
  11379.  
  11380.       This function allows users to change their mailing address
  11381.       that is stored as a part of the user's permanent account
  11382.       record.  Up to 3 lines may be entered.
  11383.           
  11384.  
  11385.  
  11386.  
  11387.  
  11388.  
  11389.  
  11390.  
  11391.  
  11392.  
  11393.  
  11394.  
  11395.  
  11396.  
  11397.  
  11398.  
  11399.  
  11400.                                    - 173 -
  11401.           Chapter 4
  11402.           External Support Files
  11403.           *    
  11404.           *    
  11405.           *    
  11406.           *    
  11407.           Used to enhance and manipulate system presentation, External
  11408.           Support Files add to the list of available building blocks
  11409.           which aid you in creating a completely unique system.
  11410.           Customize your system's presentation using the tools
  11411.           outlined in this chapter.
  11412.  
  11413.  
  11414.  
  11415.  
  11416.  
  11417.  
  11418.  
  11419.  
  11420.  
  11421.  
  11422.  
  11423.  
  11424.  
  11425.  
  11426.  
  11427.  
  11428.  
  11429.  
  11430.  
  11431.  
  11432.  
  11433.  
  11434.  
  11435.  
  11436.  
  11437.  
  11438.  
  11439.  
  11440.  
  11441.  
  11442.  
  11443.  
  11444.  
  11445.  
  11446.  
  11447.  
  11448.  
  11449.  
  11450.  
  11451.  
  11452.  
  11453.  
  11454.  
  11455.  
  11456.  
  11457.  
  11458.  
  11459.  
  11460.  
  11461.  
  11462.  
  11463.  
  11464.                                    - 174 -
  11465.           OVERVIEW
  11466.  
  11467.           There is very little that is hard-coded into RemoteAccess in
  11468.           terms of what is displayed to your users.  You've learned
  11469.           that with the aid of the language manager in RACONFIG, you
  11470.           can change just about every prompt or message that is
  11471.           displayed to your users.  You've also learned that through
  11472.           the use of the menu manager, you can create your own custom
  11473.           menu system. Now we'll explain how to take advantage of yet
  11474.           another powerful tool - External Support Files.
  11475.  
  11476.           When we refer to text files or control files, we're really
  11477.           referring to the same family of tools.  We've referred to
  11478.           both types of external support files throughout this manual
  11479.           and you've probably wondered why this chapter wasn't covered
  11480.           earlier.  The reason is that we just didn't see any reason
  11481.           to overwhelm you with tools.  We thought it best to let you
  11482.           familiarize yourself with the essential tools first.  And
  11483.           since external support files compliment your overall BBS, it
  11484.           makes sense to discuss them after your message, file and
  11485.           menu systems are in place.
  11486.  
  11487.           In this chapter, we'll take a look at each individual type
  11488.           of external support file.  We'll explain what they are, how
  11489.           they are used and how to create them.  We'll also explain
  11490.           control codes and how they are implemented from within a
  11491.           text file.
  11492.           
  11493.  
  11494.           TEXT FILES EXPLAINED
  11495.  
  11496.           In the Configuration chapter, you stepped through the entire
  11497.           configuration.  Remember the text file directory path that
  11498.           you setup in RACONFIG:
  11499.           
  11500.                                 System > Paths
  11501.           
  11502.           The directory you specified here tells RemoteAccess where to
  11503.           look for your text files.  So keep in mind that this
  11504.           directory is where you'll want to be sure to place any text
  11505.           files that you create.
  11506.  
  11507.           Text files allow you to customize and enhance system
  11508.           presentation.  What if you'd like your users to see a
  11509.           graphic display wishing them a happy birthday (and only on
  11510.           their birthday, noless)?  Or, what if you'd like a file
  11511.           explaining system policies and procedures presented to your
  11512.           users at the press of a menu key?  It's all possible through
  11513.           the use of text files that you place into your text file
  11514.           directory.
  11515.  
  11516.  
  11517.  
  11518.  
  11519.  
  11520.  
  11521.  
  11522.  
  11523.  
  11524.  
  11525.  
  11526.  
  11527.  
  11528.                                    - 175 -
  11529.           When editing text files, you may include certain special
  11530.           characters called control codes.  These were mentioned in
  11531.           earlier chapters, but will be covered in detail in this
  11532.           chapter. There are three filename extensions that a text
  11533.           file can have.  These extensions indicate the type or
  11534.           variety of the text file:
  11535.           
  11536.           .ASC  Text files with this extension should be straight
  11537.                 ASCII text files.  That is to say that they should not
  11538.                 contain ANSI or AVATAR codes.  These files are
  11539.                 displayed to users who do not have either ANSI or
  11540.                 AVATAR emulation enabled.
  11541.           
  11542.           .ANS  This filename extension indicates that the text file
  11543.                 contains ANSI escape codes and is displayed to callers
  11544.                 who have ANSI emulation enabled.
  11545.           
  11546.           .AVT  Text files with this extension indicate that they
  11547.                 contain AVATAR codes sequences.  These files are
  11548.                 displayed to users who have AVATAR emulation enabled.
  11549.           
  11550.           For example, if you make all three emulations available to
  11551.           your users, you could have three varieties of one text file
  11552.           in your text file directory.  Let's say that you have the
  11553.           file BIRTHDAY.A?? displayed to users on their birthdays:
  11554.           
  11555.           BIRTHDAY.ASC  Displays the ASCII variation of the file to
  11556.                         users who do not have AVATAR or ANSI enabled.
  11557.           
  11558.           BIRTHDAY.ANS  Displays the ANSI variation of the file to
  11559.                         users who have ANSI enabled.
  11560.           
  11561.           BIRTHDAY.AVT  Displays the AVATAR variation of the file to
  11562.                         users who have AVATAR enabled.
  11563.           
  11564.           Again, this is not a requirement; it's an option.  If you
  11565.           choose to have only one variety of the BIRTHDAY file, that's
  11566.           fine.  But it should be the ASCII variety since it can be
  11567.           displayed to users of any terminal emulation type.  As
  11568.           always, when RemoteAccess cannot locate an AVATAR or ANSI
  11569.           variation of a text file, it regresses until it finds a
  11570.           compatible file or the ASCII variation of the file.  If no
  11571.           variation of the file exists, a short error message is
  11572.           displayed to the user.
  11573.  
  11574.           Now that we've explained the three varieties of text files,
  11575.           we should mention that there are generally two types of text
  11576.           files; ones that RemoteAccess searches for and displays
  11577.           automatically (if found and certain conditions are met),
  11578.           and; ones that you specify which are displayed when you
  11579.           instruct RemoteAccess to do so.
  11580.  
  11581.  
  11582.  
  11583.  
  11584.  
  11585.  
  11586.  
  11587.  
  11588.  
  11589.  
  11590.  
  11591.  
  11592.                                    - 176 -
  11593.           The text files that are displayed automatically are
  11594.           described in the Text Files Listing section later in this
  11595.           chapter. Some of these files are required by RemoteAccess
  11596.           (under certain conditions), while others are not.  For
  11597.           example, if you configure your system to only allow
  11598.           downloads during specific hours, the file DNLDHRS.A??
  11599.           becomes a required file which is displayed to users who
  11600.           attempt to download outside of the predefined schedule.  But
  11601.           that doesn't mean that it absolutely has to exist in order
  11602.           for your BBS to continue to operate properly.  If a text
  11603.           file does not exist, one of two actions will be taken; 1) a
  11604.           brief default message is displayed to the user or; 2)
  11605.           nothing is displayed.  Text files for which a default
  11606.           message is displayed when the file is missing, are indicated
  11607.           in the Text Files Listing by an asterisk * character.
  11608.           
  11609.  
  11610.           CONTROL CODES
  11611.  
  11612.           Control codes are powerful macros that allow you to perform
  11613.           certain system functions and display system and user data
  11614.           from within your text files.  If you've never used macros
  11615.           before, you'll want to give this section some close study.
  11616.  
  11617.           In the Menu Administration chapter, you learned how to embed
  11618.           control codes within the optional data field in certain menu
  11619.           items.  The key sequence will be explained again here so you
  11620.           don't have to hunt for it.
  11621.  
  11622.           The first thing you should know is that you're going to need
  11623.           a text editor that allows you to enter control characters.
  11624.           Since there are a wealth of text editors on the market, the
  11625.           examples given here are geared towards editors that allow
  11626.           control character entry the same way that RACONFIG does.  In
  11627.           fact, if you have a mind to, the control file editor in
  11628.           RACONFIG can be used to edit text files and allows you to
  11629.           enter control codes in the manner about to be described.
  11630.  
  11631.           To use the control file editor in RACONFIG, follow these
  11632.           simple steps:
  11633.           
  11634.           1)    Fire up RACONFIG
  11635.           
  11636.               RACONFIG <ENTER>
  11637.           
  11638.           2)    From the list of main selections, select:
  11639.           
  11640.                 Manager > Ctl files
  11641.  
  11642.  
  11643.  
  11644.  
  11645.  
  11646.  
  11647.  
  11648.  
  11649.  
  11650.  
  11651.  
  11652.  
  11653.  
  11654.  
  11655.  
  11656.                                    - 177 -
  11657.           3)    When the pick-list of control files is displayed,
  11658.                 position the cursor-bar on Other and press <ENTER>.
  11659.                 You will be prompted to enter a filename to edit.
  11660.                 Since the editor is geared towards editing files that
  11661.                 exist in the RemoteAccess system directory, you'll
  11662.                 need to specify a path as a part of the filename to
  11663.                 edit. For example, if your text file directory is set
  11664.                 to \RA\TXTFILES and you want to edit a text file
  11665.                 called BIRTHDAY.ASC, you would enter:
  11666.           
  11667.                               TXTFILES\BIRTHDAY.ASC
  11668.           
  11669.           4)    Press <ENTER> to begin editing the text file.  If the
  11670.                 file exists, its contents will be displayed on your
  11671.                 screen. If the file does not exist, it will be created
  11672.                 and an empty display will be shown.
  11673.           
  11674.           Control codes can be single control characters, a single
  11675.           control character followed by another character, or even a
  11676.           multiple-character parameter (in the case of color control
  11677.           codes and language prompt numbers).  All of these are
  11678.           outlined in the tables contained in this chapter.  For
  11679.           example, the control code that causes RemoteAccess to pause
  11680.           until the user presses the <ENTER> key is the single
  11681.           character ^A code.  Use the following steps to enter this
  11682.           code:
  11683.           
  11684.           5)    To instruct the editor that you are about to enter a
  11685.                 control character, press and hold down the CTRL key
  11686.                 while pressing the "P" key.  This informs the editor
  11687.                 that the next key pressed is to be considered a
  11688.                 literal control character.
  11689.           
  11690.           6)    Press and hold down the CTRL key while pressing the
  11691.                 "A" key.  Depending on the editor you're using, you
  11692.                 may see a small smiling face symbol or, if you're
  11693.                 using the control file editor in RACONFIG, you'll see
  11694.                 a highlighted "A" character.  This is how the ^A
  11695.                 character appears in the text editor.
  11696.           
  11697.           Now press the BACKSPACE key, deleting the control code
  11698.           you've just entered.  Control codes can also be multiple-
  11699.           character codes. These codes consist of a control character
  11700.           followed by a regular, non-control character and possibly an
  11701.           additional parameter.  For example, the control code which
  11702.           displays the user's full name is ^FA which consists of a ^F
  11703.           character immediately followed by the A character.  Enter
  11704.           this two-character code:
  11705.           
  11706.           7)    To instruct the editor that you are about to enter a
  11707.                 control character, press and hold down the CTRL key
  11708.                 while pressing the "P" key.  This informs the editor
  11709.                 that the next key pressed is to be considered a
  11710.                 literal character.
  11711.  
  11712.  
  11713.  
  11714.  
  11715.  
  11716.  
  11717.  
  11718.  
  11719.  
  11720.                                    - 178 -
  11721.           8)    Press and hold down the CTRL key while pressing the
  11722.                 "F" key.  Depending on the editor you're using, you
  11723.                 may see a small spade character or, if you're using
  11724.                 the control file editor in RACONFIG, you'll see a
  11725.                 highlighted "F" character.  This is how the ^F
  11726.                 character appears in the text editor.
  11727.           
  11728.           9)    Now simply press the "A" character.  If you're using
  11729.                 the control file editor, the two-character code
  11730.                 appears as a highlighted "F" character followed by the
  11731.                 "A" character (^FA).  If you're using another text
  11732.                 file editor, you may see a spade character followed by
  11733.                 the "A" character. This is how the complete
  11734.                 two-character code appears in the text editor you're
  11735.                 using.
  11736.           
  11737.           Now press the BACKSPACE key, until the control code that
  11738.           you've just entered is deleted.  Since you're working with
  11739.           the text file BIRTHDAY.ASC, continue on to enter a simple
  11740.           happy birthday message which will be displayed to your users
  11741.           on their birthday.
  11742.           
  11743.           10)   Enter the following text, pressing <ENTER> at the end
  11744.                 of each line:
  11745.  
  11746.                 ┌──────────────────────────────────────────────────┐
  11747.                 │ Happy Birthday to ^FA from the Sysop and all the │
  11748.                 │ users of this BBS!                               │
  11749.                 │                                                  │
  11750.                 │ Press (Enter) to continue^A                      │
  11751.                 └──────────────────────────────────────────────────┘
  11752.           
  11753.           11)   If you're using the control file editor, press the
  11754.                 <ESCAPE> key and save the changes that have been made
  11755.                 to BIRTHDAY.ASC.  If you're using another editor,
  11756.                 execute the appropriate save command.
  11757.           
  11758.           You've just created your first text file with embedded
  11759.           control codes!  When the BIRTHDAY.ASC file is presented to
  11760.           your users, it will display the message you've just entered,
  11761.           substituting the user's full name in place of the ^FA code.
  11762.           When the ^A control code is encountered, RemoteAccess will
  11763.           pause until the user presses <ENTER>.
  11764.  
  11765.           But what about variations of the text file for users with
  11766.           ANSI or AVATAR emulations enabled?  Shareware software
  11767.           programs are readily available and can usually be obtained
  11768.           by calling a BBS in your area.  One recommendation would be
  11769.           to obtain an ANSI drawing program that suits your needs and
  11770.           then use the conversion program AVTCONV.EXE to create AVATAR
  11771.           variations of the ANSI files you create.  The AVTCONV.EXE
  11772.           program is fully described in the Reference Information
  11773.           chapter.
  11774.  
  11775.           Now that you know how to enter control codes within your
  11776.           text files, take a look at the tables in the following
  11777.           section which outline the control codes available.
  11778.           
  11779.  
  11780.  
  11781.  
  11782.  
  11783.  
  11784.                                    - 179 -
  11785.           CONTROL CODES LISTING
  11786.  
  11787.           There are a four categories of control codes.  They are;
  11788.           system function, system data, user data and color control
  11789.           codes.  You'll find that system function control codes are
  11790.           single-character control codes while the others are
  11791.           multiple-character codes. This section outlines each
  11792.           category in the order just listed.
  11793.           
  11794.  
  11795.           System Function Codes
  11796.           ────────────────────────────────────────────────────────────
  11797.           System function codes are single-character control codes
  11798.           that are used to perform certain system functions such as
  11799.           turning page pausing on or off, or waiting for the user to
  11800.           press <ENTER>.
  11801.           
  11802.           ASCII
  11803.           Character  Control
  11804.           Number     Code     Function Performed
  11805.           ────────────────────────────────────────────────────────────
  11806.           01         ^A       Wait until the <ENTER> key is pressed.
  11807.           02         ^B       Disable aborting with the S key.
  11808.           03         ^C       Enable aborting with the S key.
  11809.           04         ^D       Enable the Continue? prompt (turns on
  11810.                               page pausing).
  11811.           05         ^E       Disable the Continue? prompt (turns off
  11812.                               page pausing).
  11813.           06         ^F       Insert a user parameter (see user data
  11814.                               codes).
  11815.           07         ^G       Produce a beep on the caller's console.
  11816.           08         ^H       Backspace.  Backs the cursor up one
  11817.                               character, deleting the character to the
  11818.                               left.
  11819.           09         ^I       Tab (moves the cursor forward 8
  11820.                               characters).
  11821.           10         ^J       Linefeed.
  11822.           11         ^K       Insert a system parameter (see system
  11823.                               data codes).
  11824.           12         ^L       Clear the screen.
  11825.           13         ^M       Carriage return.
  11826.           17         ^Q       Reserved for XON/XOFF handshaking.
  11827.           19         ^S       Reserved for XON/XOFF handshaking.
  11828.           22         ^V       Reserved for AVATAR.
  11829.           23         ^W       Pause for one second.
  11830.           24         ^X       Execute a program in a DOS shell (see
  11831.                               description immediately following this
  11832.                               table).
  11833.           26         ^Z       END OF FILE marker.  Do not use this!
  11834.           
  11835.           The ^X control code is used to execute a program in a DOS
  11836.           shell.  This gives you the ability to run an external
  11837.           program whenever RemoteAccess encounters a ^X embedded in a
  11838.           text file.  The ^X code is followed by the command line you
  11839.           want to execute, and is terminated by the pipe symbol |
  11840.           character.
  11841.  
  11842.  
  11843.  
  11844.  
  11845.  
  11846.  
  11847.  
  11848.                                    - 180 -
  11849.           NOTE:  RemoteAccess will only shell to DOS from within text
  11850.           files when enabled in RACONFIG:
  11851.           
  11852.                         Options > System > Text shells
  11853.           
  11854.           For example, to run an external program called MAILCHEK.EXE
  11855.           from within a text file you could embed the following into a
  11856.           text file:
  11857.           
  11858.                         ^X\RA\MAILCHEK.EXE *B *F *L |
  11859.           
  11860.           When this code is encountered, RemoteAccess would run the
  11861.           MAILCHEK.EXE program located in the \RA directory, passing
  11862.           the caller's baudrate, first name and last name as
  11863.           parameters on the command line.  This would have the same
  11864.           effect as typing the DOS command:
  11865.           
  11866.                  \RA\MAILCHEK.EXE  2400  FirstName  LastName
  11867.           
  11868.           The command must be terminated with the pipe symbol |
  11869.           character.  All special DOS shell control codes may be used
  11870.           here just as they are used in menu function type 7-"Run an
  11871.           external program in a shell".  See the Menu Administration
  11872.           chapter for complete information on these control code
  11873.           parameters.
  11874.           
  11875.           NOTE:  Use this feature with caution!  Imagine the damage
  11876.           that the following embedded command could do:
  11877.           
  11878.                       COPY \RA\USERS.BBS \DLOAD\GENFILES
  11879.           
  11880.           If there is any possibility of a user being able to modify
  11881.           any of the text files that your system displays, then
  11882.           disable Text shells in RACONFIG.
  11883.           
  11884.  
  11885.           System Data Codes
  11886.           ────────────────────────────────────────────────────────────
  11887.           System data codes are used to display data about the overall 
  11888.           system.  These codes are multiple-character codes and always 
  11889.           begin with the ^K character.
  11890.           
  11891.  
  11892.  
  11893.  
  11894.  
  11895.  
  11896.  
  11897.  
  11898.  
  11899.  
  11900.  
  11901.  
  11902.  
  11903.  
  11904.  
  11905.  
  11906.  
  11907.  
  11908.  
  11909.  
  11910.  
  11911.  
  11912.                                    - 181 -
  11913.           ASCII
  11914.           Character  Control
  11915.           Number     Code     Information Displayed
  11916.           ────────────────────────────────────────────────────────────
  11917.           33         ^K!      Display another text file. This code
  11918.                               should be followed by a 1-8 character
  11919.                               filename (no extension) and must be
  11920.                               terminated by the pipe symbol "|"
  11921.                               character.  (i.e. ^K!BBSRULES| would
  11922.                               display the BBSRULES.A?? text file).
  11923.  
  11924.                               This control code may be nested by
  11925.                               displaying a text file from another text
  11926.                               file to the limit of available memory.
  11927.                               {+} Registered only.
  11928.  
  11929.           48         ^K0      Number of messages in selected area.
  11930.           49         ^K1      Number of the current template message
  11931.                               area.
  11932.           50         ^K2      Number of current template file area.
  11933.           65         ^KA      Total system calls.
  11934.           66         ^KB      Name of last caller (any node).
  11935.           68         ^KD      Starting message number of currently
  11936.                               selected area.
  11937.           69         ^KE      Ending message number of currently
  11938.                               selected area.
  11939.           70         ^KF      Number of times user has paged the Sysop
  11940.                               during this session.
  11941.           71         ^KG      Day of the week (full form).
  11942.           72         ^KH      Number of users in the user file.
  11943.           73         ^KI      Time in 24-hour format.
  11944.           74         ^KJ      Today's date.
  11945.           75         ^KK      Minutes connected this call.
  11946.           76         ^KL      Seconds connected (always returns zero).
  11947.           77         ^KM      Minutes used today.
  11948.           78         ^KN      Seconds used today (always returns
  11949.                               zero).
  11950.           79         ^KO      Minutes remaining today.
  11951.           80         ^KP      Seconds remaining today (always returns
  11952.                               zero).
  11953.           81         ^KQ      Daily time limit.
  11954.           82         ^KR      Connect speed.
  11955.           83         ^KS      Day of the week (abbreviated form).
  11956.           84         ^KT      Daily download limit (in Kb).
  11957.           85         ^KU      Minutes until next system event.
  11958.           86         ^KV      24 hour format time of the next event.
  11959.           87         ^KW      Node number (as set on command line).
  11960.           88         ^KX      Terminates the current call.
  11961.           89         ^KY      Name of current template message area.
  11962.           90         ^KZ      Name of current template file area.
  11963.           91         ^K[cc    Change foreground and background color
  11964.                               to cc.  See the Color Codes table in
  11965.                               this chapter for details.
  11966.           92         ^K/      Clear to end of the current line.
  11967.           93         ^K[nnn   Displays the language prompt number nnn
  11968.                               from the currently selected language.
  11969.                               Since this code is nearly identical to
  11970.                               the change color code, nnn must be a
  11971.                               three-digit number.
  11972.  
  11973.  
  11974.  
  11975.  
  11976.                                    - 182 -
  11977.           User Data Codes
  11978.           ────────────────────────────────────────────────────────────
  11979.           User data codes are used to display information about the
  11980.           user who is currently logged-on.  In the following table,
  11981.           settings that return the state of a toggle, are indicated.
  11982.           For example, ^F0 will display the word ON or OFF depending
  11983.           on the status of the current user's full-screen editor
  11984.           toggle.
  11985.  
  11986.           ASCII
  11987.           Character  Control
  11988.           Number     Code     Information Displayed
  11989.           ────────────────────────────────────────────────────────────
  11990.           33         ^F!      User's default protocol setting.
  11991.           34         ^F"      User's exclude echomail areas from mail
  11992.                               scans setting.  If echomail areas are
  11993.                               excluded from the user's mail-box scan,
  11994.                               this returns ON, otherwise returns OFF.
  11995.           35         ^F#      User's current file group.
  11996.           36         ^F$      User's address line 1.
  11997.           37         ^F%      User's address line 2.
  11998.           38         ^F&      User's address line 3.
  11999.           39         ^F'      User's sex (Male/Female).
  12000.           40         ^F(      User's Post Billing flag setting
  12001.                               (ON/OFF).
  12002.           41         ^F)      User's current message group.
  12003.           42         ^F*      Current file group number.
  12004.           43         ^F+      Current message group number.
  12005.           48         ^F0      User's current full-screen editor
  12006.                               setting (ON/OFF).
  12007.           49         ^F1      Current do not disturb setting (ON/OFF).
  12008.           50         ^F2      Current Hot-Key setting (ON/OFF).
  12009.           51         ^F3      User's handle.
  12010.           52         ^F4      Date of user's first call to the system.
  12011.           53         ^F5      User's date of birth.
  12012.           54         ^F6      Subscription expiration date.
  12013.           55         ^F7      Days until subscription expiration.
  12014.           56         ^F8      Current AVATAR setting (ON/OFF).
  12015.           57         ^F9      File ratio (number of files).
  12016.           58         ^F:      File ratio (kilobytes).
  12017.           59         ^F;      Current full-screen message viewer
  12018.                               setting (ON/OFF).
  12019.           60         ^F<      Selected date format.
  12020.           61         ^F=      Current auto-message-forwarding setting
  12021.                               (ON/OFF).
  12022.           62         ^F>      Name (if any) of message forwardee.
  12023.           65         ^FA      User's full name.
  12024.           66         ^FB      User's location.
  12025.           68         ^FD      Business/Data telephone number.
  12026.           69         ^FE      Voice/Home telephone number.
  12027.           70         ^FF      Date of last call.
  12028.           71         ^FG      Time of last call.
  12029.           72         ^FH      A Flags setting.
  12030.           73         ^FI      B Flags setting.
  12031.           74         ^FJ      C Flags setting.
  12032.           75         ^FK      D Flags setting.
  12033.           76         ^FL      Credits remaining (cents).  The value
  12034.                               displayed by this code uses the formula:
  12035.           
  12036.                               (Credit - NetPending - SessionCost)
  12037.           
  12038.  
  12039.  
  12040.                                    - 183 -
  12041.                               Therefore, if a user has 25 credits and
  12042.                               has 15 pending credits and the current
  12043.                               session cost in credits is 5, the value
  12044.                               displayed with this macro would be 5.
  12045.           77         ^FM      Total messages posted.
  12046.           78         ^FN      Last message read.
  12047.           79         ^FO      Security level.
  12048.           80         ^FP      Total calls to the BBS.
  12049.           81         ^FQ      Number of files uploaded.
  12050.           82         ^FR      Kilobytes uploaded.
  12051.           83         ^FS      Number of files downloaded.
  12052.           84         ^FT      Kilobytes downloaded.
  12053.           85         ^FU      Minutes used today.
  12054.           86         ^FV      Current screen length setting.
  12055.           87         ^FW      User's first name only.
  12056.           88         ^FX      ANSI setting (ON/OFF).
  12057.           89         ^FY      Continue? prompt setting (ON/OFF).
  12058.           90         ^FZ      Screen clearing setting (ON/OFF).
  12059.           
  12060.           
  12061.           Color Control Codes
  12062.           ────────────────────────────────────────────────────────────
  12063.           Color code numbers are used throughout RemoteAccess.  They
  12064.           can be put to work in the file list template defined in
  12065.           RACONFIG:
  12066.           
  12067.                         Options > Files > List Format
  12068.           
  12069.           Color codes can also be used to define colors used in menu
  12070.           displays, language prompts, text files and even
  12071.           questionnaires. Color codes are entered using the ^K[
  12072.           control code followed by a two-digit code which represents
  12073.           the background and foreground colors to be used.  These are
  12074.           specified as hexadecimal values.  If you aren't familiar
  12075.           with hexadecimal representation, a table has been provided
  12076.           in this section which contains a cross-reference.
  12077.  
  12078.           Something worth noting at this point is the fact that you
  12079.           can specify a color number that would cause the foreground
  12080.           color to be flashing.  This is actually accomplished by
  12081.           adding 8 to the value of the background color number.  For
  12082.           example, to make the specified foreground color flash on a
  12083.           black background (color number 0), you would specify a
  12084.           background color of 8 (0 + 8 = 8).
  12085.  
  12086.           The following tables list the hexadecimal color numbers for
  12087.           the background and foreground colors.  The background color
  12088.           numbers specified indicate which numbers should be used to
  12089.           achieve the specified color with and without a flashing
  12090.           foreground.
  12091.           
  12092.  
  12093.  
  12094.  
  12095.  
  12096.  
  12097.  
  12098.  
  12099.  
  12100.  
  12101.  
  12102.  
  12103.  
  12104.                                    - 184 -
  12105.                        Color number if no       Color number if a
  12106.           Background   flashing foreground is   flashing foreground is
  12107.           Color        desired                  desired
  12108.           ────────────────────────────────────────────────────────────
  12109.           Black                0                        8
  12110.           Blue                 1                        9
  12111.           Green                2                        A
  12112.           Cyan                 3                        B
  12113.           Red                  4                        C
  12114.           Magenta              5                        D
  12115.           Brown                6                        E
  12116.           Gray                 7                        F
  12117.           
  12118.  
  12119.           Foreground     Color
  12120.           Color          Number
  12121.           ─────────────────────────
  12122.           Black            0
  12123.           Blue             1
  12124.           Green            2
  12125.           Cyan             3
  12126.           Red              4
  12127.           Magenta          5
  12128.           Brown            6
  12129.           Gray             7
  12130.           Dark Gray        8
  12131.           Light Blue       9
  12132.           Light Green      A
  12133.           Light Cyan       B
  12134.           Light Red        C
  12135.           Light Magenta    D
  12136.           Yellow           E
  12137.           White            F
  12138.           
  12139.           To familiarize yourself with this scheme, examine the color
  12140.           number examples shown below.  Cross reference each example
  12141.           with the color number tables so you understand the color
  12142.           numbering scheme:
  12143.           
  12144.           34    Red foreground on a cyan background.
  12145.           01    Blue foreground on a black background.
  12146.           BF    Flashing white foreground on a cyan background.
  12147.           BA    Flashing light green foreground on a cyan background.
  12148.           
  12149.  
  12150.           TEXT FILES LISTING
  12151.  
  12152.           All text files that RemoteAccess automatically looks for are 
  12153.           listed below.  The conditions that must be met in order for the 
  12154.           text file to be displayed are listed for each text file.  As 
  12155.           mentioned earlier, each file for which RemoteAccess will 
  12156.           supply a brief default message, is marked with the * 
  12157.           character.
  12158.  
  12159.  
  12160.  
  12161.  
  12162.  
  12163.  
  12164.  
  12165.  
  12166.  
  12167.  
  12168.                                    - 185 -
  12169.           NOTE:  In most cases, it is recommended that your text file
  12170.           contain a prompt for the user to press <ENTER> at the end of
  12171.           the file.  This not only gives your users ample time to read
  12172.           the text file but also provides a pause between screen
  12173.           clearing codes, in some instances, where the text file might
  12174.           normally be cleared from the display before the user has had
  12175.           a chance to view the file. See the Control Codes section
  12176.           later in this chapter for details on the ^A control code.
  12177.  
  12178.           
  12179.           1ATATIME.A??  *
  12180.           ────────────────────────────────────────────────────────────
  12181.           This file is displayed if a user tries to log-on to more
  12182.           than one node (line) at the same time provided that the
  12183.           multi-line check option has been enabled in RACONFIG:
  12184.           
  12185.                        Options > System > Check multi
  12186.  
  12187.  
  12188.           ALTNEWS.A??
  12189.           ────────────────────────────────────────────────────────────
  12190.           This file is displayed only if the NEWS.A?? file was not
  12191.           displayed to the user because the user requested to skip it
  12192.           during an IEMSI session.  If you want all users to see your
  12193.           system news file regardless, simply copy NEWS.A?? to
  12194.           ALTNEWS.A??.
  12195.  
  12196.           
  12197.           BADFILES.A??  *
  12198.           ────────────────────────────────────────────────────────────
  12199.           This file is displayed if the user attempts to upload a file
  12200.           that is listed in the BADFILES.CTL control file.
  12201.  
  12202.           
  12203.           BADPWD.ASC  *
  12204.           ────────────────────────────────────────────────────────────
  12205.           This file is displayed when a user enters an incorrect
  12206.           password and elects to leave a message to the Sysop.  For
  12207.           example, if a user enters an incorrect password more than
  12208.           the maximum allowable password tries defined in RACONFIG,
  12209.           RemoteAccess will offer an opportunity to leave a message to
  12210.           the Sysop.  If the user elects to leave a message, this file
  12211.           is displayed prior to loading the message editor.
  12212.           
  12213.           The maximum number of password tries can be defined in
  12214.           RACONFIG:
  12215.           
  12216.                            Options > System > Pwd tries
  12217.  
  12218.  
  12219.  
  12220.  
  12221.  
  12222.  
  12223.  
  12224.  
  12225.  
  12226.  
  12227.  
  12228.  
  12229.  
  12230.  
  12231.  
  12232.                                    - 186 -
  12233.           BIRTHDAY.A??
  12234.           ────────────────────────────────────────────────────────────
  12235.           This file is displayed during the log-on process if the
  12236.           current date is the same as the user's date of birth.
  12237.           
  12238.           NOTE:  RemoteAccess prompts for and records user birth dates
  12239.           during the new user log-on process provided that the
  12240.           Birthdate option is enabled in RACONFIG:
  12241.           
  12242.                          Options > New users > Birthdate
  12243.           
  12244.           If RemoteAccess does not know the user's birthdate, this
  12245.           file cannot be displayed.
  12246.  
  12247.           
  12248.           DATEFMT.A??
  12249.           ────────────────────────────────────────────────────────────
  12250.           This text file is displayed just before a user is prompted
  12251.           to enter a date format.  This occurs when; a) menu function
  12252.           type 64-"Select a new date format" is executed, and; b) when
  12253.           a user logs-on for the first time and your system is
  12254.           configured to allow users to select their individual date
  12255.           formats.  To allow users to select a date format, set the
  12256.           Date format to Ask in RACONFIG:
  12257.           
  12258.                         Options > New users > Date format
  12259.  
  12260.  
  12261.           DOBCHECK.A??
  12262.           ────────────────────────────────────────────────────────────
  12263.           This text file is displayed to a user prior to prompting for
  12264.           a correct date of birth.  This occurs during the new user
  12265.           log-on process (if enabled) as well as when prompting a user
  12266.           to enter a date of birth for verification purposes.
  12267.           
  12268.           See RACONFIG:
  12269.  
  12270.                      Options > New users > Birthdate
  12271.                       Options > System > Check DOB
  12272.  
  12273.  
  12274.           DNLDHRS.A??  *
  12275.           ────────────────────────────────────────────────────────────
  12276.           This file is displayed if a user attempts to download at a
  12277.           time that is outside of the scheduled download hours as
  12278.           defined in RACONFIG:
  12279.           
  12280.               Options > Files > Download start / Download end
  12281.           
  12282.  
  12283.           EDITHELP.A??
  12284.           ────────────────────────────────────────────────────────────
  12285.           This text file is displayed if the user asks for help while
  12286.           using the built-in message editor.
  12287.  
  12288.  
  12289.  
  12290.  
  12291.  
  12292.  
  12293.  
  12294.  
  12295.  
  12296.                                    - 187 -
  12297.           ENDCHT.A??  *
  12298.           ────────────────────────────────────────────────────────────
  12299.           This text file is displayed when the Sysop terminates a chat
  12300.           session.
  12301.           
  12302.  
  12303.           EXPIRED.A??  *
  12304.           ────────────────────────────────────────────────────────────
  12305.           This is displayed during the log-on process if the user's
  12306.           password has expired, just before the user is prompted to
  12307.           enter a new password.
  12308.           
  12309.           NOTE:  User passwords will only expire if defined in
  12310.           RACONFIG:
  12311.           
  12312.                       Options > System > Pwd change
  12313.           
  12314.  
  12315.           FILEAREA.A??  *
  12316.           ────────────────────────────────────────────────────────────
  12317.           If present, this file will be displayed when menu function
  12318.           type 50-"Select file area" is executed.  If this file does
  12319.           not exist, RemoteAccess displays a formatted, hard-coded
  12320.           list.
  12321.  
  12322.  
  12323.           FLA#####.A??
  12324.           ────────────────────────────────────────────────────────────
  12325.           This text file is displayed once only to a user when an
  12326.           individual file area (specified as #####) is entered for
  12327.           browsing.  This is great for displaying a file which
  12328.           explains guidelines for a given area.  For example, the file
  12329.           FLA23.A?? would be displayed to a user who browsed files in
  12330.           file area 23 for the first time.  Simply substitute ##### in
  12331.           the filename with the file area number (no zero padding).
  12332.           {+} Registered only.
  12333.           
  12334.               Correct:    FLA1.A??
  12335.  
  12336.                 Incorrect:      FLA00001.A??
  12337.           
  12338.  
  12339.           GOODBYE.A??
  12340.           ────────────────────────────────────────────────────────────
  12341.           This file is displayed when a user elects to log-off, just
  12342.           before the session is terminated.
  12343.           
  12344.  
  12345.           GROUP#.A??
  12346.           ────────────────────────────────────────────────────────────
  12347.           These files are displayed to users of a particular group
  12348.           directly after the SEC#.A?? file.  For example, the file
  12349.           GROUP1.A?? would be displayed to all users who are in group
  12350.           1.
  12351.  
  12352.  
  12353.  
  12354.  
  12355.  
  12356.  
  12357.  
  12358.  
  12359.  
  12360.                                    - 188 -
  12361.           GUEST.A??
  12362.           ────────────────────────────────────────────────────────────
  12363.           This file is displayed whenever a guest logs-on using a
  12364.           guest account as defined in RAMGR.  See the User
  12365.           Administration chapter for details on guest accounts.
  12366.           
  12367.  
  12368.           HANDLE.A??
  12369.           ────────────────────────────────────────────────────────────
  12370.           This file is displayed just before the user is prompted to
  12371.           choose a new handle.  This occurs both when menu function
  12372.           type 60-"Change handle" is executed, or when a new user
  12373.           logs-on and handles are enabled in RACONFIG:
  12374.           
  12375.                        Options > New users > Handle
  12376.           
  12377.  
  12378.           LANGUAGE.A??  *
  12379.           ────────────────────────────────────────────────────────────
  12380.           This file is displayed (if it exists) in place of the
  12381.           hard-coded, internal language selection menu.
  12382.           
  12383.  
  12384.           LOCKOUT.A??  *
  12385.           ────────────────────────────────────────────────────────────
  12386.           This file is displayed if the Sysop presses ALT-L while a
  12387.           user is on-line, to lock the user out of the system.  See
  12388.           the Sysop Keys and Status Bar section of the Reference
  12389.           Information chapter for more information on the ALT-L
  12390.           command.
  12391.  
  12392.  
  12393.           LOGO.A??
  12394.           ────────────────────────────────────────────────────────────
  12395.           This file is displayed as soon as a connection is
  12396.           established (even before callers are prompted to enter their
  12397.           log-on name). RemoteAccess will attempt to automatically
  12398.           detect whether the remote terminal supports ANSI emulation.
  12399.           If ANSI emulation is detected, the .ANS variation of this
  12400.           file will be displayed, if it exists.
  12401.           
  12402.           NOTE:  This file is not displayed when logging-on locally if
  12403.           fast log-ons are enabled in RACONFIG:
  12404.           
  12405.                       Options > System > Fast logons
  12406.           
  12407.  
  12408.  
  12409.  
  12410.  
  12411.  
  12412.  
  12413.  
  12414.  
  12415.  
  12416.  
  12417.  
  12418.  
  12419.  
  12420.  
  12421.  
  12422.  
  12423.  
  12424.                                    - 189 -
  12425.           MAILHELP.A??
  12426.           ────────────────────────────────────────────────────────────
  12427.           This text file is displayed if the user asks for help at the
  12428.           mailbox scan prompt.
  12429.           
  12430.           The user is only offered the help prompt if this file
  12431.           exists.  For example, the default prompt for the English
  12432.           language when MAILHELP.A?? does not exist:
  12433.           
  12434.                 Read mail now? [Y/n]: _
  12435.           
  12436.           And when MAILHELP.A?? does exist:
  12437.           
  12438.                 Read mail now? [Y/n/?]: _
  12439.           
  12440.  
  12441.           MAXPAGE.A??  *
  12442.           ────────────────────────────────────────────────────────────
  12443.           This is displayed if a user tries to page the Sysop for a
  12444.           chat more than the number of times allowed as defined in
  12445.           RACONFIG:
  12446.           
  12447.                         Options > Paging > Max number
  12448.  
  12449.           
  12450.           MGA#####.A??
  12451.           ────────────────────────────────────────────────────────────
  12452.           This text file is displayed once only to a user when an
  12453.           individual message area is entered for reading.  This is
  12454.           great for displaying a file which explains guidelines for a
  12455.           given area. For example, the file MGA5.A?? would be
  12456.           displayed to a user who selected to read messages in area 5
  12457.           for the first time. Simply substitute ##### in the filename
  12458.           with the message area number (no zero padding).
  12459.           {+} Registered only.
  12460.           
  12461.               Correct:    MGA5.A??
  12462.           
  12463.               Incorrect:    MGA00005.A??
  12464.           
  12465.  
  12466.           MGR#####.A??
  12467.           ────────────────────────────────────────────────────────────
  12468.           This file is displayed, if it exists, when a user selects a
  12469.           new message area within the currently selected message
  12470.           group, via menu function type 49-"Select message area".
  12471.           When using menu function type 49 with the /MG or /MG=<group
  12472.           number> parameters, RemoteAccess displays the text file
  12473.           MGR<group number>.A?? (if it exists) rather than the
  12474.           formatted, hard-coded list.  See the Menu Administration
  12475.           chapter for details on message groups.
  12476.  
  12477.  
  12478.  
  12479.  
  12480.  
  12481.  
  12482.  
  12483.  
  12484.  
  12485.  
  12486.  
  12487.  
  12488.                                    - 190 -
  12489.           MGROUPS.A??
  12490.           ────────────────────────────────────────────────────────────
  12491.           This file is displayed in place of the formatted, hard-coded
  12492.           message area group list, if it exists, when a user selects a
  12493.           new message group via menu function type 49-"Select message
  12494.           area".  When the /MG=0 parameter is specified in the
  12495.           optional data field of a menu function type 49, the user is
  12496.           presented with either the internal listing (if this file
  12497.           does not exist) or this text file.
  12498.  
  12499.           For full details on message group implementation, see the
  12500.           chapter on Menu Administration.
  12501.  
  12502.  
  12503.           MM-DD.A??
  12504.           ────────────────────────────────────────────────────────────
  12505.           RemoteAccess can display a text file on a particular day of
  12506.           the year.  Imagine sending a Happy New Year! message on the
  12507.           first day of January every year without intervention.
  12508.           Simply create a text file named MM-DD.A?? where MM is the
  12509.           month number and DD is the day number.  Both values must be
  12510.           padded with a leading zero if the number is less than ten.
  12511.           For example, the file 01-01.A?? would be displayed to users
  12512.           on the first of January.
  12513.           
  12514.  
  12515.           MSGAREA.A??  *
  12516.           ────────────────────────────────────────────────────────────
  12517.           If this file exists, it is displayed when a user is prompted
  12518.           to select a message area via menu function type 49-"Select
  12519.           message area".  If this file does not exist, a formatted
  12520.           default list is displayed.
  12521.           
  12522.  
  12523.           NEWS.A??
  12524.           ────────────────────────────────────────────────────────────
  12525.           This file is intended for use as a general news bulletin
  12526.           that is displayed after RemoteAccess checks for waiting
  12527.           mail.  If your system is not configured to check for new
  12528.           mail during the log- on process, then this file is displayed
  12529.           directly after the WELCOME.A?? file.
  12530.           
  12531.           To define whether or not your system checks for unread mail
  12532.           during the log-on process, see RACONFIG:
  12533.           
  12534.                     Options > Messages > Logon.Newmail
  12535.           
  12536.  
  12537.  
  12538.  
  12539.  
  12540.  
  12541.  
  12542.  
  12543.  
  12544.  
  12545.  
  12546.  
  12547.  
  12548.  
  12549.  
  12550.  
  12551.  
  12552.                                    - 191 -
  12553.           NEWUSER1.A??
  12554.           ────────────────────────────────────────────────────────────
  12555.           This text file is displayed to new users after they confirm
  12556.           that their log-on name has been entered correctly.  For
  12557.           example, when a new user enters a log-on name that
  12558.           RemoteAccess cannot locate in the user database, it is
  12559.           possible that the user typed an incorrect name.  Therefore,
  12560.           RemoteAccess prompts the user to confirm that the log-on
  12561.           name was entered correctly:
  12562.           
  12563.              ┌────────────────────────────────────────────────────┐
  12564.              │ Please enter your full name:  Andrew Milner        │
  12565.              │                                                    │
  12566.              │ Scanning the user file ...                         │
  12567.              │                                                    │
  12568.              │ Your name was not located in the system user file. │
  12569.              │                                                    │
  12570.              │ Name entered:  Andrew Milner.                      │
  12571.              │                                                    │
  12572.              │ Did you enter your name correctly (Y/n)? _         │
  12573.              └────────────────────────────────────────────────────┘
  12574.           
  12575.           If the user confirms that the log-on name was correctly 
  12576.           entered, NEWUSER1.A?? is displayed.
  12577.           
  12578.  
  12579.           NEWUSER2.A??
  12580.           ────────────────────────────────────────────────────────────
  12581.           This is displayed after a new user confirms that all user
  12582.           information (i.e. name, location, phone numbers, etc.) has
  12583.           been entered correctly.
  12584.  
  12585.           
  12586.           NO300.ASC  *
  12587.           ────────────────────────────────────────────────────────────
  12588.           This file is displayed if a 300 BPS caller attempts to
  12589.           log-on during hours when 300 BPS connections are not allowed
  12590.           as defined in RACONFIG:
  12591.           
  12592.                Options > Restrictions > No300 Start / No300 End
  12593.  
  12594.  
  12595.           NOCREDIT.A??  *
  12596.           ────────────────────────────────────────────────────────────
  12597.           This text file is displayed when a user attempts to enter a
  12598.           netmail message or download a file, which have an associated
  12599.           cost in credits, but does not have sufficient credits
  12600.           remaining on account to perform the function.  It is also
  12601.           displayed when a user attempts to download a file which has
  12602.           an associated cost (in credits) which is greater than the
  12603.           credits remaining in the user's account.
  12604.           
  12605.  
  12606.  
  12607.  
  12608.  
  12609.  
  12610.  
  12611.  
  12612.  
  12613.  
  12614.  
  12615.  
  12616.                                    - 192 -
  12617.           NOTAVAIL.A??  *
  12618.           ────────────────────────────────────────────────────────────
  12619.           This text file is displayed if a user tries to page the
  12620.           Sysop for a chat when the current time is outside scheduled
  12621.           paging hours, as defined in RACONFIG:
  12622.           
  12623.                                Options > Paging
  12624.  
  12625.           
  12626.           NOTFOUND.ASC  *
  12627.           ────────────────────────────────────────────────────────────
  12628.           This file is displayed if RemoteAccess cannot locate the
  12629.           name of a user at log-on, but before the user is asked to
  12630.           confirm that the log-on name has been entered correctly.
  12631.           
  12632.  
  12633.           NOTSYSOP.A??  *
  12634.           ────────────────────────────────────────────────────────────
  12635.           This file is displayed if a user attempts to post a message
  12636.           addressed to Sysop in an EchoMail message area.  Since
  12637.           EchoMail messages are distributed to numerous systems,
  12638.           messages addressed to Sysop cannot be allowed for obvious
  12639.           reasons.
  12640.           
  12641.  
  12642.           ONCEONLY.A??
  12643.           ────────────────────────────────────────────────────────────
  12644.           This file is displayed just after the NEWS.A?? file.  It is
  12645.           displayed once only when the file has been altered since the
  12646.           user last viewed it.
  12647.           
  12648.  
  12649.           PAGEABRT.A??  *
  12650.           ────────────────────────────────────────────────────────────
  12651.           This file is displayed if the Sysop chooses to abort a page
  12652.           for chat by the user.
  12653.           
  12654.  
  12655.           PAGED.A??
  12656.           ────────────────────────────────────────────────────────────
  12657.           This text file is displayed when the user pages the Sysop
  12658.           for a chat, but the Sysop does not answer the page.  This
  12659.           file might contain a message informing the user that the
  12660.           Sysop has been paged and will break-in for a chat if
  12661.           available.  The user is also prompted to leave a message to
  12662.           the Sysop when the page is unanswered.
  12663.           
  12664.  
  12665.           PASSWORD.A??
  12666.           ────────────────────────────────────────────────────────────
  12667.           This file is displayed before the user is asked to select a
  12668.           new password.  This file should stress the importance of
  12669.           choosing a suitable password.
  12670.           
  12671.  
  12672.  
  12673.  
  12674.  
  12675.  
  12676.  
  12677.  
  12678.  
  12679.  
  12680.                                    - 193 -
  12681.           PRIVATE.ASC  *
  12682.           ────────────────────────────────────────────────────────────
  12683.           This file is displayed if a new user attempts to log-on when
  12684.           your BBS is configured as a private, pre-registration
  12685.           system. You can configure your BBS as a private system by
  12686.           setting the new user security level to 0 in RACONFIG:
  12687.           
  12688.                         Options > New users > Security
  12689.           
  12690.  
  12691.           RATIO.A??  *
  12692.           ────────────────────────────────────────────────────────────
  12693.           This file is displayed if the user attempts to download a
  12694.           file which would exceed the user's download-to-upload ratio
  12695.           by number of files.
  12696.           
  12697.  
  12698.           RATIOK.A??  *
  12699.           ────────────────────────────────────────────────────────────
  12700.           This file is displayed if the user attempts to download a
  12701.           file which would exceed the user's download-to-upload ratio
  12702.           by number of kilobytes (Kb).
  12703.           
  12704.  
  12705.           READHELP.A??
  12706.           ────────────────────────────────────────────────────────────
  12707.           This file is displayed if the user asks for help while
  12708.           reading messages.  Unlike the MAILHELP.A?? file, the help
  12709.           prompt is available whether or not this file exists.
  12710.  
  12711.  
  12712.           RTCHELP.A??
  12713.           ────────────────────────────────────────────────────────────
  12714.           This file is displayed when a user selects help from within
  12715.           a Real-Time Conference.
  12716.  
  12717.           
  12718.           RTCMHELP.A??
  12719.           ────────────────────────────────────────────────────────────
  12720.           This file is displayed when the moderator of a Real-Time
  12721.           Conference asks for help from within a conference.
  12722.           Moderators are afforded some administrative commands within
  12723.           Real-Time- Conferences.  Therefore, this file should include
  12724.           a bit more information than the RTCHELP.A?? file.
  12725.           
  12726.  
  12727.           SEC#.A??
  12728.           ────────────────────────────────────────────────────────────
  12729.           These files are displayed to users of a particular security
  12730.           level directly after the WELCOME.A?? file, but before the
  12731.           mail- check (if enabled).  For example, the file SEC10.A??
  12732.           (if present), would be displayed to all users with a
  12733.           security level of 10.
  12734.           
  12735.  
  12736.           STARTCHT.A??  *
  12737.           ────────────────────────────────────────────────────────────
  12738.           This text file is displayed when the Sysop breaks in for a
  12739.           chat using the ALT-C command.
  12740.  
  12741.  
  12742.  
  12743.  
  12744.                                    - 194 -
  12745.           TIMEhh.A??
  12746.           ────────────────────────────────────────────────────────────
  12747.           This file is displayed after the WELCOME.A?? and
  12748.           WELCOME1.A?? files when hh matches the current hour number
  12749.           (in 24 hour format).  For example, if the current time is
  12750.           8:00 pm (20:00) and the file TIME20.A?? exists, it is
  12751.           displayed to the user.
  12752.           
  12753.  
  12754.           TIMEWARN.A??  *
  12755.           ────────────────────────────────────────────────────────────
  12756.           This file is displayed during the log-on process if the
  12757.           user's time limit has been adjusted to accommodate an
  12758.           upcoming system event.
  12759.           
  12760.           NOTE:  When a user's time remaining is decreased due to an
  12761.           upcoming event, the time that is subtracted is restored if
  12762.           the user calls back on the same day after the system event
  12763.           has passed.
  12764.           
  12765.  
  12766.           TODAY.A??  *
  12767.           ────────────────────────────────────────────────────────────
  12768.           This file is displayed to users who attempt to download a
  12769.           file which would exceed the daily download limit as defined
  12770.           in RACONFIG:
  12771.           
  12772.                       Manager > Limits > Security Level
  12773.  
  12774.           
  12775.           TOOSLOW.ASC  *
  12776.           ────────────────────────────────────────────────────────────
  12777.           This file is displayed if a user attempts to log-on at a
  12778.           speed lower than the minimum required as defined in
  12779.           RACONFIG:
  12780.           
  12781.                      Options > Restrictions > Logon Speed
  12782.  
  12783.  
  12784.           TRASHCAN.ASC  *
  12785.           ────────────────────────────────────────────────────────────
  12786.           This file is displayed if a user enters a name that is found
  12787.           to contain a text string that has been included in the
  12788.           TRASHCAN.CTL control file.  See the Control Files section of
  12789.           this chapter for more information on control files.
  12790.  
  12791.  
  12792.  
  12793.  
  12794.  
  12795.  
  12796.  
  12797.  
  12798.  
  12799.  
  12800.  
  12801.  
  12802.  
  12803.  
  12804.  
  12805.  
  12806.  
  12807.  
  12808.                                    - 195 -
  12809.           UPLDSCAN.A??  *
  12810.           ────────────────────────────────────────────────────────────
  12811.           This file is displayed when upload scanning is enabled and
  12812.           your system is configured to ask users if they would like to
  12813.           wait while the upload is scanned online.  This gives you an
  12814.           opportunity to explain the file scanning process and how it
  12815.           might effect the current user.  A sample of this file is as
  12816.           follows:
  12817.           
  12818.              ┌──────────────────────────────────────────────────┐
  12819.              │ Thank you for the upload!  All uploaded files    │
  12820.              │ are scanned for computer viruses and other data  │
  12821.              │ corruption.  Your user account will not be       │
  12822.              │ credited for the upload until the scan has been  │
  12823.              │ completed.  Files may be scanned after you log-  │
  12824.              │ off and your account updated at that time.  Or,  │
  12825.              │ you may choose to proceed now and wait for the   │
  12826.              │ scan to be completed to receive immediate upload │
  12827.              │ credit.                                          │
  12828.              │                                                  │
  12829.              │ Press <ENTER> to continue^A                      │
  12830.              └──────────────────────────────────────────────────┘
  12831.           
  12832.           For more information on upload scanning, see the
  12833.           Configuration chapter.
  12834.  
  12835.  
  12836.           WELCOME.A??
  12837.           ────────────────────────────────────────────────────────────
  12838.           This file is displayed when a user logs-on (after the user
  12839.           has entered a correct password), or in the case of a new
  12840.           user, after completing the new user procedure.  This might
  12841.           be an elaborate title screen that welcomes users to your
  12842.           BBS.
  12843.           
  12844.  
  12845.           WELCOME1.A??
  12846.           ────────────────────────────────────────────────────────────
  12847.           This file is displayed directly after the WELCOME.A?? file,
  12848.           and might contain extra system information (i.e. today in
  12849.           history quote, etc.).
  12850.           
  12851.  
  12852.           XFERHELP.A??
  12853.           ────────────────────────────────────────────────────────────
  12854.           This file is displayed if the user requests help by pressing
  12855.           the "?" key at the file transfer protocol selections menu.
  12856.           It should contain general information about the different
  12857.           protocols themselves.
  12858.           
  12859.  
  12860.           XFERPROT.A??  *
  12861.           ────────────────────────────────────────────────────────────
  12862.           This file is displayed in place of the formatted default
  12863.           file transfer protocol selection menu and is displayed to
  12864.           users (if it exists) when prompting for a file transfer
  12865.           protocol to use.
  12866.           
  12867.  
  12868.  
  12869.  
  12870.  
  12871.  
  12872.                                    - 196 -
  12873.           XFERTIME.A??  *
  12874.           ────────────────────────────────────────────────────────────
  12875.           This file is displayed when a user attempts to download a
  12876.           file which would require more time to complete than the user
  12877.           has remaining.
  12878.           
  12879.  
  12880.           CONTROL FILES
  12881.  
  12882.           Control files are used to control certain system functions
  12883.           and user input.  They are ASCII text files of specific
  12884.           filenames which must be placed in the system directory.
  12885.           They may be edited with any ASCII text file editor or by the
  12886.           Control Files Manager in RACONFIG (see the Editing Control
  12887.           Files section in this chapter for details on how to edit
  12888.           control files). RemoteAccess uses control files to filter
  12889.           user input.  For example, if your TRASHCAN.CTL file
  12890.           contained the name Mad Hatter, users would not be allowed to
  12891.           enter it as a log-on name.  Further, RemoteAccess checks to
  12892.           see if the text strings contained in TRASHCAN.CTL are
  12893.           embedded in user log-on names.  Therefore, if the
  12894.           TRASHCAN.CTL file contained the word Hatter, and a user
  12895.           entered a log-on name of Mad Hatter, it would not be
  12896.           allowed.
  12897.  
  12898.           In addition to filtering user input, RemoteAccess uses
  12899.           control files to control certain system functions such as
  12900.           network mail costing and message addressing macros. To
  12901.           summarize, control files add to your BBS by giving you even
  12902.           more control over your overall system.  Add these to your
  12903.           growing list of tools that allow you to customize your BBS.
  12904.           
  12905.  
  12906.           Editing Control Files
  12907.           ────────────────────────────────────────────────────────────
  12908.           As mentioned earlier, control files may be edited using any
  12909.           ASCII text editor.  But why use a text editor when one is
  12910.           built into RACONFIG for you?  The Control File Manager
  12911.           contains an editor which is available whenever you select a
  12912.           control file from the pick-list menu.  This editor features
  12913.           an easy to use interface and supports a maximum of 8192
  12914.           lines.
  12915.           
  12916.           To edit a control file using RACONFIG:
  12917.           
  12918.           1)    Fire up RACONFIG:
  12919.           
  12920.               RACONFIG <Enter>
  12921.           
  12922.           2)    Select Manager and then select Ctl files.
  12923.           
  12924.           3)    Select the control file to be edited from the control
  12925.                 file pick-list menu and press <ENTER>.
  12926.           
  12927.           4)    Edit the file to suit your needs.  When finished,
  12928.                 press "Esc".  You will be prompted whether or not you
  12929.                 would like to save the changes made.
  12930.  
  12931.  
  12932.  
  12933.  
  12934.  
  12935.  
  12936.                                    - 197 -
  12937.           The control file editor in RACONFIG is very versatile and
  12938.           supports many popular editing commands.  In addition, almost
  12939.           every command has an equivalent alternate command.  The
  12940.           commands supported are outlined in the following table.
  12941.           
  12942.           Command          Description             Alternate
  12943.           ────────────────────────────────────────────────────────────
  12944.           <ESCAPE>         Quit
  12945.           BACKSPACE        BackSpace               CTRL-H
  12946.           HOME             Home cursor             CTRL-Q CTRL-S
  12947.           PAGE-UP          Page up                 CTRL-R
  12948.           PAGE-DOWN        Page down               CTRL-C
  12949.           UP               Cursor up               CTRL-E
  12950.           DOWN             Cursor down             CTRL-X
  12951.           LEFT             Cursor left             CTRL-S
  12952.           RIGHT            Cursor right            CTRL-D
  12953.           END              End of line             CTRL-Q CTRL-D
  12954.           INSERT           Toggle insert           CTRL-V
  12955.           DELETE           Delete character        CTRL-G
  12956.           CTRL-LEFT        Word left               CTRL-A
  12957.           CTRL-RIGHT       Word right              CTRL-F
  12958.           CTRL-P           Enter literal control
  12959.                            character
  12960.           CTRL-O CTRL-W    Toggle word wrap
  12961.           CTRL-T           Delete word to the
  12962.                            right of the cursor
  12963.           CTRL-Y           Delete current line
  12964.           CTRL-Q CTRL-Y    Delete from cursor
  12965.                            to end of line
  12966.           CTRL-END         End of screen           CTRL-Q CTRL-X
  12967.           CTRL-PAGE-DOWN   End of file             CTRL-Q CTRL-C
  12968.           CTRL-HOME        Top of screen           CTRL-Q CTRL-E
  12969.           CTRL-PAGE-UP     Top of file             CTRL-Q CTRL-R
  12970.           TAB              Tab                     CTRL-I
  12971.           ALT-R            Global reformat
  12972.           CTRL-B           Reformat paragraph
  12973.           CTRL-W           Scroll display up
  12974.           CTRL-Z           Scroll display down
  12975.           CTRL-O CTRL-I    Toggle auto-indent
  12976.           CTRL-Q CTRL-L    Restore last deleted
  12977.                            line
  12978.           
  12979.           Comments may be entered within a control file.  Comments
  12980.           contain information that is helpful to you.  They might be
  12981.           notes or header information that helps you maintain the
  12982.           format of a control file.  Comments are so-named because
  12983.           they are not interpreted by RemoteAccess.  To enter a
  12984.           textual comment, simply precede it with the semicolon ;
  12985.           character. Then, any text on the same line following the
  12986.           semicolon is ignored when the file is read by RemoteAccess.
  12987.           For example, a NAMES.CTL file formatted with comments might
  12988.           look something like this:
  12989.  
  12990.  
  12991.  
  12992.  
  12993.  
  12994.  
  12995.  
  12996.  
  12997.  
  12998.  
  12999.  
  13000.                                    - 198 -
  13001.              ; My NAMES.CTL file.  I have entered names of my
  13002.              ; friends here so that I can address messages to
  13003.              ; them more quickly.  The fields are separated by
  13004.              ; commas and are defined as follows:
  13005.              ;
  13006.              ; Field 1 : macro name
  13007.              ; Field 2 : full user name
  13008.              ; Field 3 : network address (0:0/0 is none)
  13009.              ; Field 4 : message subject
  13010.              ;
  13011.              andrew,Andrew Milner,2:270/18,Hi Andrew!
  13012.              john,John Parlin,1:282/4021,Hi John!
  13013.           
  13014.           In the above example, the comment lines explain in detail
  13015.           the purpose of the file together with field information.  As
  13016.           you can see, this would be most helpful since the fields are
  13017.           documented right in the control file.
  13018.           
  13019.  
  13020.           CONTROL FILES LISTING
  13021.  
  13022.           Following is a list of control files used by RemoteAccess
  13023.           along with descriptions and usage examples for each file.
  13024.  
  13025.  
  13026.           BADFILES.CTL
  13027.           ────────────────────────────────────────────────────────────
  13028.           This file is used to specify a list of filenames that users
  13029.           may not upload to your system.  Simply specify one filename
  13030.           per line (wildcard characters are valid).
  13031.           
  13032.           Example:
  13033.           
  13034.                 *.GIF
  13035.                 NORTON*.*
  13036.                 COMMAND.COM
  13037.           
  13038.           In this example, filenames with a .GIF extension, filenames
  13039.           beginning with the word NORTON and the specific filename
  13040.           COMMAND.COM may not be uploaded.
  13041.           
  13042.  
  13043.           HANDLES.CTL
  13044.           ────────────────────────────────────────────────────────────
  13045.           This file allows you to list strings of characters that are
  13046.           not allowed within user handles.  This file is referenced
  13047.           whenever the user's handle is changed.
  13048.           
  13049.           Examples:
  13050.           
  13051.                 Sysop
  13052.                 Jack Daniels
  13053.                 Hacker
  13054.  
  13055.  
  13056.  
  13057.  
  13058.  
  13059.  
  13060.  
  13061.  
  13062.  
  13063.  
  13064.                                    - 199 -
  13065.           In the above example, users would not be allowed to enter
  13066.           handles that contain the character strings Sysop, Jack
  13067.           Daniels, or Hacker.  But you should also note that this
  13068.           would  prevent users from entering the handle Jack Danielson
  13069.           or Jim Hackerman since these handles contain embedded
  13070.           strings that have been disallowed.
  13071.           
  13072.           See also:  TRASHCAN.CTL
  13073.           
  13074.  
  13075.           NAMES.CTL
  13076.           ────────────────────────────────────────────────────────────
  13077.           RemoteAccess allows you to assign short names to users you
  13078.           frequently send messages to.  During message entry, these
  13079.           short names act as macros which speed message addressing.
  13080.           This control file should contain one entry per line in the
  13081.           following format:
  13082.           
  13083.                   <short name>,<user name>,<address>[,<subject>]
  13084.           
  13085.           Where:  <short name> is the abbreviated name you wish to
  13086.                   assign values to.  For example, this might be a
  13087.                   user's first name, nickname, initials, etc.
  13088.           
  13089.                   <user name> is the full user name that the message
  13090.                   should be addressed to.
  13091.           
  13092.                   <address> is the 3-dimensional network address that
  13093.                   the message should be sent to.  If you are not a
  13094.                   member of a network, or you are creating a short
  13095.                   name for a local user, you can specify an address of
  13096.                   0:0/0.
  13097.           
  13098.                   <subject> is an optional parameter which, when
  13099.                   specified, will fill the subject field with the text
  13100.                   string specified.
  13101.           
  13102.           Take a look at this example entry:
  13103.           
  13104.                 rahq,Andrew Milner,2:270/18,RemoteAccess...
  13105.           
  13106.           To use the short names feature using the above example,
  13107.           select a message area from which to send.  Then post a
  13108.           message using menu function type 27-"Post message".  When
  13109.           prompted to enter the name that this message should be
  13110.           addressed to, enter the short name preceded by the asterisk
  13111.           * character:
  13112.           
  13113.                 To:  *rahq
  13114.           
  13115.           The message will be automatically addressed to Andrew Milner
  13116.           and the subject field will be filled with the string
  13117.           RemoteAccess...  If the message was entered in a NetMail
  13118.           area, it would be sent automatically to the network address
  13119.           2:270/18.
  13120.           
  13121.  
  13122.  
  13123.  
  13124.  
  13125.  
  13126.  
  13127.  
  13128.                                    - 200 -
  13129.           NODECOST.CTL
  13130.           ────────────────────────────────────────────────────────────
  13131.           This control file is used to specify the costs that are to
  13132.           be associated with NetMail messages sent from your system.
  13133.           For a complete explanation of the format of this file, refer
  13134.           to the Mail Networking chapter later in this manual.
  13135.           
  13136.  
  13137.           PHONENUM.CTL
  13138.           ────────────────────────────────────────────────────────────
  13139.           Use this control file to prevent users from entering
  13140.           telephone numbers that you know to be invalid.
  13141.           
  13142.           Take a look at the following three-line example:
  13143.           
  13144.                 00-
  13145.                 555-
  13146.                 -0000
  13147.           
  13148.           Like the HANDLES.CTL and TRASHCAN.CTL control files,
  13149.           RemoteAccess checks for embedded strings of characters when
  13150.           referencing this data in user telephone number entries.
  13151.           Therefore, while the first line would disallow telephone
  13152.           numbers beginning with 00- it would also conveniently
  13153.           disallow 800- and 900- telephone number entries since 00- is
  13154.           embedded in these numbers.
  13155.  
  13156.           Line two would disallow entries that contained 555-.  For
  13157.           example, a user would not be allowed to enter a telephone
  13158.           number of 612-555-1212.
  13159.  
  13160.           Line three would prevent users from entering a telephone
  13161.           number that ends in four zeros.
  13162.  
  13163.  
  13164.           PWDTRASH.CTL
  13165.           ────────────────────────────────────────────────────────────
  13166.           This file allows you to specify a list of character strings
  13167.           that may not be contained in user passwords.  For example,
  13168.           to prevent users from entering the passwords SECRET, TEST,
  13169.           123456, or RED FIRETRUCK,  your PWDTRASH.CTL might look like
  13170.           the following example:
  13171.           
  13172.                 123456
  13173.                 TEST
  13174.                 SECRET
  13175.                 FIRETRUCK
  13176.           
  13177.           Since RemoteAccess looks for embedded character strings, the
  13178.           password RED FIRETRUCK was disallowed simply by specifying
  13179.           the FIRETRUCK entry.
  13180.           
  13181.  
  13182.  
  13183.  
  13184.  
  13185.  
  13186.  
  13187.  
  13188.  
  13189.  
  13190.  
  13191.  
  13192.                                    - 201 -
  13193.           TRASHCAN.CTL
  13194.           ────────────────────────────────────────────────────────────
  13195.           Allows you to specify a list of names that users may not use
  13196.           to log-on to your system.  This file is the same as the
  13197.           HANDLES.CTL control file, except that it contains a list of
  13198.           character strings that may not be embedded in the user real
  13199.           names rather than their handle.
  13200.           
  13201.           Examples:
  13202.           
  13203.                 Sysop
  13204.                 Jack Daniels
  13205.                 Hacker
  13206.           
  13207.           In the above example, users would not be allowed to enter
  13208.           names that contain the character strings Sysop, Jack
  13209.           Daniels, or Hacker.  But you should also note that this
  13210.           would  prevent users from entering the name Jack Danielson
  13211.           or Jim Hackerman since these names contain embedded strings
  13212.           that have been disallowed.
  13213.           
  13214.  
  13215.           VIP.CTL
  13216.           ────────────────────────────────────────────────────────────
  13217.           This file allows you to specify a list of users who are to
  13218.           be considered Very Important People.  When a user who is
  13219.           listed in this file logs-on to your system, a short paging
  13220.           bell will sound at the local console.  The comment
  13221.           information (if any) contained in the user's record will
  13222.           also be displayed on the status bar.  The format of this
  13223.           file is the same as that of the TRASHCAN.CTL and HANDLES.CTL
  13224.           files.
  13225.           
  13226.           NOTE:  The local bell may be disabled by activating the ScrLck
  13227.           key.
  13228.  
  13229.  
  13230.  
  13231.  
  13232.  
  13233.  
  13234.  
  13235.  
  13236.  
  13237.  
  13238.  
  13239.  
  13240.  
  13241.  
  13242.  
  13243.  
  13244.  
  13245.  
  13246.  
  13247.  
  13248.  
  13249.  
  13250.  
  13251.  
  13252.  
  13253.  
  13254.  
  13255.  
  13256.                                    - 202 -
  13257.           Chapter 5
  13258.           User Administration
  13259.           *    
  13260.           *    
  13261.           *    
  13262.           *    
  13263.           The user database is possibly the most important
  13264.           database on your BBS.  It contains all the 
  13265.           information about each user's history, settings, and 
  13266.           vital security data.  This chapter details information 
  13267.           on editing and maintaining the user database as well 
  13268.           as the data contained in each user account record.
  13269.  
  13270.  
  13271.  
  13272.  
  13273.  
  13274.  
  13275.  
  13276.  
  13277.  
  13278.  
  13279.  
  13280.  
  13281.  
  13282.  
  13283.  
  13284.  
  13285.  
  13286.  
  13287.  
  13288.  
  13289.  
  13290.  
  13291.  
  13292.  
  13293.  
  13294.  
  13295.  
  13296.  
  13297.  
  13298.  
  13299.  
  13300.  
  13301.  
  13302.  
  13303.  
  13304.  
  13305.  
  13306.  
  13307.  
  13308.  
  13309.  
  13310.  
  13311.  
  13312.  
  13313.  
  13314.  
  13315.  
  13316.  
  13317.  
  13318.  
  13319.  
  13320.                                    - 203 -
  13321.           NEW USER DEFAULTS
  13322.  
  13323.           In the Configuration chapter, we outlined individual features 
  13324.           and options and how to implement them.  Among these were 
  13325.           the defaults that are assigned to new users.  These defaults 
  13326.           are used to control access and set up new user accounts to take 
  13327.           advantage of menu items you may specifically assign to new 
  13328.           users.
  13329.  
  13330.           Once a new user has logged-on to your system, an account
  13331.           record is created and stored in the user database.  The new 
  13332.           user default values which you assigned in RACONFIG are 
  13333.           assigned to and stored in the new user's account.  For specific 
  13334.           information on new user defaults, see the following section in 
  13335.           RACONFIG and in the Configuration chapter:
  13336.           
  13337.                               Options > New Users
  13338.           
  13339.  
  13340.           USING REMOTEACCESS MANAGER
  13341.  
  13342.           The RemoteAccess Manager utility program is used to maintain
  13343.           both the user and file databases.  RAMGR.EXE resides in the
  13344.           system directory and may be executed by typing RAMGR
  13345.           followed by pressing <ENTER>.  When this utility is fired
  13346.           up, you are presented with a pick-list menu which allows you
  13347.           to select a number of options including Users. You can also
  13348.           fire up RAMGR in user administration mode directly by typing
  13349.           the command RAMGR  -U followed by pressing <ENTER>.  This
  13350.           method bypasses the initial pick-list menu and places you
  13351.           directly in the user administration portion of the program.
  13352.  
  13353.           In addition to the -U parameter, several other switches are
  13354.           supported.  They are:
  13355.           
  13356.              -B   Run in monochrome (black and white) mode.
  13357.           
  13358.              -N   Ignore any missing file area paths (normally RAMGR
  13359.                   will not allow you to enter a file area which has an
  13360.                   invalid path).
  13361.           
  13362.              -F   Edit files only (bypass main menu).
  13363.           
  13364.              -A   Auto-update mode (file editing).  Forces an
  13365.                   automatic update of all files when an area is
  13366.                   entered.
  13367.           
  13368.           Once in the user portion of RAMGR, you are presented a
  13369.           full-screen pick-list of user accounts from which to select.
  13370.           You can move the cursor-bar using any of the following keys:
  13371.  
  13372.  
  13373.  
  13374.  
  13375.  
  13376.  
  13377.  
  13378.  
  13379.  
  13380.  
  13381.  
  13382.  
  13383.  
  13384.                                    - 204 -
  13385.           UP          Moves the cursor-bar up one user record.
  13386.           
  13387.           DOWN        Moves the cursor-bar down one user record.
  13388.           
  13389.           PAGE-UP     Moves the cursor-bar up one screen page.
  13390.  
  13391.           PAGE-DOWN   Moves the cursor-bar down one screen page.
  13392.           
  13393.           HOME        Moves the cursor-bar to the first record in the
  13394.                       database.
  13395.           
  13396.           END         Moves the cursor-bar to the last record in the
  13397.                       database.
  13398.           
  13399.           Notice the command summary at the bottom of full-screen user
  13400.           pick-list display.  It indicates which additional commands
  13401.           can be executed from this screen.  Each of these commands
  13402.           will be explained below
  13403.           
  13404.  
  13405.           Modifying a User
  13406.           ════════════════════════════════════════════════════════════
  13407.           Position the cursor-bar on the user you wish to modify and
  13408.           press <ENTER> to bring up the Edit Screen.  Move from field
  13409.           to field by pressing <ENTER>, changing the desired settings
  13410.           until you are satisfied with the changes.  Press <ESCAPE>
  13411.           when you are finished and enter "Y" or "N" at the Save
  13412.           changes? prompt.
  13413.  
  13414.           
  13415.           Finding a User
  13416.           ════════════════════════════════════════════════════════════
  13417.           From the user pick-list display, you may search for a
  13418.           specific user by pressing ALT-F and entering all or part of
  13419.           the user name you wish to find.  If the user name is
  13420.           located, the cursor-bar will be positioned on the matched
  13421.           record.
  13422.  
  13423.           
  13424.           Adding a User
  13425.           ════════════════════════════════════════════════════════════
  13426.           Users are typically added automatically when a new user
  13427.           logs-on to your system.  However, you can add users
  13428.           manually by pressing INSERT from the user pick-list display.
  13429.           This brings up the edit screen with all fields set to blank
  13430.           values.  Enter the user data as desired.  When you are
  13431.           finished, press <ESCAPE> and answer "Y" or "N" in response
  13432.           to the "Save changes?" prompt.
  13433.           
  13434.  
  13435.           Deleting a User
  13436.           ════════════════════════════════════════════════════════════
  13437.           Users may be deleted by positioning the cursor-bar on the
  13438.           desired user record and pressing the DELETE key.  After
  13439.           doing this, you will notice a tag mark in the "Del" column
  13440.           for that user record.  This shows that the user record has
  13441.           been marked for deletion.  Records marked for deletion are
  13442.           physically removed (or purged) from the database by RAUSER
  13443.           which is discussed later in this chapter.
  13444.  
  13445.  
  13446.  
  13447.  
  13448.                                    - 205 -
  13449.           Users marked for deletion may be unmarked using the same
  13450.           process, provided the user record has not been purged by
  13451.           RAUSER.
  13452.  
  13453.           
  13454.           Account Record Fields
  13455.           ════════════════════════════════════════════════════════════
  13456.           This section describes the fields and options contained in
  13457.           each user record.  Select a user from the pick-list display
  13458.           and press <ENTER> to bring up the edit screen.
  13459.           
  13460.           Field Name         Description
  13461.           ────────────────────────────────────────────────────────────
  13462.           Name               User's full name (35 characters).
  13463.           Handle             User's registered handle (35 characters).
  13464.           Location           Where the user is calling from.
  13465.           Password           User's secret password.  This is stored
  13466.                              as a CRC value and cannot be viewed.
  13467.           Security           Security level (1-65535, 0 to lock out).
  13468.           Home#              Home / voice telephone number.
  13469.           Business#          Business /data telephone number.
  13470.           A Flags            A flag settings (- or x).
  13471.           B Flags            B flag settings (- or x).
  13472.           C Flags            C flag settings (- or x).
  13473.           D Flags            D flag settings (- or x).
  13474.           Credit             Number of credits remaining.
  13475.           Pending            Number of credits pending deduction.
  13476.           Group              Group number assigned to.
  13477.           Sex                Gender (male or female).
  13478.           Fwd                User name (if any) that messages are
  13479.                              forwarded to.
  13480.           Addr1              Address line one.
  13481.           Addr2              Address line two.
  13482.           Addr3              Address line three.
  13483.           Comnt              Information comment (can contain
  13484.                              anything).
  13485.           Last time          Time of last call.
  13486.           Last date          Date of last call.
  13487.           1st date           Date of first call.
  13488.           Sub date           Subscription expiration date.
  13489.           Birthdate          Date of birth.
  13490.           Time used today    Number of minutes used on Last date.
  13491.           Screen length      Length of screen display.
  13492.           Last pwd change    Number of calls since last password
  13493.                              change.
  13494.           Last DOB check     Number of calls since last date of birth
  13495.                              verification check.
  13496.           Date format        Date entry and display format.
  13497.           Flags              Flag settings for this user.  For
  13498.                              information on access flags, see the
  13499.                              Configuration chapter.
  13500.           Uploads            Total number of files uploaded.
  13501.           Dnloads            Total number of files downloaded.
  13502.           UploadK            Total kilobytes of all files uploaded.
  13503.           DnloadK            Total kilobytes of all files downloaded.
  13504.           TodayK             Total kilobytes of all files downloaded
  13505.                              today.
  13506.           Messages posted    Total number of messages posted.
  13507.           High msg read      Highest message number read.
  13508.  
  13509.  
  13510.  
  13511.  
  13512.                                    - 206 -
  13513.           Last msg area      Last message area the user had selected.
  13514.           Last file area     Last file area the user had selected.
  13515.           Last file group    Last file group the user had selected.
  13516.           Last msg group     Last message group the user had selected.
  13517.           Protocol           Default file transfer protocol user has
  13518.                              selected (shows the command character or
  13519.                              @ if no protocol is selected).
  13520.           Language           Language number selected.
  13521.           
  13522.           
  13523.           Option Flag Settings
  13524.           ────────────────────────────────────────────────────────────
  13525.           When the cursor is positioned on the Flags field and <ENTER>
  13526.           is pressed, a new pick-list menu is displayed which offers a
  13527.           means of modifying a user's individual option flag settings.
  13528.           These settings have two possible settings; either "Y" or "N"
  13529.           (on or off).  An example display is shown below followed by
  13530.           an explanation of each of the flags.
  13531.            
  13532.           Field Name          Description
  13533.           ────────────────────────────────────────────────────────────
  13534.           Deleted             Is the user marked for deletion?
  13535.           Clear screen        Send clear screen codes?
  13536.           Page pausing        Pause at the end of each screen page?
  13537.           ANSI graphics       Send ANSI codes?
  13538.           AVATAR graphics     Send AVATAR codes?
  13539.           No-kill             Never delete this user during a pack?
  13540.           Xfer priority       Ignore download restrictions?
  13541.           Full screen editor  Use the full screen message editor?
  13542.           Quiet mode          Ignore on-line messages from other
  13543.                               users?
  13544.           Hot-keys            Use hot-keys?
  13545.           Full screen viewer  Use full screen message reader?
  13546.           Hidden              Hidden from the user and other caller
  13547.                               lists?
  13548.           Page priority       Allowed to override paging restrictions?
  13549.           No new echomail     Exclude EchoMail from mail-box scans?
  13550.           Guest               Is this a guest account record?
  13551.           Post bill           Allow user to accrue a negative credit
  13552.                               balance?
  13553.           
  13554.           
  13555.           Guest Accounts
  13556.           ════════════════════════════════════════════════════════════
  13557.           RemoteAccess supports the use of Guest Accounts which allow
  13558.           callers to log-on to your system without having to enter
  13559.           actual log-on information.  This enables you to allow users
  13560.           to log-on using a generic user account for whatever purposes
  13561.           you desire. One example use of guest accounts is to allow
  13562.           callers to log-on in order to download certain files,
  13563.           without having to become a member user of your BBS.
  13564.  
  13565.           To enable this feature, simply create a new user record
  13566.           (using RAMGR) with a name/handle of Guest (or whatever other
  13567.           name you choose), and enable the Guest flag in the user
  13568.           account record.  A guest account record has log-on defaults
  13569.           set to those in the user record, so it's probably wise to
  13570.           disable AVATAR, ANSI and any other capabilities that the
  13571.           simplest terminal program might not have. {+} Registered only.
  13572.  
  13573.  
  13574.  
  13575.  
  13576.                                    - 207 -
  13577.           Each time a caller logs-on using a guest account, the
  13578.           following conditions apply:
  13579.           
  13580.           *    The Time Used Today and K Downloaded Today fields 
  13581.                 are reset to zero.
  13582.  
  13583.           *     A guest may change terminal display parameters (ANSI,
  13584.                 AVATAR, screen length, etc.) but these changes are
  13585.                 never saved permanently.
  13586.  
  13587.           *     A guest may not modify the password for the guest
  13588.                 account.
  13589.  
  13590.           *     A guest may log-on to more than one node at the same
  13591.                 time.
  13592.           
  13593.           NOTE:  It is probably a good idea to enable the No-kill flag
  13594.           for Guest accounts to prevent deletion during user
  13595.           maintenance tasks performed by RAUSER.
  13596.           
  13597.  
  13598.           RAUSER
  13599.  
  13600.           RAUSER.EXE is the utility used to perform maintenance
  13601.           functions on the user database files.  Not only will it
  13602.           remove users marked for deletion, it can also delete users
  13603.           that have not called your BBS for a certain number of days.
  13604.           It is also used to sort the database in order of security
  13605.           level and surname.  RAUSER may be run from any directory and
  13606.           will automatically locate system and user files.  An
  13607.           activity summary will be inserted into your system log file
  13608.           as well.  The following command-line parameters are excepted
  13609.           by RAUSER:
  13610.           
  13611.              -P     Pack the user database files.  This will
  13612.                     physically remove all records that are marked for
  13613.                     deletion.
  13614.           
  13615.              -S     Sort users in order of security level and surname.
  13616.           
  13617.              -D[n]  Delete users who have not called for "n" days.  This
  13618.                     parameter will also force a pack operation.
  13619.           
  13620.              -V     Verbose logging.  Lists any users that were
  13621.                     deleted during a pack operation inserting the list
  13622.                     in the system log.
  13623.           
  13624.              -M[s]  Specify the maximum security level of users to be
  13625.                     affected by a pack or delete operation.  For
  13626.                     example, if you only wish to delete old users who
  13627.                     have not called for 100 days, but wish to only
  13628.                     exempt all users with security level 50 and above
  13629.                     from being deleted, you should use the
  13630.                     command-line:
  13631.           
  13632.                                     RAUSER -D100 -M50
  13633.  
  13634.  
  13635.  
  13636.  
  13637.  
  13638.  
  13639.  
  13640.                                    - 208 -
  13641.           Chapter 6
  13642.           Message Database Administration
  13643.           *    
  13644.           *    
  13645.           *    
  13646.           *    
  13647.           In the Configuration chapter, you learned how to create the
  13648.           message areas used on your BBS.  You also learned about the
  13649.           two database formats that RemoteAccess supports.  In this
  13650.           chapter, you'll cover the specifications of the database as
  13651.           well as the materials necessary to maintain it.
  13652.  
  13653.  
  13654.  
  13655.  
  13656.  
  13657.  
  13658.  
  13659.  
  13660.  
  13661.  
  13662.  
  13663.  
  13664.  
  13665.  
  13666.  
  13667.  
  13668.  
  13669.  
  13670.  
  13671.  
  13672.  
  13673.  
  13674.  
  13675.  
  13676.  
  13677.  
  13678.  
  13679.  
  13680.  
  13681.  
  13682.  
  13683.  
  13684.  
  13685.  
  13686.  
  13687.  
  13688.  
  13689.  
  13690.  
  13691.  
  13692.  
  13693.  
  13694.  
  13695.  
  13696.  
  13697.  
  13698.  
  13699.  
  13700.  
  13701.  
  13702.  
  13703.  
  13704.                                    - 209 -
  13705.           SPECIFICATIONS
  13706.  
  13707.           The message system used by RemoteAccess consists of a
  13708.           structured database that allows a great deal of flexibility
  13709.           and speed.  As a Sysop, you may already have your message
  13710.           database laid out in your head or even sketched out on
  13711.           paper. If so, we commend you on your ambition though we
  13712.           strongly encourage you to read this section before you dive
  13713.           in so that you have a better understanding of how it all
  13714.           works.
  13715.  
  13716.           RemoteAccess supports two types of message database formats;
  13717.           JAM and Hudson.  Your message database may consist solely of
  13718.           one type, or it may be a combination of both JAM and Hudson
  13719.           formats.
  13720.  
  13721.           In the Configuration chapter, we wrote about the history of
  13722.           the two types of supported formats.  If you skipped that
  13723.           section or would like to refresh your memory, see the
  13724.           RACONFIG section:
  13725.           
  13726.                       Manager > Message Areas > Area Type
  13727.           
  13728.           Knowing the capabilities of each of the supported message
  13729.           database formats, you will be able to make an educated
  13730.           decision on which format is right for you.  Our
  13731.           recommendation is that if you do not require the Hudson
  13732.           format, use JAM.
  13733.           
  13734.           
  13735.           JAM Database Files
  13736.           ════════════════════════════════════════════════════════════
  13737.           The overall JAM database consists of several small
  13738.           databases; one for each JAM message area.  Each JAM message
  13739.           area is stored in its own subdirectory, each containing 4
  13740.           database files.  Each of the filenames consists of the base
  13741.           message area name and a specific filename extension.  For
  13742.           example, if a JAM message area name is defined as
  13743.           C:\RA\MSG\PUBLIC in the JAMbase field of the message area
  13744.           configuration, the filenames stored in that particular area
  13745.           would be PUBLIC.*.  These are:
  13746.           
  13747.           Filename    Description
  13748.           ────────────────────────────────────────────────────────────
  13749.           .JDX        This file holds the index to all of the messages
  13750.                       held in the particular message area.
  13751.           
  13752.           .JHR        This file contains the message headers of all
  13753.                       messages in the area.
  13754.           
  13755.           .JDT        This file contains the actual message text of
  13756.                       all messages in the area.
  13757.           
  13758.           .JLR        This file contains one record for each user on a
  13759.                       system and is used to keep track of the last
  13760.                       message number that each user has read in the
  13761.                       particular message area.
  13762.           
  13763.  
  13764.  
  13765.  
  13766.  
  13767.  
  13768.                                    - 210 -
  13769.           Hudson Database Files
  13770.           ════════════════════════════════════════════════════════════
  13771.           Since all Hudson message areas are stored in one central
  13772.           database, there is only one subdirectory which holds all
  13773.           related files.  This subdirectory is specified in RACONFIG:
  13774.           
  13775.                           System > Paths > Msg Base
  13776.           
  13777.           The database stored in this subdirectory is heavily-indexed
  13778.           for fast access.  The database is composed of several files
  13779.           which are outlined below:
  13780.           
  13781.           Filename        Description
  13782.           ────────────────────────────────────────────────────────────
  13783.           LASTREAD.BBS    This file contains one record for each user
  13784.                           on a system and is used to keep track of the
  13785.                           last message number each user has read in
  13786.                           any given message area.
  13787.           
  13788.           MSGHDR.BBS      This file holds all message and message
  13789.                           header information except for the actual
  13790.                           message text and is the primary reference
  13791.                           file.  Due to the amount of information
  13792.                           present it can grow to be quite large.
  13793.                           Therefore, smaller index files are usually
  13794.                           used to locate a particular message where
  13795.                           the MSGHDR.BBS can be consulted for greater
  13796.                           detail.
  13797.            
  13798.           MSGIDX.BBS      This is the primary searching index-file. It
  13799.                           is very small, and therefore any search
  13800.                           through this file is extremely fast.  It is
  13801.                           referenced mainly to:
  13802.           
  13803.                           *     Find a particular message number.
  13804.           
  13805.                           *     Find the next message in a particular
  13806.                                 message area.
  13807.  
  13808.                           *     Find the next active message in any
  13809.                                 area.
  13810.           
  13811.           MSGINFO.BBS     This file contains one record of general
  13812.                           information about the entire Hudson
  13813.                           database.  This provides RemoteAccess with a
  13814.                           database information summary without the
  13815.                           requirement of scanning the entire
  13816.                           message-base.  This file holds information
  13817.                           such as the lowest and highest message
  13818.                           numbers and total number of messages (to
  13819.                           name a few).
  13820.           
  13821.           MSGTOIDX.BBS    This is an index file used to perform a
  13822.                           mail-box check for a particular user as
  13823.                           quickly as possible.
  13824.           
  13825.           MSGTXT.BBS      This file contains only the textual portions
  13826.                           of all messages in the message-base.
  13827.           
  13828.  
  13829.  
  13830.  
  13831.  
  13832.                                    - 211 -
  13833.           Something in Common
  13834.           ════════════════════════════════════════════════════════════
  13835.           Each type of message database format allows fast searches
  13836.           without the need for memory-resident programs such as
  13837.           BTRIEVE which is used in conjunction with some BBS software
  13838.           packages.
  13839.  
  13840.           RemoteAccess maintains both types of message database
  13841.           formats through the use of one utility program; RAMSG.
  13842.           Whether using one message database format or both, RAMSG is
  13843.           the only maintenance utility required.  We'll explain more
  13844.           about RAMSG later in this chapter.
  13845.           
  13846.  
  13847.           LIMITATIONS
  13848.  
  13849.           Every database structure has its limitations.  Due to the
  13850.           Hudson database file structures, there is a maximum physical
  13851.           limit on the number of messages it can contain.  As a whole,
  13852.           the maximum number of messages supported by the Hudson
  13853.           format is approximately 16,000.
  13854.  
  13855.           There is also a limitation on the value of the highest
  13856.           numbered message, which may never exceed 32,767.  It is good
  13857.           practice to regularly renumber the message database to
  13858.           ensure that this limit is never exceeded.  This is done
  13859.           using the RAMSG maintenance utility outlined in the next
  13860.           section.
  13861.  
  13862.           The JAM database, on the other hand, is limited only by the
  13863.           amount of free disk space available.  Each message area is
  13864.           limited to just over 2 billion messages, though we doubt you
  13865.           will encounter this limitation.
  13866.           
  13867.  
  13868.           MAINTENANCE
  13869.  
  13870.           RAMSG is the RemoteAccess message database maintenance
  13871.           utility.  It's primary function is to trim the number of
  13872.           messages in the database, keeping it at a manageable level.
  13873.           RACONFIG provides the ability to specify thresholds for each
  13874.           individual message area.  RAMSG uses this information
  13875.           (stored in MESSAGES.RA) to determine what messages should be
  13876.           deleted and when.  For more information on setting message
  13877.           retention thresholds, see RACONFIG:
  13878.           
  13879.               Manager > Msg Areas > Days Old, Days Rcvd, Max Msgs
  13880.           
  13881.           If any of the threshold values of the fields is set to zero,
  13882.           RAMSG ignores that option.  For example, if the Max Msgs
  13883.           field is set to zero, RAMSG will not delete messages based
  13884.           on the number of messages contained in that area.  You
  13885.           should ensure that the threshold fields are configured prior
  13886.           to running RAMSG to avoid inadvertently deleting messages.
  13887.  
  13888.  
  13889.  
  13890.  
  13891.  
  13892.  
  13893.  
  13894.  
  13895.  
  13896.                                    - 212 -
  13897.           RAMSG will also attempt to repair damaged message databases
  13898.           using a number of integrity checks.  If RAMSG detects that
  13899.           the message database is damaged in any way, it will
  13900.           automatically re-create index files (even if they are
  13901.           missing) and warn of possible problems.
  13902.  
  13903.           All of RAMSG's activities are recorded in the system log.
  13904.           Some options are provided for statistical information.
  13905.           Examine the following example of a simple RAMSG PACK
  13906.           operation:
  13907.           
  13908.           ----------  Tue 06 Apr 93, RAMSG 2.02 Pack
  13909.           # 12:38:08  2 of 2541 records are deleted
  13910.           # 12:38:09  Writing new message base files
  13911.           # 12:38:27  Space saved:  1732 bytes, 0%
  13912.           
  13913.           
  13914.           Running RAMSG
  13915.           ════════════════════════════════════════════════════════════
  13916.           Running RAMSG without specifying any switches on the
  13917.           command-line, results in the following help display.
  13918.           
  13919.           RAMSG;  RemoteAccess 2.02 Message maintenance utility
  13920.                   Copyright (C) 1994 Gerard J. van der Land.
  13921.                   All rights reserved.
  13922.           
  13923.           Usage:
  13924.           
  13925.              RAMSG <command> [parameters]
  13926.           
  13927.           Commands:
  13928.           
  13929.              Index    Create new index files
  13930.              Link    Create/update reply chains and clean subjects
  13931.              Pack    Pack and renumber the message base
  13932.              Purge    Delete messages according to age or number
  13933.           
  13934.           Run 'RAMSG <command> ?' to get information about
  13935.           [parameters].
  13936.           
  13937.           When invoking RAMSG from the command-line, supply the
  13938.           operation command followed by any optional parameters. Each
  13939.           of the operation commands is explained in the following
  13940.           pages along with any optional parameters it accepts.
  13941.           
  13942.           
  13943.           INDEX
  13944.           ────────────────────────────────────────────────────────────
  13945.           Usage:  RAMSG INDEX [parameters]
  13946.           
  13947.           Creates new index files (MSGIDX.BBS, MSGTOIDX.BBS and
  13948.           MSGINFO.BBS for Hudson format message databases and *.JDX
  13949.           for JAM message databases).  Optionally deletes crosslinked
  13950.           messages and messages in invalid areas.  The Renumber
  13951.           parameter enables you to renumber all messages if PACK is
  13952.           unable to, however does not update user LastRead pointers.
  13953.  
  13954.  
  13955.  
  13956.  
  13957.  
  13958.  
  13959.  
  13960.                                    - 213 -
  13961.           Parameters:
  13962.           
  13963.           -Delete    Delete crosslinked messages.
  13964.           
  13965.           -Recover    Delete messages in invalid areas.
  13966.           
  13967.           -Renumber    Renumber message numbers.
  13968.           
  13969.           
  13970.           LINK
  13971.           ────────────────────────────────────────────────────────────
  13972.           Usage:  RAMSG LINK [parameters]
  13973.           
  13974.           Create/update or remove reply chains in all areas.  Reply
  13975.           chains are messages that are linked together, usually by
  13976.           subject matter.
  13977.           
  13978.           Parameters:
  13979.           
  13980.           -Clean        Remove "Re:" and "(R)" references from message
  13981.                         subjects during operation.  These are inserted
  13982.                         by some message processors to denote messages
  13983.                         which are a part of a reply chain or message
  13984.                         thread.
  13985.           
  13986.           -Remove       Remove all reply chains.  This unlinks all
  13987.                         existing message threads.
  13988.           
  13989.           
  13990.           PACK
  13991.           ────────────────────────────────────────────────────────────
  13992.           Usage:  RAMSG PACK [parameters]
  13993.           
  13994.           Packs the message database files by removing deleted 
  13995.           messages and (optionally) renumbering messages.  You can 
  13996.           optionally specify to purge messages.
  13997.           
  13998.           Parameters:
  13999.           
  14000.           -Backup       Keep the original database files as a backup
  14001.                         (.BAK).
  14002.           
  14003.           -Force        Force overwriting of existing database files.
  14004.                         Use this option when there is not enough free
  14005.                         disk space to create backup files during
  14006.                         operations.
  14007.           
  14008.           -Overwrite    Overwrite existing files only if there is not
  14009.                         enough free disk space to create backup files
  14010.                         during operations.
  14011.           
  14012.           -Renumber     Renumber messages (updates reply chains and
  14013.                         LastRead pointers as well.
  14014.           
  14015.           -Purge        Delete messages based on the threshold
  14016.                         information contained in MESSAGES.RA.
  14017.  
  14018.  
  14019.  
  14020.  
  14021.  
  14022.  
  14023.  
  14024.                                    - 214 -
  14025.           -Delete    Delete any crosslinked messages.
  14026.           
  14027.           -Recover    Delete messages in invalid areas.
  14028.           
  14029.  
  14030.           PURGE
  14031.           ────────────────────────────────────────────────────────────
  14032.           Usage:  RAMSG PURGE
  14033.           
  14034.           Deletes messages according to age and number based on
  14035.           threshold information stored in MESSAGES.RA.  This operation
  14036.           accepts no optional parameters.
  14037.           
  14038.           
  14039.           Examples:
  14040.  
  14041.           The following examples illustrate how RAMSG is used in most
  14042.           popular installations.
  14043.           
  14044.                 RAMSG INDEX -Delete -Recover -Renumber
  14045.           
  14046.           Creates new database index files, deletes crosslinked
  14047.           messages and messages in invalid areas and also renumbers
  14048.           the database.
  14049.           
  14050.                 RAMSG LINK -Clean
  14051.           
  14052.           Creates and/or updates the reply chains in all message
  14053.           areas, removing "Re:" and "(R)" references.
  14054.           
  14055.                 RAMSG PACK -Overwrite -Renumber -Purge -Delete
  14056.           
  14057.           Removes deleted messages from the database.  Also deletes
  14058.           messages based on the threshold criteria stored in
  14059.           MESSAGES.RA.  Deletes crosslinked messages and renumbers the
  14060.           database.  Overwrites existing database files only if there
  14061.           is not enough free disk space to make backup files.
  14062.           
  14063.           
  14064.           Errorlevels
  14065.           ────────────────────────────────────────────────────────────
  14066.           RAMSG returns an errorlevel after each operation to allow
  14067.           management within a batch file.
  14068.           
  14069.           Errorlevel   Condition
  14070.           ────────────────────────────────────────────────────────────
  14071.           0            Successful completion.
  14072.           
  14073.           1            No command operation specified.  Help message
  14074.                        displayed.
  14075.           
  14076.           2            Cannot access/locate CONFIG.RA.
  14077.           
  14078.           3            Insufficient memory.
  14079.           
  14080.           4            Error opening or locating a file.
  14081.           
  14082.           5            Serious input/output error.
  14083.  
  14084.  
  14085.  
  14086.  
  14087.  
  14088.                                    - 215 -
  14089.           Chapter 7
  14090.           File Database Administration
  14091.           *    
  14092.           *    
  14093.           *    
  14094.           *    
  14095.           Database files used by RemoteAccess can be processed faster
  14096.           than text files used by other BBS packages. Databases are
  14097.           used to quicken response time and add capabilities and
  14098.           flexibility to the system.  This chapter details the
  14099.           specifications of the file database system as well as how
  14100.           this system is administrated and maintained.
  14101.  
  14102.  
  14103.  
  14104.  
  14105.  
  14106.  
  14107.  
  14108.  
  14109.  
  14110.  
  14111.  
  14112.  
  14113.  
  14114.  
  14115.  
  14116.  
  14117.  
  14118.  
  14119.  
  14120.  
  14121.  
  14122.  
  14123.  
  14124.  
  14125.  
  14126.  
  14127.  
  14128.  
  14129.  
  14130.  
  14131.  
  14132.  
  14133.  
  14134.  
  14135.  
  14136.  
  14137.  
  14138.  
  14139.  
  14140.  
  14141.  
  14142.  
  14143.  
  14144.  
  14145.  
  14146.  
  14147.  
  14148.  
  14149.  
  14150.  
  14151.  
  14152.                                    - 216 -
  14153.           ABOUT THE FILE DATABASE
  14154.  
  14155.           The file database system supports up to 65535 file areas
  14156.           with each area containing up to 65535 database entries.  The
  14157.           overall file list size supported is 2 gigabytes.  The
  14158.           overall database structure provides fast file operations and
  14159.           offers specialized support through external utility programs
  14160.           which take advantage of the structured database.
  14161.  
  14162.           The first step in setting up your file system is to create
  14163.           the desired file areas and/or file groups using RACONFIG.
  14164.           For specific information, see the Configuration chapter and
  14165.           these RACONFIG sections:
  14166.           
  14167.                               Manager > File Areas
  14168.                               Manager > File Groups
  14169.  
  14170.           Once file groups (optional) and individual areas have been
  14171.           created, you may take advantage of several utility programs
  14172.           included which are specifically designed to make
  14173.           administration an easy task.
  14174.  
  14175.           Previous versions used a text-file-based file system which
  14176.           was centered around a FILES.BBS text file which contained
  14177.           filenames and descriptions for each file in a given area.
  14178.           One of these files existed in each area that was configured.
  14179.           This system was developed early in the BBS evolution process
  14180.           and was considered an acceptable standard.  However, it does
  14181.           not lend itself well to fast, efficient file operations.
  14182.           RemoteAccess uses the database for all aspects of file
  14183.           retrieval.  The actual files themselves are not accessed
  14184.           until they are downloaded or otherwise processed by specific
  14185.           menu commands.  This means that operations such as file
  14186.           searches realize an increase in speed of up to several
  14187.           hundred percent, especially when using CD-ROM file areas.
  14188.  
  14189.           By using a file database listing, more information about
  14190.           each file can be stored and used by the BBS.  In text-based
  14191.           file systems, this is usually limited to information
  14192.           provided by the operating system such as filename, date, and
  14193.           size.  That's not a lot to go on, is it?  By using a
  14194.           structured database, even more information is stored such as
  14195.           how many times a file has been downloaded, who uploaded the
  14196.           file, the date the file was uploaded, download credit cost
  14197.           and much more.
  14198.  
  14199.           This means that if a file is on disk but not in the
  14200.           database, RemoteAccess will be completely unaware of its
  14201.           existence.  It is therefore important that your database be
  14202.           kept up to date. The utilities described in this chapter
  14203.           will help you do just that.
  14204.           
  14205.  
  14206.  
  14207.  
  14208.  
  14209.  
  14210.  
  14211.  
  14212.  
  14213.  
  14214.  
  14215.  
  14216.                                    - 217 -
  14217.           Administration Utilities
  14218.           ════════════════════════════════════════════════════════════
  14219.           In addition to the functions in RACONFIG which allow you to
  14220.           create and modify file areas and groups, three external
  14221.           utilities are also included which provide administrative
  14222.           functions such as converting existing text-based file
  14223.           systems and maintaining the database.  Each of these
  14224.           utilities is outlined separately in this section.
  14225.           
  14226.           
  14227.           GENFBASE.EXE
  14228.           ────────────────────────────────────────────────────────────
  14229.           This utility provides a means of upgrading from a FILES.BBS
  14230.           file system to the current database format.  It is likely
  14231.           that you will only need to use this program once when
  14232.           upgrading RemoteAccess, although it is also useful when
  14233.           adding file database entries for new CD-ROMs.
  14234.  
  14235.           This program is used to generate the actual database files
  14236.           from one or more conventional FILES.BBS format lists.  It
  14237.           accepts no command-line parameters, and prompts for
  14238.           operational parameters during actual runtime operations.
  14239.           Any file areas that are processed are first deleted from the
  14240.           file database if they already exist.  The areas are then
  14241.           rebuilt using the parameters you supply during runtime
  14242.           operations.
  14243.  
  14244.           The following checklist procedure outlines the prompts you
  14245.           must answer when running GENFBASE.  Each prompt is given
  14246.           along with an explanation of the information being prompted
  14247.           for.
  14248.  
  14249.           To convert one or more existing FILES.BBS file areas to the
  14250.           new file database format, or to add CD-ROM areas to the
  14251.           database:
  14252.           
  14253.           1)    Define the file areas to be added/processed using
  14254.                 RACONFIG, entering the proper directory paths to the
  14255.                 areas to be processed.
  14256.           
  14257.           2)    Change to the RemoteAccess system directory.
  14258.           
  14259.           3)    Execute GENFBASE.EXE
  14260.           
  14261.           4)    Previous versions of RemoteAccess used a FILES.CTL
  14262.                 file to specify files that are free and/or password
  14263.                 protected.  If this file exists, it will be processed
  14264.                 in order to maintain the settings it contains.  For
  14265.                 example, if you specified that all files in a given
  14266.                 directory were free files, GENFBASE will maintain this
  14267.                 setting when the area is processed.
  14268.           
  14269.           5)    Next, GENFBASE will ask a series of questions to
  14270.                 determine the operational parameters it must use.
  14271.                 Each of the questions are explained below:
  14272.  
  14273.  
  14274.  
  14275.  
  14276.  
  14277.  
  14278.  
  14279.  
  14280.                                    - 218 -
  14281.           ┌─────────────────────────────────────────────────────────┐
  14282.           │ Start at area# :                                        │
  14283.           └─────────────────────────────────────────────────────────┘
  14284.  
  14285.           Enter the first file area number to be processed.  For
  14286.           example, if you have areas 1 through 10 defined and would
  14287.           like to process all areas, a value of 1 would be entered as
  14288.           the starting area number.
  14289.           
  14290.           ┌─────────────────────────────────────────────────────────┐
  14291.           │ Stop at area# :                                         │
  14292.           └─────────────────────────────────────────────────────────┘
  14293.  
  14294.           Enter the last file area number to be processed.  For
  14295.           example, if you have areas 1 through 10 defined and would
  14296.           like to process all areas, a value of 10 would be entered as
  14297.           the area number to stop at.
  14298.           
  14299.           ┌─────────────────────────────────────────────────────────┐
  14300.           │ Name of file list :                                     │
  14301.           └─────────────────────────────────────────────────────────┘
  14302.  
  14303.           If all of the file areas to be processed contain a FILES.BBS
  14304.           list in each of the area directories, press <ENTER> to
  14305.           accept the default setting of FILES.BBS.  If the areas to be
  14306.           processed are CD-ROM or other areas, continue reading to
  14307.           determine the setting needed in this field.
  14308.  
  14309.           There are a variety of CD-ROMS available for use on BBS.
  14310.           Some of these include a FILES.BBS file list inside each file
  14311.           area directory while others contain a separate directory
  14312.           which holds all file lists.  GENFBASE can accommodate either
  14313.           variety through the use of this parameter.
  14314.  
  14315.           If the CD-ROM file areas being imported contain a file
  14316.           listing called FILES.BBS within the same directory, press
  14317.           <ENTER> to select the default FILES.BBS setting.  This will
  14318.           instruct GENFBASE to process a file list called FILES.BBS
  14319.           located in the same directory as the files being imported.
  14320.           Most new CD-ROMs use this format.
  14321.  
  14322.           If the file lists reside in the same directories as the
  14323.           files being imported but are not called FILES.BBS, enter the
  14324.           name of the file list.  Wildcard characters are valid within
  14325.           the filename.  Additionally, specifying the @ macro will
  14326.           cause the file area number being processed to be expanded in
  14327.           its place.
  14328.  
  14329.           For example, if each of the file area directories contains a
  14330.           file list called DIRnn (where nn is the area number), and
  14331.           you have built your file areas to match the file area
  14332.           numbers on the CD-ROM (i.e. CD-ROM area 1 is configured as
  14333.           RemoteAccess file area 1) you could enter:
  14334.           
  14335.                                      DIR@
  14336.  
  14337.  
  14338.  
  14339.  
  14340.  
  14341.  
  14342.  
  14343.  
  14344.                                    - 219 -
  14345.           On the other hand, if each of the file area directories
  14346.           contains a file list called DIRnn but your RemoteAccess file
  14347.           area numbers do not match the CD-ROM area numbers, you can
  14348.           use a wildcard specification.  For example, if the CD-ROM
  14349.           file area is number 37 and the file list is called DIR37,
  14350.           you could enter:
  14351.           
  14352.                                      DIR*
  14353.           
  14354.           If the CD-ROM contains a separate directory which holds all
  14355.           file lists, you should enter the filename with a path (for
  14356.           example, the CD-ROM contains a directory called \TEXT which
  14357.           holds file lists named DIR1 through DIR50).  If this is the
  14358.           case, then it is important to note that if your RemoteAccess
  14359.           file area numbers do not match the CD-ROM file area numbers,
  14360.           each file area being imported must be processed individually
  14361.           (i.e. you cannot import a range of areas in this scenario).
  14362.           The following example scenarios illustrate this.
  14363.           
  14364.           Scenario #1
  14365.           ────────────────────────────────────────────────────────────
  14366.           Conditions:
  14367.  
  14368.           1.    Your CD-ROM contains file areas numbered 1 through 50.
  14369.           
  14370.           2.    The file lists are contained in one directory called
  14371.                 \TEXT.
  14372.           
  14373.           3.    File lists are named DIR1 through DIR50.
  14374.           
  14375.           4.    Your RemoteAccess file areas are built to match the
  14376.                 CD-ROM file areas (i.e. RemoteAccess file area number
  14377.                 1 points to the CD-ROM directory for CD-ROM file area
  14378.                 number 1).
  14379.           
  14380.           Explanation:
  14381.  
  14382.           In this scenario, you can import a range of file areas.  You
  14383.           should enter the path and filename of the file lists using
  14384.           the @ macro.  For example:
  14385.           
  14386.                                  E:\TEXT\DIR@
  14387.           
  14388.           Then, when GENFBASE is importing file area 1, it will
  14389.           process the file list called DIR1 in the \TEXT directory on
  14390.           the CD-ROM (drive E: in this example).
  14391.           
  14392.           
  14393.  
  14394.  
  14395.  
  14396.  
  14397.  
  14398.  
  14399.  
  14400.  
  14401.  
  14402.  
  14403.  
  14404.  
  14405.  
  14406.  
  14407.  
  14408.                                    - 220 -
  14409.           Scenario #2
  14410.           ────────────────────────────────────────────────────────────
  14411.           Conditions:
  14412.  
  14413.           1.    Your CD-ROM contains file areas numbered 1 through 50.  
  14414.           
  14415.           2.    The file lists are contained in one directory called
  14416.                 \TEXT.
  14417.           
  14418.           3.    File lists are named DIR1 through DIR50.
  14419.           
  14420.           4.    Your RemoteAccess file areas are not built to match
  14421.                 the CD-ROM file areas (i.e. RemoteAccess file area
  14422.                 number 100 points to the CD-ROM directory for CD-ROM
  14423.                 file area number 1).
  14424.           
  14425.           Explanation:
  14426.  
  14427.           In this scenario, you cannot import a range of file areas.
  14428.           You should process each area individually, entering the full
  14429.           path and filename of the corresponding file list.  For
  14430.           example, if you are importing RemoteAccess file area number
  14431.           100 which points to CD-ROM file area number 1, enter:
  14432.           
  14433.                                  E:\TEXT\DIR1
  14434.           
  14435.           Then, when GENFBASE is importing file area 100, it will
  14436.           process the file list called DIR1 in the \TEXT directory on
  14437.           the CD-ROM (drive E: in this example).
  14438.           
  14439.           The flexibility of this parameter will allow you to import
  14440.           CD-ROM file areas quickly and easily.
  14441.           
  14442.           ┌─────────────────────────────────────────────────────────┐
  14443.           │ Do you have file download counters (y,N)?               │
  14444.           └─────────────────────────────────────────────────────────┘
  14445.           
  14446.           Some third party utility programs and file transfer doors
  14447.           provided counters embedded in file descriptions which
  14448.           provided a means of indicating how many times a file has
  14449.           been downloaded.  If the file descriptions contained in the
  14450.           file lists to be processed include such counters, answer Y
  14451.           to this question.
  14452.           
  14453.           ┌─────────────────────────────────────────────────────────┐
  14454.           │ Counter column offset in FILES.BBS :                    │
  14455.           └─────────────────────────────────────────────────────────┘
  14456.  
  14457.           If you answered Y to the previous question, GENFBASE will
  14458.           need to know the starting column number for download
  14459.           counters.  This should not be the starting column of any
  14460.           characters such as brackets or parenthesis that might
  14461.           surround the counter.  Instead, it must be the column number
  14462.           where the actual counter number starts.  GENFBASE will read
  14463.           the existing download counters starting at the column number
  14464.           specified, up to the next non-numeric character.  The
  14465.           existing download counters will then be imported into the
  14466.           file database.
  14467.  
  14468.  
  14469.  
  14470.  
  14471.  
  14472.                                    - 221 -
  14473.           ┌─────────────────────────────────────────────────────────┐
  14474.           │ If you have CD-ROM areas, do they have download         │
  14475.           │ counters (y,N)?                                         │
  14476.           └─────────────────────────────────────────────────────────┘
  14477.  
  14478.           If you indicated that you do have file download counters,
  14479.           GENFBASE will ask if you also have download counters in any
  14480.           CD-ROM areas that are to be processed.  If there are CD-ROM
  14481.           areas included in the range of areas to be processed, and
  14482.           the file lists associated with these areas contain download
  14483.           counters, answer "Y" to this question.
  14484.           
  14485.           NOTE: If you are importing areas which reside both on a hard
  14486.           disk and a CD-ROM, OR all areas to be processed do not
  14487.           contain download counters, you should import these areas
  14488.           separately.  Additionally, you should not import a range of
  14489.           areas that has download counters which start at varying
  14490.           column positions.  In other words, batch import "like" areas
  14491.           only.
  14492.           
  14493.           ┌─────────────────────────────────────────────────────────┐
  14494.           │ Do you have file descriptions which contain CR/LFs in   │
  14495.           │ FILES.BBS (y,N)?                                        │
  14496.           └─────────────────────────────────────────────────────────┘
  14497.  
  14498.           Your answer to this question will determine how file list
  14499.           lines beginning with an indent will be processed.
  14500.           Generally, indented lines are considered to be comment lines
  14501.           which are not associated with a filename or description.
  14502.           But some external file transfer doors and most CD-ROM file
  14503.           lists use multiple-line file descriptions which begin with
  14504.           an indented line.  Therefore, GENFBASE must be able to
  14505.           distinguish between comment lines and description lines that
  14506.           begin with indents.
  14507.  
  14508.           For example, a file listing that uses this format might look
  14509.           like this:
  14510.           
  14511.             MYFILE.ZIP  This is a filename which contains
  14512.              more than one description line.  Notice that
  14513.              the additional lines each begin with an
  14514.              indent.
  14515.           
  14516.           Or, it might look like this:
  14517.  
  14518.             EA150.ZIP     167733  05-01-93  Game door for RemoteAccess
  14519.                                           | that is a blast to play.
  14520.  
  14521.           If the file lists that are to be processed contain this
  14522.           format, or use multiple-line file descriptions which begin
  14523.           with the + or | characters, answer "Y" to this question.
  14524.           When this is the case, GENFBASE will process lines beginning
  14525.           with an indent as part of the previous file description up
  14526.           to the next blank line. Therefore, comment lines are still
  14527.           valid as long as they are preceded by a blank line (which is
  14528.           generally the case). If the file descriptions in the
  14529.           listings to be processed do not use this format, answer "N"
  14530.           to this question.
  14531.  
  14532.  
  14533.  
  14534.  
  14535.  
  14536.                                    - 222 -
  14537.           NOTE:  GENFBASE automatically strips leading + and |
  14538.           characters from multiple-line file descriptions.  If your
  14539.           existing file list format includes these characters, there
  14540.           is no need to remove them prior to processing.
  14541.           
  14542.           ┌─────────────────────────────────────────────────────────┐
  14543.           │ Description column offset (0 for FILES.BBS format) :    │
  14544.           └─────────────────────────────────────────────────────────┘
  14545.           
  14546.           Most conventional file listings contain the filename
  14547.           followed by a space character and the file description.
  14548.           However, in some cases (such as in cases where file download
  14549.           counters are used as well as in CD-ROM file lists) the
  14550.           description of the file might actually start at a specific
  14551.           column number.  If this is the case, enter the starting
  14552.           column number of the actual file description.  Enter 0 (the
  14553.           default) if you are converting a conventional FILES.BBS
  14554.           listing.
  14555.           
  14556.           ┌─────────────────────────────────────────────────────────┐
  14557.           │ Expand wildcards (y,N)?                                 │
  14558.           └─────────────────────────────────────────────────────────┘
  14559.           
  14560.           Conventional FILES.BBS listings allowed the use of wildcard
  14561.           characters within the filename.  Then, when a file list was
  14562.           displayed, all files in the directory path that matched the
  14563.           wildcard specification were displayed.
  14564.  
  14565.           If you answer "Y" to this question, GENFBASE will import all
  14566.           files that match any wildcard specifications that are found,
  14567.           appending the same file description to each match located.
  14568.  
  14569.           If you answer "N" to this question, GENFBASE will import the
  14570.           single filename and wildcard specification along with the
  14571.           associated description.  Then, when the file list is
  14572.           displayed by RemoteAccess, a dynamic real-time search is
  14573.           performed in the specified directory path for filenames
  14574.           which match the wildcard specification.
  14575.           
  14576.           6)    Upon answering the last question, GENFBASE will begin
  14577.                 processing operations by first deleting any existing
  14578.                 file database information for the areas to be
  14579.                 processed.  New database files will be built to
  14580.                 replace any deleted files using the parameters you
  14581.                 supplied.
  14582.           
  14583.           This process may be repeated at any time for any area for
  14584.           which a file list exists.  Additionally, FILES.BBS lists may
  14585.           be generated for any or all areas using the RAFILE utility
  14586.           discussed later in this section.
  14587.           
  14588.  
  14589.  
  14590.  
  14591.  
  14592.  
  14593.  
  14594.  
  14595.  
  14596.  
  14597.  
  14598.  
  14599.  
  14600.                                    - 223 -
  14601.           RAFILE.EXE
  14602.           ════════════════════════════════════════════════════════════
  14603.           RAFILE is the file database batch maintenance utility.  It
  14604.           is completely command-line driven and provides numerous
  14605.           functions designed to assist you in maintaining and
  14606.           administrating your file database system.  Since no
  14607.           interaction is required once a command-line is passed to
  14608.           RAFILE, any of its functions may be performed from within
  14609.           your BBS batch file.
  14610.  
  14611.           To list a summary of command-line parameters accepted by
  14612.           RAFILE, enter "RAFILE ?" followed by pressing <ENTER>.  The
  14613.           following information will appear on your display:
  14614.           
  14615.             ADD      <area#> <name> [uploader_name] [description]
  14616.             INDEX    [area#]
  14617.             CLEAN    [area#] [/KM]
  14618.             COMPRESS [area#]
  14619.             EXPORT   [area#] [output file]
  14620.             IMPORT   [area#] [input file] [/ERASE] [/Uuploader_name]
  14621.             KILL     <filespec> [area#]
  14622.             LOCK     <filespec> [area#]
  14623.             UNLOCK   <filespec> [area#]
  14624.             FILELIST <output file> [area#] [/Ssecurity] [/Ddays old]
  14625.                      [/Bbanner] [/Ffooter] [/NOHDR] [/7BIT] [/FORMF]
  14626.             SORT     [area#] [DATE] [REVERSE] (default=NAME,FORWARD)
  14627.             ADOPT    <filespec> [area#]
  14628.             UPDATE   <filespec> [area#] [TOUCH|TOUCHMOD]
  14629.             REARC    [area#]
  14630.           
  14631.           Refer to this display for usage syntax throughout this
  14632.           section.  Parameters enclosed in "[" and "]" are optional
  14633.           while parameters enclosed in "<" and ">" are required.  If
  14634.           an area# of zero (or no area number) is specified, RAFILE
  14635.           will process all areas.  Wildcards are valid in all
  14636.           <filespec> parameters.
  14637.  
  14638.           It is possible to process multiple, specific file areas in
  14639.           one pass.  There are two steps required to do this.  First,
  14640.           create a text file which contains the areas you wish to
  14641.           process.  The area numbers may be separated by spaces or
  14642.           commas, and a range of areas may be specified by inserting a
  14643.           "-" character between two numbers.  Examine the following
  14644.           sample file.
  14645.           
  14646.                Filename:  AREA.LST
  14647.           
  14648.                1 3 5 10
  14649.                15-23 31-54 57 60 62
  14650.           
  14651.           To specify all areas within a specific group, prefix the
  14652.           area number with the g character.  For example, the line 1 2
  14653.           3 G5 9 would process file areas 1, 2, 3, 9 and every area in
  14654.           group 5.  This format is also valid on the command-line.
  14655.  
  14656.  
  14657.  
  14658.  
  14659.  
  14660.  
  14661.  
  14662.  
  14663.  
  14664.                                    - 224 -
  14665.           The second step is to specify the name of this text file on
  14666.           the RAFILE command-line in place of the area number.  You
  14667.           must precede the filename with the @ character.  For
  14668.           example, to use our example AREA.LST file to create a master
  14669.           file list for those areas, you might use the command-line:
  14670.           
  14671.                    RAFILE FILELIST MASTER.LST @AREA.LST
  14672.            
  14673.           NOTE:  RAFILE will not process any area that is currently in
  14674.           use by RemoteAccess or RAMGR in order to avoid any possible
  14675.           conflicts.
  14676.           
  14677.           
  14678.           RAFILE Command-line Parameter Descriptions
  14679.           ════════════════════════════════════════════════════════════
  14680.           The following listing describes each command-line parameter
  14681.           that RAFILE accepts.
  14682.           
  14683.           ADD    <area#> <name> [uploader_name] [description].
  14684.           ────────────────────────────────────────────────────────────
  14685.  
  14686.           Simply adds a new file to the database.  This is like a
  14687.           local upload.
  14688.           
  14689.           Example:
  14690.           
  14691.             "RAFILE ADD 1 C:\DL\MFILE.ARJ Andrew_Milner This is a
  14692.              program to examine and verify your database."
  14693.           
  14694.           This would add the file MFILE.ARJ located in the C:\DL
  14695.           directory to file area 1.  The uploader's name will be set
  14696.           to Andrew_Milner. The remaining text will be added to the
  14697.           description of the file.
  14698.           
  14699.  
  14700.           ADOPT    <filespec> [area#]
  14701.           ────────────────────────────────────────────────────────────
  14702.           Add all matching files to the database in the specified area
  14703.           that are not already in the database.  This allows you to
  14704.           add files to the database directly from the DOS
  14705.           command-line.
  14706.           
  14707.           Example:
  14708.           
  14709.                 RAFILE ADOPT *.* 100
  14710.           
  14711.           Adopts all files in the directory for file area 100 which
  14712.           are not already in the database.
  14713.           
  14714.  
  14715.           INDEX    [area#]
  14716.           ────────────────────────────────────────────────────────────
  14717.           Regenerate the quick index file for the specified area.
  14718.           This is usually only used if the index becomes corrupted.
  14719.           If no area number is specified, all areas are processed.
  14720.  
  14721.  
  14722.  
  14723.  
  14724.  
  14725.  
  14726.  
  14727.  
  14728.                                    - 225 -
  14729.           Example:
  14730.           
  14731.               RAFILE INDEX 
  14732.           
  14733.           Regenerates the quick index file for all areas (since no
  14734.           area number was specified on the command-line).
  14735.           
  14736.  
  14737.           CLEAN    [area#] [/KM]
  14738.           ────────────────────────────────────────────────────────────
  14739.           Kills and/or moves files from the database (and on disk)
  14740.           based on the threshold information stored for each file area
  14741.           in RACONFIG.  Refer to the individual file area settings:
  14742.           DL days, FD days and MoveArea in RACONFIG:
  14743.           
  14744.                              Manger > File Areas
  14745.           
  14746.           This also performs a COMPRESS operation. The optional /KM
  14747.           switch will cause all file entries marked a MISSING to be
  14748.           removed from the database.  If no area number is specified,
  14749.           all areas are processed.
  14750.           
  14751.           Example:
  14752.           
  14753.                 RAFILE CLEAN 10 /KM
  14754.           
  14755.           Removes or moves files from file area 10 based on the DL
  14756.           days, FD days and MoveArea settings assigned to that area.
  14757.           Additionally, any missing files are removed from the
  14758.           database.
  14759.           
  14760.           NOTE:  RAFILE will never remove comments from the file
  14761.           database.
  14762.           
  14763.           
  14764.           COMPRESS    [area#]
  14765.           ────────────────────────────────────────────────────────────
  14766.           Optimizes the database files and removes deleted entries.
  14767.           This function is also performed whenever the CLEAN operation
  14768.           is executed.
  14769.           
  14770.  
  14771.  
  14772.  
  14773.  
  14774.  
  14775.  
  14776.  
  14777.  
  14778.  
  14779.  
  14780.  
  14781.  
  14782.  
  14783.  
  14784.  
  14785.  
  14786.  
  14787.  
  14788.  
  14789.  
  14790.  
  14791.  
  14792.                                    - 226 -
  14793.           EXPORT    [area#] [output_file]
  14794.           ────────────────────────────────────────────────────────────
  14795.           Generates a conventional FILES.BBS listing for the specified
  14796.           area in the actual file directory unless a full path and
  14797.           output filename is specified.  If no area number is
  14798.           specified, all areas are processed.
  14799.           
  14800.           Examples:
  14801.           
  14802.                 RAFILE EXPORT
  14803.           
  14804.           Creates a FILES.BBS file listing in each file area
  14805.           directory.
  14806.           
  14807.                 RAFILE EXPORT 100 C:\DL\MYFILE.TXT
  14808.           
  14809.           Creates a file listing for area 100 called MYFILE.TXT which
  14810.           is written in the C:\DL directory.
  14811.           
  14812.  
  14813.           IMPORT    [area#] [input_file] [/ERASE] /Uuploader_name]
  14814.           ────────────────────────────────────────────────────────────
  14815.           Imports files (and their descriptions) from FILES.BBS in the
  14816.           file directory (or another input file, if specified) into
  14817.           the database.  The /ERASE switch will kill the input file
  14818.           after the import has been completed.  All imported files
  14819.           will have their upload date set to the current date to make
  14820.           them appear as new.  The Uploader field for each imported
  14821.           file will be sent to the Sysop name *as defined in RACONFIG)
  14822.           unless overridden with the optional /U parameter.
  14823.           
  14824.           NOTE:  When specifying an alternate Uploader_Name it is
  14825.           important to note that any spaces in the name must be
  14826.           substituted with the underscore "_" character.
  14827.           
  14828.           Examples:
  14829.           
  14830.                 RAFILE IMPORT 10
  14831.           
  14832.           Imports the file list FILES.BBS from the directory path for
  14833.           area 10, setting the uploader name to Sysop since none was
  14834.           specified on the command-line.
  14835.           
  14836.                 RAFILE IMPORT 10 A:\FILE.LST /UJoe_Doe
  14837.           
  14838.           Imports files in the directory for area 10 using the file
  14839.           list A:\FILE.LST.  The uploader name is set to Joe Doe for
  14840.           each file imported.
  14841.           
  14842.  
  14843.  
  14844.  
  14845.  
  14846.  
  14847.  
  14848.  
  14849.  
  14850.  
  14851.  
  14852.  
  14853.  
  14854.  
  14855.  
  14856.                                    - 227 -
  14857.           KILL    <filespec> [area#]
  14858.           ────────────────────────────────────────────────────────────
  14859.           Kill all matching files from the database and from disk.
  14860.           This also performs a COMPRESS operation.
  14861.           
  14862.           Example:
  14863.           
  14864.               RAFILE  KILL  MONEY.*
  14865.           
  14866.           Kills all files matching the wildcard pattern MONEY.* from
  14867.           all file areas.
  14868.           
  14869.  
  14870.           LOCK    <filespec> [area#] 
  14871.           ────────────────────────────────────────────────────────────
  14872.           Lock all matching files from deletion or moving. When a file
  14873.           is locked, it cannot be moved or deleted using the CLEAN
  14874.           function or by the RemoteAccess Manager (RAMGR).
  14875.           
  14876.           Example:
  14877.           
  14878.                 RAFILE LOCK ALLFILES.ARJ 10
  14879.               
  14880.           Locks the file ALLFILES.ARJ in file area 10.
  14881.  
  14882.           
  14883.           UNLOCK    <filespec> [area#]
  14884.           ────────────────────────────────────────────────────────────
  14885.           This function is the reverse of the Lock function just
  14886.           described.  All matching files are unlocked.
  14887.           
  14888.  
  14889.  
  14890.           FILELIST      <output_file> [area#] [/Ssecurity]
  14891.                         [/Ddays_old] [/Bbanner] [/Ffooter] [/NOHDR]
  14892.                         [/7BIT] [/FORMF]
  14893.           ────────────────────────────────────────────────────────────
  14894.           Generate a master file list of the areas specified. If the
  14895.           /S<security> switch is used, only areas of <security> list
  14896.           security or lower will be included in the list.  The
  14897.           /D<days_old> option includes only files which are <days_old>
  14898.           old or newer. You may also specify a /B<banner_file> which
  14899.           will be added automatically to the top of the list.
  14900.  
  14901.           Specifying the /NOHDR switch disables the header that is
  14902.           normally inserted at the top of each area.  Specifying the
  14903.           /7BIT switch causes all high-ASCII characters in the header
  14904.           to be translated to their 7-bit equivalents. Specifying the
  14905.           /FORM switch causes a formfeed to be inserted at the end of
  14906.           each area.
  14907.  
  14908.  
  14909.  
  14910.  
  14911.  
  14912.  
  14913.  
  14914.  
  14915.  
  14916.  
  14917.  
  14918.  
  14919.  
  14920.                                    - 228 -
  14921.           Examples:
  14922.           
  14923.               RAFILE  FILELIST  MASTER.LST  @AREA.LST
  14924.           
  14925.           Creates a master file list including all areas specified in
  14926.           the file AREA.LST, writing the list to the file MASTER.LST.
  14927.           
  14928.                 RAFILE FILELIST MASTER.LST G1 /S50 /BC:\RA\BANNER.TXT
  14929.           
  14930.           Creates a master file list including all file areas in group
  14931.           1.  Additionally, only file areas with a list security of 50
  14932.           or lower will be included.  A banner file called BANNER.TXT
  14933.           is inserted at the beginning of the list from the C:\RA
  14934.           directory.
  14935.           
  14936.  
  14937.  
  14938.           SORT    [area#] [DATE] [REVERSE]
  14939.           ────────────────────────────────────────────────────────────
  14940.           Sorts files by name or date, in forward or reverse order.
  14941.           Automatically sorts files in between comment lines.  If DATE
  14942.           is specified, files are sorted by date rather than by name.
  14943.           If REVERSE is specified, files are sorted in reverse order
  14944.           rather than in forward order.
  14945.           
  14946.           Examples:
  14947.           
  14948.                 RAFILE SORT
  14949.           
  14950.           Sorts the files in all areas by name and in forward order.
  14951.           
  14952.               RAFILE  SORT  DATE  REVERSE
  14953.           
  14954.           Sorts the files in all areas by date and in reverse order.
  14955.           
  14956.               RAFILE  SORT  100  REVERSE
  14957.           
  14958.           Sorts the files in area 100 by name and in reverse order.
  14959.           
  14960.  
  14961.           
  14962.           UPDATE    <filespec> [area#] [TOUCH|TOUCHMOD]
  14963.           ────────────────────────────────────────────────────────────
  14964.           Update all matching file database entries from actual DOS
  14965.           file information.  If TOUCH is specified, the file upload
  14966.           date (not the actual file date) will be changed to the
  14967.           current date unconditionally.  If TOUCHMOD is specified, the
  14968.           file upload date is changed to the current date only if DOS
  14969.           reports that the file has been modified since the last
  14970.           UPDATE operation.  This allows you to mark any changed files
  14971.           as new.
  14972.           
  14973.           Example:
  14974.           
  14975.                 RAFILE UPDATE *.* 10 TOUCHMOD
  14976.           
  14977.           Updates all files in area 10, changing upload dates to the
  14978.           current date for any file that has changed since the last
  14979.           UPDATE function.
  14980.  
  14981.  
  14982.  
  14983.  
  14984.                                    - 229 -
  14985.           REARC    [area#]
  14986.           ────────────────────────────────────────────────────────────
  14987.           Re-archives all files in the specified area using the
  14988.           archive type specified for that area in RACONFIG:
  14989.           
  14990.                        Manager > File Areas > ArcType
  14991.           
  14992.           NOTE:  The only archive types that can be converted are
  14993.           those that have an entry in RACONFIG:
  14994.           
  14995.                         Options > Files > Archivers
  14996.           
  14997.           When RAFILE performs this operation, it uses the Rearchive
  14998.           directory defined in RACONFIG:
  14999.           
  15000.                         System > Paths > Rearchive
  15001.           
  15002.           All directories below the defined rearchive directory are
  15003.           deleted before and after each file conversion.
  15004.           
  15005.           Example:
  15006.           
  15007.                 RAFILE REARC 10
  15008.           
  15009.           Rearchives all files in area number 10, converting all
  15010.           archive types to the format selected for that area in
  15011.           RACONFIG.
  15012.           
  15013.           
  15014.           RAMGR.EXE
  15015.           ════════════════════════════════════════════════════════════
  15016.           As discussed in the User Administration chapter, the
  15017.           RemoteAccess Manager is used not only for user
  15018.           administration but for file database administration as well.
  15019.           It provides a module specifically designed for performing
  15020.           file database administrative functions and replaces any
  15021.           third party programs used in conjunction with previous
  15022.           versions of RemoteAccess.
  15023.  
  15024.           The powerful functions of this module allow you to perform
  15025.           such operations as editing file descriptions, moving files,
  15026.           specifying individual file passwords and costs, locking and
  15027.           unlocking files and much more.  Virtually all operations may
  15028.           be performed on individual files as well as groups of tagged
  15029.           (or selected) files.
  15030.  
  15031.           RAMGR.EXE resides in the system directory and may be
  15032.           executed by typing RAMGR followed by pressing <ENTER>. When
  15033.           this utility is fired up, it presents a pick-list menu which
  15034.           allows you to select a number of options including Files.
  15035.           You can also fire up RAMGR in file administration mode
  15036.           directly by typing the command RAMGR  /F followed by
  15037.           pressing <ENTER>.  This method bypasses the initial
  15038.           pick-list menu and places you directly in the file
  15039.           administration portion of the program.
  15040.  
  15041.  
  15042.  
  15043.  
  15044.  
  15045.  
  15046.  
  15047.  
  15048.                                    - 230 -
  15049.           In addition to the -F parameter, RAMGR also supports
  15050.           several other command-line switches.  They are:
  15051.           
  15052.              -B   Run in monochrome (black and white) mode.
  15053.           
  15054.              -N   Ignore any missing file area paths (normally RAMGR
  15055.                   will not allow you to enter a file area which has an
  15056.                   invalid path).
  15057.           
  15058.              -U   Edit users only (bypass main menu).  See the User
  15059.                   Administration chapter for more information.
  15060.           
  15061.              -A   Auto-update mode (file editing).  Forces an
  15062.                   automatic update of all files when an area is
  15063.                   entered.  If you use the A-U command (explained
  15064.                   later in this section) on a regular basis, you may
  15065.                   want to use this parameter instead.
  15066.           
  15067.           Once in the files portion of RAMGR, you are presented with a
  15068.           pick-list of files areas from which to choose.  You can move
  15069.           the cursor-bar using any of the following keys.
  15070.           
  15071.           UP         Moves the cursor-bar up one area.
  15072.           
  15073.           DOWN       Moves the cursor-bar down one area.
  15074.           
  15075.           PAGE-UP    Moves the cursor-bar up one screen page.
  15076.           
  15077.           PAGE-DOWN  Moves the cursor-bar down one screen page.
  15078.           
  15079.           HOME       Moves the cursor-bar to the first record in the
  15080.                      database.
  15081.           
  15082.           END        Moves the cursor-bar to the last record in the
  15083.                      database.
  15084.           
  15085.           Position the cursor-bar on a valid file area entry and press
  15086.           <ENTER> to bring up that entry.
  15087.  
  15088.           Once in the selected file area, you will notice another
  15089.           pick- list menu which displays each database entry for the
  15090.           file area. Each line contains information about an
  15091.           individual file, or a comment line, all of which may be
  15092.           modified. When first entering RAMGR, file entries are
  15093.           displayed in non-user mode.  That is to say that RAMGR uses
  15094.           its own format display entries.  Selecting User Mode
  15095.           (explained in the following pages) switches this display to
  15096.           use the format defined by the File List Format field in
  15097.           RACONFIG:
  15098.           
  15099.                         Options > Files > List Format
  15100.           
  15101.           The description window near the bottom of the display shows
  15102.           the file description for the file at the current cursor-bar
  15103.           location. Also at the very bottom of the display, you will
  15104.           see the message "(F1) Command summary".  Press F1 to display
  15105.           the summarized list of commands available.
  15106.  
  15107.  
  15108.  
  15109.  
  15110.  
  15111.  
  15112.                                    - 231 -
  15113.           <Esc>      Escape back to file area selection pick-list.
  15114.           
  15115.           <Enter>    Edit the entry at the current cursor-bar
  15116.                      location.
  15117.           
  15118.           <F2>       Edit the description of the file at the current
  15119.                      cursor-bar location
  15120.           
  15121.           <SPACEBAR> Drop anchor for file block.  You may select
  15122.                      several files to perform operations on.  Position
  15123.                      the cursor-bar on the first file database entry
  15124.                      desired and then press <SPACEBAR>.  Next, move
  15125.                      the cursor-bar down the list. Notice that all
  15126.                      files from the point where you dropped the anchor
  15127.                      to the current cursor-bar location have become
  15128.                      highlighted.  Any operation performed next will
  15129.                      be performed on all of the highlighted files.
  15130.           
  15131.           <Del>      Delete the highlighted file(s).  After selecting
  15132.                      this option you will be asked whether to delete
  15133.                      the files as well as database entries.  Answering
  15134.                      "Y" will cause the file on disk to be deleted as
  15135.                      well as the database entry.
  15136.           
  15137.           <Insert>   Insert a new file entry at the highlighted
  15138.                      position.  This allows you to insert a new file
  15139.                      database entry at a specific location.  When this
  15140.                      command is selected, RAMGR prompts for the
  15141.                      filename to be inserted, automatically including
  15142.                      the drive and path of the current file area.
  15143.                      Wildcard characters may be used within the
  15144.                      filename entered and are expanded, except when
  15145.                      the filename is preceded by the @ character.
  15146.           
  15147.           SHIFT-     Insert a new comment at the highlighted position.
  15148.           INSERT     This allows you to insert a comment line at the
  15149.                      current cursor-bar location.
  15150.           
  15151.           ALT-A      Adopt orphaned files.  This works like the ADOPT
  15152.                      function of RAFILE.  When selected, you will be
  15153.                      prompted to enter a filename to adopt.  Wildcard
  15154.                      characters are accepted. RAMGR searches for all
  15155.                      files matching the specified criteria and
  15156.                      displays the filenames in a separate window.
  15157.                      From this window, you may select/tag files to
  15158.                      adopt.  Only files in the specified area that do
  15159.                      not already exist in the database will be
  15160.                      displayed.
  15161.           
  15162.           ALT-B      Buffer operations.  This command allows you to
  15163.                      copy highlighted entries into a buffer, edit the
  15164.                      contents of the buffer, paste the buffer contents
  15165.                      to a comment or file description, import a disk
  15166.                      file to the buffer or export the buffer contents
  15167.                      to a disk file.
  15168.  
  15169.  
  15170.  
  15171.  
  15172.  
  15173.  
  15174.  
  15175.  
  15176.                                    - 232 -
  15177.           ALT-C      Copy highlighted file(s) to another area.  Like
  15178.                      the hurl command except that the original
  15179.                      database entries and files remain in the original
  15180.                      area.  (See the ALT-H command for more
  15181.                      information).
  15182.           
  15183.           ALT-D      Toggle file listing display format (user mode is
  15184.                      slower).  When listing files in the database,
  15185.                      RAMGR can alternately use user mode.  This
  15186.                      displays entries using the file list format
  15187.                      defined in RACONFIG:
  15188.           
  15189.                               Options > Files > List Format
  15190.           
  15191.           ALT-F      Find a file (wildcards valid).  Use this option
  15192.                      to locate files that match the search criteria
  15193.                      you specify. If the file is not located in the
  15194.                      current file area, you can optionally search all
  15195.                      file areas for matches.
  15196.           
  15197.           ALT-G      Generate a text file from the current area
  15198.                      (FILES.BBS).  This option is used to create a
  15199.                      FILES.BBS type listing of the current file area.
  15200.           
  15201.           
  15202.           ALT-H      Hurl (move) the highlighted file(s) to another
  15203.                      area.  The file database entries and disk files
  15204.                      are moved to the target area and are removed from
  15205.                      the source area.
  15206.           
  15207.           ALT-I      Import a text file as a comment line.  Used to
  15208.                      import a disk file as a comment line which is
  15209.                      inserted at the current cursor-bar location.
  15210.           
  15211.           ALT-K      Find a file (keyword description search).  Like
  15212.                      the ALT-F command but searches on the file
  15213.                      description rather than the filename.
  15214.           
  15215.           ALT-M      Move highlighted file(s) within the current area.
  15216.                      This option is used to place the highlighted
  15217.                      entries at another position within the same area.
  15218.           
  15219.           ALT-P      Put a copy of the highlighted file(s) in any
  15220.                      directory.  This option is used to copy the
  15221.                      source file(s) to any valid DOS directory on disk
  15222.                      (does not have to be a valid file database area).
  15223.           
  15224.           ALT-R      Rename the highlighted file.
  15225.           
  15226.           ALT-S      Sort highlighted files.  This option is similar
  15227.                      to the RAFILE SORT operation but operates only on
  15228.                      the highlighted files.  To sort the entire area
  15229.                      from within RAMGR, simply drop the file anchor on
  15230.                      the first entry and press <END> to mark all
  15231.                      entries. Then select this option.
  15232.  
  15233.  
  15234.  
  15235.  
  15236.  
  15237.  
  15238.  
  15239.  
  15240.                                    - 233 -
  15241.           ALT-T      Touch upload date on highlighted files.  This
  15242.                      option sets the upload date (not the actual file
  15243.                      date) of the highlighted file(s) to the current
  15244.                      date.
  15245.           
  15246.           ALT-U      Update highlighted entries from DOS information.
  15247.                      This option sets the date of the highlighted
  15248.                      file(s) to the actual DOS file date(s).
  15249.           
  15250.           NOTE:  To edit a specific database entry, position the
  15251.           cursor-bar on the desired entry and press <ENTER>.  This
  15252.           brings up all of the fields that are associated with each
  15253.           individual entry record.
  15254.           
  15255.           
  15256.           File:        The file name and size in bytes.
  15257.           
  15258.           Date:        The actual DOS file date.
  15259.           
  15260.           Uploader:    The name of the person who uploaded the file.
  15261.           
  15262.           Keyword#1 -  Up to 5 keywords which may be entered and
  15263.           Keyword#5:   later used to search on.
  15264.           
  15265.           Downloads:   The number of times the file has been
  15266.                        downloaded.
  15267.           
  15268.           Cost:        The cost (in credits) that is charged users who
  15269.                        download this file.
  15270.           
  15271.           UL Date:     The date the file was uploaded.
  15272.           
  15273.           Last DL:     The last date the file was downloaded.
  15274.           
  15275.           To change any of these fields, move to the appropriate field
  15276.           and enter the desired information.  You can use the <DELETE>
  15277.           and <BACKSPACE> keys to remove any unwanted characters.
  15278.           Press <Esc> when you are finished.
  15279.  
  15280.           In addition to these fields, the flag fields on the right
  15281.           portion of the screen may also be changed.  Since a flag may
  15282.           have one of two settings (Yes or No) they are best
  15283.           illustrated by asking a question.
  15284.           
  15285.           Deleted:     Should the file be marked for deletion?
  15286.           
  15287.           Unlisted:    Should the file be excluded from file lists?
  15288.           
  15289.           Free:        Is the file a free file which does not affect
  15290.                        download ratios?
  15291.           
  15292.           Locked:      Should the file be locked so that it cannot be
  15293.                        deleted or moved?
  15294.           
  15295.           NotAvail:    Should the file be marked as being unavailable?
  15296.           
  15297.           Missing:     Should the file be listed as missing from the
  15298.                        file listing?
  15299.  
  15300.  
  15301.  
  15302.  
  15303.  
  15304.                                    - 234 -
  15305.           NoTime:      Should users be able to download the file
  15306.                        without regard to time restrictions?
  15307.           
  15308.           To change a flag setting, move to the appropriate field and
  15309.           press either "Y" or "N".
  15310.  
  15311.           When you are finished editing the entry, press <ESCAPE> and
  15312.           answer "Y" or "N" to the "Save changes (Y/n)?" prompt.
  15313.  
  15314.  
  15315.  
  15316.  
  15317.  
  15318.  
  15319.  
  15320.  
  15321.  
  15322.  
  15323.  
  15324.  
  15325.  
  15326.  
  15327.  
  15328.  
  15329.  
  15330.  
  15331.  
  15332.  
  15333.  
  15334.  
  15335.  
  15336.  
  15337.  
  15338.  
  15339.  
  15340.  
  15341.  
  15342.  
  15343.  
  15344.  
  15345.  
  15346.  
  15347.  
  15348.  
  15349.  
  15350.  
  15351.  
  15352.  
  15353.  
  15354.  
  15355.  
  15356.  
  15357.  
  15358.  
  15359.  
  15360.  
  15361.  
  15362.  
  15363.  
  15364.  
  15365.  
  15366.  
  15367.  
  15368.                                    - 235 -
  15369.           Chapter 8
  15370.           Questionnaires
  15371.           *    
  15372.           *    
  15373.           *    
  15374.           *    
  15375.           Questionnaires are  powerful language scripts that allow you
  15376.           to query users for input and take actions based on that
  15377.           input.  They can also be used in support of such areas as
  15378.           usage costing and subscription systems. A simple set of
  15379.           script commands gives you access to the flexibility and
  15380.           power that questionnaires provide.
  15381.  
  15382.  
  15383.  
  15384.  
  15385.  
  15386.  
  15387.  
  15388.  
  15389.  
  15390.  
  15391.  
  15392.  
  15393.  
  15394.  
  15395.  
  15396.  
  15397.  
  15398.  
  15399.  
  15400.  
  15401.  
  15402.  
  15403.  
  15404.  
  15405.  
  15406.  
  15407.  
  15408.  
  15409.  
  15410.  
  15411.  
  15412.  
  15413.  
  15414.  
  15415.  
  15416.  
  15417.  
  15418.  
  15419.  
  15420.  
  15421.  
  15422.  
  15423.  
  15424.  
  15425.  
  15426.  
  15427.  
  15428.  
  15429.  
  15430.  
  15431.  
  15432.                                    - 236 -
  15433.           WHAT IS A QUESTIONNAIRE?
  15434.  
  15435.           Quite simply, a questionnaire is an interactive script
  15436.           language. So what is a script language?  We generally think
  15437.           of a language as something subject to interpretation.  When
  15438.           we think of scripts, we usually think of something that is
  15439.           written to be read or played back the same way every time.
  15440.           A questionnaire is a script file that you write which is
  15441.           interpreted by RemoteAccess as it is played back.  The
  15442.           interpreter recognizes valid statements and acts on them
  15443.           accordingly.
  15444.  
  15445.           Questionnaires can be used for a variety of purposes.  You
  15446.           might use one for a user survey to poll your users on a
  15447.           given topic.  Or, you might use one to gather information
  15448.           from new users and adjust their settings based on that
  15449.           information. The questionnaire script language supports
  15450.           statements that allow you to record user input, output
  15451.           formatted text, display files, execute external programs,
  15452.           adjust user security levels and access flags, plus much
  15453.           more.
  15454.  
  15455.           Questionnaire script files are ASCII text files which are
  15456.           stored in the questionnaire directory specified for each
  15457.           language that your system supports.  This setting can be
  15458.           found in RACONFIG:
  15459.           
  15460.                        Manager > Languages > Ques Path
  15461.           
  15462.           You can create questionnaire files using any ASCII text
  15463.           editor.  Or, as discussed in the External Support Files
  15464.           chapter, you can even use the control file editor in
  15465.           RACONFIG.
  15466.  
  15467.           Text file control codes are fully supported within a
  15468.           questionnaire which adds to the power and flexibility of a
  15469.           script file.  They may be used to display data in much the
  15470.           same way they are used in text files.  Or, they may be used
  15471.           to make comparisons against data (an example of which is
  15472.           given later under the IF script command).
  15473.  
  15474.           Just as text files must have certain filename extensions, so
  15475.           too do questionnaires.  You already know that questionnaire
  15476.           files must exist in a directory you've previously specified.
  15477.           In addition to this, all questionnaire files must have a
  15478.           filename extension of .Q-A.  When RemoteAccess reads the
  15479.           script, it is interpreted and the appropriate statements are
  15480.           processed. Then, if any information is to be written to
  15481.           disk, RemoteAccess writes the information using the base
  15482.           questionnaire filename with an extension of  .ASW.
  15483.  
  15484.           For example, if a questionnaire script has a filename of
  15485.           VOTE.Q-A, any information that is written to disk from
  15486.           within the script, is written to the file VOTE.ASW.  This is
  15487.           known as an answer file.
  15488.  
  15489.  
  15490.  
  15491.  
  15492.  
  15493.  
  15494.  
  15495.  
  15496.                                    - 237 -
  15497.           When RemoteAccess reads and interprets a questionnaire
  15498.           script, it doesn't check for upper or lower-case formatting.
  15499.           Therefore, the statement "ASK" can be entered as "ask" or
  15500.           even "AsK" and it will be interpreted the same way.
  15501.           
  15502.  
  15503.           Automatic Questionnaires
  15504.           ════════════════════════════════════════════════════════════
  15505.           Questionnaires can be executed by using menu function type
  15506.           12-"Questionnaire" from any menu.  In addition to this
  15507.           method, RemoteAccess also supports several questionnaires
  15508.           that are executed automatically under certain conditions.
  15509.           These questionnaires compliment important aspects of running
  15510.           a BBS.  Automatic questionnaires are especially useful in
  15511.           adjusting user settings or executing specific functions
  15512.           depending on the conditions that cause the questionnaire to
  15513.           be executed.
  15514.  
  15515.           For example, whenever a new user logs-on, the questionnaire
  15516.           NEWUSER.Q-A is executed.  In this script, you might query a
  15517.           new user for specific information such as hobbies or BBS
  15518.           interests.  You could also adjust the user's security level
  15519.           and/or access flags based on data that the user has entered.
  15520.  
  15521.           If the conditions required to display an automatic
  15522.           questionnaire are met but the script file itself does not
  15523.           exist, RemoteAccess won't take any action and no error
  15524.           message will be displayed.  After all, questionnaires are
  15525.           used to enhance your system and are not mandatory.
  15526.  
  15527.           The automatic questionnaires supported are detailed below.
  15528.           An example of each questionnaire is given in the last
  15529.           section of this chapter.
  15530.           
  15531.           DOBCFAIL.Q-A  RemoteAccess can prompt users to re-enter
  15532.                         their birth date for verification purposes
  15533.                         every certain number of log-ons.  This is set
  15534.                         in RACONFIG:
  15535.           
  15536.                                 Options > System > Check DOB
  15537.           
  15538.                         This questionnaire is executed if the user
  15539.                         fails to enter the correct birth date.  It can
  15540.                         be used to automatically lower the user's
  15541.                         security level or alter access flags which
  15542.                         might restrict the user from using the system
  15543.                         until properly verified.  Upon completion of
  15544.                         this questionnaire, the call is terminated.
  15545.           
  15546.           NEWUSER.Q-A   If this questionnaire file exists, it will be
  15547.                         executed automatically whenever a new user
  15548.                         logs-on to your system.  This is useful for
  15549.                         obtaining additional information about your
  15550.                         users that is not gathered in the internal new
  15551.                         user log-on procedures.
  15552.  
  15553.  
  15554.  
  15555.  
  15556.  
  15557.  
  15558.  
  15559.  
  15560.                                    - 238 -
  15561.           NOCREDIT.Q-A  Usually used in conjunction with subscription
  15562.                         systems, this questionnaire is executed when a
  15563.                         user's credit reaches zero if; 1) the user
  15564.                         runs out of credits due to the time per-minute
  15565.                         cost as defined in the Limits Manager of
  15566.                         RACONFIG, or; 2) the user runs out of credits
  15567.                         in the menu item per minute cost.  If, for
  15568.                         whatever reason, a user's credit reaches zero,
  15569.                         this questionnaire would give the Sysop the
  15570.                         flexibility in what action is to be taken.
  15571.  
  15572.                         For example, the system may display a message
  15573.                         and lower the user's security level, or
  15574.                         perhaps run an external credit card program,
  15575.                         or even terminate the session. You can define
  15576.                         a usage cost on a per-minute basis in
  15577.                         RACONFIG:
  15578.  
  15579.                                   Manager > Limits > PerMin
  15580.           
  15581.           SUBDATE.Q-A   This questionnaire is automatically executed
  15582.                         if the user's subscription has expired.  You
  15583.                         can  define the length of each user's
  15584.                         subscription in RACONFIG:
  15585.           
  15586.                                 Options > New Users > Sub days
  15587.               
  15588.                         This questionnaire may be used to
  15589.                         automatically lower user security levels and
  15590.                         notify users that their subscription has
  15591.                         expired.  It might also be used to execute
  15592.                         another questionnaire, a menu function, or
  15593.                         even an external program.
  15594.           
  15595.           SUBDAYnn.Q-A  This questionnaire provides pre-subscription
  15596.                         expiration support.  If it exists, this
  15597.                         questionnaire will be executed nn days prior
  15598.                         to subscription expiration during the log-on
  15599.                         process.  For example, the questionnaire
  15600.                         SUBDAY30.Q-A would be executed if a user whose
  15601.                         subscription expires in 30 days logs-on.
  15602.           
  15603.           As you can see, these automatic questionnaires can be quite
  15604.           useful on your system.  And by using the script commands
  15605.           outlined in this chapter, you can create questionnaires that
  15606.           are indeed quite powerful.
  15607.           
  15608.  
  15609.           Script Command Listing
  15610.           ════════════════════════════════════════════════════════════
  15611.           The script commands that are supported by RemoteAccess are
  15612.           outlined throughout this section.  Each command name is
  15613.           given along with the expected syntax, description and usage
  15614.           example for each.  Finally, the last section of this chapter
  15615.           includes some example questionnaire scripts which show you
  15616.           how a script might be practically applied.
  15617.           
  15618.  
  15619.  
  15620.  
  15621.  
  15622.  
  15623.  
  15624.                                    - 239 -
  15625.           Ask
  15626.           ────────────────────────────────────────────────────────────
  15627.           Syntax:    Ask <len> <var num>
  15628.           
  15629.           Description:  Waits for the user to enter a string of up to
  15630.                         <len> characters and stores the string in the
  15631.                         variable <var num>.  Valid values for <len>
  15632.                         are 1 to 255 and <var num> may be any number
  15633.                         between 1 and 50.
  15634.           
  15635.           Example:    Ask 30 5
  15636.           
  15637.                         Waits for the user to enter a string of up to
  15638.                         30 characters in length.  The user's input is
  15639.                         stored in variable number 5.
  15640.           
  15641.  
  15642.           Assign
  15643.           ────────────────────────────────────────────────────────────
  15644.           Syntax:    Assign <var num> <"literal">
  15645.           
  15646.           Description:  Assigns the text specified in <"literal"> to
  15647.                         variable number <var num>.  The literal
  15648.                         portion of the assignment must be enclosed in
  15649.                         quotation marks.
  15650.           
  15651.           Example:      Assign 1 "Hi There!"
  15652.                         Display "|Var 1 is: "
  15653.                         ListAnswer 1
  15654.           
  15655.                         Would assign "Hi There!" to variable number
  15656.                         one and output "Var 1 is: Hi There!" to the
  15657.                         display.
  15658.           
  15659.  
  15660.           Capitalise
  15661.           ────────────────────────────────────────────────────────────
  15662.           Syntax:    Capitalise <ON | OFF>
  15663.           
  15664.           Description:  Turns on or off automatic input
  15665.                         capitalization.  This allows you to force user
  15666.                         input into all upper or lower-case letters.
  15667.                         The state to which this is set remains in
  15668.                         effect until another Capitalise command is
  15669.                         used.
  15670.           
  15671.           Example:    Capitalise ON
  15672.           
  15673.                         Forces all user input to be capitalized until
  15674.                         a Capitalise OFF command is encountered.
  15675.           
  15676.  
  15677.  
  15678.  
  15679.  
  15680.  
  15681.  
  15682.  
  15683.  
  15684.  
  15685.  
  15686.  
  15687.  
  15688.                                    - 240 -
  15689.           ChangeColor
  15690.           ────────────────────────────────────────────────────────────
  15691.           Syntax:    ChangeColor <foreground> <background>
  15692.           
  15693.           Description:  Changes the color of the text if the user has
  15694.                         ANSI graphics enabled.  The color selected
  15695.                         remains the default color for all subsequent
  15696.                         text displayed, until the end of the
  15697.                         questionnaire script or until the next
  15698.                         ChangeColor command is encountered.  The valid
  15699.                         color codes are the same as those listed in
  15700.                         the Control Codes Listing section of the
  15701.                         External Support Files chapter.
  15702.           
  15703.           Example:    ChangeColor 1  0
  15704.           
  15705.                         Changes the text color to a blue foreground on
  15706.                         a black background until the end of the script
  15707.                         is reached or until another ChangeColor
  15708.                         command is encountered.
  15709.           
  15710.  
  15711.           ClearScreen
  15712.           ────────────────────────────────────────────────────────────
  15713.           Syntax:    ClearScreen
  15714.           
  15715.           Description:  Clears the user's screen if the user has
  15716.                         enabled screen clearing codes.  Otherwise,
  15717.                         this command is ignored by the interpreter.
  15718.  
  15719.           Example:      ClearScreen
  15720.               
  15721.                         This would simply clear the user's screen.
  15722.           
  15723.  
  15724.           Display
  15725.           ────────────────────────────────────────────────────────────
  15726.           Syntax:    Display "<text> [ | ]"
  15727.           
  15728.           Description:  Displays the specified text on the screen.  If
  15729.                         the pipe symbol "|" is included, a carriage
  15730.                         return line feed sequence is displayed in its
  15731.                         place.  If the pipe symbol is omitted, the
  15732.                         cursor remains positioned at the end of the
  15733.                         text displayed.  Text file control codes are
  15734.                         fully supported and may be embedded in <text>
  15735.                         (see the External Support Files chapter for
  15736.                         information on text file control codes).
  15737.           
  15738.                         All text to be displayed (including the pipe
  15739.                         symbol, if specified) must be enclosed in
  15740.                         quotation marks as shown in the example below.
  15741.           
  15742.           Example:    Display "Welcome aboard! | "
  15743.           
  15744.                         In this example, the text Welcome aboard!
  15745.                         would be displayed to the user.   The cursor
  15746.                         would be positioned at the beginning of the
  15747.                         next line since the pipe symbol was specified.
  15748.  
  15749.  
  15750.  
  15751.  
  15752.                                    - 241 -
  15753.           DisplayFile
  15754.           ────────────────────────────────────────────────────────────
  15755.           Syntax:    DisplayFile <1-8 character filename>
  15756.           
  15757.           Description:  Causes a text file to be displayed in the same
  15758.                         manner used by menu function type 5-"Display
  15759.                         text file". The text file must exist in the
  15760.                         text files directory and must also conform to
  15761.                         filename conventions as outlined in the
  15762.                         chapter on External Support Files.
  15763.           
  15764.           Example:    DisplayFile BBSRULES
  15765.           
  15766.                         Would display the file BBSRULES.A?? from the
  15767.                         text files directory.  Once the file has been
  15768.                         displayed the user is returned to the
  15769.                         questionnaire.
  15770.           
  15771.           
  15772.           EndIF
  15773.           ────────────────────────────────────────────────────────────
  15774.           Syntax:    EndIF
  15775.           
  15776.           Description:  Used in conjunction with the IF command, this
  15777.                         signifies the end of an IF.  The function of
  15778.                         IF and EndIF are more fully explained under
  15779.                         the EndIF command in this section.
  15780.           
  15781.           Example:    See the IF script command.
  15782.           
  15783.  
  15784.           Exec
  15785.           ────────────────────────────────────────────────────────────
  15786.           Syntax:    Exec <command line>
  15787.           
  15788.           Description:  Executes an external program in a DOS shell in
  15789.                         the same manner as that of menu function type
  15790.                         7 - Run an external program in a shell. All
  15791.                         command-line parameters that are valid in menu
  15792.                         function type 7 may be used here as well.
  15793.           
  15794.           Example:    Exec C:\RA\NEWMAIL.EXE *M
  15795.           
  15796.                         This would cause RemoteAccess to execute the
  15797.                         DOS command NEWMAIL.EXE from the C:\RA
  15798.                         directory while the user is on-line. The *M
  15799.                         parameter instructs RemoteAccess to swap
  15800.                         itself out of memory before executing the
  15801.                         command (useful for running programs that
  15802.                         require large amounts of memory).  For full
  15803.                         details on the parameters available, see menu
  15804.                         function type 7 in the Menu Administration
  15805.                         chapter.
  15806.           
  15807.  
  15808.  
  15809.  
  15810.  
  15811.  
  15812.  
  15813.  
  15814.  
  15815.  
  15816.                                    - 242 -
  15817.           GetChoice
  15818.           ────────────────────────────────────────────────────────────
  15819.           Syntax:    GetChoice <valid choices> <var num>
  15820.           
  15821.           Description:  Waits for the user to enter one of the
  15822.                         characters in <valid choices> and stores the
  15823.                         response in the variable <var num>.  The
  15824.                         character entered is not case-sensitive.
  15825.           
  15826.           Example:    GetChoice YN 2
  15827.           
  15828.                         This command would wait for the user to press
  15829.                         either the "Y" or the "N" character, storing
  15830.                         the response in variable number 2.
  15831.           
  15832.  
  15833.           Goto
  15834.           ────────────────────────────────────────────────────────────
  15835.           Syntax:    Goto <label>
  15836.           
  15837.           Description:  Causes the script interpreter to jump to the
  15838.                         label specified as <label>.  The label may be
  15839.                         1 to 12 characters in length and may contain
  15840.                         any combination of letters and numbers. Labels
  15841.                         should be preceded by the colon ":" character.
  15842.                         Each questionnaire script may contain up to 50
  15843.                         labels.
  15844.           
  15845.           Example:    IF 5 = "Y"
  15846.                           Goto MyLabel
  15847.                         EndIF
  15848.                         Quit
  15849.           
  15850.                         :MyLabel
  15851.                         Display "Here we are!|"
  15852.                         Quit
  15853.           
  15854.                         In this example, if variable number five is
  15855.                         equal to "Y", the script interpreter will jump
  15856.                         to the label MyLabel and continue processing
  15857.                         from that point.
  15858.           
  15859.  
  15860.           IF
  15861.           ────────────────────────────────────────────────────────────
  15862.           Syntax:    IF <var num[~]> <operator> <operand>
  15863.           
  15864.           Description:  This command is used to perform comparisons
  15865.                         within your script file and take actions based
  15866.                         on the results of the comparisons.  The result
  15867.                         of an IF comparison is considered to be either
  15868.                         true or false.  If the comparison is found to
  15869.                         be true, then all lines up to the next EndIF
  15870.                         are processed by the interpreter.  In case you
  15871.                         aren't familiar with logical comparisons,
  15872.                         refer to the examples listed below and later
  15873.                         in this chapter.  They will help you to better
  15874.                         understand the purpose and functionality of
  15875.                         this command.
  15876.  
  15877.  
  15878.  
  15879.  
  15880.                                    - 243 -
  15881.                         Specifically, this command compares the
  15882.                         contents of the variable <var num> with the
  15883.                         contents of <operand> using the type of
  15884.                         comparison specified in <operator>.
  15885.           
  15886.                         <Var num> may be any variable number between 1
  15887.                         and 50 followed by the optional numeric
  15888.                         identifier "~".  When a tilde character "~" is
  15889.                         specified after <var num> it indicates that a
  15890.                         numeric comparison is to be made instead of a
  15891.                         text string comparison.
  15892.  
  15893.                         <Operator> may be any combination of:
  15894.           
  15895.                            =       Equal to...
  15896.                            <       Less than...
  15897.                            >       Greater than...
  15898.           
  15899.                         <Operand> values may be:
  15900.           
  15901.                         *   Literal text enclosed in quotation marks.
  15902.                         *   A variable number specified as <#var num>.
  15903.                         *   Any text file control code.
  15904.           
  15905.                         When comparing the contents of a variable
  15906.                         specified as <var num> with the contents of
  15907.                         another variable specified as <operand>, the
  15908.                         <operand> variable number must be preceded by
  15909.                         the # character.
  15910.           
  15911.           NOTE:  This command may not be nested.  That is to say that
  15912.           you cannot use an IF command between other IF and EndIF
  15913.           commands.
  15914.           
  15915.           Examples:    IF 1 <> #2
  15916.           
  15917.                         Would return true if the contents of variable
  15918.                         number one was not equal to the contents of
  15919.                         variable number 2.
  15920.           
  15921.                         IF 5~ <= ^KO
  15922.           
  15923.                         Would return true if the value of variable
  15924.                         number five was less than or equal to the
  15925.                         user's time remaining.  Notice that the "~"
  15926.                         was used to indicate that a numeric comparison
  15927.                         was to be made.  Also notice the usage of the
  15928.                         text file control code that returns the user's
  15929.                         time remaining.
  15930.  
  15931.  
  15932.  
  15933.  
  15934.  
  15935.  
  15936.  
  15937.  
  15938.  
  15939.  
  15940.  
  15941.  
  15942.  
  15943.  
  15944.                                    - 244 -
  15945.                         IF 5 = "LUXEMBOURG"
  15946.                         Display "Hey, that's where I live!|"
  15947.                         EndIF
  15948.           
  15949.                         In this example, the interpreter would check
  15950.                         to see if variable number 5 was equal to the
  15951.                         string LUXEMBOURG.  If true, the text "Hey,
  15952.                         that's where I live!" would be displayed.  If
  15953.                         the contents of variable number 5 did not
  15954.                         match, the statement would have been
  15955.                         considered to be false and the interpreter
  15956.                         would jump to the EndIF statement.
  15957.           
  15958.                         IF 1 <> #2
  15959.                         Display "Variables 1 and 2 are different!|"
  15960.                         EndIF
  15961.           
  15962.                         In this example, the contents of variable
  15963.                         numbers one and two would be compared.  If
  15964.                         they were not equal, the text "Variables 1 and
  15965.                         2 are different!" would be displayed.
  15966.           
  15967.  
  15968.           ListAnswer
  15969.           ────────────────────────────────────────────────────────────
  15970.           Syntax:    ListAnswer <var num>
  15971.           
  15972.           Description:  Displays the contents of variable number <var
  15973.                         num> followed by a carriage return and line
  15974.                         feed sequence.
  15975.           
  15976.           Example:      Display "Enter your name: "
  15977.                         Ask 30 5
  15978.                         Display "You entered: " ListAnswer 5
  15979.           
  15980.                         In this example, the user is prompted to enter
  15981.                         their name which can contain a maximum of 30
  15982.                         characters.  The name entered is stored in
  15983.                         variable number 5.  Next, the text "You
  15984.                         entered:" is displayed followed by the contents
  15985.                         of variable number 5 and a carriage return and
  15986.                         line feed sequence.
  15987.           
  15988.  
  15989.           MenuCmnd
  15990.           ────────────────────────────────────────────────────────────
  15991.           Syntax:    MenuCmnd <num> <data>
  15992.           
  15993.           Description:  Executes a menu command just as if it were
  15994.                         executed from within a menu.  Simply specify
  15995.                         the menu function number <num> followed by the
  15996.                         contents of the optional data field <data>.
  15997.  
  15998.  
  15999.  
  16000.  
  16001.  
  16002.  
  16003.  
  16004.  
  16005.  
  16006.  
  16007.  
  16008.                                    - 245 -
  16009.           NOTE:  For obvious reasons, menu function types for Goto
  16010.           (type 1), Gosub (type 2), Return from Gosub (type 3) and
  16011.           Questionnaire (type 12), etc. may not be used.
  16012.           
  16013.           Example:    MenuCmnd 27  60  /T=Andrew_Milner
  16014.           
  16015.                         This example would run menu function type 27-
  16016.                         "Postmessage" with an optional data field of
  16017.                         60 /T=Andrew_Milner which would post a message
  16018.                         in message area 60 and address it to Andrew
  16019.                         Milner.  For a full list of menu function
  16020.                         types, refer to the Menu Administration
  16021.                         chapter.
  16022.           
  16023.  
  16024.           OutputAnswer
  16025.           ────────────────────────────────────────────────────────────
  16026.           Syntax:    OutputAnswer <"descriptor"> <var num>
  16027.           
  16028.           Description:  Writes the literal text string specified as
  16029.                         <"descriptor"> followed by the contents of
  16030.                         variable number <var num> to the questionnaire
  16031.                         answer file.  Text file control codes are
  16032.                         fully supported within the text descriptor
  16033.                         (see the External Support Files chapter for
  16034.                         information on control codes).  As described
  16035.                         earlier, the answer file is given the same
  16036.                         name as the questionnaire file but has a
  16037.                         filename extension of .ASW.
  16038.           
  16039.           Example:    OutputAnswer "Hobbies : "  6
  16040.           
  16041.                         In this example the string "Hobbies : "
  16042.                         followed by the string stored in variable
  16043.                         number 6 are written to the answer file.
  16044.           
  16045.                         If this answer is the first answer written to
  16046.                         the answer file, it is a good idea to first
  16047.                         use the PostInfo command which writes a header
  16048.                         to the answer file.  For example, if a
  16049.                         PostInfo command was used followed by the
  16050.                         above example with Chess stored in variable
  16051.                         number 6, the resulting entry in the answer
  16052.                         file would look similar to this:
  16053.           
  16054.  
  16055.              **Joe Doe completed questionnaire at 20:00 on 21-Jan-93**
  16056.              Hobbies : Chess
  16057.  
  16058.  
  16059.  
  16060.  
  16061.  
  16062.  
  16063.  
  16064.  
  16065.  
  16066.  
  16067.  
  16068.  
  16069.  
  16070.  
  16071.  
  16072.                                    - 246 -
  16073.           PostInfo
  16074.           ────────────────────────────────────────────────────────────
  16075.           Syntax:    PostInfo
  16076.           
  16077.           Description:  This command is used to write a header to the
  16078.                         answer file which contains the user's name
  16079.                         along with the date and time that the
  16080.                         information was posted to the answer file.
  16081.           
  16082.           Example:    PostInfo
  16083.           
  16084.                         In this example, if the user's name was Joe
  16085.                         Doe, the following line would be written to
  16086.                         the answer file:
  16087.           
  16088.              **Joe Doe completed questionnaire at 20:00 on 21-Jan-93**
  16089.           
  16090.  
  16091.           Quit
  16092.           ────────────────────────────────────────────────────────────
  16093.           Syntax:    Quit
  16094.           
  16095.           Description:  Terminates the script and returns operation to
  16096.                         the BBS.
  16097.           
  16098.           Example:    Quit
  16099.           
  16100.                         This command would simply cause RemoteAccess
  16101.                         to stop processing the script and return to
  16102.                         the BBS.
  16103.           
  16104.  
  16105.           SetFlag
  16106.           ────────────────────────────────────────────────────────────
  16107.           Syntax:       SetFlag <flag set> <flag number> <ON|OFF>
  16108.           
  16109.           Description:  This command can be used to turn the specified
  16110.                         user access flag ON or OFF.  The <flag set>
  16111.                         variable is either A, B, C, or D and <flag
  16112.                         number> is a number from 1 to 8. Changes made
  16113.                         using this statement are permanently recorded
  16114.                         within the user database.
  16115.           
  16116.           Example:    SetFlag C8 OFF
  16117.               
  16118.                         In this example, user access flag C8 would be
  16119.                         turned OFF.
  16120.           
  16121.  
  16122.  
  16123.  
  16124.  
  16125.  
  16126.  
  16127.  
  16128.  
  16129.  
  16130.  
  16131.  
  16132.  
  16133.  
  16134.  
  16135.  
  16136.                                    - 247 -
  16137.           SetSecurity
  16138.           ────────────────────────────────────────────────────────────
  16139.           Syntax:    SetSecurity <sec level>
  16140.           
  16141.           Description:  This command is used to change the user's
  16142.                         security level.  The level may be any number
  16143.                         between 1 and 65,535.  Any changes to the
  16144.                         user's security level will be permanently
  16145.                         recorded in the user database.
  16146.           
  16147.           Example:    SetSecurity 1000
  16148.           
  16149.                         In this example, the current user's security
  16150.                         level would be set to 1000.  Notice that a
  16151.                         comma should not be used when specifying a
  16152.                         number greater than 999.
  16153.           
  16154.  
  16155.           WaitEnter
  16156.           ────────────────────────────────────────────────────────────
  16157.           Syntax:    WaitEnter
  16158.           
  16159.           Description:  Waits for the user to press the <ENTER> key.
  16160.                         Any other keys the user might press are
  16161.                         ignored.
  16162.           
  16163.           Example:    Display "Press [Enter] to continue" 
  16164.                         WaitEnter
  16165.           
  16166.                         Displays the text "Press [Enter] to continue"
  16167.                         and then waits for the user to press <ENTER>.
  16168.                         Also, the communications driver outbound
  16169.                         buffer is flushed prior to processing this
  16170.                         command.
  16171.           
  16172.  
  16173.           Example Questionnaires
  16174.           ════════════════════════════════════════════════════════════
  16175.           The following examples demonstrate the use of the automatic
  16176.           questionnaire script files that RemoteAccess supports.
  16177.           While these are not extremely elaborate, they will give you
  16178.           an idea of how you might apply these to your system.  You
  16179.           may wish to read through each questionnaire,
  16180.           cross-referencing the script commands listed in the previous
  16181.           section.
  16182.           
  16183.  
  16184.  
  16185.  
  16186.  
  16187.  
  16188.  
  16189.  
  16190.  
  16191.  
  16192.  
  16193.  
  16194.  
  16195.  
  16196.  
  16197.  
  16198.  
  16199.  
  16200.                                    - 248 -
  16201.           DOBCFAIL.Q-A
  16202.           ────────────────────────────────────────────────────────────
  16203.           This example script file notifies the Sysop of a possible
  16204.           security violation.  It also prompts the user to enter the
  16205.           reason that an incorrect date of birth was entered.  The
  16206.           user is prompted to enter a good time for the Sysop to call
  16207.           to straighten things out. The user is disconnected
  16208.           automatically when this questionnaire is completed.
  16209.           
  16210.           PostInfo
  16211.           Assign 1 "Date Of Birth Verification Failure"
  16212.           OutputAnswer "Security violation: " 1
  16213.           ClearScreen
  16214.           ChangeColor 12 0
  16215.           Display "You have failed to verify your date of birth!|"
  16216.           Display "Since this is a security violation, please enter|"
  16217.           Display "the reason that you entered an incorrect date.|"
  16218.           Display "|Reason: "
  16219.           Ask 50 2
  16220.           OutputAnswer "Reason: " 2
  16221.           ChangeColor 15 0
  16222.           Display "|The System Operator will review your response as|"
  16223.           Display "soon as possible.  If the Sysop needs to contact|"
  16224.           Display "you, when would be a good time to call?|"
  16225.           Display "|When: "
  16226.           Ask 50 3
  16227.           OutputAnswer "Good time to call: " 3
  16228.           ChangeColor 14 0 
  16229.           Display "|Your answers have been recorded and the Sysop|"
  16230.           Display "will contact you as soon as possible.  Goodbye!|"
  16231.           Quit
  16232.           
  16233.  
  16234.  
  16235.  
  16236.  
  16237.  
  16238.  
  16239.  
  16240.  
  16241.  
  16242.  
  16243.  
  16244.  
  16245.  
  16246.  
  16247.  
  16248.  
  16249.  
  16250.  
  16251.  
  16252.  
  16253.  
  16254.  
  16255.  
  16256.  
  16257.  
  16258.  
  16259.  
  16260.  
  16261.  
  16262.  
  16263.  
  16264.                                    - 249 -
  16265.           NEWUSER.Q-A
  16266.           ────────────────────────────────────────────────────────────
  16267.           This is a simple example of a new user questionnaire script.
  16268.           If the user elects not to answer the questions, the script
  16269.           is exited. However, if the user completes the questionnaire,
  16270.           security level and access flags are altered.
  16271.           
  16272.           PostInfo
  16273.           Display "Do you wish to continue?"
  16274.           GetChoice YN 1
  16275.           IF 1 = "N"
  16276.           Display "|Sorry, your security has not been upgraded.|"
  16277.           OutputAnswer "User did not answer questions" 1
  16278.           Quit
  16279.           EndIf
  16280.           Display "Please enter your FULL name: "
  16281.           Ask 35 2
  16282.           Display "What is your occupation? "
  16283.           Ask 40 3
  16284.           Display "What is the main reason you're calling?"
  16285.           Ask 40 4
  16286.           Display "Please enter any comments you might have:"
  16287.           Ask 50 5
  16288.           OutputAnswer "Name        : " 2
  16289.           OutputAnswer "Occupation    : " 3
  16290.           OutputAnswer "Reason    : " 4
  16291.           OutputAnswer "Comments    : " 5
  16292.           Display "Thank you for completing this questionnaire|"
  16293.           SetSecurity 50
  16294.           SetFlag C3 OFF
  16295.           Quit
  16296.           
  16297.  
  16298.  
  16299.  
  16300.  
  16301.  
  16302.  
  16303.  
  16304.  
  16305.  
  16306.  
  16307.  
  16308.  
  16309.  
  16310.  
  16311.  
  16312.  
  16313.  
  16314.  
  16315.  
  16316.  
  16317.  
  16318.  
  16319.  
  16320.  
  16321.  
  16322.  
  16323.  
  16324.  
  16325.  
  16326.  
  16327.  
  16328.                                    - 250 -
  16329.           NOCREDIT.Q-A
  16330.           ────────────────────────────────────────────────────────────
  16331.           This questionnaire takes action when the user's credit
  16332.           reaches zero.  The user may elect to purchase more system
  16333.           credit either by mailing a personal check to an address
  16334.           listed or use a credit card door to charge the purchase.
  16335.           
  16336.           PostInfo
  16337.           Assign 1 "Reached zero credits"
  16338.           OutputAnswer "User account: " 1
  16339.           ClearScreen
  16340.           ChangeColor 12 0
  16341.           Display "Your account credit has reached zero. You|"
  16342.           Display "will not be able to access certain functions|"
  16343.           Display "on the system.|"
  16344.           ChangeColor 10 0
  16345.           Display "If you would like to purchase more credits, you|"
  16346.           Display "may either send a personal check or use the on-|"
  16347.           Display "line credit card door.|"
  16348.           ChangeColor 14 0
  16349.           Display "|Would you like to purchase credits? (Y,N): "
  16350.           GetChoice YN 2
  16351.           IF 2 = "N"
  16352.           Display "|Should you reconsider at a later date, simply|"
  16353.           Display "select the <C>redits command off the Main|"
  16354.           Display "Menu.  Thank you.|"
  16355.           OutputAnswer "Elected not to purchase credits" 2
  16356.           Quit
  16357.           EndIF
  16358.           Display "|Would you like to mail in your payment?|"
  16359.           GetChoice YN 3
  16360.           IF 3 = "Y"
  16361.           Display "|Please mail your payment to:||"
  16362.           Display "Address line 1|"
  16363.           Display "Address line 2|"
  16364.           Display "Address line 3||"
  16365.           ChangeColor 10 0
  16366.           Display "Press <ENTER> to continue"
  16367.           WaitEnter
  16368.           Display "|When your payment is received, the Sysop will|"
  16369.           Display "credit your account accordingly.  Thank you.|"
  16370.           OutputAnswer "User elected to mail payment" 3
  16371.           Quit
  16372.           EndIF
  16373.           ChangeColor 13 0
  16374.           Display "|The credit card door will now be loaded...|"
  16375.           MenuCmd 7 C:\RA\CREDIT.EXE *M
  16376.           OutputAnswer "User ran credit card door" 3
  16377.           Quit
  16378.           
  16379.  
  16380.  
  16381.  
  16382.  
  16383.  
  16384.  
  16385.  
  16386.  
  16387.  
  16388.  
  16389.  
  16390.  
  16391.  
  16392.                                    - 251 -
  16393.           SUBDATE.Q-A
  16394.           ────────────────────────────────────────────────────────────
  16395.           In this example, the user's sixty-day trial membership has
  16396.           expired.  The user's security level and access flags are
  16397.           altered accordingly, after being informed how to obtain a
  16398.           regular subscription.
  16399.           
  16400.           PostInfo
  16401.           Assign 1 "Sixty-day subscription expired"
  16402.           OutputAnswer "User account: " 1
  16403.           ClearScreen
  16404.           ChangeColor 12 0
  16405.           Display "Your 60-day trial membership has expired!|"
  16406.           Display "If you would like to continue to be a subscriber,|"
  16407.           Display "please select the <S>ubscribe command off the|"
  16408.           Display "Main Menu.  Thank you.|"
  16409.           SetSecurity 150
  16410.           SetFlag A1 OFF
  16411.           ChangeColor 14 0
  16412.           Display "|Press ^K[0F<ENTER>^K[0E to continue"
  16413.           WaitEnter
  16414.           Quit
  16415.           
  16416.  
  16417.           SUBDAYnn.Q-A
  16418.           ────────────────────────────────────────────────────────────
  16419.           In this example, the filename SUBDAY10.Q-A was used which is
  16420.           displayed to callers whose subscription expiration is in ten
  16421.           days.
  16422.           
  16423.           PostInfo
  16424.           Assign 1 "User is 10 days from expiration"
  16425.           OutputAnswer "User account: " 1
  16426.           ClearScreen
  16427.           ChangeColor 12 0
  16428.           Display "As a reminder, your subscription expires in ten|"
  16429.           Display "days.|"
  16430.           ChangeColor 10 0
  16431.           Display "Would you like to renew it now? "
  16432.           GetChoice YN 2
  16433.           IF 2 = "N"
  16434.           ChangeColor 11 0
  16435.           Display "|Very well. At any time you may select the|"
  16436.           Display "<S>ubscribe command from the Main Menu to renew|"
  16437.           Display "your subscription.|"
  16438.           ChangeColor 15 0 
  16439.           Display "|Press <ENTER> to continue"
  16440.           WaitEnter
  16441.           Quit
  16442.           EndIF
  16443.           ChangeColor 14 0 
  16444.           Display "|Loading credit card door...|"
  16445.           MenuCmd 7 C:\RA\CREDIT.EXE *M
  16446.           Quit
  16447.  
  16448.  
  16449.  
  16450.  
  16451.  
  16452.  
  16453.  
  16454.  
  16455.  
  16456.                                    - 252 -
  16457.           Chapter 9
  16458.           Multi-node Operation
  16459.           *    
  16460.           *    
  16461.           *    
  16462.           *    
  16463.           The concept of multi-node operation is that more than one
  16464.           user can be on-line at the same time on the same BBS.  To
  16465.           accomplish this, RemoteAccess manages the configuration and
  16466.           data files it uses very carefully, making it possible for
  16467.           certain key files to be shared. If you intend to run a
  16468.           multi-node BBS, it is advisable that you first set-up your
  16469.           system and test it on a single node.  This will allow you to
  16470.           familiarize yourself with RemoteAccess and will make multi-
  16471.           node installation a simpler process.
  16472.  
  16473.           NOTE: The shareware version of RemoteAccess only supports a
  16474.           maximum of 2 concurrent nodes. The Professional version is
  16475.           required to run more than 2 nodes.
  16476.  
  16477.  
  16478.  
  16479.  
  16480.  
  16481.  
  16482.  
  16483.  
  16484.  
  16485.  
  16486.  
  16487.  
  16488.  
  16489.  
  16490.  
  16491.  
  16492.  
  16493.  
  16494.  
  16495.  
  16496.  
  16497.  
  16498.  
  16499.  
  16500.  
  16501.  
  16502.  
  16503.  
  16504.  
  16505.  
  16506.  
  16507.  
  16508.  
  16509.  
  16510.  
  16511.  
  16512.  
  16513.  
  16514.  
  16515.  
  16516.  
  16517.  
  16518.  
  16519.  
  16520.                                    - 253 -
  16521.           CONFIGURATION
  16522.           ════════════════════════════════════════════════════════════
  16523.           This chapter takes you through each step of the multi-node
  16524.           configuration process.  Complete each step in turn and the
  16525.           requirements necessary for multi-node operation will become
  16526.           clear.
  16527.           
  16528.           
  16529.           RACONFIG
  16530.           ────────────────────────────────────────────────────────────
  16531.           First, it is necessary to make a few changes to your system
  16532.           configuration using RACONFIG.
  16533.           
  16534.                           System > Paths > System Log
  16535.           
  16536.           Ensure the System Log field contains a filename without a
  16537.           path specified.  This will force RemoteAccess to create a
  16538.           separate log file for each node in their respective
  16539.           directories (this will be discussed later in this section).
  16540.           If you specify a path name in this field, RemoteAccess will
  16541.           only create one log file and will mix entries from all nodes
  16542.           in it.
  16543.           
  16544.                          Options > System > Check Multi
  16545.           
  16546.           This option instructs RemoteAccess to ensure a user may only
  16547.           log-on to one node at a time.  If a user attempts to log-on
  16548.           to more than one node simultaneously, RemoteAccess will
  16549.           display the text file 1ATATIME.A?? (if it exists) or a brief
  16550.           message informing the user of the one-node log-on
  16551.           restriction. If this option is disabled, users could use
  16552.           their time and download limits on each node simultaneously.
  16553.           
  16554.                          Options > System > Multi Node
  16555.           
  16556.           When enabled, this option activates the internal file
  16557.           sharing procedures.  This will enable users to download the
  16558.           same file at the same time, read and write messages at the
  16559.           same time, along with other options which require
  16560.           simultaneous access to the same files.
  16561.           
  16562.           
  16563.           Paths
  16564.           ────────────────────────────────────────────────────────────
  16565.           When running a multi-node system it is necessary for each
  16566.           node to have its own home directory.  This directory will
  16567.           contain any configuration files specific to each node.  For
  16568.           example, we will assume that you wish to set up a three node
  16569.           system and that your System path is defined as C:\RA in
  16570.           RACONFIG:
  16571.           
  16572.                             System > Paths > System
  16573.           
  16574.           Create the following directories:
  16575.           
  16576.                 C:\RA\NODE1
  16577.                 C:\RA\NODE2
  16578.  
  16579.  
  16580.  
  16581.  
  16582.  
  16583.  
  16584.                                    - 254 -
  16585.           NOTE:  The actual names of the subdirectories are not
  16586.           important.  For convenience, you may assign names which
  16587.           reflect the node number to which the directory is assigned.
  16588.           
  16589.           
  16590.           CONFIG.SYS and AUTOEXEC.BAT
  16591.           ────────────────────────────────────────────────────────────
  16592.           It's likely that you'll need to increase the FILES= setting
  16593.           in your CONFIG.SYS file if RemoteAccess is running several
  16594.           nodes under a multitasker.
  16595.  
  16596.           It is essential that you load SHARE.EXE when operating
  16597.           multi-node.  SHARE.EXE is a DOS utility which RemoteAccess
  16598.           uses to lock the database files it uses, ensuring that no
  16599.           conflicts occur.  If SHARE.EXE is not loaded, you run the
  16600.           risk of severe data corruption of the database files used by
  16601.           RemoteAccess.
  16602.           
  16603.           
  16604.           Individual Node Configuration
  16605.           ────────────────────────────────────────────────────────────
  16606.           Additional configuration flexibility is provided by the method 
  16607.           RemoteAccess uses to locate the configuration files.  
  16608.           Configuration files are those with a filename extension of .RA.  
  16609.           If one or more of the configuration files is present in a 
  16610.           particular node directory, then the information contained in 
  16611.           those files will override the information contained in the 
  16612.           corresponding configuration files in the main system directory.
  16613.           For example, it may be necessary for each node to use 
  16614.           different modem configuration information.  The following 
  16615.           check-list procedure illustrates how you would achieve this.
  16616.           
  16617.           1)    Copy the MODEM.RA file from the main RemoteAccess
  16618.                 system directory into each node subdirectory:  For
  16619.                 example:
  16620.           
  16621.                 COPY C:\RA\MODEM.RA C:\RA\NODE1
  16622.                 COPY C:\RA\MODEM.RA C:\RA\NODE2
  16623.  
  16624.                 This will copy the default modem configuration file
  16625.                 which contains modem information from the system
  16626.                 directory to the node directories.
  16627.           
  16628.           2)    To edit the modem configuration for node 1 without
  16629.                 affecting any other nodes, change to the C:\RA\NODE1
  16630.                 directory and run RACONFIG.  Make the necessary
  16631.                 changes to the modem configuration, save and exit.
  16632.           
  16633.           3)    Repeat this process for node 2.
  16634.           
  16635.           This same principal applies to any *.RA configuration file.
  16636.           For example, the LIMITS.RA file contains access level
  16637.           information.  You can copy this file into one or more of the
  16638.           individual node directories where you wish to impose
  16639.           separate access limitations and edit the settings for that
  16640.           node by following the same process just described.  This
  16641.           would allow you to have different access configurations for
  16642.           each node in use.
  16643.  
  16644.  
  16645.  
  16646.  
  16647.  
  16648.                                    - 255 -
  16649.           Each of the configuration files used by RemoteAccess, along
  16650.           with a brief description of its contents, are described as
  16651.           follows:
  16652.           
  16653.           CONFIG.RA    This is the main configuration file.  Any
  16654.                        information not stored in any of the following
  16655.                        files is contained in this file.
  16656.           
  16657.           EVENTS.RA    System event information.
  16658.           
  16659.           FGROUPS.RA   File group configuration information.
  16660.           
  16661.           FILES.RA     File area configuration information.
  16662.           
  16663.           LANGUAGE.RA  Language configuration information.
  16664.           
  16665.           MESSAGES.RA  Message area configuration information.
  16666.           
  16667.           MGROUPS.RA   Message group configuration information.
  16668.           
  16669.           MODEM.RA     Modem configuration information.
  16670.           
  16671.           PAGE.RA      Paging configuration information.
  16672.           
  16673.           PROTOCOL.RA  Internal and external file transfer protocol
  16674.                        information.
  16675.           
  16676.           LIMITS.RA    Security level access configuration
  16677.                        information.
  16678.           
  16679.  
  16680.           Exit and Log Files
  16681.           ════════════════════════════════════════════════════════════
  16682.           RemoteAccess will maintain a separate system log file and
  16683.           usage graph file (TIMELOG.BBS) in each line directory.  The
  16684.           system log filename used is defined in RACONFIG:
  16685.           
  16686.                           System > Paths > System Log
  16687.           
  16688.           As long as a directory path is not included in the System
  16689.           Log field, RemoteAccess will write a system log file in the
  16690.           appropriate node directory.  This allows you to maintain
  16691.           separate log files for each individual node.  By specifying
  16692.           a path along with the filename in the System Log field,
  16693.           RemoteAccess will only use one log file for all nodes,
  16694.           mixing log entries from all nodes.
  16695.  
  16696.           The placement of the EXITINFO.BBS, DORINFO1.DEF and DOOR.SYS
  16697.           exit files is handled differently in a multi-node
  16698.           environment.  In a single-node environment, these files are
  16699.           written to the RemoteAccess system directory.  In a
  16700.           multi-node environment, they are written to the current
  16701.           (default) directory (which is usually the subdirectory of
  16702.           the particular node in use).  For example, if RemoteAccess
  16703.           is started from the C:\RA\NODE1 directory, that directory is
  16704.           the default directory where exit files will be written. This
  16705.           type of operation ensures that each node has its own set of
  16706.           exit files to which external programs known as doors may
  16707.           refer.
  16708.  
  16709.  
  16710.  
  16711.  
  16712.                                    - 256 -
  16713.           NOTE:  Regardless of the node number that is generating the
  16714.           exit files, RemoteAccess always creates a DORINFO1.DEF file.
  16715.           Some implementations of this type of exit file write a
  16716.           DORINFOn.DEF where "n" is the node number for which the file
  16717.           was created.  This type of naming convention can only
  16718.           accommodate nodes 1 through 9.  For this reason,
  16719.           RemoteAccess does not support this type of operation.
  16720.           
  16721.           
  16722.           Batch Files
  16723.           ════════════════════════════════════════════════════════════
  16724.           A batch file which runs each individual node is required for
  16725.           proper multi-node operation.  While it is beyond the scope
  16726.           of this manual to teach batch file operations, examples are
  16727.           provided in the Reference Information chapter to help you
  16728.           understand what is required.
  16729.  
  16730.           The following simple batch file segment illustrates the most
  16731.           basic requirements for running node 2.
  16732.           
  16733.           REM Start up node 2
  16734.           :START
  16735.             CD \RA\NODE2
  16736.             RA -N2
  16737.           GOTO START
  16738.           
  16739.           The use of the -N2 parameter in the above example indicates
  16740.           which node is being run and is necessary for RemoteAccess to
  16741.           operate correctly.
  16742.           
  16743.           NOTE:  The above example does not include or explain any
  16744.           errorlevel detection.  For a full example of errorlevel
  16745.           checking, see the Batch Files section of the Reference
  16746.           Information chapter.
  16747.  
  16748.  
  16749.  
  16750.  
  16751.  
  16752.  
  16753.  
  16754.  
  16755.  
  16756.  
  16757.  
  16758.  
  16759.  
  16760.  
  16761.  
  16762.  
  16763.  
  16764.  
  16765.  
  16766.  
  16767.  
  16768.  
  16769.  
  16770.  
  16771.  
  16772.  
  16773.  
  16774.  
  16775.  
  16776.                                    - 257 -
  16777.           Chapter 10
  16778.           Mail Networking
  16779.           *    
  16780.           *    
  16781.           *    
  16782.           *    
  16783.           A mail network is a collection of bulletin board systems
  16784.           which transfer mail and files between member systems.  This
  16785.           transfer of mail is normally carried out automatically and
  16786.           during predefined schedules without the need for human
  16787.           intervention.  This chapter explains the principals of such
  16788.           mail networks as well as how they are supported and
  16789.           implemented from within RemoteAccess.
  16790.  
  16791.  
  16792.  
  16793.  
  16794.  
  16795.  
  16796.  
  16797.  
  16798.  
  16799.  
  16800.  
  16801.  
  16802.  
  16803.  
  16804.  
  16805.  
  16806.  
  16807.  
  16808.  
  16809.  
  16810.  
  16811.  
  16812.  
  16813.  
  16814.  
  16815.  
  16816.  
  16817.  
  16818.  
  16819.  
  16820.  
  16821.  
  16822.  
  16823.  
  16824.  
  16825.  
  16826.  
  16827.  
  16828.  
  16829.  
  16830.  
  16831.  
  16832.  
  16833.  
  16834.  
  16835.  
  16836.  
  16837.  
  16838.  
  16839.  
  16840.                                    - 258 -
  16841.           PRINCIPALS OF A MAIL NETWORK
  16842.  
  16843.           All of the explanations that follow relate to FidoNet, the
  16844.           world's largest amateur mail network.  FidoNet consists of
  16845.           approximately 23,000 bulletin board systems.  Each system
  16846.           (also referred to as a node) is assigned a unique network
  16847.           address which is entered into a master list of all FidoNet
  16848.           systems.  This list, commonly referred to as a nodelist, is
  16849.           distributed to each node in the network and is used much
  16850.           like a telephone directory.
  16851.  
  16852.           Being part of a network has two basic attractions; NetMail
  16853.           and EchoMail.  NetMail allows you to send a private message
  16854.           to a user of any one of the bulletin boards in the network
  16855.           at little or no cost to you.  EchoMail is a method of
  16856.           creating a huge message area that many hundreds of systems
  16857.           can potentially participate in.  Usually, EchoMail areas
  16858.           contain only public messages, and are organized into either
  16859.           general discussion areas, or areas that deal with specific
  16860.           issues, or topics.
  16861.  
  16862.           The network is organized into several levels which are
  16863.           usually based on geographical proximity.  At the highest
  16864.           level there are six zones; zone 1 is the USA, zone 2 is
  16865.           Europe, zone 3 is the Pacific Rim, zone 4 is South America,
  16866.           zone 5 is Africa and zone 6 is Asia.  Within each zone are a
  16867.           number of regions that span large geographical areas.
  16868.           Typically, there will be between 5 and 18 regions per zone.
  16869.           Each region is further divided into nets.  Each net has a
  16870.           unique net number, and the distribution of these nets is
  16871.           also based on geographical and technical considerations.
  16872.           Finally, within the individual nets are a number of nodes.
  16873.           A node refers to a single bulletin board system.
  16874.  
  16875.           To find out how to obtain a node listing, contact your
  16876.           nearest FidoNet bulletin board.  The Sysop will usually be
  16877.           more than happy to help.
  16878.           
  16879.  
  16880.           ADDITIONAL REQUIREMENTS
  16881.  
  16882.           To operate RemoteAccess within a mail network such as
  16883.           FidoNet, you will require some additional software.  First,
  16884.           you will need a program that supports non-human callers.
  16885.           That is, a program which can originate and receive calls to
  16886.           and from other nodes within the network for the purpose of
  16887.           transferring mail and files.  This type of program is often
  16888.           referred to as a Front End Mailer.  The basic principal of a
  16889.           Front End Mailer is that it is loaded before the BBS and
  16890.           uses its own internal event schedule and configuration to
  16891.           determine its operational characteristics.
  16892.  
  16893.  
  16894.  
  16895.  
  16896.  
  16897.  
  16898.  
  16899.  
  16900.  
  16901.  
  16902.  
  16903.  
  16904.                                    - 259 -
  16905.           When an incoming call is received, a Front End Mailer
  16906.           answers the call instead of RemoteAccess.  It determines
  16907.           whether the caller is another network node or a human
  16908.           caller. If the caller is another node, the Front End Mailer
  16909.           performs network transfers as required.  However, if the
  16910.           caller is human (not another network node), the Front End
  16911.           Mailer exits to the calling batch file which then loads
  16912.           RemoteAccess.  Some suitable Front End Mailers are:
  16913.           
  16914.           FrontDoor, by Joaquim Homrighausen
  16915.           Intermail, by Scandinavian PC Systems AB
  16916.           D'Bridge, by Chris Irwin
  16917.           
  16918.           These packages are usually available from other FidoNet
  16919.           systems.
  16920.  
  16921.           The other piece of software you'll need is an EchoMail
  16922.           Processor, which is a program that unpacks received network
  16923.           mail and imports it into your message database.  It also
  16924.           exports outgoing mail from your message database, packing it
  16925.           up for delivery.  There are several EchoMail processors
  16926.           which support RemoteAccess, including:
  16927.           
  16928.           TosScan, by Joaquim Homrighausen
  16929.           GEcho, by Gerard J. van der Land
  16930.           FastEcho, by Software Technik Burchhardt
  16931.           FMail, by Folkert Wijnstra
  16932.           RA-Echo, by Roger Kirchhoff
  16933.           
  16934.  
  16935.           CONFIGURING REMOTEACCESS
  16936.  
  16937.           Once you have acquired and installed a Front End Mailer and
  16938.           EchoMail Processor, there are a few configuration items
  16939.           which need to be changed in RemoteAccess.
  16940.           
  16941.           
  16942.           Node Number
  16943.           ────────────────────────────────────────────────────────────
  16944.           The node number is a number by which individual members of a
  16945.           mail network are identified.  In FidoNet, node numbers are
  16946.           assigned by a member of the administrative structure and
  16947.           take on the format:
  16948.           
  16949.                               Zone:Net/Node.Point
  16950.  
  16951.           This initial network address should be entered into your
  16952.           RemoteAccess configuration.  Enter this information in
  16953.           RACONFIG:
  16954.           
  16955.                            System > Addresses > Main
  16956.           
  16957.           Don't concern yourself with AKA addresses at this stage.
  16958.           They are only used when participating in more than one mail
  16959.           network.
  16960.           
  16961.  
  16962.  
  16963.  
  16964.  
  16965.  
  16966.  
  16967.  
  16968.                                    - 260 -
  16969.           Message Areas
  16970.           ────────────────────────────────────────────────────────────
  16971.           The next step is to setup your EchoMail message areas.  You
  16972.           will usually be given a list of areas that are available by
  16973.           a local network administrator.  Each area is identified by
  16974.           an uppercase alphanumeric tag name.  As far as RemoteAccess
  16975.           is concerned, all you need is a description of each area you
  16976.           plan to plug into.  Setup the EchoMail areas just as you
  16977.           would any other message area with the following exceptions:
  16978.           
  16979.           Fire up RACONFIG:
  16980.           
  16981.                     Manager > Msg Areas > (individual area)
  16982.           
  16983.           Set the Status field to Public and the Type field to
  16984.           EchoMail.  Most EchoMail areas don't allow the use of
  16985.           handles, so you should also ensure that the area is
  16986.           configured to use Real names only.  The AKA field shows your
  16987.           assigned node number.  If it doesn't, press <ENTER> on this
  16988.           field and select the correct network address.
  16989.           
  16990.  
  16991.           Origin Lines
  16992.           ────────────────────────────────────────────────────────────
  16993.           Each EchoMail message that is posted on your system could
  16994.           potentially be read by hundreds of other Sysops and their
  16995.           users, so you can put a one-liner at the end of each message
  16996.           automatically.  This should contain at least the name of
  16997.           your system, and possibly where it is located or the
  16998.           telephone number, so that other users know where the message
  16999.           originated.  Your node number is automatically appended to
  17000.           the end of the origin line.  A typical origin line might
  17001.           read:
  17002.           
  17003.           * Origin: RemoteAccess Central (2:270/18)
  17004.           
  17005.           The text "* Origin:" is automatically inserted by
  17006.           RemoteAccess and/or your EchoMail Processor.  Most EchoMail
  17007.           Processors allow you to define a different origin line for
  17008.           each EchoMail area.  RemoteAccess allows you to define a
  17009.           default origin line which will be used unless replaced by
  17010.           other software.  This is configured in RACONFIG:
  17011.           
  17012.                       Options > Messages > Default Origin
  17013.           
  17014.           If you are running a multi-node system and each node has a
  17015.           different network address, the proper address may be
  17016.           inserted in the origin line by specifying the @ macro
  17017.           character. For example, the origin line:
  17018.           
  17019.                 RemoteAccess Central @
  17020.           
  17021.           Would be appended as:
  17022.           
  17023.                 * Origin: RemoteAccess Central 1 (2:270/18)
  17024.           
  17025.  
  17026.  
  17027.  
  17028.  
  17029.  
  17030.  
  17031.  
  17032.                                    - 261 -
  17033.           NetMail Areas
  17034.           ────────────────────────────────────────────────────────────
  17035.           The next step is to configure RemoteAccess to support
  17036.           NetMail.  This step is optional since most Front End Mailers
  17037.           support a NetMail message area directly and have access to a
  17038.           nodelist directory.  However, RemoteAccess can be configured
  17039.           to include a NetMail message area and supports node costing
  17040.           as well.
  17041.  
  17042.           Define a message area using RACONFIG, giving it an
  17043.           appropriate name such as NetMail.  Next, set the Type field
  17044.           to NetMail and the Status field to Private.  RemoteAccess
  17045.           incorporates a comprehensive on-line nodelist browsing
  17046.           facility, which allows users to search for nodes within
  17047.           particular zones, regions or nets.  The next section
  17048.           explains how to enable this feature.
  17049.  
  17050.           Once this step is complete, RemoteAccess is fully configured
  17051.           for receiving and sending mail via a mail network. To
  17052.           utilize this setup, you should ensure that the additional
  17053.           software explained earlier in this chapter is installed and
  17054.           configured properly.  Full instructions are available with
  17055.           each respective package.
  17056.           
  17057.  
  17058.           Installing the Nodelist Files
  17059.           ════════════════════════════════════════════════════════════
  17060.           Most other BBS software requires you to maintain large and
  17061.           unwieldy custom nodelist files for NetMail operation.
  17062.           RemoteAccess uses the raw (St. Louis) nodelist that you
  17063.           already have installed for your Front End Mailer, for which
  17064.           it builds small (around 5K) index files.  The index files
  17065.           are compiled quickly and allow fast nodelist searches and
  17066.           references.
  17067.  
  17068.           The key to this system is the nodelist index compiler
  17069.           RANODE.EXE.  You should adjust your batch files so that it
  17070.           is run each time any changes are made to your raw nodelist
  17071.           (when you receive an update to your nodelist, for example).
  17072.           RANODE locates your raw nodelist file using the path defined
  17073.           in RACONFIG:
  17074.           
  17075.                            System > Paths > Nodelist
  17076.           
  17077.           RANODE scans the most recent nodelist present in this
  17078.           directory and produces the index files NODEIDX.RA and
  17079.           NODEINC.RA which it places in your RemoteAccess system
  17080.           directory.  If you have multiple nodelists to process,
  17081.           simply specify the names of any additional nodelists on the
  17082.           command-line when RANODE is executed.
  17083.           
  17084.  
  17085.  
  17086.  
  17087.  
  17088.  
  17089.  
  17090.  
  17091.  
  17092.  
  17093.  
  17094.  
  17095.  
  17096.                                    - 262 -
  17097.           Examples
  17098.           ────────────────────────────────────────────────────────────
  17099.           Task:         Compile a FidoNet nodelist only.
  17100.           
  17101.           Conditions:    The raw nodelist is in the C:\NODELIST 
  17102.                         directory.
  17103.           
  17104.           Actions:      Simply set the Nodelist Path in RACONFIG to
  17105.                         C:\NODELIST and run RANODE whenever you
  17106.                         process updates to the raw nodelist.  No
  17107.                         command-line parameters are needed.
  17108.           
  17109.           
  17110.           Task:         Compile a FidoNet and ParaNet combined
  17111.                         nodelist.
  17112.           
  17113.           Conditions:   The FidoNet NODELIST.nnn and ParaNet
  17114.                         PARALIST.PVT raw nodelist files are in the
  17115.                         C:\NODELIST directory.
  17116.           
  17117.           Actions:      Set the Nodelist Path in RACONFIG to
  17118.                         C:\NODELIST.  Run RANODE with the following
  17119.                         command-line parameter:
  17120.           
  17121.                         RANODE PARALIST.PVT
  17122.           
  17123.           Up to ten nodelists (including the default FidoNet nodelist)
  17124.           may be specified on the command-line.  Wildcard and pattern
  17125.           matching characters are valid.  It is not necessary to
  17126.           specify the FidoNet nodelist name on the command-line since
  17127.           RANODE automatically includes the most recent FidoNet
  17128.           nodelist present in the nodelist directory (as defined in
  17129.           RACONFIG).
  17130.           
  17131.           
  17132.           Cost Control
  17133.           ════════════════════════════════════════════════════════════
  17134.           Typically, there is a cost associated with sending NetMail.
  17135.           Unlike EchoMail, NetMail is usually sent directly to other
  17136.           systems.  This usually means long distance telephone line
  17137.           charges will show up on your telephone bill.  It is
  17138.           therefore common practice to have users who wish to send
  17139.           NetMail prepay a number of credits to cover the cost of
  17140.           messages sent by them, from your system.  The defined cost
  17141.           for sent NetMail is then deducted from the user's Credit
  17142.           field in the user account record.
  17143.  
  17144.           You can define the cost of sending a single message to a
  17145.           particular zone, region, net, or even a node in a control
  17146.           file called NODECOST.CTL which is located in the
  17147.           RemoteAccess system directory.  (See the Control Files
  17148.           section of the External Support Files chapter for
  17149.           information on editing this file.) Each time a user sends a
  17150.           NetMail message, its cost is deducted from the user's
  17151.           account.  In fact, users are not permitted to send NetMail
  17152.           messages which require a number of credits greater than what
  17153.           the user has on account, except when the user's Post Bill
  17154.           flag is enabled.
  17155.  
  17156.  
  17157.  
  17158.  
  17159.  
  17160.                                    - 263 -
  17161.           The cost structure for your entire nodelist is setup by one
  17162.           or more entries of five keywords:
  17163.           
  17164.                 DEFAULT <cost>
  17165.           
  17166.           Assigns <cost> to any nodes that are not assigned a specific
  17167.           cost later in the control file.
  17168.           
  17169.                 ZONE <zone> <cost>
  17170.           
  17171.           Assigns <cost> to all nodes in zone <zone>.  This overrides
  17172.           the DEFAULT keyword.
  17173.           
  17174.                 REGION <region> <cost>
  17175.           
  17176.           Assigns <cost> to all nodes in region <region>.  This
  17177.           overrides the DEFAULT and ZONE keywords.
  17178.           
  17179.                 NET <net> <cost>
  17180.           
  17181.           Assigns <cost> to all nodes in net <net>.  This overrides
  17182.           the DEFAULT, ZONE and REGION keywords.
  17183.  
  17184.                 NODE <node> <cost>
  17185.           
  17186.           Assigns <cost> to node <node>.  <Node> is a fully qualified
  17187.           network address (i.e. 2:270/18).  This overrides all other
  17188.           keywords.
  17189.           
  17190.           
  17191.           A Sample NODECOST.CTL File
  17192.           ────────────────────────────────────────────────────────────
  17193.           The control file may contain a maximum of 150 entries of
  17194.           each keyword.  Duplicate entries are not permitted.
  17195.           
  17196.           DEFAULT 200      ;A message to anywhere costs 200 credits,
  17197.           ZONE    3 60     ;except zone 3 where cost is 60 credits.
  17198.           ZONE    2 260    ;Messages to zone 2 cost 260 credits.
  17199.           REGION  55 30    ;Within our region only costs 30 credits.
  17200.           NET     690 0    ;Msgs in our net are free,
  17201.           NODE    690/99 5 ;except this node which isn't local.
  17202.           
  17203.           Once the NODECOST.CTL file is created, RANODE can be run to
  17204.           build the nodelist index files (NODEIDX.RA and NODEINC.RA)
  17205.           which are stored in the nodelist directory specified in
  17206.           RACONFIG.  These files are required when entering NetMail
  17207.           messages or browsing the nodelist from within RemoteAccess.
  17208.  
  17209.  
  17210.  
  17211.  
  17212.  
  17213.  
  17214.  
  17215.  
  17216.  
  17217.  
  17218.  
  17219.  
  17220.  
  17221.  
  17222.  
  17223.  
  17224.                                    - 264 -
  17225.           Chapter 11
  17226.           Reference Information
  17227.           *    
  17228.           *    
  17229.           *    
  17230.           *    
  17231.           This chapter provides information not suited for other
  17232.           chapters in this manual, including the local status bar,
  17233.           Sysop keys, command-line parameters, errorlevels and batch
  17234.           file examples. Where possible, reference material has been
  17235.           placed together with the information to which it applies in
  17236.           an effort to keep information grouped logically.
  17237.  
  17238.  
  17239.  
  17240.  
  17241.  
  17242.  
  17243.  
  17244.  
  17245.  
  17246.  
  17247.  
  17248.  
  17249.  
  17250.  
  17251.  
  17252.  
  17253.  
  17254.  
  17255.  
  17256.  
  17257.  
  17258.  
  17259.  
  17260.  
  17261.  
  17262.  
  17263.  
  17264.  
  17265.  
  17266.  
  17267.  
  17268.  
  17269.  
  17270.  
  17271.  
  17272.  
  17273.  
  17274.  
  17275.  
  17276.  
  17277.  
  17278.  
  17279.  
  17280.  
  17281.  
  17282.  
  17283.  
  17284.  
  17285.  
  17286.  
  17287.  
  17288.                                    - 265 -
  17289.           Sysop Keys and the Status Bar
  17290.           ════════════════════════════════════════════════════════════
  17291.           While a user is logged-on to your BBS either remotely or
  17292.           locally, several keys (called Sysop keys) are available for
  17293.           your use.  If there is a security password defined in
  17294.           RACONFIG, it must be entered before using any of the Sysop
  17295.           ALT keys. Sysop function keys may be used without entering
  17296.           the password.  The security password is defined in RACONFIG:
  17297.           
  17298.                                System > Security
  17299.           
  17300.           
  17301.           Sysop Function Keys
  17302.           ────────────────────────────────────────────────────────────
  17303.           The first set of Sysop keys we will outline are the Sysop
  17304.           function keys.  These keys are used to change the status bar
  17305.           displayed in the window at the bottom of the local console
  17306.           screen, while a user is on-line.
  17307.           
  17308.           F1    This displays the user's name, location, security
  17309.                 level, time remaining, connection speed and the node
  17310.                 number in use.  If the user has ANSI or AVATAR
  17311.                 emulations enabled, they too are displayed.
  17312.            
  17313.           F2    This displays the user's voice and data telephone
  17314.                 numbers, the date and time on which the user last
  17315.                 called, the date the user first called, the number of
  17316.                 times the user has called and the age and date of
  17317.                 birth of the user.
  17318.           
  17319.           F3    This displays the number of files the user has
  17320.                 uploaded and downloaded, including the total kilobytes
  17321.                 of the uploads and downloads.  The user's security
  17322.                 flag settings are also displayed.
  17323.           
  17324.           F4    This displays some system statistics such as the name
  17325.                 of the last caller, total number of calls to the
  17326.                 system, current time, printer status, local screen
  17327.                 status and the time and errorlevel of the next system
  17328.                 event.
  17329.            
  17330.           F5    This displays the total number of messages posted by
  17331.                 the user, the highest message number the user has
  17332.                 read, the user's selected language, the user's group
  17333.                 number, the number of credits the user has remaining
  17334.                 and the user's handle.
  17335.           
  17336.           F6    This displays the comments stored in the user's
  17337.                 account record.  Additionally, the user's reason for
  17338.                 requesting a chat is displayed if the user attempted
  17339.                 to page the Sysop.
  17340.           
  17341.           F7    This displays the user's interactive EMSI session
  17342.                 information.  If the user on-line is not using a
  17343.                 terminal program that supports this functionality, the
  17344.                 status bar becomes blank when this key is pressed.
  17345.           
  17346.           F9    This displays a Sysop key command summary.
  17347.  
  17348.  
  17349.  
  17350.  
  17351.  
  17352.                                    - 266 -
  17353.           F10   Pressing this key turns the status bar off in order to
  17354.                 provide an accurate view of what the on- line user
  17355.                 sees.  Pressing any of the other valid Sysop function
  17356.                 keys turns the status bar back on again.
  17357.           
  17358.           
  17359.           Sysop ALT Keys
  17360.           ────────────────────────────────────────────────────────────
  17361.           The second set of Sysop keys available are the Sysop ALT
  17362.           keys. These are keys that are pressed in conjunction with
  17363.           the A key while a user is on-line, although some of these
  17364.           are also available while RemoteAccess is waiting for a call
  17365.           (these are noted).
  17366.  
  17367.           Remember, if a system security password is defined in
  17368.           RACONFIG, you will be prompted to enter it when one of these
  17369.           keys is selected.  Upon successful entry of the security
  17370.           password, RemoteAccess will prompt Remove password lock
  17371.           (y,N)? which gives you the opportunity, since the password
  17372.           was entered correctly initially, to not require the password
  17373.           for subsequent Sysop ALT keys pressed during the current
  17374.           session only.
  17375.           
  17376.           ALT-F1   Activates one of ten predefined functions.
  17377.           through  RemoteAccess allows you to configure up to ten
  17378.           ALT-F10  functions that may be activated at any time that
  17379.                    a user is on-line.  For specific information, see
  17380.                    RACONFIG:
  17381.           
  17382.                                 Manager > AltFn Keys
  17383.           
  17384.           ALT-A    When RemoteAccess is waiting for a call, selecting
  17385.                    this option will toggle call answering. For
  17386.                    example, if RemoteAccess is waiting for a call and
  17387.                    ALT-A is pressed, incoming calls will not be
  17388.                    answered.  Pressing this option a second time
  17389.                    enables call answering.
  17390.           
  17391.           ALT-C    Break in for a chat if there is a user logged-on
  17392.                    remotely.  Pressing <ESCAPE> exits chat mode and
  17393.                    returns the user to the BBS.
  17394.           
  17395.           ALT-D   Toggles snoop mode.  For example when snoop is on,
  17396.                   the local console displays all that is displayed to
  17397.                   the user.  When toggled off, only the status bar is
  17398.                   displayed.  This option may be selected while a user
  17399.                   is on-line or while RemoteAccess is waiting for a
  17400.                   call.
  17401.           
  17402.           ALT-E   Activates a pop-up user attribute editor for the
  17403.                   user currently on-line.  This allows you to edit the
  17404.                   user's account record in real-time.  See the User
  17405.                   Administration chapter for detailed information on
  17406.                   user account records.
  17407.           
  17408.           ALT-H   Hang up on the user immediately.  This drops the
  17409.                   telephone connection (if the user is logged-on
  17410.                   remotely).
  17411.  
  17412.  
  17413.  
  17414.  
  17415.  
  17416.                                    - 267 -
  17417.           ALT-J   Drop to a DOS shell.  A brief message is displayed
  17418.                   to the user when this option is selected and when
  17419.                   the DOS shell is exited.  This option may be
  17420.                   selected while a user is on-line or while
  17421.                   RemoteAccess is waiting for a call.
  17422.           
  17423.           ALT-L   Lock the user out of the system by dropping the
  17424.                   user's security level to zero and hanging up. Just
  17425.                   before the call is terminated, the text file
  17426.                   LOCKOUT.A?? is displayed to the user, if it exists.
  17427.                   See the External Support Files chapter for more
  17428.                   information on this text file.
  17429.           
  17430.           ALT-N   Toggles the Sysop on next flag.  When this mode is
  17431.                   activated (indicated by "(SN)" on the F1 status
  17432.                   bar), RemoteAccess will pause and page the Sysop for
  17433.                   up to two minutes after the current user logs-off.
  17434.                   The page may be interrupted by pressing <ENTER> at
  17435.                   the local console keyboard. Whether or not the page
  17436.                   is interrupted, RemoteAccess will exit with an
  17437.                   errorlevel of 2 set which may be trapped by your BBS
  17438.                   batch file. {+} Registered only.
  17439.           
  17440.           ALT-O   This option allows you to enable or disable Sysop
  17441.                   paging regardless of the paging schedule defined in
  17442.                   RACONFIG.  You should note that the override is
  17443.                   permanent and affects all nodes until it is reset.
  17444.                   This option may be selected while a user is on-line
  17445.                   or while RemoteAccess is waiting for a call.
  17446.           
  17447.           ALT-P   This option toggles printer logging.  When enabled,
  17448.                   any entries that are written to the system log file
  17449.                   are also sent to the printer port. This option may
  17450.                   be selected while a user is on- line or while
  17451.                   RemoteAccess is waiting for a call.
  17452.           
  17453.           ALT-S   This option allows you to modify the security level
  17454.                   of the user currently on-line and records the new
  17455.                   level in the user's account record.
  17456.           
  17457.           
  17458.           Other Sysop Keys
  17459.           ────────────────────────────────────────────────────────────
  17460.           In addition to the Sysop function and ALT keys, a few other 
  17461.           keys are also available.
  17462.           
  17463.           CTRL-A  This option may only be selected while in chat mode.
  17464.                   Selecting it the first time opens a chat log file
  17465.                   which then records everything that is typed during a
  17466.                   chat with an on-line user.  Selecting it a second
  17467.                   time or ending chat mode by pressing the <ESCAPE>
  17468.                   key, closes the log file.
  17469.           
  17470.           UP      Pressing the up-arrow increases the user's time
  17471.                   remaining by one minute.
  17472.           
  17473.           DOWN    Pressing the down-arrow decreases the user's
  17474.                   time remaining by one minute.
  17475.  
  17476.  
  17477.  
  17478.  
  17479.  
  17480.                                    - 268 -
  17481.           SCROLL- Disables the paging tune.  If this is on when a
  17482.           LOCK    user pages the Sysop, no sound will be produced at
  17483.                   the local console.  This option may be activated and
  17484.                   deactivated whether or not a user is on-line.
  17485.                   {+} Registered only.          
  17486.  
  17487.           L       Pressing this key while RemoteAccess is waiting for
  17488.                   a call will allow you to log-on locally.
  17489.           
  17490.           ESCAPE  Pressing this key while RemoteAccess is waiting for
  17491.                   a call will terminate the program and return to DOS.
  17492.           
  17493.           NOTE:  Terminating in this manner will always return an
  17494.           errorlevel of 0 to DOS regardless of whether the -E
  17495.           command-line parameter was passed when invoking
  17496.           RemoteAccess.
  17497.           
  17498.  
  17499.           RemoteAccess Environment Variables
  17500.           ════════════════════════════════════════════════════════════
  17501.           RemoteAccess recognizes three environment variables; RA,
  17502.           RAOVR and RATEMP.  These are used to determine the locations
  17503.           of various program support files.
  17504.           
  17505.           Environment
  17506.           Variable      Description
  17507.           ────────────────────────────────────────────────────────────
  17508.           RA            This variable is used to specify the location
  17509.                         of the RemoteAccess system directory.  This is
  17510.                         usually set in your AUTOEXEC.BAT file during
  17511.                         program installation.
  17512.           
  17513.                         For example, if your RemoteAccess system
  17514.                         directory is C:\RA, the installation program
  17515.                         inserted the following line in your
  17516.                         AUTOEXEC.BAT file:
  17517.           
  17518.                                         SET RA=C:\RA
  17519.           
  17520.           RAOVR         This variable is used to specify the location
  17521.                         of the RemoteAccess overlay file RA.OVR.   If
  17522.                         this variable is set, RemoteAccess will look
  17523.                         for its overlay file in the directory
  17524.                         contained therein.  This allows you to load
  17525.                         the overlay file on a RAM disk which speeds up
  17526.                         program execution considerably.
  17527.           
  17528.                         For example, if you have a RAM disk configured
  17529.                         as drive D: and have copied RA.OVR into a
  17530.                         directory called TEMP on that disk, you would
  17531.                         set the variable:
  17532.           
  17533.                                       SET RAOVR=D:\TEMP
  17534.  
  17535.  
  17536.  
  17537.  
  17538.  
  17539.  
  17540.  
  17541.  
  17542.  
  17543.  
  17544.                                    - 269 -
  17545.           RATEMP        When RemoteAccess swaps out of memory and onto
  17546.                         disk, the swap file is written to the system
  17547.                         directory by default.  Setting this variable
  17548.                         to a valid path and directory allows you to
  17549.                         specify where RemoteAccess will write its swap
  17550.                         file.
  17551.           
  17552.           
  17553.           RA.EXE Command-line Parameters
  17554.           ════════════════════════════════════════════════════════════
  17555.           When you installed RemoteAccess for the first time, a
  17556.           default batch file was created for you.  If you are
  17557.           upgrading from a previous version, you've no doubt made
  17558.           changes to your BBS batch file since it was first installed.
  17559.           In either case, the line in your BBS batch file that
  17560.           executes the main program executable file (RA.EXE) may be
  17561.           modified to include command-line parameters that alter the
  17562.           way in which RemoteAccess loads or operates.
  17563.  
  17564.           Command-line parameters are instructions you can give to a
  17565.           program when you run it from the DOS command-line or from
  17566.           within a batch file.  Each parameter is separated by a space
  17567.           which informs DOS of the locations where a command- line
  17568.           parameter ends.  The parameters supported by RemoteAccess
  17569.           all begin with the dash - or / characters and end with a
  17570.           space character.
  17571.  
  17572.           The sections of this manual which discuss various utility
  17573.           programs included with RemoteAccess also explain any
  17574.           available command-line parameters supported by each utility.
  17575.           The following list of command-line parameters are accepted
  17576.           by the main program executable itself; RA.EXE.
  17577.           
  17578.           -NOEMS        This parameter forces RemoteAccess to ignore
  17579.                         any available EMS memory.  By default,
  17580.                         RemoteAccess uses available XMS memory first,
  17581.                         and then looks for available EMS memory which
  17582.                         is used if insufficient XMS memory is
  17583.                         available.  When this parameter is specified,
  17584.                         RemoteAccess will use any available XMS memory
  17585.                         (unless the -NOXMS parameter is also
  17586.                         specified) when swapping itself out of
  17587.                         conventional memory or when loading its
  17588.                         overlays, instead of using any available EMS
  17589.                         memory.
  17590.           
  17591.           -NOXMS        This parameter forces RemoteAccess to ignore
  17592.                         any available XMS memory.  By default,
  17593.                         RemoteAccess uses available XMS memory first,
  17594.                         and then looks for available EMS memory which
  17595.                         is used when insufficient XMS memory is
  17596.                         available.  When this parameter is specified,
  17597.                         RemoteAccess will use any available EMS memory
  17598.                         (unless the -NOEMS parameter is also
  17599.                         specified) when swapping itself out of
  17600.                         conventional memory or when loading its
  17601.                         overlays, instead of using any available XMS
  17602.                         memory.
  17603.  
  17604.  
  17605.  
  17606.  
  17607.  
  17608.                                    - 270 -
  17609.           NOTE:  Overlay XMS support does not work with the DR DOS 6.0
  17610.           EMM386 memory manager.  Therefore, if you are using this
  17611.           memory manager and running DR DOS 6.0, you must disable XMS
  17612.           support using the -NOXMS parameter.
  17613.           
  17614.           -SMALLOVRBUF  If you load the RA.OVR overlay file onto a RAM
  17615.                         disk, you can reclaim an extra 12K of
  17616.                         conventional memory by specifying this
  17617.                         parameter.  This should only be used if you
  17618.                         are loading RA.OVR onto a RAM disk and have
  17619.                         the RAOVR environment variable set
  17620.                         accordingly.
  17621.           
  17622.           -An           Run RemoteAccess with NetBIOS functions
  17623.                         enabled, using LAN adapter n.  For example,
  17624.                         -A0 specifies the default LAN adapter should
  17625.                         be used.
  17626.  
  17627.           -Bxxxxx       Log user on-line at connection speed xxxxx.
  17628.                         This parameter is typically used in
  17629.                         conjunction with a Front End Mailer where
  17630.                         RemoteAccess is loaded while a caller is
  17631.                         already connected to the modem.  When fired
  17632.                         up, RemoteAccess will use the connection speed
  17633.                         specified, which must be a valid BPS
  17634.                         connection rate.  In addition to the BPS rate,
  17635.                         the secure connection response may also be
  17636.                         specified (i.e. -B9600/ARQ).
  17637.           
  17638.           -Cx           This parameter specifies the communications
  17639.                         port to use.  By default, RemoteAccess gets
  17640.                         this information from the MODEM.RA file (which
  17641.                         is created and maintained by RACONFIG) from
  17642.                         the current directory.  If this file cannot be
  17643.                         located in the current directory, RemoteAccess
  17644.                         searches its system directory.  This
  17645.                         command-line parameter can be used to override
  17646.                         the setting in the modem configuration file.
  17647.           
  17648.           -D            Disable the status bar by default.  Specifying
  17649.                         this parameter instructs RemoteAccess not to
  17650.                         display the status bar window at the bottom of
  17651.                         the local console screen.
  17652.           
  17653.           -Exxx         Exit at errorlevel xxx after the caller
  17654.                         logs-off. This setting is used to specify the
  17655.                         errorlevel RemoteAccess should return to DOS
  17656.                         after a caller logs off .
  17657.           
  17658.           -G            This parameter is used in conjunction with the
  17659.                         -R parameter and instructs RemoteAccess to
  17660.                         return to the last menu the user was in at the
  17661.                         time of the previous exit to DOS.  The default
  17662.                         is to return to the TOP menu when the -R
  17663.                         parameter is specified. {+} Registered only.
  17664.           
  17665.           -L            Run RemoteAccess in local mode.  When this
  17666.                         parameter is used, RemoteAccess will present
  17667.                         the logon screen on the local console.
  17668.  
  17669.  
  17670.  
  17671.  
  17672.                                    - 271 -
  17673.           -M<F>         Load RemoteAccess in Shell to Mailer mode. See
  17674.                         the Shell to Mailer section immediately
  17675.                         following this section for a detailed
  17676.                         explanation of this feature.  When this
  17677.                         parameter is specified, the Front End Mailer
  17678.                         command-line must be specified immediately
  17679.                         following the -M parameter.  Further, the
  17680.                         Mailer command-line must not contain any
  17681.                         spaces since a space indicates the end of a
  17682.                         command-line parameter to DOS itself. Instead,
  17683.                         spaces within the command-line must be
  17684.                         substituted with the underscore _ character.
  17685.                         See the Batch File Examples section in this
  17686.                         chapter for a usage example of this parameter.
  17687.           
  17688.           -Nxxx         This parameter specifies the node number (xxx)
  17689.                         in a multi-node system.  Acceptable values are
  17690.                         from 1-250.  For example, to load RemoteAccess
  17691.                         as node 20, the parameter -N20 would be used.
  17692.           
  17693.           -P            This parameter instructs RemoteAccess to
  17694.                         log user activity to the printer.
  17695.           
  17696.           -R            Log user back on-line after a menu function
  17697.                         type 15-"Exit to DOS with errorlevel".  When
  17698.                         this parameter is specified, RemoteAccess
  17699.                         loads just as it would for a new caller except
  17700.                         that instead of prompting the user to log-on,
  17701.                         it reads the exit file information which was
  17702.                         created when a menu function type 15 was
  17703.                         executed.  For more information, see menu
  17704.                         function type 15 in the Menu Administration
  17705.                         chapter.
  17706.           
  17707.           -S            Set snoop mode off when RemoteAccess is
  17708.                         loaded.  By default, snoop mode is enabled,
  17709.                         allowing you to see all that is displayed to
  17710.                         the user on-line.  Specifying this parameter
  17711.                         leaves only the status bar displayed on the
  17712.                         local console screen.
  17713.           
  17714.           -Txxxx        This parameter specifies the time (in minutes)
  17715.                         until the next system event.  This is used in
  17716.                         conjunction with a Front End Mailer where the
  17717.                         mailer passes the time until its next system
  17718.                         event.  This ensures that RemoteAccess will
  17719.                         not allow a user to remain on-line beyond the
  17720.                         Front End Mailer event starting time.
  17721.           
  17722.  
  17723.  
  17724.  
  17725.  
  17726.  
  17727.  
  17728.  
  17729.  
  17730.  
  17731.  
  17732.  
  17733.  
  17734.  
  17735.  
  17736.                                    - 272 -
  17737.           Shell to Mailer Mode
  17738.           ════════════════════════════════════════════════════════════
  17739.           When RemoteAccess is used in conjunction with a Front End
  17740.           Mailer, it can be loaded in what is referred to as Shell to
  17741.           Mailer mode.  This mode allows you to first load
  17742.           RemoteAccess which in turn loads a Front End Mailer.  When
  17743.           the mailer receives a call and exits to load the BBS,
  17744.           RemoteAccess only needs to swap itself back into
  17745.           conventional memory from disk or from XMS/EMS memory.  This
  17746.           causes RemoteAccess to load faster since it is in fact
  17747.           already loaded into memory.
  17748.  
  17749.           There are two variations of the Shell to Mailer mode.  The
  17750.           first (as in the scenario just described), is where
  17751.           RemoteAccess detects the errorlevel returned by the Front
  17752.           End Mailer and loads or passes the errorlevel accordingly.
  17753.           For example, if the Front End Mailer is configured to exit
  17754.           with an errorlevel of 100 when a 2400 BPS caller is
  17755.           detected, RemoteAccess can be configured to intercept this
  17756.           errorlevel, check its own internal errorlevel definition
  17757.           table, and fire up to accommodate the 2400 BPS connection.
  17758.           This method is fully explained in the Configuration chapter
  17759.           under:
  17760.           
  17761.                              Options > Errorlevels
  17762.           
  17763.           A sample batch file is also included later in this chapter
  17764.           which illustrates this type of operation.
  17765.  
  17766.           The second variation of the Shell to Mailer mode is where
  17767.           RemoteAccess is used in conjunction with a DOBBS.BAT batch
  17768.           file created by some Front End Mailers.  In this variation,
  17769.           the DOBBS.BAT file contains the speed at which the caller is
  17770.           connected, the communications port number in use, the number
  17771.           of minutes remaining until the next event and possibly a
  17772.           string indicating that a secure connection has been
  17773.           established (the string ARQ or MNP, for example).  You
  17774.           should keep in mind that this method, though used by some
  17775.           mailers, is not a defined standard.  For this reason, you
  17776.           should know what RemoteAccess looks for in this file.
  17777.  
  17778.           First, RemoteAccess uses a pattern matching search to locate
  17779.           a file called DOBBS*.BAT in the current directory.  For
  17780.           example, some mailers such as FrontDoor, can create these
  17781.           files which are named according to their task number
  17782.           (DOBBS1.BAT for example).  Once this one-line file is
  17783.           located, RemoteAccess reads the fourth word in the file
  17784.           which is the number of minutes remaining until the next
  17785.           event.
  17786.  
  17787.           Next, RemoteAccess compares the error-free secure connection
  17788.           string from its modem configuration file with the entire
  17789.           line contained in DOBBS*.BAT.  If this string is found,
  17790.           RemoteAccess detects that the caller is using an error-
  17791.           correcting modem and enables functionality only available
  17792.           during error-free connections.
  17793.  
  17794.  
  17795.  
  17796.  
  17797.  
  17798.  
  17799.  
  17800.                                    - 273 -
  17801.           Once this information has been read, RemoteAccess closes the
  17802.           DOBBS*.BAT file.  It then loads according to the errorlevel
  17803.           passed by the Front End Mailer, as in the first variation of
  17804.           the Shell to Mailer mode.
  17805.           
  17806.  
  17807.           Errorlevels Returned by RemoteAccess
  17808.           ════════════════════════════════════════════════════════════
  17809.           When RemoteAccess exits to DOS either after a user logs-off
  17810.           or when a menu function type 15-Exit to DOS with errorlevel
  17811.           is executed, your BBS batch file should trap the errorlevel
  17812.           and act accordingly.
  17813.  
  17814.           The errorlevels RemoteAccess reserves for its own use are
  17815.           outlined below.  If these errorlevels are duplicated and
  17816.           passed from a Front End Mailer, RemoteAccess adds a value of
  17817.           10 to the errorlevel and passes it to the BBS batch file.
  17818.           
  17819.           Errorlevel    Description
  17820.           ────────────────────────────────────────────────────────────
  17821.           0             User logged-off OK (default value).  This
  17822.                         default value can be overridden with the -E
  17823.                         command- line parameter.
  17824.           
  17825.           1             Modem initialization error; could not find the
  17826.                         communications driver, or the modem failed to
  17827.                         initialize.
  17828.           
  17829.           2             Sysop Next function was active when the user
  17830.                         logged off.
  17831.           
  17832.           3             The user entered one or more NetMail messages
  17833.                         during the session.  The message database
  17834.                         should be scanned for outgoing NetMail.
  17835.           
  17836.           4             The user entered one or more EchoMail messages
  17837.                         during the session.  The message database
  17838.                         should be scanned for outgoing EchoMail.
  17839.           
  17840.           5             The user entered both NetMail and EchoMail
  17841.                         messages during the session.  The message
  17842.                         database should be scanned for outgoing
  17843.                         NetMail and EchoMail.
  17844.  
  17845.           ┌──────────────────────────────────────────────────────────┐
  17846.           │ Here's a Tip!                                            │
  17847.           │                                                          │
  17848.           │ You can force RemoteAccess to exit with a specific       │
  17849.           │ errorlevel by creating a file called RAXITn.e in the     │
  17850.           │ Semaphore directory. Then, node n will terminate with    │
  17851.           │ errorlevel 'e' set.  This file is very powerful and will │
  17852.           │ disconnect any caller currently on-line for the affected │
  17853.           │ node.                                                    │
  17854.           │                                                          │
  17855.           │ For example, to cause node 2 to exit to DOS at errorlevel│
  17856.           │ 25, create the following file in the semaphore directory:│
  17857.           │                                                          │
  17858.           │                         RAXIT2.25                        │
  17859.           └──────────────────────────────────────────────────────────┘
  17860.  
  17861.  
  17862.  
  17863.  
  17864.                                    - 274 -
  17865.           Batch Files Examples
  17866.           ════════════════════════════════════════════════════════════
  17867.           RemoteAccess requires a batch file in order to recycle after
  17868.           each caller disconnects.  Refer to your DOS reference manual
  17869.           if you are not at all familiar with the concept of batch
  17870.           files. When RemoteAccess terminates, it passes an errorlevel
  17871.           back to the batch file.  The batch file should trap this
  17872.           errorlevel and act accordingly.  An errorlevel may be in the
  17873.           range of 1 to 255.  Errorlevels 1 to 5 are reserved for use
  17874.           by RemoteAccess to indicate certain events which have
  17875.           occurred since it was activated.  See the Errorlevels
  17876.           section earlier in this chapter for a full list of reserved
  17877.           errorlevels.
  17878.  
  17879.           
  17880.           A Single-node System
  17881.           ────────────────────────────────────────────────────────────
  17882.           The following batch file example illustrates how the batch
  17883.           file is used to run a single-node system.  This example
  17884.           shows how RemoteAccess is run in standalone (without a Front
  17885.           End Mailer) mode.
  17886.           
  17887.           Filename:    RUNRA.BAT
  17888.           Comments:     This batch file accepts one command-line
  17889.                         parameter and that is the node number that is
  17890.                         to be started.  The node number is referenced
  17891.                         within the batch file using the %1 variable.
  17892.                         Since this batch file will be used to run a
  17893.                         single- node system, the proper method of
  17894.                         starting the batch file to run node 1 would
  17895.                         be:
  17896.           
  17897.                                            RUNRA  1
  17898.           
  17899.                         Comment lines have been added which make the
  17900.                         batch file more readable.  Comment lines begin
  17901.                         with the text REM and are not processed.
  17902.  
  17903.  
  17904.  
  17905.  
  17906.  
  17907.  
  17908.  
  17909.  
  17910.  
  17911.  
  17912.  
  17913.  
  17914.  
  17915.  
  17916.  
  17917.  
  17918.  
  17919.  
  17920.  
  17921.  
  17922.  
  17923.  
  17924.  
  17925.  
  17926.  
  17927.  
  17928.                                    - 275 -
  17929.           ------------------------------------------------------------
  17930.           @echo off
  17931.           REM                  Set environment variables.
  17932.           SET RA=C:\RA
  17933.           
  17934.           :Start
  17935.              REM               Start the main batch file loop.
  17936.              Cls
  17937.              Echo Starting RemoteAccess Node %1
  17938.              CD \RA\NODE%1
  17939.              \RA\RA -E10 -N%1
  17940.              REM               After RA exits, trap the errorlevel.
  17941.           
  17942.           :AfterRA
  17943.              IF ERRORLEVEL 20 GOTO Maintain
  17944.              IF ERRORLEVEL 10 GOTO Start
  17945.              IF ERRORLEVEL 2  GOTO Local
  17946.              IF ERRORLEVEL 0  GOTO Quit
  17947.           
  17948.           :Maintain
  17949.              REM               Since this is a 1 node system, we can
  17950.              REM               do maintenance tasks outright
  17951.              CD \RA
  17952.              REM               Pack the user database deleting users
  17953.              REM               who have not called in 60 days.  Also
  17954.              REM               sort the user file.
  17955.              RAUSER -S -P -D60
  17956.              REM               Pack the message database purging
  17957.              REM               messages according to the threshold 
  17958.              REM               information contained in MESSAGES.RA.
  17959.              REM               Renumber the database updating reply
  17960.              REM               chains and user LastRead pointers.
  17961.              RAMSG PACK -Purge -Renumber
  17962.              REM               This concludes maintenance tasks.
  17963.              REM               Recycle the batch file.
  17964.              GOTO Start
  17965.           
  17966.           :Local
  17967.              REM               Local logon mode
  17968.              CD \RA\NODE%1
  17969.              \RA\RA -E10 -L -N%1
  17970.              REM               When finished, goto AfterRA to trap
  17971.              REM               the errorlevel returned.
  17972.              GOTO AfterRA
  17973.           
  17974.           :Quit
  17975.              REM               Exit the batch file.
  17976.           ------------------------------------------------------------
  17977.  
  17978.           This simple batch file example assumes that a system event
  17979.           is defined which returns an errorlevel of 20.  When this
  17980.           errorlevel is detected, RemoteAccess goes to the ':Maintain'
  17981.           label and processes the commands to maintenance tasks on the
  17982.           user and message databases.
  17983.           
  17984.  
  17985.  
  17986.  
  17987.  
  17988.  
  17989.  
  17990.  
  17991.  
  17992.                                    - 276 -
  17993.           A Multi-node System
  17994.           ────────────────────────────────────────────────────────────
  17995.           Multi-node systems usually have more complex batch files
  17996.           than single-node systems.  However, much of what applies to
  17997.           the single-node example, applies to the multi-node example
  17998.           as well.
  17999.  
  18000.           The following batch file example illustrates how the batch
  18001.           file is used to run a multi-node system.  This example shows
  18002.           how RemoteAccess is run in standalone (without a Front End
  18003.           Mailer) mode.  This batch file is similar to ones that can
  18004.           be created automatically by the installation utility,
  18005.           RAINSTAL.
  18006.           
  18007.           Filename:    RUNRA.BAT
  18008.           Comments:     This batch file accepts one command-line
  18009.                         parameter and that is the node number that is
  18010.                         to be started.  The node number is referenced
  18011.                         within the batch file using the %1 variable.
  18012.                         Since this batch file will be used to run a
  18013.                         multi- node system, the proper method of
  18014.                         starting the batch file would be:
  18015.           
  18016.                                     RUNRA  <node number>
  18017.           
  18018.                         Comment lines have been added which make the
  18019.                         batch file more readable.  Comment lines begin
  18020.                         with the text REM and are not processed.
  18021.  
  18022.  
  18023.  
  18024.  
  18025.  
  18026.  
  18027.  
  18028.  
  18029.  
  18030.  
  18031.  
  18032.  
  18033.  
  18034.  
  18035.  
  18036.  
  18037.  
  18038.  
  18039.  
  18040.  
  18041.  
  18042.  
  18043.  
  18044.  
  18045.  
  18046.  
  18047.  
  18048.  
  18049.  
  18050.  
  18051.  
  18052.  
  18053.  
  18054.  
  18055.  
  18056.                                    - 277 -
  18057.           ------------------------------------------------------------
  18058.           @echo off
  18059.           REM                  Set environment variables.
  18060.           SET RA=C:\RA
  18061.           
  18062.           :Start
  18063.              REM               Start the main batch file loop.
  18064.              Cls
  18065.              Echo Starting RemoteAccess Node %1
  18066.              CD \RA\NODE%1
  18067.              \RA\RA -E10 -N%1
  18068.              REM               After RA exits, trap the errorlevel.
  18069.           
  18070.           :AfterRA
  18071.              IF ERRORLEVEL 20 GOTO Maintain
  18072.              IF ERRORLEVEL 10 GOTO Start
  18073.              IF ERRORLEVEL 2  GOTO Local
  18074.              IF ERRORLEVEL 0  GOTO Quit
  18075.           
  18076.           :Maintain
  18077.              REM               Since this is a multi-node system, we
  18078.              REM               should leave maintenance tasks to one
  18079.              REM               node only to avoid having two nodes
  18080.              REM               performing the same tasks at the same
  18081.              REM               time.  If node 2 is running the event,
  18082.              REM               it will stop and wait until node 1 is
  18083.              REM               finished.  It then continues batch file
  18084.              REM               execution.
  18085.              CD \RA
  18086.              REM               If not node 1 go wait while node 1 does
  18087.              REM               maintenance tasks.
  18088.              IF NOT %1 == 1 GOTO Wait
  18089.              REM               Create a semaphore file called
  18090.              REM               RAWAIT.SEM
  18091.              ECHO ... >RAWAIT.SEM
  18092.              REM               Pack the user database deleting users
  18093.              REM               who have not called in 60 days.  Also
  18094.              REM               sort the user file.
  18095.              RAUSER -S -P -D60
  18096.              REM               Pack the message database purging
  18097.              REM               messages according to the threshold 
  18098.              REM               information contained in MESSAGES.RA.
  18099.              REM               Renumber the database updating reply
  18100.              REM               chains and user LastRead pointers.
  18101.              RAMSG PACK -Purge -Renumber
  18102.              REM               This concludes maintenance tasks.
  18103.              REM               Delete the semaphore file and then
  18104.              REM               recycle the batch file.
  18105.              ERASE RAWAIT.SEM
  18106.              GOTO Start
  18107.           
  18108.           :Local
  18109.              REM               Local logon mode
  18110.              CD \RA\NODE%1
  18111.              \RA\RA -E10 -L -N%1
  18112.              REM               When finished, goto AfterRA to trap
  18113.              REM               the errorlevel returned.
  18114.              GOTO AfterRA
  18115.  
  18116.  
  18117.  
  18118.  
  18119.  
  18120.                                    - 278 -
  18121.           :Wait
  18122.              REM               Wait here until the file RAWAIT.SEM
  18123.              REM               no longer exists
  18124.              IF EXIST RAWAIT.SEM GOTO Wait
  18125.              REM               If it doesn't exist, recycle.
  18126.              Goto Start
  18127.           
  18128.           :Quit
  18129.              REM               Exit the batch file.
  18130.           ------------------------------------------------------------
  18131.  
  18132.           This simple batch file example assumes that a system event
  18133.           is defined which returns an errorlevel of 20.  When this
  18134.           errorlevel is detected, RemoteAccess goes to the ':Maintain'
  18135.           label and processes the commands to maintain the user and
  18136.           message databases.
  18137.  
  18138.           Since each node will recognize the system event and in order
  18139.           to avoid two nodes performing the same maintenance tasks at
  18140.           the same time, only node 1 is allowed to actually process
  18141.           the maintenance task commands.  Any other node goes to the
  18142.           batch file label ':Wait'.  There, it simply waits until the
  18143.           semaphore file RAWAIT.SEM (created by node 1) no longer
  18144.           exists.
  18145.           
  18146.  
  18147.           A Multi-node System in Shell to Mailer Mode
  18148.           ────────────────────────────────────────────────────────────
  18149.           Although it is beyond the scope of this manual to explain
  18150.           how individual Front End Mailers are used, we believe you
  18151.           should at least understand how to implement a batch file
  18152.           which uses the Shell to Mailer feature.
  18153.  
  18154.           The following batch file example illustrates how the batch
  18155.           file is used to run a multi-node system.  This example shows
  18156.           how RemoteAccess is run in conjunction with FrontDoor, by
  18157.           Joaquim Homrighausen.
  18158.           
  18159.           Filename:    RUNRA.BAT
  18160.           Comments:     This batch file accepts one command-line
  18161.                         parameter and that is the node number that is
  18162.                         to be started.  The node number is referenced
  18163.                         within the batch file using the %1 variable.
  18164.                         Since this batch file will be used to run a
  18165.                         multi- node system, the proper method of
  18166.                         starting the batch file to run node 1 would
  18167.                         be:
  18168.           
  18169.                                     RUNRA  <node number>
  18170.  
  18171.  
  18172.  
  18173.  
  18174.  
  18175.  
  18176.  
  18177.  
  18178.  
  18179.  
  18180.  
  18181.  
  18182.  
  18183.  
  18184.                                    - 279 -
  18185.                         Notice the line that calls RemoteAccess using
  18186.                         the -M parameter.  The command-line used to
  18187.                         call the Front End Mailer directly follows
  18188.                         this parameter.  No spaces may be used within
  18189.                         this parameter.  Any spaces embedded in the
  18190.                         parameter must be replaced by underscore _
  18191.                         characters. After RemoteAccess loads into
  18192.                         conventional memory, it swaps itself out of
  18193.                         memory and loads a DOS shell which executes
  18194.                         the Front End Mailer.
  18195.  
  18196.                         When the Front End Mailer exits with an
  18197.                         errorlevel set, RemoteAccess traps the
  18198.                         errorlevel and compares it to the errorlevels
  18199.                         defined in RACONFIG. This is the method used
  18200.                         to determine the connection type and speed.
  18201.  
  18202.                         If a DOBBS*.BAT file is created by the Front
  18203.                         End Mailer, RemoteAccess also reads the
  18204.                         information in that file to determine the time
  18205.                         until the next Front End Mailer event as well
  18206.                         as whether the caller has established an
  18207.                         error-free connection. When RemoteAccess loads
  18208.                         for a caller, it only needs to swap itself
  18209.                         back into memory which results in an increase
  18210.                         in apparent loading speed.
  18211.  
  18212.  
  18213.  
  18214.  
  18215.  
  18216.  
  18217.  
  18218.  
  18219.  
  18220.  
  18221.  
  18222.  
  18223.  
  18224.  
  18225.  
  18226.  
  18227.  
  18228.  
  18229.  
  18230.  
  18231.  
  18232.  
  18233.  
  18234.  
  18235.  
  18236.  
  18237.  
  18238.  
  18239.  
  18240.  
  18241.  
  18242.  
  18243.  
  18244.  
  18245.  
  18246.  
  18247.  
  18248.                                    - 280 -
  18249.           ------------------------------------------------------------
  18250.           @echo off
  18251.           REM                  Set environment variables.
  18252.           SET RA=C:\RA
  18253.           SET FD=C:\FD
  18254.           
  18255.           :Start
  18256.              REM               Start the main batch file loop.
  18257.              Cls
  18258.              Echo Starting RemoteAccess and shelling to mailer
  18259.              CD \RA\NODE%1
  18260.              \RA\RA -M\FD\FD.EXE*M -E10 -N%1
  18261.              REM               After RA exits, trap the errorlevel.
  18262.           
  18263.           :AfterRA
  18264.              IF ERRORLEVEL 20 GOTO Maintain
  18265.              IF ERRORLEVEL 10 GOTO Start
  18266.              IF ERRORLEVEL 2  GOTO Local
  18267.              IF ERRORLEVEL 0  GOTO Quit
  18268.           
  18269.           :Maintain
  18270.              REM               Since this is a multi-node system, we
  18271.              REM               should leave maintenance tasks to one
  18272.              REM               node only to avoid having two nodes
  18273.              REM               performing the same tasks at the same
  18274.              REM               time.  If node 2 is running the event,
  18275.              REM               it will stop and wait until node 1 is
  18276.              REM               finished.  It then continues batch file
  18277.              REM               execution.
  18278.              CD \RA
  18279.              REM               If not node 1 go wait while node 1 does
  18280.              REM               maintenance tasks.
  18281.              IF NOT %1 == 1 GOTO Wait
  18282.              REM               Create a semaphore file called
  18283.              REM               RAWAIT.SEM
  18284.              ECHO ... >RAWAIT.SEM
  18285.              REM               Pack the user database deleting users
  18286.              REM               who have not called in 60 days.  Also
  18287.              REM               sort the user file.
  18288.              RAUSER -S -P -D60
  18289.              REM               Pack the message database purging
  18290.              REM               messages according to the threshold 
  18291.              REM               information contained in MESSAGES.RA.
  18292.              REM               Renumber the database updating reply
  18293.              REM               chains and user LastRead pointers.
  18294.              RAMSG PACK -Purge -Renumber
  18295.              REM               This concludes maintenance tasks.
  18296.              REM               Delete the semaphore file and then
  18297.              REM               recycle the batch file.
  18298.              ERASE RAWAIT.SEM
  18299.              GOTO Start
  18300.           
  18301.           :Local
  18302.              REM               Local logon mode
  18303.              CD \RA\NODE%1
  18304.              \RA\RA -E10 -L -N%1
  18305.              REM               When finished, goto AfterRA to trap
  18306.              REM               the errorlevel returned.
  18307.              GOTO AfterRA
  18308.  
  18309.  
  18310.  
  18311.  
  18312.                                    - 281 -
  18313.           :Wait
  18314.              REM               Wait here until the file RAWAIT.SEM
  18315.              REM               no longer exists
  18316.              IF EXIST RAWAIT.SEM GOTO Wait
  18317.              REM               If it doesn't exist, recycle.
  18318.              Goto Start
  18319.           
  18320.           :Quit
  18321.              REM               Exit the batch file.
  18322.           ------------------------------------------------------------
  18323.           
  18324.           As you can see, this batch file example is identical to the
  18325.           multi-node example except for the line that executes
  18326.           RemoteAccess in Shell to Mailer mode.
  18327.  
  18328.  
  18329.  
  18330.  
  18331.  
  18332.  
  18333.  
  18334.  
  18335.  
  18336.  
  18337.  
  18338.  
  18339.  
  18340.  
  18341.  
  18342.  
  18343.  
  18344.  
  18345.  
  18346.  
  18347.  
  18348.  
  18349.  
  18350.  
  18351.  
  18352.  
  18353.  
  18354.  
  18355.  
  18356.  
  18357.  
  18358.  
  18359.  
  18360.  
  18361.  
  18362.  
  18363.  
  18364.  
  18365.  
  18366.  
  18367.  
  18368.  
  18369.  
  18370.  
  18371.  
  18372.  
  18373.  
  18374.  
  18375.  
  18376.                                    - 282 -
  18377.