home *** CD-ROM | disk | FTP | other *** search
/ ProfitPress Mega CDROM2 …eeware (MSDOS)(1992)(Eng) / ProfitPress-MegaCDROM2.B6I / BBS / OPUS / OSOM_170.ZIP / OSOM_170.TXT
Encoding:
Text File  |  1991-07-14  |  428.6 KB  |  10,632 lines

  1.  
  2.  
  3.  
  4.         OOOOOOOOOOOOOO  OOOOOOOOOOOOOO  OOOOOO  OOOOOO  OOOOOOOOOOOOOO
  5.         OOOOOOOOOOOOOO  OOOOOOOOOOOOOO  OOOOOO  OOOOOO  OOOOOOOOOOOOOO
  6.         OO          OO  OO          OO  OO  OO  OO  OO  OO          OO
  7.         OO  OOOOOO  OO  OO  OOOOOO  OO  OO  OO  OO  OO  OO  OOOOOOOOOO
  8.         OO  OOOOOO  OO  OO  OOOOOO  OO  OO  OO  OO  OO  OO  OO
  9.         OO  OO  OO  OO  OO          OO  OO  OO  OO  OO  OO  OO
  10.         OO  OO  OO  OO  OO  OOOOOOOOOO  OO  OO  OO  OO  OO  OOOOOOOOOO
  11.         OO  OOOOOO  OO  OO  OOOOOOOOOO  OO  OOOOOO  OO  OO          OO
  12.         OO  OOOOOO  OO  OO  OO          OO  OOOOOO  OO  OOOOOOOOOO  OO
  13.         OO          OO  OO  OO          OO          OO          OO  OO
  14.         OOOOOOOOOOOOOO  OOOOOO          OOOOOOOOOOOOOO          OO  OO
  15.         OOOOOOOOOOOOOO  OOOOOO          OOOOOOOOOOOOOO          OO  OO
  16.                                                                 OO  OO
  17.         OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO  OO
  18.         oMMM                                                        OO
  19.         OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
  20.         OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
  21.  
  22.  
  23.  
  24.  
  25.                     Opus Computer-Based Conversation System
  26.                                  Version 1.70
  27.  
  28.             Copyright 1986, 1987, 1989, 1990, 1991, Wynn Wagner III
  29.                               All Rights Reserved
  30.  
  31.                       This version written by Doug Boone
  32.               with William Beebe, Ulf Nilsson, Trev Roydhouse and
  33.                                  John Valentyn
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.                             SYSOP OPERATIONS MANUAL
  42.  
  43.                                  14 July 1991
  44.  
  45.                         Documentation by Trev Roydhouse
  46.  
  47.                 Dedicated to Tom Jennings and Ward Christensen
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.                         Copyright 1991, Wynn Wagner III
  57.                               All Rights Reserved
  58.  
  59.  
  60.     Page 2                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  61.  
  62.  
  63.  
  64.                                TABLE OF CONTENTS
  65.  
  66.  
  67.     1.0  INTRODUCTION TO OPUS ..................................... 8
  68.          1.1  GUARANTEE ........................................... 9
  69.          1.2  USING OPUS .......................................... 9
  70.          1.3  CREDIT AND GRATITUDE ................................ 9
  71.          1.4  DOCUMENTATION, CREDITS .............................. 11
  72.          1.5  CORRECTIONS, SUGGESTIONS ............................ 12
  73.          1.6  MISCELLANEOUS ....................................... 12
  74.  
  75.     2.0  OPUS V1.70 OVERVIEW ...................................... 13
  76.          2.1  WHAT IS NEW IN OPUS V1.70 ........................... 13
  77.                2.1.1  SYSTEM FILES ................................ 14
  78.                2.1.2  USER AND EVENT FILES ........................ 14
  79.                2.1.3  USER KEYBOARD MACROS ........................ 14
  80.                2.1.4  MENUS ....................................... 14
  81.                2.1.5  VERSION 7 NODELIST SUPPORT .................. 17
  82.                2.1.6  SYSTEM SECTION .............................. 17
  83.                2.1.7  LANGUAGE SECTION ............................ 18
  84.                2.1.8  EQUIPMENT SECTION ........................... 18
  85.                2.1.9  MATRIX AND ECHOMAIL SECTION ................. 18
  86.                2.1.10 SESSION SECTION ............................. 19
  87.                2.1.11 FILES DATABASE .............................. 21
  88.                2.1.12 MESSAGE AREAS ............................... 23
  89.                2.1.13 OPUS EMBEDDED COMMANDS ...................... 24
  90.                2.1.14 COMMAND LINE OPTIONS ........................ 25
  91.                2.1.15 NIELS KEYS EXTENSION ........................ 25
  92.                2.1.16 EXTERNAL PROGRAMS ........................... 25
  93.                2.1.17 ERRORLEVEL EXITS ............................ 25
  94.                2.1.18 TRULY MISCELLANEOUS ......................... 26
  95.          2.2  REQUIRED HARDWARE ................................... 26
  96.          2.3  REQUIRED SOFTWARE ................................... 27
  97.          2.4  MESSAGES ............................................ 27
  98.                2.4.1  LOCAL MESSAGES .............................. 27
  99.                2.4.2  MATRIX/NETWORK MESSAGES ..................... 27
  100.                2.4.3  ECHOMAIL MESSAGES ........................... 28
  101.          2.5  EXTENDED MESSAGE AREA ATTRIBUTES .................... 28
  102.          2.6  FILE TRANSFERS ...................................... 29
  103.                2.6.1  UPLOADS ..................................... 29
  104.                2.6.2  DOWNLOADS ................................... 29
  105.                2.6.3  MATRIX ...................................... 29
  106.                2.6.4  REQUESTS .................................... 30
  107.          2.7  EXTENDED FILE TRANSFER PROTOCOLS .................... 30
  108.          2.8  OEC FILE CAPABILITY ................................. 30
  109.          2.9  ECHOMAIL ENHANCEMENTS ............................... 31
  110.          2.10 MATRIX/NETWORK MAIL INTERFACE ....................... 31
  111.          2.11 OPUS OPERATING PHILOSOPHY ........................... 31
  112.  
  113.     3.0  SETTING UP OPUS V1.70 .................................... 32
  114.          3.1  THE CONTROL FILE .................................... 32
  115.                3.1.1  CONTROL FILE MAINTENANCE .................... 33
  116.                3.1.2  THE PARAMETER FILE .......................... 33
  117.                3.1.3  FILE AND MESSAGE AREA SYSTEM FILES .......... 33
  118.      
  119.      
  120.     TABLE OF CONTENTS                                            Page 3 
  121.      
  122.      
  123.                3.1.4  MENU FILE(S) ................................ 34
  124.                3.1.5  ALL FILES ................................... 34
  125.                3.1.6  MACRO SUBSTITUTIONS ......................... 35
  126.          3.2  THE MENU SYSTEM ..................................... 36
  127.                3.2.1  CUSTOMISING MENU PROMPTS .................... 36
  128.                3.2.2  CONTROLLING ACCESS TO MENU COMMANDS ......... 36
  129.                3.2.3  DISPLAYING OEC FILES ........................ 37
  130.                3.2.4  RUNNING EXTERNAL PROGRAMS ................... 37
  131.                3.2.5  GLOBAL MENU COMMANDS ........................ 38
  132.                3.2.6  AUTOMATIC ZMODEM UPLOAD ..................... 38
  133.                3.2.7  SUPERSEDED MENU COMMANDS .................... 39
  134.                3.2.8  ALTERNATIVE MENUS ........................... 39
  135.                3.2.9  ASCII MENUS ................................. 40
  136.                3.2.10 OEC MENU PROMPTS ............................ 41
  137.                3.2.11 MENU SAFETY FEATURE ......................... 41
  138.          3.3  BOMBING RUNS ........................................ 41
  139.          3.4  IMPLEMENTING OEC FILES .............................. 42
  140.                3.4.1  QUOTATION OF THE MOMENT ..................... 43
  141.                3.4.2  PASSIVE QUESTIONNAIRES ...................... 44
  142.                3.4.3  ACTIVE QUESTIONNAIRES ....................... 45
  143.                3.4.4  SENDING A MESSAGE TO THE NEXT CALLER ........ 47
  144.                3.4.5  OEC FILE STACKING ........................... 48
  145.                3.4.6  COMMAND BUFFER STUFFING ..................... 49
  146.                3.4.7  REGULATING PEAK TIME CALLER ACCESS .......... 50
  147.          3.5  EXTERNAL PROGRAMS ................................... 51
  148.          3.6  MESSAGE AREAS ....................................... 52
  149.                3.6.1  CHECKLIST FOR NEW MESSAGE AREAS ............. 52
  150.                3.6.2  SAMPLE MESSAGE AREA DEFINITION .............. 52
  151.                3.6.3  AREAINFO FILES .............................. 54
  152.                3.6.4  SMART RULES FILES ........................... 54
  153.                3.6.5  MESSAGE AREA MAINTENANCE .................... 54
  154.          3.7  FILE AREAS .......................................... 55
  155.                3.7.1  THE FILES DATABASE .......................... 55
  156.                3.7.2  CONVERTING TO THE FILES DATABASE ............ 56
  157.                3.7.3  CHANGING FILE AREA NUMBERS .................. 56
  158.                3.7.4  SETTING UP NEW FILE AREAS ................... 57
  159.                3.7.5  SAMPLE FILE AREA DEFINITION ................. 58
  160.                3.7.6  FILES DATABASE MAINTENANCE .................. 60
  161.          3.8  BARRICADED MESSAGE AND FILE AREAS ................... 61
  162.          3.9  WELCOME FILES ....................................... 62
  163.                3.9.1  THE STANDARD WELCOME FILE ................... 62
  164.                3.9.2  SPECIAL ANNOUNCEMENT FILES .................. 63
  165.                3.9.3  CUSTOM WELCOME FILES ........................ 63
  166.                3.9.4  SPECIAL OEC WELCOME FILES ................... 64
  167.          3.10 THE RELOGGING FUNCTION .............................. 64
  168.          3.11 EXPIRATION CONTROL SYSTEM ........................... 66
  169.                3.11.1 EXPIRATION CONTROL METHOD ................... 66
  170.                3.11.2 HANDLING EXPIRED CALLERS .................... 66
  171.                3.11.3 IMPLEMENTING EXPIRATION CONTROL ............. 67
  172.          3.12 "SECTIONS" OR "SIGS" ................................ 68
  173.                3.12.1 SYSOP DEFINED SECTIONS ...................... 68
  174.                3.12.2 USER DEFINED SECTIONS ....................... 69
  175.                3.12.3 THE SECTION MENU ............................ 69
  176.                3.12.4 RELATED CONTROL FILE OPTIONS ................ 70
  177.                3.12.5 SAFETY FEATURE .............................. 71
  178.  
  179.  
  180.     Page 4                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  181.  
  182.  
  183.          3.13 TIME ZONE SETTINGS .................................. 71
  184.  
  185.     4.0  THE OPUS EVENT SYSTEM .................................... 73
  186.          4.1  TYPES OF EVENT ...................................... 73
  187.          4.2  EXTERNAL EVENTS ..................................... 74
  188.          4.3  USER EVENTS ......................................... 75
  189.          4.4  MAILER EVENTS ....................................... 76
  190.          4.5  MATRIX EVENTS ....................................... 76
  191.                4.5.1  MATRIX EVENT FLAGS .......................... 77
  192.                4.5.2  MATRIX EVENT FIELDS ......................... 77
  193.          4.6  YELL EVENTS ......................................... 79
  194.          4.7  SCAN ALL EVENTS ..................................... 79
  195.          4.8  HOUSE-CLEANING EVENTS ............................... 79
  196.          4.9  OVERLAPPING BEHAVIOUR WINDOWS ....................... 80
  197.          4.10 ADVANCED EVENTS FOR TIME TRAVELLERS ................. 80
  198.          4.11 HOW TO SET UP EVENTS ................................ 82
  199.  
  200.     5.0  WHEN THE SYSOP IS AT THE KEYBOARD ........................ 83
  201.          5.1  WHEN OPUS IS WAITING FOR A CALL ..................... 83
  202.                5.1.1  SETTING UP F1-F10 BATCH FILES ............... 85
  203.          5.2  SYSOP CALLING FROM KEYBOARD ......................... 87
  204.          5.3  WHEN A CALLER IS ONLINE ............................. 88
  205.          5.4  CHAT MODE ........................................... 90
  206.                5.4.1  CONFIGURING THE CHAT FOSSIL ................. 90
  207.  
  208.     6.0  THE MATRIX ............................................... 91
  209.          6.1  NETMAIL FOR THE COMPLETE NOVICE ..................... 91
  210.          6.2  FILE REQUIRED FOR NETMAIL ........................... 92
  211.          6.3  OVERVIEW OF NETMAIL ................................. 94
  212.          6.4  QUICK START TO NETMAIL .............................. 95
  213.          6.5  OPUS DEFAULT NETMAIL BEHAVIOUR ...................... 102
  214.                6.5.1  BEHAVIOUR WINDOWS ........................... 102
  215.                6.5.2  BUILDING MAIL BUNDLES ....................... 103
  216.                6.5.3  FILENAMES DRIVE OUTBOUND MAIL ............... 103
  217.          6.6  HOW IT ALL WORKS .................................... 105
  218.          6.7  CONTROLLING OUTBOUND CALLS .......................... 107
  219.                6.7.1  OPUS CONTROL FILE ........................... 107
  220.                6.7.2  MATRIX BEHAVIOUR WINDOWS .................... 108
  221.          6.8  SETTING UP BEHAVIOUR WINDOWS ........................ 111
  222.                6.8.1  THE ZONE MAIL HOUR .......................... 112
  223.                6.8.2  OVERNIGHT LONG DISTANCE ..................... 112
  224.                6.8.3  DAYTIME LOCAL-ONLY .......................... 112
  225.          6.9  HOW TO GET INTO THE MATRIX .......................... 113
  226.                6.9.1  MATRIX STRUCTURE ............................ 114
  227.                6.9.2  MATRIX ADDRESSES ............................ 114
  228.                6.9.3  FINDING YOUR NETWORK ........................ 115
  229.                6.9.4  ASKING FOR AN ADDRESS ....................... 115
  230.                6.9.5  GETTING ALONG IN THE MATRIX ................. 115
  231.          6.10 MATRIX FILE REQUESTS ................................ 116
  232.                6.10.1 REQUEST METHODS ............................. 116
  233.                6.10.2 ENABLING/DISABLING REQUESTS ................. 116
  234.                6.10.3 THE OKFILE LIST ............................. 117
  235.                        6.10.3.1 MAGIC FILENAME REQUESTS ........... 117
  236.                        6.10.3.2 DOLLAR SIGN FILENAMES ............. 118
  237.                6.10.4 THE ABOUT FILE .............................. 120
  238.      
  239.      
  240.     TABLE OF CONTENTS                                            Page 5 
  241.      
  242.      
  243.                6.10.5 THE FILES FILE .............................. 120
  244.                6.10.6 MAKING A FILE REQUEST ....................... 121
  245.                6.10.7 MAKING AN UPDATE REQUEST .................... 122
  246.          6.11 THE MATRIX MENU ..................................... 122
  247.          6.12 FORCING AN OUTBOUND CALL ............................ 123
  248.          6.13 UNSUCCESSFUL CONNECTIONS ............................ 124
  249.          6.14 MATRIX SESSION SCRIPTS .............................. 124
  250.                6.14.1  CONTENTS OF A SCRIPT FILE .................. 125
  251.                6.14.2  SCRIPT CHECKLIST ........................... 127
  252.                6.14.3  SAMPLE SCRIPT .............................. 128
  253.          6.15 MATRIX ORIENTED BATCH FILES ......................... 129
  254.          6.16 CHECKLIST FOR GOING ONLINE .......................... 131
  255.  
  256.     7.0  IMPLEMENTING POINT SUPPORT ............................... 132
  257.          7.1  WHAT IS A POINT? .................................... 132
  258.          7.2  HOW DO POINTS WORK? ................................. 133
  259.          7.3  HOW TO BECOME A FIDONET POINT ....................... 133
  260.          7.4  SETTING UP AS A BOSSNODE ............................ 134
  261.          7.5  SETTING UP AS A POINT ............................... 135
  262.  
  263.     8.0  IMPLEMENTING UUCP SUPPORT ................................ 136
  264.          8.1  DEFINITIONS ......................................... 136
  265.          8.2  ElEMENTARY FIDONET <--> UUCP ........................ 137
  266.          8.3  DIFFERENCES BETWEEN FIDONET AND UUCP ................ 138
  267.                8.3.1  THE UUCP ADDRESS STRING ..................... 138
  268.          8.4  OPUS UUCP FEATURES .................................. 139
  269.                8.4.1  SCOPE OF THE UUCP FEATURES .................. 139
  270.                8.4.2  CONTROL FILE PARAMETERS ..................... 139
  271.                8.4.3  THE DEFAULT UUCP GATEWAY .................... 140
  272.                8.4.4  THE DEFAULT ADDRESS STRING .................. 141
  273.                8.4.5  THE UUCPLIST ................................ 141
  274.                8.4.6  ADDRESS STRING VERIFICATION ................. 142
  275.                8.4.7  ADDRESS STRING HANDLING ..................... 142
  276.                8.4.8  FORWARDING UUCP E-MAIL TO THE MATRIX ........ 143
  277.          8.5  THE UUCPLIST ........................................ 143
  278.                8.5.1  CREATING THE UUCPLIST ....................... 143
  279.                8.5.2  FINDING A PROPER UUCP ADDRESS ............... 144
  280.                8.5.3  VIEWING THE UUCPLIST ........................ 145
  281.          8.6  UUCP PROCEDURES ..................................... 145
  282.                8.6.1  USING NO UUCP FEATURES ...................... 146
  283.                8.6.2  ASSIGNING A GATEWAY ......................... 147
  284.                8.6.3  USING THE DEFAULT ADDRESS STRING ............ 147
  285.                8.6.4  OVERRIDING THE DEFAULT ADDRESS STRING ....... 148
  286.                8.6.5  USING THE UUCPLIST .......................... 150
  287.          8.7  EDITOR AND HANDLING MENUS ........................... 150
  288.                8.7.1  EDITOR MENU ................................. 151
  289.                8.7.2  HANDLING MENU ............................... 151
  290.          8.8  CREDIT WHERE CREDIT IS DUE .......................... 151
  291.  
  292.     9.0 ECHOMAIL .................................................. 152
  293.          9.1  AN ECHOMAIL TUTORIAL ................................ 152
  294.                9.1.1  ORIGIN LINES ................................ 152
  295.                9.1.2  PRIVATE MESSAGES ............................ 153
  296.                9.1.3  PERSON-TO-PERSON MESSAGES ................... 153
  297.                9.1.4  THANK-YOU MESSAGES .......................... 153
  298.  
  299.  
  300.     Page 6                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  301.  
  302.  
  303.                9.1.5  OFF-TOPIC MESSAGES .......................... 153
  304.                9.1.6  REPLIES SHOULD STAND ALONE .................. 154
  305.                9.1.7  DELAYED REPLIES ............................. 154
  306.                9.1.8  COMMERCIAL ADVERTISEMENTS ................... 154
  307.                9.1.9  COST OF ECHOMAIL ............................ 154
  308.                9.1.10 CONCLUSION .................................. 154
  309.                9.1.11 ENCOUNTERS OF AN ABBREVIATED KIND ........... 155
  310.          9.2 HOW ECHOMAIL STARTED ................................. 155
  311.          9.3 ROUTING AND COORDINATION ............................. 157
  312.          9.4 GETTING STARTED WITH ECHOMAIL ........................ 158
  313.          9.5 THE ECHOMAIL SCAN PROCESS ............................ 160
  314.  
  315.     10.0 USING AN EXTERNAL MAILER ................................. 162
  316.          10.1  OPUS CONTROL FILE SETTINGS ......................... 162
  317.          10.2  EXTERNAL MAILER SETTINGS ........................... 163
  318.          10.3  OPUS MAILER EVENTS ................................. 163
  319.          10.4  OPUS MAILER COMMAND LINE SWITCH .................... 164
  320.          10.5  EXTERNAL MAILER EXAMPLE ............................ 164
  321.          10.6  SCHEDULING EXTERNAL EVENTS ......................... 165
  322.                10.6.1  OPTION ONE ................................. 165
  323.                10.6.2  OPTION TWO ................................. 166
  324.  
  325.     11.0 OPUS SECURITY ............................................ 167
  326.          11.1  ONLINE USERS ....................................... 167
  327.                11.1.1  SECTIONS ................................... 167
  328.                11.1.2  PRIVILEGE LEVELS ........................... 168
  329.                11.1.3  LOCKS AND KEYS ............................. 169
  330.                11.1.4  PASSWORDS AND BARRICADES ................... 169
  331.                11.1.5  THE USER LIST .............................. 170
  332.                11.1.6  OUTSIDE SECURITY ........................... 171
  333.          11.2  APPLICATION OF ONLINE SECURITY ..................... 171
  334.                11.2.1  MENUS ...................................... 174
  335.                11.2.2  AREAS ...................................... 175
  336.                11.2.3  OPUS EMBEDDED COMMANDS ..................... 176
  337.          11.3  MATRIX AND ECHOMAIL SECURITY ....................... 176
  338.                11.3.1  SESSION LEVEL PASSWORDS .................... 177
  339.                11.3.2  FILE REQUESTS .............................. 177
  340.                11.3.3  ECHOMAIL ................................... 177
  341.                11.3.4  INTRANSIT MAIL ............................. 177
  342.          11.4 OPUS NAME FILTER .................................... 178
  343.                11.4.1  CONTROL FILE SETTINGS ...................... 178
  344.                11.4.2  FILTER NAME FILE FORMAT .................... 179
  345.                11.4.3  BEHAVIOUR OF THE FILTER .................... 179
  346.                11.4.4  ERRORS IN THE FILTER NAME FILE ............. 180
  347.                11.4.5  SPECIFIC EXAMPLES OF USE ................... 180
  348.                        11.4.5.1  ONE LETTER NAMES ................. 180
  349.                        11.4.5.2  ROGUE MODEM NAMES ................ 180
  350.                        11.4.5.3  SHY CALLER NAMES ................. 181
  351.                        11.4.5.4  DIRTY WORD NAMES ................. 181
  352.                        11.4.5.5  WANNABE HACKER NAMES ............. 181
  353.  
  354.     12.0 OPUS FOLKLORE ............................................ 182
  355.          12.1  THE ELUSIVE NERF BAT, NERF.BAT ..................... 182
  356.          12.2  IDENTIFYING THE CHICO CONNECTION ................... 184
  357.          12.3  oPOLO0: OPUS POLICY, VERSION ZERO .................. 184
  358.      
  359.      
  360.     TABLE OF CONTENTS                                            Page 7 
  361.      
  362.      
  363.                12.3.1  DRESS CODE ................................. 185
  364.                12.3.2  ATTITUDE ................................... 185
  365.                12.3.3  BACKBITING, SNIDE REMARKS, AND ON AND ON ... 185
  366.                12.3.4  MATRIX ..................................... 185
  367.                12.3.5  TRANSIENTS ................................. 185
  368.                12.3.6  RULES IN A NUTSHELL ........................ 186
  369.                12.3.7  ENFORCEMENT ................................ 186
  370.                12.3.8  DISCLAIMER ................................. 186
  371.                12.3.9  MERIT BADGES ............................... 187
  372.  
  373.     13.0 MORE INFORMATION ON OPUS ................................. 188
  374.  
  375.     APPENDIX A (COMMENTED NERF.BAT) ............................... 192
  376.  
  377.  
  378.     Page 8                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  379.  
  380.  
  381.  
  382.                                 +--------------------------------------+
  383.                                 |  The reward of a thing well done is  |
  384.                                 |  to have done it.                    |
  385.                                 |                    -- Waldo Emerson  |
  386.                                 +--------------------------------------+
  387.  
  388.  
  389.     1.0 INTRODUCTION TO OPUS
  390.  
  391.     Gidday!
  392.  
  393.     Welcome to Opus, the Computer-Based Conversation System.
  394.  
  395.     You are given a limited licence to use the Opus-CBCS program as long
  396.     as you use it in a LAWFUL and FRIENDLY manner. This is NOT public
  397.     domain software and you are required to to follow the two licence
  398.     requirements. There is no monetary fee.
  399.  
  400.     You may freely distribute the Opus-CBCS program, but it is not to be
  401.     sold. If your system has a user fee, for example, you may not have
  402.     Opus-CBCS online for download unless anyone who has not paid the fee
  403.     can also download Opus-CBCS. Nobody is ever to make money from the
  404.     distribution of the Opus-CBCS software.
  405.  
  406.     If you bought Opus-CBCS on diskette or by download, demand your money
  407.     back in some lawful but unfriendly manner and report the vendor to
  408.     your nearest Opus-Info system.
  409.  
  410.     If you need, or want, to say thanks for this system in some monetary
  411.     way, you can send $50 to AmFAR/5900 Wilshire Boulevarde/Second Floor,
  412.     East Satellite/Los Angeles, California 90036-5032/USA. AmFAR is the
  413.     Americcan Foundation for AIDS Research, a non-profit, non-political,
  414.     and non-affectational organisation that funds hundreds of AIDS
  415.     research projects throughout the world.
  416.  
  417.     The Opus-CBCS program is copyright software. The copyright is held by
  418.     Wynn Wagner III. The sole purpose of the copyright is to ensure that
  419.     the Opus-CBCS program remains available for no money. The copyright is
  420.     enforced.
  421.  
  422.                          +----------------------------------------+
  423.                          | Free?  Does this mean I can't          |
  424.                          | get a discount?                        |
  425.                          |                                        |
  426.                          |                Nunzio                  |
  427.                          |                Opus By-Laws &          |
  428.                          |                Covert Action Committee |
  429.                          +----------------------------------------+
  430.  
  431.     Because no money is charged, Opus sysops are not consumers.  Opus is a
  432.     community effort.
  433.  
  434.      
  435.      
  436.     INTRODUCTION                                                 Page 9 
  437.      
  438.      
  439.                         +----------------------------------------+
  440.                         | Be sure you keep Opus free.            |
  441.                         |                                        |
  442.                         | Opus never was free.  Just because     |
  443.                         | there's no money charged doesn't       |
  444.                         | mean it's free.  The LAWFUL AND        |
  445.                         | FRIENDLY license can be more           |
  446.                         | expensive than money.                  |
  447.                         |                                        |
  448.                         |                --- from a conversation |
  449.                         +----------------------------------------+
  450.  
  451.  
  452.  
  453.     1.1 GUARANTEE
  454.  
  455.     You have to be kidding!
  456.  
  457.     Opus-CBCS carries only one guarantee: if you break it, you own all the
  458.     parts. To put it another way, if you run Opus, you do so entirely at
  459.     your own risk.
  460.  
  461.     The Opus-CBCS program may or may not work under your particular
  462.     circumstances. If it does work, it is possible somebody will invent a
  463.     way to destroy everything on your system. Opus contains lots of
  464.     security features, but those features don not come with any sort of
  465.     guarantee.
  466.  
  467.     However, you are most definitely not on your own. The Opus Community
  468.     throughout the world are always willing to help, provided you observe
  469.     the lawful and friendly Opus-CBCS licence requirements. Your best
  470.     source of information and help is the FidoNet MEADOW echomail
  471.     conference. There are also Opus-Info help systems in the USA, Europe,
  472.     Taiwan and Australia.
  473.  
  474.  
  475.  
  476.     1.2 USING OPUS
  477.  
  478.     Lawful and Friendly are the important words.  The original author, and
  479.     copyright holder, of this software takes the license quite seriously,
  480.     and if you use Opus you have to do so in a lawful and friendly manner.
  481.  
  482.  
  483.  
  484.     1.3 CREDIT AND GRATITUDE
  485.  
  486.     The following folks have gone out of their way to help the Opus
  487.     project. This is the "Opus: Sine Qua Non" (the list of folks, without
  488.     whom there would be no Opus):
  489.  
  490.     WYNN WAGNER III     First Opus-CBCS author. Opus-CBCS copyright
  491.                         holder. He came, he coded, he produced Opus-CBCS.
  492.  
  493.  
  494.  
  495.     Page 10                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  496.  
  497.  
  498.     DAVID FINSTER       Contributor to the Opus V0.00 documentation. Opus
  499.                         V1.00 alpha tester.
  500.  
  501.     BOB HARTMAN         In addition to tweaking Wynn's Sealink file
  502.                         transfer routine until it had a reasonable
  503.                         disposition, he is also the author of Opus!Comm
  504.                         (the first-ever FOSSIL program).
  505.  
  506.     RICK HUEBNER        He sent code!  Here are some of the modules that
  507.                         Rick originally wrote: OOMP (the internal echomail
  508.                         scanner), ZModem, and dialing scripts. He also
  509.                         designed the WaZOO file request mechanism.
  510.  
  511.     MIKE KELLEHER       Original sysop of OPUSinfo There. Contributor to
  512.                         the Opus V0.00 documentation.
  513.  
  514.     JOHN MILLER         The Opus V1.00 documentation editor.
  515.  
  516.     VINCE PERRIELLO     The other alpha tester of Opus V1.00.  Vince is
  517.                         also one of the prime instigators of the FOSSIL
  518.                         standard.
  519.  
  520.     GEORGE STANISLAV    The first Opus V1.03 to V1.10 author or "LCD"
  521.                         (Lower Code Dweller).
  522.  
  523.     DOUG BOONE          The second Opus V1.10 author; he pushed, coded,
  524.                         and kicked the Opus V1.10 release out the door
  525.                         when the world was wondering  "Will Opus V1.10
  526.                         ever be ready?". Also responsible for Opus V1.11
  527.                         through V1.14.
  528.  
  529.                         Not knowing the meaning of the word "quit", and
  530.                         ever a glutton for punishment, Doug also coded
  531.                         this V1.70 Opus release.
  532.  
  533.     BOB DAVIS           The Opus V1.13 Technical Reference Manual writer.
  534.  
  535.     JON SABOL           Contributor to documentation for Opus V0.00. The Opus
  536.                         V1.10 & V1.20 Beta Coordinator.
  537.  
  538.     TOM KASHUBA         The Opus V1.10 Gamma Coordinator and author of the
  539.                         essential Opus V1.1x Opus MANager program.
  540.  
  541.     BILL BOLTON         The original "OpusInfo Under".
  542.  
  543.     JON MARSHALL        The Opus V1.70 Gamma Coordinator. Current
  544.                         maintainer of Wynn's Opus Matrix Message Masher
  545.                         code (oMMM).
  546.  
  547.     JOHN VALENTYN       The Opus V1.70 files database coder, and adoptive
  548.                         parent of Doug's Opus File Area Manager (OPUS-FAM)
  549.                         program which he converted for Opus V1.70.
  550.  
  551.      
  552.      
  553.     INTRODUCTION                                                 Page 11 
  554.      
  555.      
  556.     ULF NILSSON         Opus V1.70 Language Coordinator, managed to find a
  557.       and               group of people to keep their translations current
  558.     TRANSLATORS         while Opus V1.70 was in development AND put up
  559.                         with the "normal" American Anglocentric attitudes
  560.                         and misconceptions. Providing full language
  561.                         support would have been impossible without all
  562.                         your help.
  563.  
  564.     THOMAS SUNDBLOM     Who provided the idea for the automatic character
  565.                         set translation and gave us permission to use his
  566.                         table of character sets.
  567.  
  568.     TREVOR ROYDHOUSE    Opus V1.70 Document editor and author. Who did
  569.                         more typing?
  570.  
  571.     PAUL KELLY          Three Opus V1.70 beta testers who seemed to find
  572.     MICHAEL MASTERSON   an unlimited number of bugs, quirks and oddities.
  573.     BEV FREED           And provided an unlimited supply of suggestions.
  574.  
  575.  
  576.     In addition to the active participants, the following should be
  577.     mentioned for doing things without which we would have no Opus:
  578.  
  579.          Ward Christensen    He thought up both XModem and bulletin
  580.                              board systems.
  581.  
  582.          Tom Jennings        He originated the worldwide amateur
  583.                              electronic mail network now known as
  584.                              FidoNet <tm>.
  585.  
  586.          Chuck Forsberg      He designed ZModem, the fastest and most
  587.                              reliable streaming file transfer protocol
  588.                              available.
  589.  
  590.  
  591.  
  592.     1.4 DOCUMENTATION, CREDITS
  593.  
  594.     The Opus CBCS Sysop Operations Manual is intended to be a practical
  595.     "how to" guide to setting up, customising and operating Opus V1.70.
  596.  
  597.     This manual is not the place to look for highly technical information
  598.     on Opus V1.70; for that you should refer to the Opus Technical
  599.     Reference Manual. Nor was it written as an installation or conversion
  600.     manual for Opus V1.70 (although it may help); for those you should
  601.     refer to the Doug Boone's STARTUP.DOC and CONVERT.DOC files.
  602.  
  603.     No document would be complete without giving credit to those who
  604.     contributed to the effort. First and foremost, I want to thank DOUG
  605.     BOONE. Again. Heaven only knows how he found the time, but he was
  606.     always there to answer my questions and look over the documentation,
  607.     even at the eleventh hour. I also have to thank my wife, Adrienne, who
  608.     has put up with my living in front of this screen and keyboard for
  609.     the last couple of weeks and more than usual anti-social behaviour.
  610.  
  611.  
  612.  
  613.     Page 12                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  614.  
  615.  
  616.     Others who contributed to this documentation included (in
  617.     alphabetical order): Bob Davis, Beverley Freed, Dave Hatch, Tom
  618.     Kashuba, Paul Kelly, Robert Lilly, Robert Michal, Graham Stair, George
  619.     Stanislav, John Valentyn, and Wynn Wagner III.
  620.  
  621.     Who were the rest?  Maybe you?  How?  I cannot stress enough how
  622.     valuable a resource the MEADOW echomail conference is when it comes to
  623.     information about Opus. I have been an avid reader of the conference
  624.     since it first became available in Australia in 1987. If you do not
  625.     regularly read the MEADOW, you are most definitely missing out on part
  626.     of Opus and the sense of Opus community.
  627.  
  628.     Trev Roydhouse, 13 July 1991.
  629.  
  630.  
  631.  
  632.     1.5 CORRECTIONS, SUGGESTIONS
  633.  
  634.     Please send any corrections, suggestions, observations, wishes, etc to
  635.     me at:
  636.  
  637.     Fidonet 3:711/401 (PEP)
  638.     FidoNet 3:711/501 (V32)
  639.  
  640.     International FAX +61-2-887-1702
  641.     Domestic      FAX (02)  887-1702
  642.  
  643.     PO Box 1605, Macquarie Centre, NSW 2113, Australia.
  644.  
  645.  
  646.  
  647.     1.6 MISCELLANEOUS
  648.  
  649.     Fido and FidoNet are trademarks of Tom Jennings.
  650.  
  651.     The Sealink file transfer method is copyrighted by System Enhancements
  652.     Associates.  They have released the protocol for general use in return
  653.     for this notice.
  654.  
  655.     The word "opus" is Latin for "project."  The plural of "opus" is
  656.     "opera". Although some Opus system operators have adopted a certain
  657.     penguin as a mascot, you should know that this is not official.  Opus-
  658.     CBCS software has nothing to do with the comic strip Bloom County that
  659.     has a character named Opus.  Any matters involving copyrights and/or
  660.     trademarks on the penguin are between you and The Washington Post Co.
  661.      
  662.      
  663.     OPUS V1.70 OVERVIEW                                          Page 13 
  664.      
  665.      
  666.  
  667.                          +---------------------------------------------+
  668.                          |  The fault lies not with our technologies,  |
  669.                          |  but with our systems.                      |
  670.                          |                      -- Roger Levian        |
  671.                          +---------------------------------------------+
  672.  
  673.  
  674.     2.0 OPUS V1.70 OVERVIEW
  675.  
  676.     Opus is an evolving computer-based conversation system that combines
  677.     simplicity with configurability.  Simplicity, in that a novice can
  678.     have a rather nice bulletin board up and running very quickly.
  679.     Configurability, in that an advanced sysop can turn the customization
  680.     of the board into an art form.  It is entirely up to you!
  681.  
  682.     Therein lies Opus's charm: it has all the power an advanced sysop
  683.     demands, while still being easy for both the user and the system
  684.     operator.
  685.  
  686.     Opus provides a feature-rich electronic messaging system, wide choice
  687.     of file upload and download protocols, plus access to the world's
  688.     premier amateur electronic mail network.  Clearly, it would be a
  689.     bargain at twice the price!
  690.  
  691.  
  692.  
  693.     2.1 WHAT IS NEW IN OPUS V1.70
  694.  
  695.     Opus 1.70 is a major internal structural change that is moving towards
  696.     more of a database design instead of having tons of little files out
  697.     there with which to deal. And yes Virginia, we are still in the small
  698.     memory model.
  699.  
  700.     One important point to realize is that you can throw out nearly all the
  701.     limitations that were in Opus 1.14.
  702.  
  703.                                                Opus 1.14      Opus 1.70
  704.  
  705.          Number of file/message areas            254            32,765
  706.          Number of boards you can scan to        12             255
  707.          Maximum EchoMail message size           10k            60k
  708.          Maximum number of lines in messages:    60             250
  709.          Full point support                      No             Yes
  710.          Full zone support                       No             Yes
  711.          Number of OECs you can run              10             No limit
  712.          Number of menu items available          71             116
  713.          Number of menus                         9              14
  714.  
  715.  
  716.  
  717.  
  718.  
  719.     Page 14                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  720.  
  721.  
  722.     2.1.1 SYSTEM FILES
  723.  
  724.           The SYSTEM*.DAT files are gone, replaced by a mini-file area
  725.           database and mini-message area database and five index files.
  726.           These index files are true buffered Bplus trees which will give
  727.           you very fast lookups.
  728.  
  729.  
  730.  
  731.     2.1.2 USER AND EVENT FILES
  732.  
  733.           * The event file is largely the same as Opus V1.14. There is
  734.           some new information in the header of the schedule file to track
  735.           the ID's of new users;
  736.  
  737.           * In the user file there is some new information added (see
  738.           configuration & history menu details below);
  739.  
  740.           * the lastread pointers stored in the user file are superseded
  741.           by individual last read pointer files in each message area. Opus
  742.           now keeps track of the highest message read and the last message
  743.           read separately;
  744.  
  745.           * The user file is indexed using a buffered Bplus tree to give
  746.           fast lookups;
  747.  
  748.           * Opus is also tracking the total number of messages that a user
  749.           has read and the total number of messages that they have
  750.           entered.
  751.  
  752.  
  753.  
  754.     2.1.3 USER KEYBOARD MACROS
  755.  
  756.           * Opus will store 3 user keyboard macros (message, file macro
  757.           and default) of up to 15 characters in the user record.
  758.  
  759.           * Opus will choose the macro that matches where the user is in
  760.           the menu structure. If the user presses the macro key in the
  761.           message menu, Opus will execute the message macro. Opus will
  762.           execute the default macro at any menu except the message and
  763.           file menus.
  764.  
  765.  
  766.  
  767.     2.1.4 MENUS
  768.  
  769.           * In HiTech the '>' after MORE in HiTech is blue and will
  770.           flash, which hopefully will draw people's attention to it;
  771.  
  772.           * You can substitute your own menu prompts;
  773.  
  774.           * Users can choose to have the number of minutes remaining
  775.           displayed as part of the menu prompts;
  776.  
  777.      
  778.      
  779.     OPUS V1.70 OVERVIEW                                          Page 15 
  780.      
  781.      
  782.           * NACL will allow '*', '@' and '&' for menu options;
  783.  
  784.           * You can define a file to be displayed to users as fancy, slow
  785.           ASCII graphics menu at the MAIN / CONFIG / SYSOP / SECTION /
  786.           CUSTOM menus if the user has graphic (ASCII) menus turned on.
  787.           The Opus menu will follow unless the user's help level is
  788.           "expert".
  789.  
  790.           * The echomail and matrix menus have been eliminated. Instead
  791.           there is one, single message menu for all areas.
  792.  
  793.           SECTION MENU
  794.  
  795.           * Sections are used to break an Opus into "sub-boards" or
  796.           "sigs". You might have a "Programming Section". File and message
  797.           areas that relate to programming would all list that as their
  798.           section, and underneath that you might have a "C Section" and a
  799.           "Modula 2 Section" and so on. When a user goes into a section
  800.           they only have access to other areas that match that section.
  801.           Message Scan and file Locate for example would be narrowed down
  802.           by going into a section.
  803.  
  804.           * Sections are selected/used like locks and keys, except that
  805.           users can directly change their sections.
  806.  
  807.           * Users can make their own selection of message and file areas
  808.           to be included in user defined sections. Opus remembers users'
  809.           sections next time they logon. Users can choose to unselect
  810.           their user defined, or sysop defined, section and revert to
  811.           none.
  812.  
  813.           CONFIG MENU
  814.  
  815.           New configuration options allow users to:
  816.  
  817.           * always return to their last menu after logging on, AFTER going
  818.           through the usual logon procedure. The only difference is that
  819.           instead of the MAIN menu being the menu where users are dumped,
  820.           it will be the last menu they used on their last call;
  821.  
  822.           * select what type of graphics to use every logon, right after
  823.           giving their password;
  824.  
  825.           * have hotkeys at all help levels;
  826.  
  827.           * get long, tedious graphic (ASCII) menus in addition to the
  828.           Opus menus;
  829.  
  830.           * display the number of minutes left online for this session as
  831.           part of the menu prompt;
  832.  
  833.           * turn on/off being interrupted by other users on a multiline
  834.           system with multiline chat available;
  835.  
  836.           * set a default file transfer protocol. ***WARNING*** This may
  837.  
  838.  
  839.     Page 16                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  840.  
  841.  
  842.           mess up the Zmodem "R)Zupload" that a lot of us use.
  843.  
  844.           HISTORY MENU
  845.  
  846.           * The configuration menu has been split into a "history menu",
  847.           which is information about the user (eg password, city,
  848.           language, telephone, alias, street address, birthday, and how
  849.           listed in the user list) and a configuration menu which is how
  850.           the user sees Opus.
  851.  
  852.           * Users can now change their logon name.
  853.  
  854.           * Users can now change their alias.
  855.  
  856.           * The history menu can be added to any menu, eg the main menu or
  857.           the configuration menu, or both.
  858.  
  859.           MESSAGE MENU
  860.  
  861.           New options allow users to:
  862.  
  863.           * search forward from the next message to the last message
  864.           looking for messages that are To: the current user. When it
  865.           finds one, Opus stops and displays the message;
  866.  
  867.           * search forward from the current message looking for a match to
  868.           a string that the user provides, then displays the messages it
  869.           finds. This command remembers the last search string that a user
  870.           asked for, so hitting a return will allow a user to continue a
  871.           search without having to type in the string for each match;
  872.  
  873.           * review the rules at any time, even after reading messages. It
  874.           is a "smart" menu item which only appears on the menu if
  875.           RULES.BBS or RULES~.BBS exist in the message path;
  876.  
  877.           * allow users to enter a message to Sysop from wherever the
  878.           option is available. It is a variant of the logoff message in
  879.           that users are not asked for names or subject or anything.
  880.  
  881.           FILE MENU
  882.  
  883.           New menu options added to allow for:
  884.  
  885.           * searching the entire files database for files added since the
  886.           user's last call, or the user can override it and specify a
  887.           number of days;
  888.  
  889.           * downloading and automatically disconnecting if Opus thinks the
  890.           download went successfully;
  891.  
  892.           * H)urling files across drives if there is enough room on the
  893.           target drive;
  894.  
  895.           * setting a temporary upload/download path. Opus will not ask
  896.           for descriptions for files uploaded in the temporary directory
  897.      
  898.      
  899.     OPUS V1.70 OVERVIEW                                          Page 17 
  900.      
  901.      
  902.           and they will not be included in files database.
  903.  
  904.           * adding files to the files database from the keyboard.
  905.  
  906.           CUSTOM MENUS
  907.  
  908.           * Opus V1.70 allows the sysop to create up to 6 different custom
  909.           menus. These menus may be attached anywhere. There is a
  910.           limitation: only "global" menu commands can be attached to
  911.           custom menus (refer to section 3 of the Opus V1.70 Technical
  912.           Reference Manual).
  913.  
  914.           LORE/OPED MENU
  915.  
  916.           * New editor command to have Opus ask for a filename. If you
  917.           have started editing a message, it is lost, only the file is
  918.           saved;
  919.  
  920.           * The LORE help file will be shown the first 2 times the user
  921.           enters a message via LORE, instead of during the first 5 calls.
  922.  
  923.  
  924.  
  925.     2.1.5 VERSION 7 NODELIST SUPPORT
  926.  
  927.           * Uses less than 70% of the disk space needed for the Version 6
  928.           nodelist, includes Sysop names, will insert Sysop name in net
  929.           mail. Use of the Version 7 nodelist is optional, Opus still
  930.           supports the outdated Version 6 nodelist.
  931.  
  932.           * If you do use the Version 7 nodelist then Opus will list the
  933.           Sysops when listing boards.
  934.  
  935.           * When Polling between callers, Opus will accept either an
  936.           address or a Sysop name.
  937.  
  938.           * You can set the privilege needed to see who the Sysops are for
  939.           the boards when listing boards in netmail or from the Matrix
  940.           Menu.
  941.  
  942.  
  943.  
  944.     2.1.6 SYSTEM SECTION
  945.  
  946.           * Opus will optionally answer the phone itself instead of
  947.           relying S0=1 in the modem initialization string.
  948.  
  949.           * Opus will support the new HST/DS HST modem CONNECT 14400
  950.           connect message.
  951.  
  952.           * You may specify the path to find/put echotoss.log and also
  953.           the name of your echotoss.log. Opus now uses echotoss.Log for
  954.           its internal echomail scanner, so external programs that use the
  955.           echotoss.log will be picked up by Opus.
  956.  
  957.  
  958.  
  959.     Page 18                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  960.  
  961.  
  962.           * Enable multiline chat ... this is not a real multiline chat,
  963.           but at least messages can be sent between tasks.
  964.  
  965.           * Tell Opus that its being run on a LAN and it should behave
  966.           like a multitasker was being run (ie create INMAIL##.$$$ files).
  967.  
  968.  
  969.  
  970.     2.1.7 LANGUAGE SECTION
  971.  
  972.           * Opus supports the multiple character sets as set out in the
  973.           file FSC-0050 and as implemented in the program OPMED 3.0;
  974.  
  975.           * The number of user-defined languages has been expanded from 6
  976.           to 12;
  977.  
  978.           * Option to change the IBM line-drawing characters in Opus to
  979.           lotek ASCII characters instead of the high-bit characters.
  980.  
  981.  
  982.  
  983.     2.1.8 EQUIPMENT SECTION
  984.  
  985.           * Rudimentary MOUSE support (sysop configurable on/off)
  986.  
  987.           * Four configurable predial strings for dialling outbound calls.
  988.           Opus will check the Modem byte in the nodelist, and if it is set
  989.           to one of these values Opus will use the predial string that
  990.           corresponds to the first match. If no modem flag has been set
  991.           for a node, Opus will use its default dial prefix string.
  992.  
  993.  
  994.  
  995.     2.1.9 MATRIX AND ECHOMAIL SECTION
  996.  
  997.           * You can increase a user's Matrix Credit while a user is
  998.           online;
  999.  
  1000.           * A new option to tell Opus that if it cannot find an address in
  1001.           the nodelist to send the mail to the Net Host instead of marking
  1002.           it as "undialable". (This only works with the Version 7
  1003.           nodelist);
  1004.  
  1005.           * New options to ask users of the specified privilege and above
  1006.           whether the message is a file request or an update file request.
  1007.  
  1008.           MULTI-ZONE SUPPORT
  1009.  
  1010.           * Opus will handle multi-zone holding areas (ie zoned outbound
  1011.           directories: outbound.###).  You can still put everything in a
  1012.           single outbound directory, but if they exist Opus will use the
  1013.           outbound.### directories;
  1014.  
  1015.           * If you give an address in the definition of an echomail area,
  1016.           Opus will use that address in your messages from that area;
  1017.      
  1018.      
  1019.     OPUS V1.70 OVERVIEW                                          Page 19 
  1020.      
  1021.      
  1022.           * If you have multiple zone / net /node addresses, Opus will
  1023.           use its "best fit" address for the calling/called node in the
  1024.           YooHoo packet instead of the first (primary) address.
  1025.  
  1026.           POINTNET SUPPORT
  1027.  
  1028.           * Opus will run as a BOSS node and strip off a point's SEEN-BY
  1029.           and Origin lines and put on yours;
  1030.  
  1031.           * Opus will also run as a point;
  1032.  
  1033.           * You can either be a BOSS or a POINT, but not both.
  1034.  
  1035.           EXTERNAL MAILER HOOKS
  1036.  
  1037.           If you give the CTL file an External Mailer string to look for,
  1038.           if Opus sees that string at the name prompt it will create a
  1039.           "MAILER.BAT" file and exit with the specified DOS errorlevel.
  1040.  
  1041.           UUCP SUPPORT
  1042.  
  1043.           * When forwarding messages to the netmail area, if the message
  1044.           is "To: uucp", Opus will not insert the From/To/Date stuff at
  1045.           the head of the text of the message so the UUCP address will be
  1046.           preserved as the first line in the message;
  1047.  
  1048.           * UUCPlist is like FidoUser.Lst, except it is a list of UUCP
  1049.           addresses, not FidoNet addresses. If this option is on, you
  1050.           simply enter Netmail messages with the person's name on the
  1051.           address line;
  1052.  
  1053.           * If a message has a UUCP address on it, you can set a privilege
  1054.           level for a new command that will allow some people to delete
  1055.           the UUCP address that has been read out of the original message;
  1056.  
  1057.           * When entering a message to "UUCP", Opus will put in the
  1058.           address of your UUCP gateway automatically;
  1059.  
  1060.           * In the MATRIX section of the CTL file you can specify an
  1061.           address so that if Opus is sending a reply back to a UUCP
  1062.           address, the message will be routed to this address
  1063.           automatically instead of wherever it entered FidoNet.
  1064.  
  1065.  
  1066.  
  1067.     2.1.10 SESSION SECTION
  1068.  
  1069.           New options added to:
  1070.  
  1071.           * use/update LASTREAD for the Sysop who uses an external message
  1072.           editor;
  1073.  
  1074.           * define the file to be displayed if user does not get the
  1075.           password right;
  1076.  
  1077.  
  1078.  
  1079.     Page 20                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  1080.  
  1081.  
  1082.           * define a file where all downloads will be logged;
  1083.  
  1084.           * define a file where all uploads will be logged;
  1085.  
  1086.           * encrypt the users' passwords in the user file (they cannot
  1087.           then be unencrypted);
  1088.  
  1089.           * control the privilege needed to download or check the contents
  1090.           of files that are not listed in the files database.
  1091.  
  1092.           USER LOGON
  1093.  
  1094.           New options added to:
  1095.  
  1096.           * prompt new users for either their ALIAS or REAL name at first
  1097.           logon after they have entered their name the first time;
  1098.  
  1099.           * allow new users to choose from the languages the sysop has
  1100.           made available;
  1101.  
  1102.           * toggle on/off whether or not to ask new users for their
  1103.           city/state;
  1104.  
  1105.           * specify a default number of days until new users' access
  1106.           expires;
  1107.  
  1108.           * specify a default number of minutes until new users' access
  1109.           expires;
  1110.  
  1111.           * specify default keys for new users;
  1112.  
  1113.           * specify a default section for new users;
  1114.  
  1115.           * define a file to help the user with new user logon
  1116.           configuration;
  1117.  
  1118.           * allow users / new users who have a specified privilege to
  1119.           logon without giving any password.
  1120.  
  1121.           SPECIAL CONFIGURATION LOGONS
  1122.  
  1123.           * A user, even a new user, can enter their name plus a string of
  1124.           configuration commands at logon. These commands will override
  1125.           whatever has been stored in the user record or, if it is a new
  1126.           user, bypass the "Mirror shades" questions entirely;
  1127.  
  1128.           * Opus will accept name1 name2 /pmypwd for quick logons.
  1129.  
  1130.  
  1131.  
  1132.      
  1133.      
  1134.     OPUS V1.70 OVERVIEW                                          Page 21 
  1135.      
  1136.      
  1137.     2.1.11 FILES DATABASE
  1138.  
  1139.           This is actually a system of three files. One file contains all
  1140.           the information about what files you have on your board, one is
  1141.           the index to all the filenames on your board, and one is an
  1142.           index into the first file in each file area.
  1143.  
  1144.           * You can specify where in each file area listing new files will
  1145.           be added either when uploaded or hurled. Normally new files are
  1146.           appended to the end of the listing.
  1147.  
  1148.           * You can specify full paths to files if they are not in the
  1149.           default directory for that area.
  1150.  
  1151.           * Who uploaded the file, and when, is stored with each file.
  1152.  
  1153.           * The file date and time is preserved when files are received
  1154.           via Zmodem transfers. The search for new files will look at the
  1155.           upload date/time, but the users will see the actual file
  1156.           creation time when they do a F)iles listing.
  1157.  
  1158.           * When a user does a L)ocate, or searches for a string with the
  1159.           F)iles command, they will also optionally get an additional line
  1160.           of information including who uploaded the file, when, and how
  1161.           many times it has been downloaded.
  1162.  
  1163.           * The F)iles display has been modified so it does a word-wrap
  1164.           for users who have screens wider than 60 characters.
  1165.           Descriptions can be up to 256 characters each.
  1166.  
  1167.           * Each individual file can have its own download privilege and
  1168.           locks.
  1169.  
  1170.           * When attempting to do a download, if the file is NOT in the
  1171.           current area, Opus will try to jump to the area where the file
  1172.           is located. Privileges and locks are honoured.
  1173.  
  1174.           * Opus will not allow users who have privilege below ASSTSYSOP
  1175.           to upload duplicate file names anywhere unless you specifically
  1176.           allow duplicate files.
  1177.  
  1178.           * If a user has never been in a file area, Opus will show them
  1179.           a RULES file if one exists.
  1180.  
  1181.           * You can specify file areas from which files may be downloaded
  1182.           without being counted as part of the ratio or daily download
  1183.           limit.
  1184.  
  1185.           FILE AREAS
  1186.  
  1187.           * File and Message areas are now completely separate. There is
  1188.           no place where they interact with each other. Even the barricade
  1189.           paths can be completely separate;
  1190.  
  1191.           * In both the file and message areas you can embed an
  1192.  
  1193.  
  1194.     Page 22                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  1195.  
  1196.  
  1197.           "applications" string in the area definition in the database for
  1198.           use by, eg, an intelligent message renumberer;
  1199.  
  1200.           * The number of external protocols Opus will accept has been
  1201.           increased from 8 to 16.
  1202.  
  1203.           * During a file L)OCATE, Opus will list the areas as they are
  1204.           checked.
  1205.  
  1206.           New options added to:
  1207.  
  1208.           * define what section(s) an area should be considered to be part
  1209.           of;
  1210.  
  1211.           * define a file in each file area to be shown before the file
  1212.           listing;
  1213.  
  1214.           * specify a private upload path;
  1215.  
  1216.           * specify a private upload path user privilege. Uploads from
  1217.           users with the specified privilege or greater will go to the
  1218.           private path;
  1219.  
  1220.           * specify a private upload key;
  1221.  
  1222.           * specify a private upload key path where uploads from a user
  1223.           with the private upload key will go;
  1224.  
  1225.           * define a file to be displayed to a user before the Opus menu
  1226.           for this file area if they have graphics (ASCII) menus turned
  1227.           on;
  1228.  
  1229.           * define ratio privileges in file areas. Ratios only come into
  1230.           effect if the user's privilege is equal to or below what you set
  1231.           for that area;
  1232.  
  1233.           * specify the privilege necessary to display the information
  1234.           stored in the files database on who uploaded new files;
  1235.  
  1236.           * allow duplicate files to be uploaded in a specified file area.
  1237.           Opus will then not check for duplicate files when uploads start
  1238.           in this area;
  1239.  
  1240.           * specify that files uploaded in a particular area will be
  1241.           assigned a specified privilege for downloading;
  1242.  
  1243.           * show the two-line listing instead of the single line listing;
  1244.  
  1245.           * specify a privilege level for displaying who uploaded files
  1246.           (the date of upload and how many times downloaded info will
  1247.           still display in two line listings).
  1248.  
  1249.  
  1250.  
  1251.      
  1252.      
  1253.     OPUS V1.70 OVERVIEW                                          Page 23 
  1254.      
  1255.      
  1256.     2.1.12 MESSAGE AREAS
  1257.  
  1258.           * File and Message areas are now completely separate. There is
  1259.           no place where they interact with each other. Even the barricade
  1260.           paths can be completely separate;
  1261.  
  1262.           * In both the file and message areas you can embed an
  1263.           "applications" string in the area definition in the database for
  1264.           use by, eg, an intelligent message renumberer;
  1265.  
  1266.           * Opus will check to see if private messages are to either the
  1267.           user's name or current alias.
  1268.  
  1269.           * The 10k limit on echomail messages has been lifted, instead
  1270.           you can specify a limit in the CTL file from 3k up to 60k;
  1271.  
  1272.           * The 60 line limit on messages has also been lifted. Instead in
  1273.           each area you can specify a maximum number of lines, the default
  1274.           is 60, and Opus will give users that many lines or as many as it
  1275.           can in the amount of free memory it has available. The range of
  1276.           lengths that NACL will allow is from 10 to 250 lines.
  1277.  
  1278.           New options added to:
  1279.  
  1280.           * specify the keys needed to access the message upload command;
  1281.  
  1282.           * specify the privilege required to use the message upload
  1283.           option for this area;
  1284.  
  1285.           * specify the keys needed for users to read PRIVATE messages
  1286.           that are not to / from them;
  1287.  
  1288.           * specify the privilege needed for users to read PRIVATE
  1289.           messages that are not to / from them;
  1290.  
  1291.           * define a file that will be shown to users who have graphics
  1292.           menus on before the Opus menu;
  1293.  
  1294.           * define an ORIGIN line for use in each echomail message area;
  1295.  
  1296.           * specify a DOMAIN for use with MSGID in a message area;
  1297.  
  1298.           * specify the ADDRESS for use in an area for the Origin line,
  1299.           MSGID, and SEEN-BYs.
  1300.  
  1301.           * specify the addresses to scan mail to. Opus V1.70 will scan to
  1302.           255 addresses per area;
  1303.  
  1304.           * changes to the next area that has new messages in it up to the
  1305.           high message area set in the CTL file.
  1306.  
  1307.  
  1308.  
  1309.  
  1310.  
  1311.     Page 24                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  1312.  
  1313.  
  1314.     2.1.13 OPUS EMBEDDED COMMANDS
  1315.  
  1316.           * Skip the rest of the line if user section is equal to
  1317.           specified section;
  1318.  
  1319.           * Skip the rest of the line if user section is not equal to
  1320.           specified section;
  1321.  
  1322.           * Show the last date/time the user accessed a particular file
  1323.           area;
  1324.  
  1325.           * Show a specified file and return to the current location in
  1326.           the original file;
  1327.  
  1328.           * Show the rest of a line only if the user's baud is greater
  1329.           than or equal to a specified baud;
  1330.  
  1331.           * Record the current position in the current file, jump to
  1332.           specified position in the current file and return to original
  1333.           position when specified;
  1334.  
  1335.           * Stuff commands available from the current menu into the
  1336.           command buffer and quit the OEC file;
  1337.  
  1338.           * If the user's help level is not equal to the help level on the
  1339.           line, the rest of the line is skipped.
  1340.  
  1341.           * Add specified keys for the user. This in addition to the
  1342.           default logon keys which may be specified in the control file;
  1343.  
  1344.           * Clear specified keys for the user;
  1345.  
  1346.           * Display the total number of messages a user has read;
  1347.  
  1348.           * Display the total number of messages entered by user;
  1349.  
  1350.           * Get and save a string up to 58 characters long from the user.
  1351.           When Opus hits a ^OC or ^OH or ^OG, whatever the user has
  1352.           entered will be appended to the command you gave.
  1353.  
  1354.           * Log special debugging info;
  1355.  
  1356.           * ^OC rereads LASTUS##.DAT, now there is an OEC that is
  1357.           identical in function, except that LASTUS##.DAT is not reread;
  1358.  
  1359.           * Send a message to the user on the current task. Sounds useless
  1360.           right? Well, suppose you added it to the end of BYEBYE.BBS ...
  1361.  
  1362.           * The ability to stack OEC files, where one file calls another
  1363.           and then returns to the original point;
  1364.  
  1365.           * Send a message to a specified task (like the inter-line chat
  1366.           menu item);
  1367.  
  1368.           * See who else is online on multi-line systems;
  1369.      
  1370.      
  1371.     OPUS V1.70 OVERVIEW                                          Page 25 
  1372.      
  1373.      
  1374.           * Look for the interline CHAT## file and display it if it
  1375.           exists;
  1376.  
  1377.           * An OEC like ^OC which does not fill the command buffer with an
  1378.           ENTER when it returns;
  1379.  
  1380.           * An OEC like ^OC which does a system() call, does not re-read
  1381.           LASTUS##.DAT, and does not fill the command buffer with an
  1382.           ENTER when it returns;
  1383.  
  1384.           * Check for the existence of a specified filename. If the file
  1385.           does not exist, the rest of the line is skipped;
  1386.  
  1387.           * Run a program and return the DOS errorlevel of the program
  1388.           that was called;
  1389.  
  1390.           * Run a program (as above), but do not re-read LASTUS##.DAT;
  1391.  
  1392.           * Compare the DOS errorlevel returned from the program run
  1393.           (operates just like "if errorlevel" does in DOS batch files).
  1394.  
  1395.  
  1396.  
  1397.     2.1.14 COMMAND LINE OPTIONS
  1398.  
  1399.           * Force Opus to do an EchoScan right away.
  1400.  
  1401.  
  1402.  
  1403.     2.1.15 NIEL KEYS EXTENSION
  1404.  
  1405.           Opus will execute a batch file in the miscellaneous directory
  1406.           that corresponds to the function key pressed when it is waiting
  1407.           for a call.
  1408.  
  1409.  
  1410.  
  1411.     2.1.16 EXTERNAL PROGRAMS
  1412.  
  1413.           Programs that are called from the menus as _OUTSIDE items, Opus
  1414.           will pass everything else that the user has typed as arguments
  1415.           after filtering it.  Opus will filter  out <>/\-":' characters.
  1416.  
  1417.  
  1418.  
  1419.     2.1.17 ERRORLEVEL EXITS
  1420.  
  1421.           * Exit after upload;
  1422.  
  1423.           * Exit after local messages entered.
  1424.  
  1425.  
  1426.  
  1427.  
  1428.  
  1429.     Page 26                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  1430.  
  1431.  
  1432.     2.1.18 TRULY MISCELLANEOUS
  1433.  
  1434.           * More [Y,n,=]? When users are listing areas, they quite often
  1435.           just type in a number and Opus says something about, "I do not
  1436.           understand 27, Use 'Y' for Yes and 'N' for No.". 1.70 will just
  1437.           accept the number as an area selection and go on;
  1438.  
  1439.           * Opus will log the size of the file in file transfers,
  1440.           including mail transfers;
  1441.  
  1442.           * The low-level disk routines have been stripped down, the rust
  1443.           scraped off and they were all chromed and converted to _fastcall
  1444.           calls;
  1445.  
  1446.           * If the Sysop puts a jump to another menu but never defines
  1447.           that menu, users were cut adrift in limbo. Now Opus will check
  1448.           to make sure that there really is a menu to go to, and if not,
  1449.           will log the error, tell the user to tell the Sysop about it,
  1450.           and send them to the MAIN menu;
  1451.  
  1452.           * "Press ENTER to continue" will pass along any commands that
  1453.           have been typed in;
  1454.  
  1455.           * Fixed the timer so that if Opus is re-started with fewer than
  1456.           3 minutes before a "hard" event, Opus will know that it should
  1457.           go into its "pending event" mode and drop DTR so no incoming
  1458.           calls will be accepted.
  1459.  
  1460.  
  1461.  
  1462.     2.2 REQUIRED HARDWARE
  1463.  
  1464.     In general, you have a reasonable chance of getting Opus 1.70 to work
  1465.     on any MS-DOS computer. Opus V1.70 uses a little more memory than
  1466.     V1.14 to do some tricks. In Opus V1.14 the "minimum" was 128k plus the
  1467.     size of the nodelist index file. For Opus V1.70 the minimum is 128k
  1468.     plus the size of nodelist index file plus the size of the largest
  1469.     *.USL file in your language directory; and if you are using the
  1470.     internal echomail scanner in Opus V1.70, add the size of the maximum
  1471.     echomail message you want to be able to handle. In most cases, you
  1472.     will want to be able to run external programs (eg file compressors and
  1473.     uncompressors) from Opus, and that requires anywhere from 256k to 400k
  1474.     depending on the file compressor you choose.
  1475.  
  1476.     Hardware incompatibilities are resolved through a special program
  1477.     called a FOSSIL. It contains modem, keyboard and video methods for
  1478.     specific hardware configurations. It means the same version of Opus
  1479.     can run on an IBM PC, an IBM PS/2, a DEC Rainbow or a Tandy 2K. The
  1480.     only difference is the FOSSIL program.
  1481.  
  1482.     Theoretically, Opus will use any modem that uses the Hayes command set
  1483.     and supports DTR. It has been successfully tested with the USR DS/HST,
  1484.     Telebit, Netcomm, Dataplex, MultiTech and the Hayes families. If you
  1485.     use another modem brand, Opus should work but there are no guarantees.
  1486.     If you get other brands of modems to work with Opus, please contact
  1487.      
  1488.      
  1489.     OPUS V1.70 OVERVIEW                                          Page 27 
  1490.      
  1491.      
  1492.     one of the Opus-Info nodes and let them know the brand name, the
  1493.     initialization string and what you did to get it to work.
  1494.  
  1495.     Also, Opus REQUIRES a storage device larger than a floppy drive.
  1496.     Generally, this will be a hard drive, but could just as easily be
  1497.     cartridge media such as a Bernoulli Box. There are absolutely no plans
  1498.     to release a version that will run on floppies; the support files
  1499.     simply take too much room.
  1500.  
  1501.  
  1502.  
  1503.     2.3 REQUIRED SOFTWARE
  1504.  
  1505.     Several pieces of software are required to make Opus work. A couple
  1506.     are worth singling out. First, DOS 2.1 or higher ... 2.0 and below are
  1507.     NOT supported. In fact, not all the Opus features will work under DOS
  1508.     2.1. DOS 3.1 or higher is recommended for a fully-featured Opus
  1509.     system. There are no guarantees that DOS 2.1 will be supported in
  1510.     future releases of Opus.
  1511.  
  1512.     Next, the FOSSIL. This is where Opus's low-level communications
  1513.     routines live. The FOSSIL is a memory-resident assembly language
  1514.     program or device driver designed especially for Opus. It supplies the
  1515.     routines Opus needs to communicate with the modem. If you are running
  1516.     other memory-resident programs, you may experience difficulty with the
  1517.     FOSSIL. Installing the FOSSIL last may solve the problem, but it is
  1518.     NOT guaranteed. Switching to another FOSSIL may also solve your
  1519.     problems.
  1520.  
  1521.  
  1522.  
  1523.     2.4 MESSAGES
  1524.  
  1525.     Messages can be of three basic types, or scopes: local, Matrix and
  1526.     echomail.  A message's scope determines its behavior on an Opus-based
  1527.     system.
  1528.  
  1529.  
  1530.  
  1531.     2.4.1 LOCAL MESSAGES
  1532.  
  1533.     Local messages are the simplest form available, common to almost all
  1534.     BBS systems.  Local messages are available to a predefined group of
  1535.     users on a single BBS -- the one where they were entered.
  1536.  
  1537.  
  1538.  
  1539.     2.4.2 MATRIX/NETWORK MESSAGES
  1540.  
  1541.     Matrix is the Opus word for network. This was chosen because of the
  1542.     ambiguity associated with the word "network". The Matrix is defined as
  1543.     a group of bulletin boards which can exchange information via the
  1544.     public switched telephone network (PSTN).
  1545.  
  1546.  
  1547.  
  1548.     Page 28                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  1549.  
  1550.  
  1551.     Opus V1.70 can place outgoing Matrix calls, and receive incoming mail
  1552.     from other Opera, or other systems running either the FidoNet<tm> or
  1553.     WaZOO matrix protocols.
  1554.  
  1555.  
  1556.  
  1557.     2.4.3 ECHOMAIL MESSAGES
  1558.  
  1559.     EchoMail provides a means of maintaining the same message base on
  1560.     multiple bulletin boards. This allows conferencing -- even
  1561.     internationally -- if you choose to do so. Remember, phone calls
  1562.     placed for mail transfers cost the same as regular calls. Be aware
  1563.     that anything involving Matrix transactions can involve long distance
  1564.     phone charges.
  1565.  
  1566.  
  1567.  
  1568.     2.5 EXTENDED MESSAGE AREA ATTRIBUTES
  1569.  
  1570.     A variety of message area attributes are supported.  With them, you
  1571.     can define exactly what type of messages will be placed in what area.
  1572.  
  1573.     Private only        All messages entered in this area will be marked
  1574.                         "private," and cannot be read by other users.
  1575.  
  1576.     Public only         All messages in this areas can be read by all
  1577.                         users.
  1578.  
  1579.     Read-only           Messages in this area can be read by callers, but
  1580.                         only sysops and assistant sysops can enter new
  1581.                         messages.
  1582.  
  1583.     Anonymous           In an area marked as "anonymous," Opus will ask
  1584.                         the user to supply a pseudonym.
  1585.  
  1586.     Alias               In an area marked as "alias", Opus will use the
  1587.                         user's alias on messages from the user.
  1588.  
  1589.     EchoMail            Conference-type message bases are recognized. The
  1590.                         user will be told that the message will be
  1591.                         broadcast, and Opus will automatically do such
  1592.                         echomail-oriented processing as inserting an
  1593.                         "origin line" into the message.
  1594.  
  1595.     Inbound-only        Echomail messages are tossed into this message
  1596.                         area, but messages are never scanned out to other
  1597.                         systems from this message area. Useful for "read-
  1598.                         only" echomail conferences.
  1599.  
  1600.     Matrix messages     These are treated like FidoNet<tm> messages. The
  1601.                         user is asked where the message is to be sent, to
  1602.                         whom and to what address.
  1603.  
  1604.      
  1605.      
  1606.     OPUS V1.70 OVERVIEW                                          Page 29 
  1607.      
  1608.      
  1609.     Barricaded          Barricaded areas may have a special password(s)
  1610.                         associated with them so that only users who know
  1611.                         the password(s) get the specified privilege level
  1612.                         in that area. Barricaded areas may also have
  1613.                         special privilege levels associated with certain
  1614.                         users' names. By using this feature you can allow
  1615.                         users higher or lower privileges in certain areas.
  1616.  
  1617.     These attributes may be combined in any fashion. You can require all
  1618.     messages in your Matrix area to be private, or all EchoMail messages
  1619.     to be public. It is up to the sysop as to how message areas will
  1620.     behave.
  1621.  
  1622.  
  1623.  
  1624.     2.6 FILE TRANSFERS
  1625.  
  1626.     Opus supports four different types of file transfers: uploads,
  1627.     downloads, Matrix and file requests. These enable the sharing of
  1628.     public domain or "shareware" software among users and other bulletin
  1629.     board systems.
  1630.  
  1631.  
  1632.  
  1633.     2.6.1 UPLOADS
  1634.  
  1635.     Uploading is defined as a user sending a file TO a BBS. This lets
  1636.     users share programs they have written or collected.
  1637.  
  1638.  
  1639.     2.6.2 DOWNLOADS
  1640.  
  1641.     Downloading is defined as a user receiving a file FROM a bulletin
  1642.     board system. This allows a single point to serve as a "holding tank"
  1643.     for software that can be freely shared among users.
  1644.  
  1645.  
  1646.  
  1647.     2.6.3 MATRIX
  1648.  
  1649.     Matrix transfers are uploads or downloads between two Matrix systems.
  1650.     You can direct Opus to send a file to any other system in the Matrix.
  1651.     Opus will accept incoming Matrix files any time it is not busy.
  1652.  
  1653.  
  1654.  
  1655.  
  1656.  
  1657.     Page 30                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  1658.  
  1659.  
  1660.     2.6.4 REQUESTS
  1661.  
  1662.     File requests are another variant of Matrix transfers between two
  1663.     Matrix systems. You can direct Opus to obtain a file from any other
  1664.     system in the Matrix which accepts WaZOO file requests. Opus cannot
  1665.     initiate SEAdog-style "bark" requests (but will accept and process
  1666.     such requests -- see below).
  1667.  
  1668.     Opus will accept both WaZOO and "bark" file requests from other Matrix
  1669.     systems, if it has been setup to do so. Any system can initiate a
  1670.     WaZOO file request simply by sending a file with a ".REQ" file
  1671.     extension containing a list of the requested files.
  1672.  
  1673.  
  1674.  
  1675.     2.7 EXTENDED FILE TRANSFER PROTOCOLS
  1676.  
  1677.     Several transfer protocols are supported in Opus. These include
  1678.     Zmodem, Ymodem, Xmodem, Telink, and SEALink. Opus V1.70 also has 16
  1679.     "slots" available for installation of external protocols, at the
  1680.     sysop's discretion -- for example, Windowed Xmodem (WXmodem), Sliding
  1681.     Window Kermit, and YmodemG. These will be described more thoroughly in
  1682.     the file transfer section. The precise manner in which Opus interacts
  1683.     with external protocols is detailed in the Opus Technical Reference
  1684.     Manual; refer to that manual for the fine technical details.
  1685.  
  1686.  
  1687.  
  1688.     2.8 OEC FILE CAPABILITY
  1689.  
  1690.     OEC (Opus Embedded Command) files provide a world of customisation
  1691.     possibilities for you to explore. Opus Embedded Command files support
  1692.     both AVATAR and ANSI graphic codes as a user option. If you use Avatar
  1693.     graphic codes in files, Opus will send them to Avatar users, convert
  1694.     them into ANSI for ANSI users or strip them for TTY users.
  1695.  
  1696.     Through the use of an embedded command, you can make any support file
  1697.     branch to an external program. The sysop is responsible for ensuring
  1698.     that the program directs its output to the comm port. This feature
  1699.     allows multiple "Outside" features to be supported.
  1700.  
  1701.     Questionnaire information can be collected from within any OEC file.
  1702.     This can be used to log the activity of any displayed section of your
  1703.     bulletin board.
  1704.  
  1705.     You can insert a person's name, display a quote, date and time, etc.,
  1706.     within any OEC file. Virtually anything Opus knows about the user can
  1707.     be displayed at any point in the support files. Additional embedded
  1708.     commands allow you to make any OEC file a submenu. This is handy for
  1709.     things like multiple bulletins, interactive help systems, etc.
  1710.  
  1711.     You will find a more details on OECs in the section of this manual on
  1712.     Setting Up Opus. For the complete list of OECs and the OEC file
  1713.     mechanism, refer to the Opus Technical Reference Manual.
  1714.  
  1715.      
  1716.      
  1717.     OPUS V1.70 OVERVIEW                                          Page 31 
  1718.      
  1719.      
  1720.     2.9 ECHOMAIL ENHANCEMENTS
  1721.  
  1722.     Opus lets the sysop decide whether EchoMail SEEN-BY lines are
  1723.     displayed to the user. Few appreciate the unsightliness of this part
  1724.     of EchoMail, and Opus eliminates that problem. If you do not care for
  1725.     SEEN-BYs, Opus lets you disable their display on a privilege level
  1726.     basis.
  1727.  
  1728.     The display of extended addressing can be disabled. As more distinct
  1729.     addresses become available over the Matrix, more information will need
  1730.     to be embedded within the body of messages. Opus lets you control who
  1731.     can and cannot see this information.
  1732.  
  1733.     Opus automatically inserts its own origin line if a message area is
  1734.     marked as echomail. This lets other systems know which Matrix system
  1735.     originated the message and what software processed the mail.
  1736.  
  1737.     You can tell Opus to uncompress and toss compressed mail and EchoMail
  1738.     packets automatically. You do not have to declare an external event to
  1739.     extract compressed mail packets and toss EchoMail -- Opus does this
  1740.     for you.
  1741.  
  1742.  
  1743.  
  1744.     2.10 MATRIX/NETWORK MAIL INTERFACE
  1745.  
  1746.     Opus can receive mail at anytime. Matrix/Network transactions are not
  1747.     restricted to fixed time slots. You can also send mail to another Opus
  1748.     at anytime.
  1749.  
  1750.  
  1751.  
  1752.     2.11 OPUS OPERATING PHILOSOPHY
  1753.  
  1754.     The operating philosophy of Opus is based on the KISS principle:
  1755.  
  1756.                         -={ KEEP IT SIMPLE SYSOP! }=-
  1757.  
  1758.     Opus is very easy to use if you let the installation kit do its job. A
  1759.     sysop can lead a very satisfying life with the basic Opus
  1760.     installation. It will still be a superior system, requiring a minimum
  1761.     of maintenance. There are thousands of custom features available; each
  1762.     Opus board will probably look and act differently, but there is no
  1763.     guarantee that any of the customization methods will be easy or
  1764.     immediately apparent.
  1765.  
  1766.     It is best to start with a basic system and to customize things
  1767.     gradually after gaining experience with Opus. The difficult functions
  1768.     are always available, but never required. If you want to tailor your
  1769.     system to look and act a certain way, you can, any time. The rewards
  1770.     you reap are proportional to the amount of work you put into the
  1771.     system, and that can run into years if you let it.
  1772.  
  1773.  
  1774.     Page 32                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  1775.  
  1776.  
  1777.  
  1778.           +------------------------------------------------------------+
  1779.           |  Nothing in the world can take the place of persistence.   |
  1780.           |  Talent will not; nothing is more common than              |
  1781.           |  unsuccessful men with talent. Genius will not;            |
  1782.           |  unrewarded genius is almost a proverb. Education will     |
  1783.           |  not; the world is full of educated derelicts.             |
  1784.           |  Persistence and determination alone are omnipotent. The   |
  1785.           |  slogan "press on" has solved, and always will solve, the  |
  1786.           |  problems of the human race.                               |
  1787.           |                                       -- Calvin Coolidge   |
  1788.           +------------------------------------------------------------+
  1789.  
  1790.  
  1791.     3.0 SETTING UP OPUS V1.70
  1792.  
  1793.     To set up a new Opus V1.70 system, or to convert from a previous
  1794.     version of Opus, refer to the separate installation manual.
  1795.  
  1796.     Having installed Opus V1.70, there are many ways to customise your
  1797.     shiny, new Opus system: the control file, the menu system, privilege
  1798.     levels and locks for access to message and file areas as well as menu
  1799.     commands, "sections" or "sigs", barricaded message and/or file areas,
  1800.     Opus embedded command (OEC) files, bulletins, special announcements,
  1801.     custom welcome files and caller expiration control to name but a few.
  1802.     These, and others, are dealt with in the following sections. Let the
  1803.     fun begin!
  1804.  
  1805.  
  1806.  
  1807.     3.1 THE CONTROL FILE
  1808.  
  1809.     The Opus control files (BBS.CTL) is the single best place to find ways
  1810.     of customising your system.
  1811.  
  1812.     Please refer to section 2 of the Technical Reference Manual for a
  1813.     detailed description of the many control file options which are
  1814.     available.
  1815.  
  1816.  
  1817.  
  1818.      
  1819.      
  1820.     SETTING UP OPUS V1.70                                        Page 33 
  1821.      
  1822.      
  1823.     3.1.1 CONTROL FILE MAINTENANCE
  1824.  
  1825.     The control file (BBS.CTL) can be split into separate sections for
  1826.     easy maintenance or separate compilation. This is especially handy on
  1827.     multiline systems where you do not want to have to alter more than one
  1828.     control file to add a new message area. On single line systems, it is
  1829.     also handy to be able to just produce the BBS.PRM file rather than
  1830.     also regenerating all the necessary system files for the message and
  1831.     file area definitions and the menu system files. You can also do
  1832.     separate compilations of:
  1833.  
  1834.         * the parameter file (BBS.PRM);
  1835.  
  1836.         * the file and message area system files (SYFILE.DAT, SYSMSG.DAT,
  1837.           NAME.FDX, NAME.MDX, NUMBER.FDX, NUMBER.MDX and ECHO.MDX); and
  1838.  
  1839.         * the menu files (eg ENGLISH.MNU).
  1840.  
  1841.  
  1842.  
  1843.     3.1.2 THE PARAMETER FILE
  1844.  
  1845.     To do a compilation of just the parameter (BBS.PRM) file you need to
  1846.     include the System Section, Language Section, Equipment Section,
  1847.     Matrix and EchoMail Section and Session Section of your control file
  1848.     in BBS.CTL. You may keep these different sections all in the one file
  1849.     or each in its own file.
  1850.  
  1851.     If you split the different sections into separate files, your BBS.CTL
  1852.     might contain just the following lines:
  1853.  
  1854.         include c:\opus\config\system.ctl
  1855.         include c:\opus\config\language.ctl
  1856.         include c:\opus\config\equipmnt.ctl
  1857.         include c:\opus\config\matrix.ctl
  1858.         include c:\opus\config\session.ctl
  1859.  
  1860.     Running NACL BBS would then produce a compiled BBS.PRM file.
  1861.  
  1862.  
  1863.  
  1864.     3.1.3 FILE AND MESSAGE AREA SYSTEM FILES
  1865.  
  1866.     To do a compilation of just the file and message area system files,
  1867.     you need to include the File Areas and Message Areas Sections of your
  1868.     control file. You may keep these different sections all in the one
  1869.     file or each in its own file. In either case, you must put your File
  1870.     Areas BEFORE your Message Areas or NACL will laugh at you ... loudly!
  1871.  
  1872.     There is also one other special requirement in this situation. You
  1873.     must add a PATH OVERRIDE <path\> line to the beginning of your area
  1874.     files. The path you define here should be the same as you defined for
  1875.     PATH SYSTEM in the System Section of your control file. If you do not
  1876.     do so, yep, you guessed it in one, NACL will laugh at you ... loudly!
  1877.  
  1878.  
  1879.  
  1880.     Page 34                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  1881.  
  1882.  
  1883.     If you split the File Areas and Message Areas Section into separate
  1884.     files, your AREAS.CTL file might contain just the following lines:
  1885.  
  1886.      include c:\opus\config\filearea.ctl
  1887.      include c:\opus\config\mesgarea.ctl
  1888.  
  1889.     Running NACL AREAS would then just produce the file and message area
  1890.     system files.
  1891.  
  1892.  
  1893.  
  1894.     3.1.4 MENU FILE(S)
  1895.  
  1896.     To do a compilation of just the menu file (eg ENGLISH.MNU), you need
  1897.     to include the Menu Section of your control file in a separate file
  1898.     (eg MENU.CTL).
  1899.  
  1900.     Running NACL MENU would then just produce the menu file(s). There is
  1901.     one gotcha though. The new compiled ENGLISH.MNU file will be in the
  1902.     directory from which you ran NACL. You need to move it to the
  1903.     directory defined with the LANGDIR option in the Language Section of
  1904.     your control file.
  1905.  
  1906.  
  1907.  
  1908.     3.1.5 ALL FILES
  1909.  
  1910.     To compile your whole system, your BBS.CTL file might contain the
  1911.     following lines:
  1912.  
  1913.         include c:\opus\config\system.ctl
  1914.         include c:\opus\config\language.ctl
  1915.         include c:\opus\config\equipmnt.ctl
  1916.         include c:\opus\config\matrix.ctl
  1917.         include c:\opus\config\session.ctl
  1918.         include c:\opus\config\filearea.ctl
  1919.         include c:\opus\config\mesgarea.ctl
  1920.         include c:\opus\config\menu.ctl
  1921.  
  1922.     or it might contain the following lines:
  1923.  
  1924.         include c:\opus\config\system.ctl
  1925.         include c:\opus\config\areas.ctl
  1926.         include c:\opus\config\menu.ctl
  1927.  
  1928.      
  1929.      
  1930.     SETTING UP OPUS V1.70                                        Page 35 
  1931.      
  1932.      
  1933.     or for a multiline system you might have two BBS.CTL files like this:
  1934.  
  1935.         711_401.CTL
  1936.  
  1937.         include c:\opus\config\sys401.ctl
  1938.         include c:\opus\config\areas.ctl
  1939.         include c:\opus\config\menu.ctl
  1940.  
  1941.         711_501.CTL
  1942.  
  1943.         include c:\opus\config\sys501.ctl
  1944.         include c:\opus\config\areas.ctl
  1945.         include c:\opus\config\menu.ctl
  1946.  
  1947.  
  1948.  
  1949.     3.1.6 MACRO SUBSTITUTIONS
  1950.  
  1951.     As if the ability to split the control file into its separate
  1952.     component section was not enough, you can also use macro substitutions
  1953.     in the control file. For example, your BBS.CTL might contain the
  1954.     following:
  1955.  
  1956.         Misc = c:\opus\misc
  1957.         Help = c:\opus\help
  1958.         Task = 01
  1959.         Port = COM2
  1960.         include c:\opus\config\system.ctl
  1961.         include c:\opus\config\areas.ctl
  1962.         include c:\opus\config\menu.ctl
  1963.  
  1964.     The macros defined above are then used like this in the separate
  1965.     control files:
  1966.  
  1967.         PATH MISC      $(Misc)\
  1968.         PATH SPANN     $(Misc)\
  1969.         USES PASSWORD  c:\opus\user$(Task).dat
  1970.         USES SCHED     c:\opus\sched$(Task).dat
  1971.         LOG FILE       c:\opus\opus$(Task).log
  1972.         OUTPUT         $(Port)
  1973.  
  1974.     NACL would make the macro substitutions and interpret the above lines
  1975.     as follows:
  1976.  
  1977.         PATH MISC      c:\opus\misc\
  1978.         PATH SPANN     c:\opus\misc\
  1979.         USES PASSWORD  c:\opus\user01.dat
  1980.         USES SCHED     c:\opus\sched01.dat
  1981.         LOG FILE       c:\opus\opus01.log
  1982.         OUTPUT         COM2
  1983.  
  1984.  
  1985.  
  1986.     Page 36                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  1987.  
  1988.  
  1989.     You can also use the macros in the include <filename> parameters like
  1990.     this:
  1991.  
  1992.         Node = 401
  1993.         include c:\opus\config\sys$(node).ctl
  1994.         include c:\opus\config\areas.ctl
  1995.         include c:\opus\config\menu.ctl
  1996.  
  1997.  
  1998.  
  1999.     3.2 THE MENU SYSTEM
  2000.  
  2001.     The Opus V1.70 menu system is extremely flexible, especially with the
  2002.     addition of the six CUSTOM menus, the ability to use alternative
  2003.     menus in specified areas and the ability to replace the normal Opus
  2004.     menus. Menu prompts may now also be customised!
  2005.  
  2006.     Please refer to section 3 of the Technical Reference Manual for a
  2007.     detailed description and list of the many menu options which are
  2008.     available and how they may be implemented.
  2009.  
  2010.  
  2011.  
  2012.     3.2.1 CUSTOMISING MENU PROMPTS
  2013.  
  2014.     You customise the menu prompts by specifying the prompt you wish to
  2015.     use in quotation marks after the name of the menu in menu section of
  2016.     the control file. For example:
  2017.  
  2018.         MAIN MENU   "Sentry Main Menu"
  2019.  
  2020.  
  2021.  
  2022.     3.2.2 CONTROLLING ACCESS TO MENU COMMANDS
  2023.  
  2024.     A caller's access to menu options may be controlled by using one of
  2025.     the Opus privilege levels (Hidden, Sysop, AsstSysop, Clerk, Extra,
  2026.     Favored, Privil, Worthy, Normal, Limited, Disgrace, Twit) and by
  2027.     setting locks on the menu command to which callers will need the
  2028.     corresponding key(s).
  2029.  
  2030.     The format is:
  2031.  
  2032.         MENU_COMMAND !<locks> "<description>"
  2033.  
  2034.     The first character of the description filed is used by Opus for the
  2035.     command letter that the caller should type to execute the command. Be
  2036.     careful not to use the same letter twice in the same menu or Opus will
  2037.     only ever let the caller execute the first command with the common
  2038.     command letter. Note that the use of locks on the command is optional,
  2039.     whereas a privilege level must be specified.
  2040.  
  2041.      
  2042.      
  2043.     SETTING UP OPUS V1.70                                        Page 37 
  2044.      
  2045.      
  2046.     For example, the file download command could require the caller to
  2047.     have NORMAL access or above and also the key for lock X. This is what
  2048.     the entry in the control file would look like:
  2049.  
  2050.         F_DNLD   Normal   !X   "Download a file"
  2051.  
  2052.     Do not overlook the fact that privilege levels for some menu commands
  2053.     may be overidden by other control file options. For example, in the
  2054.     definition of a file area you can specify the DOWNLOAD PRIV and the
  2055.     DOWNLOAD LOCK options which will override the privilege and locks you
  2056.     have set on the menu command FOR THIS AREA ONLY. There are other
  2057.     similar control file options which will override menu command
  2058.     settings, please refer to section 2 of the Technical Reference Manual
  2059.     for the full list of such options.
  2060.  
  2061.  
  2062.  
  2063.     3.2.3 DISPLAYING OEC FILES
  2064.  
  2065.     Bulletin or help files may be shown to callers by adding the _SHOW
  2066.     menu command to any menu. You can add as many _SHOW menu commands to
  2067.     the same menu as you wish. For example:
  2068.  
  2069.         _SHOW    Twit      "Software Bulletin" = c:\opus\misc\sware
  2070.         _SHOW    Twit      "Hardware Bulleton" = c:\opus\misc\hware
  2071.         _SHOW    Disgrace  "Editorial"         = c:\opus\misc\edtorial
  2072.         _SHOW    Twit      "? Help"            = c:\opus\misc\menuhlp
  2073.  
  2074.     Note that although you do not use a file extension on the name of the
  2075.     file to be shown, it must be an OEC file with either a .BBS or .GBS
  2076.     file extension. The .BBS files are preferred because if you use Avatar
  2077.     graphics commands in them, Opus will send Avatar to callers who
  2078.     support Avatar, and send ANSI graphics commands to callers who support
  2079.     ANSI or strip the commands for TTY callers who support neither Avatar
  2080.     nor ANSI graphics commands. A .GBS file is only shown to callers who
  2081.     support ANSI and is therefore largely superseded. Refer to section 4
  2082.     of the Technical Reference Manual for a detailed description and
  2083.     listing of OEC commands.
  2084.  
  2085.  
  2086.  
  2087.     3.2.4 RUNNING EXTERNAL PROGRAMS
  2088.  
  2089.     External programs  may also be run
  2090.     from the menus. For example, here is a sysop menu you could implement:
  2091.  
  2092.      %
  2093.      SYSOP MENU
  2094.         SYS_MAIL   Sysop   "Matrix setup"
  2095.         _OUTSIDE   Sysop   "Events"       = DOS c:\opus\oevent.exe /a
  2096.         _OUTSIDE   Sysop   "Outside"      = EXIT 12
  2097.         _MAIN      Sysop   "Quit"
  2098.         _SHOW      Sysop   "? HELP"       = c:\opus\hlp\syshelp
  2099.      END Menu
  2100.      %
  2101.  
  2102.  
  2103.     Page 38                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  2104.  
  2105.  
  2106.     Choosing the "Events" command would run the OEVENT.EXE (Opus Event
  2107.     Manager) program with the /a command line. Choosing the "Outside"
  2108.     option would cause Opus to exit to the batch file from which you run
  2109.     Opus (NERF.BAT) with a DOS errorlevel of 12. Your batch file should
  2110.     trap that errorlevel and act on it. See Appendix A for a sample
  2111.     NERF.BAT batch file.
  2112.  
  2113.     Refer to section 3 of the Technical Reference Manual for details of
  2114.     the various different methods of implementing the _OUTSIDE program
  2115.     option. Further discussion of these methods may also be found in
  2116.     section 7 of the Technical Reference Manual.
  2117.  
  2118.     For the correct method  of implementing external file protocols (ie,
  2119.     so that Opus will keep track of caller uploads and downloads and daily
  2120.     limits), refer to section 7 of the Technical Reference Manual.
  2121.  
  2122.  
  2123.  
  2124.     3.2.5 GLOBAL MENU COMMANDS
  2125.  
  2126.     Global menu commands (those with a leading underscore character) may
  2127.     be included in any menu. For example, in the message menu you could
  2128.     add the following:
  2129.  
  2130.         _FILE               Disgrace      "Jump to File Menu"
  2131.  
  2132.     to jump to the file area menu, and in the file area menu you could add
  2133.     the following:
  2134.  
  2135.         _MESSAGE            Disgrace      "Jump to Msg Menu"
  2136.  
  2137.     to jump to the message area menu -- all without having to go through
  2138.     the main menu!
  2139.  
  2140.     Refer to section 3 of the Technical Reference Manual for the full
  2141.     listing of global menu commands.
  2142.  
  2143.  
  2144.  
  2145.     3.2.6 AUTOMATIC ZMODEM UPLOAD
  2146.  
  2147.     Opus can be configured to receive Zmodem uploads automatically without
  2148.     the caller having to type UZ (Upload Zmodem).
  2149.  
  2150.     The Zmodem protocol states that the uploading software should start by
  2151.     sending 'rz\r', in which the '\r' stands for carriage return. Thus if
  2152.     your menu choice for upload is 'R' (as in RUpload Zmodem), the caller
  2153.     need type nothing, he/she just has to start sending the file(s) and
  2154.     the Zmodem protocol will let Opus know about it.
  2155.  
  2156.     You can add the 'R' option and keep the old "U)pload" option at the
  2157.     same time. Opus can handle multiple menu items with the same meaning.
  2158.  
  2159.     Note that this may not work right for the callers with Hotflash. After
  2160.     Opus receives the 'r', it will clear its menu buffer (thus discarding
  2161.      
  2162.      
  2163.     SETTING UP OPUS V1.70                                        Page 39 
  2164.      
  2165.      
  2166.     the 'z' and the CR) and ask what protocol you want. With all other
  2167.     types of menu, automatic Zmodem uploads work well.
  2168.  
  2169.     There is one last gotcha: if the caller has set a default file
  2170.     protocol, and that protocol is not Zmodem, this will not work!
  2171.  
  2172.  
  2173.  
  2174.     3.2.7 SUPERSEDED MENU COMMANDS
  2175.  
  2176.     Some menu commands from Opus V1.1x versions have been superseded. Most
  2177.     notably, the configuration menu commands which dealt with things about
  2178.     the caller have been transferred to the history menu.
  2179.  
  2180.     Refer to section 3 of the Technical Reference Manual for the full
  2181.     listing of menu commands and details of which menu commands may appear
  2182.     on which menus.
  2183.  
  2184.  
  2185.  
  2186.     3.2.8  ALTERNATIVE MENUS
  2187.  
  2188.     There is truly no end to the flexibility of the Opus Menu System. For
  2189.     each area, for very special purposes, you can define an alternative
  2190.     menu file to use just for that area. With alternative menus, you can
  2191.     create a special personality or command set for a particular area.
  2192.  
  2193.     To implement this feature, copy your current menu section from your
  2194.     control file to a separate file and call it, for example, MENU001.CTL.
  2195.     Use your trusty wordprocessor to customise those menu(s) that you wish
  2196.     to be different.
  2197.  
  2198.     Now compile just that menu file by running NACL MENU01. NACL will
  2199.     produce a new ENGLISH.MNU file in the directory from which you ran
  2200.     NACL (so do not run NACL in the same directory as your existing
  2201.     ENGLISH.MNU file!). You should now rename your new ENGLISH.MNU file to
  2202.     ENGLISH.001.
  2203.  
  2204.     Wait a minute ... you now need to edit the MENU <number> option in the
  2205.     relevant message and/or file area definitions in your control file to
  2206.     reflect the particular menu number you wish to be used for those
  2207.     areas. For example, you may wish to use the modified menu only in
  2208.     Message Area 20. You would modify the message area 20 definition like
  2209.     this:
  2210.  
  2211.         AREA  0020  SPECIAL
  2212.         MENU  001
  2213.         etc
  2214.  
  2215.     Recompile your control file with NACL (or just the file and message
  2216.     area definitions section of the control file -- refer to section 3.1.1
  2217.     above for how to do this). Now when Opus switches to that area, it
  2218.     would use ENGLISH.001 instead of ENGLISH.MNU.
  2219.  
  2220.     Note that if you support more than one language, you would have to
  2221.  
  2222.  
  2223.     Page 40                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  2224.  
  2225.  
  2226.     create an alternative menu with the same number extension for each
  2227.     language you support.
  2228.  
  2229.     You will generally not need to use this option for most situations.
  2230.  
  2231.  
  2232.  
  2233.     3.2.9  ASCII MENUS
  2234.  
  2235.     Menu system not flexible enough for you? Yep, you guessed it. There is
  2236.     more. With Opus V1.70 you can also implement what are somewhat
  2237.     misleadingly referred to as ASCII menus. These menus are really custom
  2238.     menus which you can use to replace the normal Opus Main, Config,
  2239.     History, Section, Sysop and six Custom menus. Opus rather cleverly
  2240.     uses smoke and mirrors to achieve this replacement.
  2241.  
  2242.     The ASCII menus feature was added so that sysops could replace the
  2243.     fairly quick-displaying Opus menus with those long, slow graphics
  2244.     menus that some sysops and callers prefer [climbing off soapbox].
  2245.  
  2246.     Several control file options should be set if you are going to use
  2247.     this option. In the Session Section of your control file, uncomment
  2248.     the LOGON ASCIIMENU option (and make sure it is adequately described
  2249.     in your CONFHELP.BBS file). New callers will now be given the option
  2250.     of using ASCII menus and the option will also now appear on the
  2251.     configuration menu.
  2252.  
  2253.     You also need to uncomment each of the following options in the
  2254.     Session Section of your control file for which you are going to
  2255.     define a corresponding ASCII menu file:
  2256.  
  2257.             USES MainMenu     MAIN
  2258.             USES ConfMenu     CONF
  2259.         %   USES SectMenu
  2260.             USES SysopMenu    SYSOP
  2261.             USES HistoryMenu  HIST
  2262.         %   USES CUSTOM1Menu
  2263.         %   USES CUSTOM2Menu
  2264.         %   USES CUSTOM3Menu
  2265.         %   USES CUSTOM4Menu
  2266.         %   USES CUSTOM5Menu
  2267.         %   USES CUSTOM6Menu
  2268.  
  2269.     Note that you do not specify a file extension for your replacement
  2270.     menu files. These files follow the normal OEC (.BBS/.GBS) file
  2271.     standard, so you can use any of the Opus Embedded Commands in them!
  2272.     Refer to section 4 of the Technical Reference Manual for a full
  2273.     description of OEC files and the complete list of OECs available.
  2274.  
  2275.     Now for the smoke and mirrors part. When a caller chooses the ASCII
  2276.     menu option at logon, the caller gets expert help automatically
  2277.     selected ... ahah, no normal Opus menus are shown, only the ASCII
  2278.     menus which you have defined. Of course, a caller can choose their
  2279.     help level from the configuration menu and might decide to set it to
  2280.     regular for the one line command letter prompts. If the caller selects
  2281.      
  2282.      
  2283.     SETTING UP OPUS V1.70                                        Page 41 
  2284.      
  2285.      
  2286.     novice help, the caller will get the ASCII menus followed by the
  2287.     normal Opus menus. Smoke and mirrors are not that good!
  2288.  
  2289.  
  2290.  
  2291.     3.2.10 OEC MENU PROMPTS
  2292.  
  2293.     A new Opus Embedded Command widget in Opus V1.70 especially designed
  2294.     for menus is ^FM. This OEC simulates the current Opus (or your
  2295.     customised) menu prompts so that it looks to the caller as if the
  2296.     caller is still inside Opus and not inside one of your OEC files
  2297.     which was called from the relevant menu.
  2298.  
  2299.     Refer to section 4 of the Technical Reference Manual for the complete
  2300.     listing of the many OECs available. Some examples of the usage of OECs
  2301.     may be found in the Implementing OEC Files section of this manual.
  2302.  
  2303.  
  2304.  
  2305.     3.2.11 MENU SAFETY FEATURE
  2306.  
  2307.     If the Sysop puts a jump to another menu in a menu, but never defines
  2308.     that other menu, callers used to be lost in limbo. Now Opus V1.70 will
  2309.     check to make sure that there really is a menu to go to, and if not,
  2310.     will log the error, tell the caller to tell the Sysop about it, and
  2311.     then send the caller to the MAIN menu.
  2312.  
  2313.  
  2314.  
  2315.     3.3 BOMBING RUNS
  2316.  
  2317.     Check that you have your full complement of HE bombs on board and that
  2318.     the bomb bay doors have been properly secured, ooops, wrong document
  2319.     file. [Editor's note: this gag is probably copyrighted / patented /
  2320.     trademarked by Jon Sabol.]
  2321.  
  2322.     Opus lets you do message bombing runs (to use the old Fido-talk) or
  2323.     "carbon copies" (to use SEAdog-talk). You can enter the one message
  2324.     and then send it to a bunch of other people. You might like to stop
  2325.     here for a few minutes and imagine just how unpopular you could
  2326.     quickly become with Network Hosts if you indiscriminately use bombing
  2327.     runs for Matrix messages ... <buzz>, sorry, wrong -- you really cannot
  2328.     imagine.
  2329.  
  2330.     To use this feature you enter a message normally and save it. You then
  2331.     choose the Forward command (the MSG_FORWARD menu command) and Opus
  2332.     will ask you:
  2333.  
  2334.         * whether to use the same message area;
  2335.  
  2336.         * whether you wish to delete the original message;
  2337.  
  2338.         * whether to make the new message(s) private;
  2339.  
  2340.  
  2341.  
  2342.     Page 42                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  2343.  
  2344.  
  2345.         * (if you are forwarding the message to the matrix message area or
  2346.           in the matrix message area, other questions may be asked
  2347.           depending on the MESSAGE EDIT ASSUME and ASK settings in your
  2348.           control file);
  2349.  
  2350.         * whether you wish to make a bombing run (yes, you do);
  2351.  
  2352.         * (if in the matrix message area, you may be asked for the matrix
  2353.           address of the addressee -- ignore this by pressing ENTER);
  2354.  
  2355.         * for the addressee (ignore this, type something to keep Opus
  2356.           happy - if you answered private above, it must be someone in
  2357.           your user file);
  2358.  
  2359.         * whether you wish to use the original subject line;
  2360.  
  2361.         * for the route file!
  2362.  
  2363.     The "route file" must be in the following format:
  2364.  
  2365.         Zone:Net/Node.Point First_Lastname <mode>
  2366.  
  2367.     where <mode> is optional and may be one of -c (crash) or -h (hold).
  2368.     Note that each part of the person's name must be separated from the
  2369.     other by an underscore. If you are logged in from the from the
  2370.     keyboard, you can specify CON for the route file and Opus will let you
  2371.     key in one Z:N/N.P F_L entry at a time. Press ENTER to finish.
  2372.  
  2373.  
  2374.  
  2375.     3.4 IMPLEMENTING OEC FILES
  2376.  
  2377.     Opus Embedded Command (OEC) files probably offer room for the most
  2378.     creativity. You can use embedded commands, video and cursor commands
  2379.     to create lavish widgets for callers.
  2380.  
  2381.     Entering the control codes for Opus Embedded Commands can be tricky
  2382.     depending on the facilities offered by your favourite wordprocessor
  2383.     for entering. There are some tools available that will make this task
  2384.     somewhat easier for you: OEC Compilers and a program called CTRLCODE.
  2385.  
  2386.     OEC compilers let you use "English" like commands to create your OEC
  2387.     files. You then "compile" these plain text files into the OEC files.
  2388.     The compiler translates the English expressions into the relevant
  2389.     control codes (correctly with a byte of luck).
  2390.  
  2391.     Grizzled Opus veterans will probably prefer to enter the control codes
  2392.     directly. Even this task is made considerably easier with the CTRLCODE
  2393.     program. This program lets you create a text file containing the caret
  2394.     sign "^" (the "^" sign is located above the number 6 on the top row of
  2395.     your keyboard) followed by the appropriate letter. So, you type ^X
  2396.     which is two text characters, then run CTRLCODE which will convert
  2397.     those two characters into the corresponding single character control
  2398.     code. Follow that?  Sorry, you really do have to be a grizzled Opus
  2399.     veteran <grin>.
  2400.      
  2401.      
  2402.     SETTING UP OPUS V1.70                                        Page 43 
  2403.      
  2404.      
  2405.     Example uses of only some of the many OECs available are set out in
  2406.     the following sections. The sections only just begin to scratch the
  2407.     surface when it comes to OECs. For the complete listing of OECs and
  2408.     explanation of OEC files, refer to section 4 of the Technical
  2409.     Reference Manual.
  2410.  
  2411.  
  2412.  
  2413.     3.4.1 QUOTATION OF THE MOMENT
  2414.  
  2415.     You can set Opus up to display a quotation of the moment to callers
  2416.     by, for example, embedding ^F^A in your WELCOME file (to show the
  2417.     quotation at logon) or your BYEBYE file (to show the quotation at
  2418.     logoff). If you are going to use the welcome or byebye files, do not
  2419.     forget to define the USES WELCOME and USES BYEBYE options in the
  2420.     Session Section of your control file (BBS.CTL).
  2421.  
  2422.     To use the quotation option, you must also have defined a quotation
  2423.     file with the USES QUOTES option in the Session Section of your Opus
  2424.     control file. For example:
  2425.  
  2426.         USES QUOTES c:\opus\misc\quotes
  2427.  
  2428.     The format for the quotation file is fairly simple. It is a normal
  2429.     text file. Each quotation is separated from the other by a single
  2430.     blank line. Here is a sample:
  2431.  
  2432.         Sex is hereditary. If your parents never had it, chances are you
  2433.         won't either.
  2434.         JOSEPH FISCHER
  2435.  
  2436.         Real knowledge is to know the extent of one's ignorance.
  2437.         CONFUCIUS
  2438.  
  2439.         A committee is a body that keeps minutes and wastes hours.
  2440.         W.G.P.
  2441.  
  2442.         A fool says "I can't";
  2443.         A wise man says "I'll try".
  2444.         ANON
  2445.  
  2446.     You could also make the quotation of the moment an option off one of
  2447.     your menus.
  2448.  
  2449.         _SHOW  Disgrace  "Quotes" = c:\opus\misc\quote
  2450.  
  2451.     And QUOTE.BBS would contain:
  2452.  
  2453.         Quotation of the moment:
  2454.  
  2455.         ^F^A
  2456.  
  2457.         ^A
  2458.  
  2459.  
  2460.  
  2461.  
  2462.     Page 44                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  2463.  
  2464.  
  2465.     3.4.2 PASSIVE QUESTIONNAIRES
  2466.  
  2467.     Opus allows you to implement questionnaires in OEC files. Here is a
  2468.     sample questionnaire using OECs followed by an explanation (line nos
  2469.     have been added for the commentary that follows only):
  2470.  
  2471.     00   ^K
  2472.     01   ^OOc:\opus\misc\answers
  2473.     02   ^OP
  2474.     03
  2475.     04                                           Stop typing by here --v
  2476.     05                   |----------------------------------------------|
  2477.     06   Street Address: ^ONAddress
  2478.     07                   |----------------------------------------------|
  2479.     08   City, State   : ^ONCityState
  2480.     09                   |----------------|
  2481.     10   Postcode      : ^ONPostCode
  2482.     11                   |--|
  2483.     12   Age           : ^ONAge
  2484.     13                   |----------------|
  2485.     14   Home Phone    : ^ONHome
  2486.     15                   |----------------|
  2487.     16   Work Phone    : ^ONWork
  2488.     17
  2489.     18   How did you hear about this bulletin board? (you have 2 Lines)
  2490.     19   1--------------------------------------------------------------|
  2491.     20   ^ONInfo
  2492.     21   2--------------------------------------------------------------|
  2493.     22   ^ONInfo
  2494.     23
  2495.     24   Thanks, THE SYSOP.
  2496.     25
  2497.     26   ^A
  2498.  
  2499.  
  2500.     Line 00: ^K turns off the More prompt which would otherwise mess up
  2501.              your questionnaire.
  2502.  
  2503.     Line 01: ^OO<filename> opens an answer file for the caller's responses
  2504.              and for the information collected in line 02.
  2505.  
  2506.     Line 02: ^OP posts the caller's name, city/state and the date/time of
  2507.              the call to the answer file declared in line 01.
  2508.  
  2509.     Line 03: Blank (purely for aesthetics).
  2510.  
  2511.     Line 04: Limit caller input; in fact, Opus will accept up to 79
  2512.              characters plus an ENTER.
  2513.  
  2514.     Line 05: As line 04.
  2515.  
  2516.     Line 06: ^ON<string> is used to collect input from the caller. The
  2517.              <string> is optional, but very useful for reminding sysops
  2518.              with short-term memory loss of the question that goes with
  2519.              the caller's answer.
  2520.      
  2521.      
  2522.     SETTING UP OPUS V1.70                                        Page 45 
  2523.      
  2524.      
  2525.     07 - 25: More of the same.
  2526.  
  2527.     Line 26: ^A pauses the screen and prompts the caller to press ENTER
  2528.              to continue.
  2529.  
  2530.  
  2531.     An answer file created by the above questionnaire looks like this:
  2532.  
  2533.     * Trev Roydhouse    Remuera Auckland   12 Jul 91 11:46:18
  2534.       ADDRESS: 11 Westbury Crescent
  2535.       CITYSTATE: Remuera, Auckland
  2536.       POSTCODE: 5
  2537.       AGE: No
  2538.       HOME: 546-065
  2539.       WORK: 546-065
  2540.       INFO: I saw your ad on Kinko's BBS a few weeks ago and have been
  2541.       INFO: meaning to call ever since.
  2542.  
  2543.  
  2544.  
  2545.     3.4.3 ACTIVE QUESTIONNAIRES
  2546.  
  2547.     As well as "passive" questionnaires, the Opus Embedded Commands also
  2548.     allow you to create "active" questionnaires. That is, questionnaires
  2549.     which ask questions or perform actions based on the caller's answer to
  2550.     the previous question. Here is a sample questionnaire using OECs
  2551.     followed by an explanation (line nos have been added for the
  2552.     commentary that follows only):
  2553.  
  2554.     00   ^K
  2555.     01   ^PNTX
  2556.     02   ^OOc:\opus\misc\tennis
  2557.     03   ^OP
  2558.     04   ^F^F, are you a tennis fanatic? (y,N) ^ORYN|
  2559.     05   ^OMFanatic
  2560.     06   ^OUN ^OQ
  2561.     07   ^OU| ^OQ
  2562.     08   ^OUY You are!  Prove it ...
  2563.     09   ^OUY
  2564.     10   ^OUY The year of the first Australian Davis Cup win was:
  2565.     11   ^OUY a. 1900     b. 1939     c. 1942      d. 1946
  2566.     12   ^ORABCD|
  2567.     13   ^OMAnswer
  2568.     14   ^OUB
  2569.     15   ^OUB Correct!  You will now have access to the Tennis
  2570.     16   ^OUB EchoMail message area. Type 40 or DEUCE at the
  2571.     17   ^OUB Message Menu Change Area prompt.
  2572.     18   ^OUB ^PAT ^OQ
  2573.     19
  2574.     20   Wrong!
  2575.     21   ^PAX ^OQ
  2576.  
  2577.  
  2578.     Line 00: Turn off that pesky more prompt.
  2579.  
  2580.  
  2581.  
  2582.     Page 46                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  2583.  
  2584.  
  2585.     Line 01: If the caller does not have the keys specified by ^PN<keys>
  2586.              (here the T key) sees rest of file (see below for
  2587.              significance of T).
  2588.  
  2589.     Line 02: See line 01 for explanation.
  2590.  
  2591.              NOTE: ^PNTX would not work -- that means if the caller does
  2592.                    not have the T _AND_ X keys, see rest of file.
  2593.  
  2594.     Line 03: ^OO<filename> opens an answer file for the caller's responses
  2595.              and for the information collected in line 04, 06 and 14 for
  2596.              the sysop's future reference.
  2597.  
  2598.     Line 04: ^OP posts the caller's name, city/state and the date/time of
  2599.              the call to the answer file declared in line 03.
  2600.  
  2601.     Line 05: ^F^F displays the caller's first name for the personal touch.
  2602.              ^OR<chars> defines the valid responses to this question. In
  2603.              this example they are Y, N or ENTER.
  2604.  
  2605.     Line 06: ^OM<string> posts the caller's answer to a multiple choice
  2606.              question in the answer file. <string> optional, but very
  2607.              handy for reminding the sysop with short-term memory loss
  2608.              what the question was that goes with the answer.
  2609.  
  2610.     Line 07: ^OU<char> will execute if, and only if, the caller's
  2611.              previous response matches the specified character.
  2612.              ^OQ terminates the OEC file.
  2613.  
  2614.     Line 08: As for line 07, except that it caters for the ENTER response.
  2615.  
  2616.     Line 09: As for line 07, except that it caters for a Y response.
  2617.  
  2618.     10 - 12: More of the same.
  2619.  
  2620.     Line 13: ^OR<chars> see line 05 for explanation.
  2621.  
  2622.     Line 14: See line 06 for explanation.
  2623.  
  2624.     Line 15: See line 07 for explanation.
  2625.  
  2626.     16 - 18: More of the same.
  2627.  
  2628.     Line 19: This line executes if, and only if, the caller's response
  2629.              was that specified by ^OU<char>; in this case B (the correct
  2630.              answer).
  2631.              ^PA<key> adds the specified key to the caller's keys; in this
  2632.              case the key T is added to give the caller access to the
  2633.              Tennis echo.
  2634.              ^OQ terminates the OEC file.
  2635.  
  2636.     Line 20: Ah yes, some people will try anything!
  2637.  
  2638.      
  2639.      
  2640.     SETTING UP OPUS V1.70                                        Page 47 
  2641.      
  2642.      
  2643.     Line 21: But only once! See line 19 for explanation; in this case the
  2644.              caller is given the X key to prevent any further attempts
  2645.              (see line 02) to answer the question correctly. The ^OQ is
  2646.              probably not needed, but I like working with safety nets.
  2647.  
  2648.  
  2649.     An answer file created by the above questionnaire looks like this:
  2650.  
  2651.     * Trev Roydhouse   Behind The Screen   12 Jul 91 13:19:08
  2652.       FANATIC: N
  2653.  
  2654.     * Joe Blow         No Fixed Abode      12 Jul 91 13:24:27
  2655.       FANATIC: |
  2656.  
  2657.     * Trev Roydhouse   Behind The Screen   12 Jul 91 13:24:52
  2658.       FANATIC: Y
  2659.       ANSWER: B
  2660.  
  2661.  
  2662.  
  2663.     3.4.4 SENDING A MESSAGE TO THE NEXT CALLER
  2664.  
  2665.     You can allow callers, even on single line systems, to send a message
  2666.     to the next caller by using the ^FL OEC. Opus will not ask the caller
  2667.     which task to send the chat message to; it selects the current task.
  2668.  
  2669.     This OEC could be put in your BYEBYE file (make sure you have defined
  2670.     this file with the USES BYEBYE option in the control file) like this:
  2671.  
  2672.         Leave a message to the next caller? [y,N]
  2673.         ^ORYN|
  2674.         ^OY ^FL
  2675.  
  2676.     Then the caller could leave a CHAT## to the current task number and
  2677.     hang up. The next caller comes on line and as soon as that caller hits
  2678.     a menu, Opus displays the message from the last caller.
  2679.  
  2680.  
  2681.  
  2682.  
  2683.  
  2684.     Page 48                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  2685.  
  2686.  
  2687.     3.4.5  OEC FILE STACKING
  2688.  
  2689.     The ^OA<file> OEC starts displaying <file>. When <file> is done, Opus
  2690.     returns to the current file at the current position. You can stack
  2691.     this command. Here is an example:
  2692.  
  2693.         file1.bbs contains:                   file3.bbs contains:
  2694.               This is file1.bbs                     This is file3.bbs
  2695.               ^OAfile2                              ^OAfile4
  2696.               This is file1.bbs                     This is file3.bbs
  2697.               ^OAfile5
  2698.               This is file1.bbs               file4.bbs contains:
  2699.                                                     This is file4.bbs
  2700.         file2.bbs contains:
  2701.               This is file2.bbs               file5.bbs contains:
  2702.               ^OAfile3                              This is file5.bbs
  2703.               This is file2.bbs
  2704.  
  2705.  
  2706.     The above sequence of OEC files would display to a caller as follows:
  2707.  
  2708.         This is file1.bbs
  2709.         This is file2.bbs
  2710.         This is file3.bbs
  2711.         This is file4.bbs
  2712.         This is file3.bbs
  2713.         This is file2.bbs
  2714.         This is file1.bbs
  2715.         This is file5.bbs
  2716.         This is file1.bbs
  2717.  
  2718.  
  2719.     This OEC uses a doubly linked list so the limitation is how much
  2720.     memory your system can find, but it is recommended that it be kept
  2721.     down to 4-5 deep.
  2722.  
  2723.     Another method of OEC file stacking is by using the ^OX OEC. This OEC
  2724.     records the current position in the current file, jumps to <position>
  2725.     (position is the number of bytes from the beginning of the file) and
  2726.     when ^OY is encountered, Opus returns. Here is an example:
  2727.  
  2728.         This is the beginning of MAIN Menu....
  2729.         ^OX0105
  2730.         And this is back to MAIN.BBS
  2731.         ^OQ
  2732.         This is some point further along in Main MENU
  2733.         ^OX0226
  2734.         This is back to mid-point further along in MAIN
  2735.         MENU
  2736.         ^OY
  2737.         This is yet further along in MAIN MENU
  2738.  
  2739.  
  2740.      
  2741.      
  2742.     SETTING UP OPUS V1.70                                        Page 49 
  2743.      
  2744.      
  2745.     The above example would display as follows:
  2746.  
  2747.         This is the beginning of MAIN Menu....
  2748.         This is some point further along in Main MENU
  2749.         This is yet further along in MAIN MENU
  2750.         This is back to mid-point further along in MAIN
  2751.         And this is back to MAIN.BBS
  2752.  
  2753.  
  2754.     This OEC can be stacked up to 10 levels deep.
  2755.  
  2756.  
  2757.  
  2758.     3.4.6 COMMAND BUFFER STUFFING
  2759.  
  2760.     The ^OG<command> OEC stuffs commands into the command buffer and quits
  2761.     the OEC file. You may use any commands available from the current
  2762.     menu. For example, if you have an OEC that ends with ^OGG, Opus quits
  2763.     the OEC file and starts the logoff procedure. You can also have it go
  2764.     to the download, upload, statistics, or any of the codes that are
  2765.     valid for the CURRENT menu. You can set up a fairly complex script via
  2766.     stacked commands, using either Escaped Hex codes or plain ASCII.
  2767.  
  2768.     Here is a script that you might use as a "fail-safe" to clear graphics:
  2769.  
  2770.         _SHOW     Twit  "If_All_Else_Fails" = c:\misc\bomb
  2771.  
  2772.         BOMB.BBS  <ESC>10f1 C V P H N Q
  2773.  
  2774.                   (Main Menu, Change Menu, Video/Plain, Help/Novice,
  2775.                   Quit to Main menu)
  2776.  
  2777.     Suppose at the end of an OEC file off your File Menu which listed
  2778.     "MY_LIST.BBS" you included:
  2779.  
  2780.         Download this file?
  2781.  
  2782.         Z)modem
  2783.         Y)modem
  2784.         X)modem
  2785.         K)ermit
  2786.         N)one
  2787.         ^ORZYXKN|
  2788.         ^OUZ dz my_list.bbs
  2789.         ^OUY dy my_list.bbs
  2790.         ^OUX dx my_list.bbs
  2791.         ^OUK <ESC>5004 k my_list.bbs
  2792.         ^OUN ^OQ
  2793.         ^OU| ^OQ
  2794.  
  2795.     Opus starts the download with the right protocol if a caller wants to
  2796.     download the file. You can also use the Full Tilt Boogie (FTB) menu
  2797.     commands by preceding them with an escape. What you are doing is
  2798.     stuffing the command buffer with keystrokes. If you send Opus off to
  2799.     do something illegal, because of privileges or whatever, it will be
  2800.  
  2801.  
  2802.     Page 50                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  2803.  
  2804.  
  2805.     handled just as though the caller were pressing the keys.
  2806.  
  2807.     The full list of FTB commands is listed in section 4 of the Technical
  2808.     Reference Manual.
  2809.  
  2810.  
  2811.  
  2812.     3.4.7  REGULATING PEAK TIME CALLER ACCESS
  2813.  
  2814.     To have Opus only allow those callers with a privilege level of
  2815.     Favored or higher to log on during specified hours, create two WELCOME
  2816.     files, a standard one named WELCOME1.BBS and a special one named
  2817.     WELCOME2.BBS that has the following at the beginning:
  2818.  
  2819.     00  ^L
  2820.     01  ^PBF ^OSwelcome1
  2821.     02  ^PBF ^OQ
  2822.     03
  2823.     04  I'm sorry, but this system runs restricted access between the
  2824.     05  hours of {start-time} and {end-time}.
  2825.     06
  2826.     07  Please call back after {end-time}
  2827.     08
  2828.     09  Thank You, THE SYSOP.
  2829.     10
  2830.     11  ^F^N
  2831.  
  2832.  
  2833.     Line 01: Clears the screen (aesthetics again)
  2834.  
  2835.     Line 02: If caller's privilege is below Favored, skip this line.
  2836.              Callers at or above Favored are shown the normal WELCOME
  2837.              file.
  2838.  
  2839.     Line 03: Quit this OEC file now for Favored callers.
  2840.  
  2841.     04 - 10: Message for callers below Favored.
  2842.  
  2843.     Line 11: Hang up on callers below Favored.
  2844.  
  2845.  
  2846.     Then setup an informal external event to run at {start-time} that
  2847.     exits with a DOS errorlevel of, say, 50 which is trapped by your
  2848.     NERF.BAT file like this:
  2849.  
  2850.         IF ERRORLEVEL 50 GOTO REST_ACCESS
  2851.         [etc]
  2852.         :REST_ACCESS
  2853.         COPY WELCOME2.BBS WELCOME.BBS
  2854.         GOTO START_OPUS
  2855.  
  2856.  
  2857.      
  2858.      
  2859.     SETTING UP OPUS V1.70                                        Page 51 
  2860.      
  2861.      
  2862.     and at {end-time} run another informal external event that simply
  2863.     exits with a DOS errorlevel of, say, 49 which is trapped by your
  2864.     NERF.BAT file like this:
  2865.  
  2866.         IF ERRORLEVEL 49 GOTO REST_ACCESS
  2867.         [etc]
  2868.         :NORM_ACCESS
  2869.         COPY WELCOME1.BBS WELCOME.BBS
  2870.         GOTO START_OPUS
  2871.  
  2872.     For a commented, sample NERF.BAT file refer to Appendix A of this
  2873.     manual. For information on scheduling informal events, refer to the
  2874.     section of this manual which describes the Opus Event System.
  2875.  
  2876.  
  2877.  
  2878.     3.5 EXTERNAL PROGRAMS
  2879.  
  2880.     External programs provide lots of help in customising your Opus CBCS.
  2881.     Here are a few which were available at the time of publication:
  2882.  
  2883.  
  2884.       CAYENNE   ... a program to de-compile your Opus control file, also
  2885.                     used in conversions from the previous Opus version
  2886.  
  2887.       CONFILE   ... a program to convert the old FILES.BBS file listings
  2888.                     into the Opus V1.70 files database
  2889.  
  2890.       DOORMAGIC ... a program to create various "door" control files for
  2891.                     running "outside" or "door" programs written for other
  2892.                     BBS software
  2893.  
  2894.       NACL      ... a program to compile your Opus control file
  2895.  
  2896.       O_RENUM   ... an Opus message area renumberer
  2897.  
  2898.       OEVENT    ... the Opus event manager
  2899.  
  2900.       OFARE     ... a program to re-index your Opus V1.70 files database
  2901.  
  2902.       OPHONE    ... an external chat program
  2903.  
  2904.       OPUS-FAM  ... the Opus File Area Manager
  2905.  
  2906.       OUFM      ... an Opus User File Manager
  2907.  
  2908.       PTIC      ... a program to add new "ticked" files to the files
  2909.                     database
  2910.  
  2911.       UNCON     ... a program to unconvert the new Opus V1.70 files
  2912.                     database into the old FILES.BBS file listings
  2913.  
  2914.  
  2915.  
  2916.  
  2917.  
  2918.     Page 52                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  2919.  
  2920.  
  2921.     3.6 MESSAGE AREAS
  2922.  
  2923.     Message areas and the method of storing messages in Opus V1.70 are the
  2924.     same as in previous versions of Opus. The setting up and maintenance
  2925.     of message areas is discussed in the following sections.
  2926.  
  2927.  
  2928.  
  2929.     3.6.1 CHECKLIST FOR NEW MESSAGE AREAS
  2930.  
  2931.     Checklist for setting up a new message area:
  2932.  
  2933.        * Create a subdirectory for the message area;
  2934.  
  2935.        * Edit your BBS.CTL file to include the new message area definition
  2936.          in the Message Areas Section;
  2937.  
  2938.        * Run NACL against your modified BBS.CTL file (refer to the section
  2939.          of this manual on control file maintenance for the gory details).
  2940.  
  2941.  
  2942.  
  2943.     3.6.2 SAMPLE MESSAGE AREA DEFINITION
  2944.  
  2945.     Message area definitions are found in the Message Areas Section of
  2946.     your control file. Here is a sample message area definition which
  2947.     lists all the possible control file options for such a definition:
  2948.  
  2949.  
  2950.      
  2951.      
  2952.     SETTING UP OPUS V1.70                                        Page 53 
  2953.      
  2954.      
  2955.         AREA       001      GENERAL
  2956.         %    NAME           <Name(s)>
  2957.         %    MENU           <Number>
  2958.         %    SECTION        <Sections>
  2959.         %    PRIVATE MESSAGES ONLY
  2960.         %    PUBLIC MESSAGES ONLY
  2961.         %    READ-ONLY
  2962.         %    ANONYMOUS OKAY
  2963.         %    ALIAS
  2964.         %    ROUTE
  2965.              LOCAL
  2966.         %    ECHOMAIL       <tag>
  2967.         %    MATRIX
  2968.              ACCESS PRIV    Disgrace
  2969.              EDIT PRIV      Disgrace
  2970.         %    ACCESS LOCK    <locks>
  2971.         %    EDIT LOCK      <locks>
  2972.              PEEK PRIV      Sysop
  2973.         %    PEEK LOCK      <locks>
  2974.         %    Upload PRIV    <privilege>
  2975.         %    Upload LOCK    <locks>
  2976.              PATH           c:\msg\general\
  2977.              TITLE          General Interest Messages [Local]
  2978.         %    MAXLINES       <number>
  2979.         %    BARRICADE      <filename>
  2980.         %    ADDRESS        <zone:net/node.point>
  2981.         %    ORIGIN         <string>
  2982.         %    DOMAIN         <string>
  2983.         %    PICTURE        <filename>
  2984.         %    HELP           <filename>
  2985.         %    CHARSET        <ISO set>
  2986.         %    PASSTHROUGH
  2987.         %    INBOUND-ONLY
  2988.         %    SCAN           <net/node ...>
  2989.         %    APPLICATION    <string>
  2990.         %    EXTERN RENUM
  2991.         %    EXTERN MAILCHECK
  2992.         END AREA
  2993.  
  2994.  
  2995.     You guessed it, please refer to section 2 of the Technical Reference
  2996.     Manual for a detailed description of each of the control file options
  2997.     in the sample message area definition above.
  2998.  
  2999.     NOTE: In pre-V1.70 Opus versions, areas had to be numbered
  3000.           consecutively. If you skipped a number, all higher-numbered
  3001.           areas were invisible to callers; although they were still
  3002.           accessible, they did not appear on the Opus-generated area
  3003.           change list.
  3004.  
  3005.           This does not apply to Opus V1.70. All message areas will show
  3006.           up on the Opus-generated area change list EXCEPT where the
  3007.           caller does not have thee required privilege level or key(s).
  3008.  
  3009.  
  3010.  
  3011.  
  3012.     Page 54                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  3013.  
  3014.  
  3015.     3.6.3 AREAINFO FILES
  3016.  
  3017.     You can put an AREAINFO.BBS (or AREAINF~.BBS file for systems which
  3018.     support more than one language) file in each message area directory.
  3019.     This file will then be shown to every caller each time the caller
  3020.     enters the relevant message area.
  3021.  
  3022.     You could use the file for displaying the rules of that specific
  3023.     message areas. It is particularly useful in trading post echomail
  3024.     areas for warning callers not to place commercial advertisements, for
  3025.     example.
  3026.  
  3027.     As the file is a normal OEC file, you can stop it being shown to your
  3028.     trusted callers over and over again by using OECs to only show it to
  3029.     those with a certain access level or below or without certain keys.
  3030.  
  3031.  
  3032.  
  3033.     3.6.4 SMART RULES FILES
  3034.  
  3035.     There is a "smart" menu command which you can use to allow callers to
  3036.     display the rules file in message areas. You put the MSG_RULES menu
  3037.     command on your message menu and it will only show up when a RULES.BBS
  3038.     (or RULE~.BBS file for those systems which support multiple languages)
  3039.     file is found in the relevant message area directory!
  3040.  
  3041.     In addition, Opus will automagically show the rules file, if it
  3042.     exists, to any caller whose lastread message pointer for the area is
  3043.     zero.
  3044.  
  3045.     In file areas, you need to define the rules file in the file area
  3046.     definition using the RULES control file option. The file will only be
  3047.     shown to those callers who have never before entered the relevant file
  3048.     area (you can cause it to display again by deleting the LFILE.DAT file
  3049.     in that file area's download directory -- that file stores who was in
  3050.     the file area and when for use by one of the Opus Embedded Commands).
  3051.  
  3052.     Refer to section 2 (areainfo and rules files) and section 4 (OECs) of
  3053.     the Technical Reference Manual for further details.
  3054.  
  3055.  
  3056.  
  3057.     3.6.5 MESSAGE AREA MAINTENANCE
  3058.  
  3059.     Messages are stored in individual files. Message #1 is in a file
  3060.     called "1.MSG", for example.
  3061.  
  3062.     Large gaps between message numbers can cause big online delays. There
  3063.     are several public domain message renumber utilities. You should
  3064.     renumber message areas regularly.
  3065.  
  3066.     One thing you should also do occasionally: reorganize your physical
  3067.     drive. Several utilities are available (eg, Optimize, DOG, SD) to do
  3068.      
  3069.      
  3070.     SETTING UP OPUS V1.70                                        Page 55 
  3071.      
  3072.      
  3073.     such things. They are handy and highly recommended. In technical
  3074.     terms, these programs "de-fragment" your disk. Run them once a month
  3075.     or so.
  3076.  
  3077.  
  3078.  
  3079.     3.7 FILE AREAS
  3080.  
  3081.     Probably one of the biggest changes between Opus V1.70 and previous
  3082.     Opus versions is the fact that V1.70 now uses a database for keeping
  3083.     track of files instead of the plethora of individual FILES.BBS files
  3084.     that the grizzled veteran Opus sysop either learned to love or loved
  3085.     to hate.
  3086.  
  3087.     Despair not!  Utilities have been provided to convert FILES.BBS files
  3088.     into the new files database AND to unconvert the new files database
  3089.     into FILES.BBS files AND to manage the new files database.
  3090.  
  3091.  
  3092.  
  3093.     3.7.1 THE FILES DATABASE
  3094.  
  3095.     The Opus V1.70 files database is actually a system of three files. One
  3096.     file contains all the information about what files you have on your
  3097.     system (FILESBBS.DAT), one is the index to all the file names on your
  3098.     system (FILESBBS.NDX), and one is an index into the first file in each
  3099.     file area (FILESBBS.ADX).
  3100.  
  3101.     Here are a few of the highlights of the new files database:
  3102.  
  3103.     * You can specify where in each file area listing new files will be
  3104.       added either when U)ploaded or H)urled by inserting a greater than
  3105.       sign > in the listing for an area. Normally new files are appended
  3106.       to the end of the listing for an area.
  3107.  
  3108.     * You can specify full paths to files if they are not in the default
  3109.       directory for that file area. This will probably be of benefit to
  3110.       those sysops who run CD-ROM drives on their systems.
  3111.  
  3112.     * Who uploaded the file and when is stored with each file.
  3113.  
  3114.     * The file date and time is preserved when files are received via
  3115.       Zmodem transfers. The search for new files will look at the upload
  3116.       date/time, but the callers will see the actual file creation time when
  3117.       they do a F)iles listing.
  3118.  
  3119.     * When a caller does a L)ocate, or searches for a string with the F)iles
  3120.       command, they also optionally (sysop configurable by privilege) get
  3121.       an additional line of information including who uploaded the file
  3122.       and when.
  3123.  
  3124.     * The F)iles display has been modified so it does a word-wrap for
  3125.       callers who have screens wider than 60 characters. File descriptions
  3126.       may be up to 256 characters long.
  3127.  
  3128.  
  3129.  
  3130.     Page 56                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  3131.  
  3132.  
  3133.     * Each individual file can have its own download privilege and locks.
  3134.       Normally they will be set to the area's download privilege and
  3135.       locks, unless you have set the NEW PRIV option in the file area
  3136.       definition. You can also override the privilege and locks on a file-
  3137.       by-file basis.
  3138.  
  3139.     * If a caller tries to download a file from an area, and the file does
  3140.       not exist in that area, Opus will look for the file in all the other
  3141.       areas to which the caller has access and, if it finds it, the
  3142.       download will continue as normal!
  3143.  
  3144.     * Opus will not allow callers who have privilege below ASSTSYSOP to
  3145.       upload duplicate file names anywhere unless the DUPES option has
  3146.       been specified in the file area definition.
  3147.  
  3148.     * If a caller has never been in a file area before, and the sysop has
  3149.       defined a RULES file in that area's definition, Opus will show the
  3150.       caller that file. The idea behind this is that you might want to
  3151.       have some areas that have minimal restrictions on them, like an area
  3152.       that has nude GIF files in it. You could ask "Are you over 18?" and
  3153.       if the answer is no, send the caller somewhere else using OECs.
  3154.  
  3155.     * If you implement the FREE control file option in a file area
  3156.       definition, then Opus will not consider files downloaded from that
  3157.       area to be part of the callers upload:download ratio or daily
  3158.       download limit. This should work properly even when callers are
  3159.       downloading a batch of files from different areas. The only problem
  3160.       is that Opus will not know which files are "free" and which are not
  3161.       when reading the log file produced by external protocol drivers. It
  3162.       will add the file sizes to the total downloads and daily downloads
  3163.       when using an external protocol.
  3164.  
  3165.  
  3166.  
  3167.     3.7.2 CONVERTING TO THE FILES DATABASE
  3168.  
  3169.     You convert your old-style FILES.BBS file area listings to the new
  3170.     files database by running the CONFILE program.
  3171.  
  3172.     Please refer to the documentation supplied with CONFILE for a blow-
  3173.     by-blow description of this procedure.
  3174.  
  3175.  
  3176.  
  3177.     3.7.3  CHANGING FILE AREA NUMBERS
  3178.  
  3179.     What do you do when you want to move a particular file area to a
  3180.     different area number? For example, you want to make your current
  3181.     games files area which is area 15 into a new area 88. You have a lot
  3182.     of typing to do, right? Wrong. John Valentyn sent along this recipe
  3183.     just for you:
  3184.  
  3185.      
  3186.      
  3187.     SETTING UP OPUS V1.70                                        Page 57 
  3188.      
  3189.      
  3190.         * Run UNCON to take all the file descriptions for area 15 from the
  3191.           files database to create an old-style FILES.BBS file for you;
  3192.  
  3193.         * Edit your control file (BBS.CTL), changing file area 15 to file
  3194.           area 88;
  3195.  
  3196.         * Run NACL against a copy of your control file that includes the
  3197.           Message and File Area Sections (refer to the section of the
  3198.           manual dealing with control file maintenance for more details);
  3199.  
  3200.         * Run OFARE, which will see that area 15 has been deleted and that
  3201.           area 88 is a new area, and will merge the FILES.BBS for area 88
  3202.           back into the database.
  3203.  
  3204.  
  3205.  
  3206.     3.7.4 SETTING UP NEW FILE AREAS
  3207.  
  3208.     Checklist for setting up a new file area:
  3209.  
  3210.        * Create a download subdirectory for the file area -- the download
  3211.          subdirectory contains the files you want to make available to
  3212.          your callers;
  3213.  
  3214.        * Copy the relevant downloadable files into the download
  3215.          subdirectory;
  3216.  
  3217.        * As necessary, create an upload and/or private upload and/or keyed
  3218.          upload directory for the file area -- the upload subdirectory/ies
  3219.          is/are the hold any files that callers might send to you;
  3220.  
  3221.        * Create an old-style FILES.BBS file listing which includes the
  3222.          descriptions of the files for the new file area -- the FILES.BBS
  3223.          file is a normal text file which contains the filenames beginning
  3224.          in column 1, followed by a space character, followed by the
  3225.          description of the file; comment lines must be indented at least
  3226.          one space character or they will be treated as filenames.
  3227.  
  3228.          There is also an EFW (environmentally friendly widget) bonus
  3229.          with the new files database -- an "alternative file path" for
  3230.          pointing to files that are not in the relevant file area
  3231.          directory, but are in another directory elsewhere on your
  3232.          system. Why EFW? It saves you hard disk space! To take advantage
  3233.          of this EFW, you put the full path to the file in the FILES.BBS
  3234.          file in addition to the filename, for example:
  3235.  
  3236.          z:\file\thisfile.zip
  3237.  
  3238.          Folks with CD-ROM drives may also like to take advantage of the
  3239.          fact that you can also put the full path to a file in the
  3240.          FILES.BBS file, so that when it is converted in the files
  3241.          database, the file path will be correct.
  3242.  
  3243.  
  3244.  
  3245.     Page 58                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  3246.  
  3247.  
  3248.        * It is a good idea to leave 4 lines at the beginning of the new
  3249.          FILES.BBS listings so that the HiTech menus do not leave the
  3250.          topmost two or three lines of the listing on the screen -- in
  3251.          fact, this is a feature and not a bug. The first few lines are
  3252.          reserved for the a file area heading which is not erased each
  3253.          time the screen scrolls;
  3254.  
  3255.        * Edit your BBS.CTL file to include the new file area definition in
  3256.          the File Areas Section of the control file;
  3257.  
  3258.        * Do NOT forget to include an upload area number in your file area
  3259.          definition or you will experience this problem:
  3260.  
  3261.          > Also, I have uploaded files going into a particular
  3262.          > directory. The files go there, but when I do a new
  3263.          > files scan, they are listed in the area the caller was
  3264.          > in when the file was uploaded. In the area the caller
  3265.          > uploaded, the file and description are listed, in the
  3266.          > upload area, the file without a description are also
  3267.          > listed.
  3268.  
  3269.          UPLOAD PATH H:\NEWFILES\    <-----------------| Path
  3270.          UPLOAD AREA 31              <-----------------| Area #
  3271.  
  3272.        * Run NACL against your modified BBS.CTL file (refer to the section
  3273.          of this manual on control file maintenance for the gory details);
  3274.  
  3275.        * Run OFARE to update the files database.
  3276.  
  3277.  
  3278.  
  3279.     3.7.5 SAMPLE FILE AREA DEFINITION
  3280.  
  3281.     File area definitions are found in the File Areas Section of your
  3282.     control file. Here is a sample file area definition which lists all
  3283.     the possible control file options for such a definition:
  3284.  
  3285.      
  3286.      
  3287.     SETTING UP OPUS V1.70                                        Page 59 
  3288.      
  3289.      
  3290.         %
  3291.         AREA     0001    INFO
  3292.         %
  3293.         %    MENU             <Number>
  3294.         %    SECTION          <Sections>
  3295.              TITLE            Information File Area
  3296.         %    PREFILES         <filename>
  3297.         %
  3298.              ACCESS PRIV      Disgrace
  3299.         %    ACCESS LOCK      <locks>
  3300.         %
  3301.              DOWNLOAD PRIV    Disgrace
  3302.         %    DOWNLOAD LOCK    <locks>
  3303.              DOWNLOAD PATH    C:\FILES\INFO\
  3304.         %
  3305.         %    BARRICADE        <filename>
  3306.         %    RULES            <filename>
  3307.         %    PICTURE          <filename>
  3308.         %    HELP             <filename>
  3309.              RATIO PRIV       Twit
  3310.         %
  3311.         %    Default Upload Area
  3312.              UPLOAD PRIV      Hidden
  3313.         %    UPLOAD LOCK      <locks>
  3314.              UPLOAD PATH      C:\FILES\NEW\
  3315.              UPLOAD AREA      3
  3316.              NEW PRIV         Disgrace
  3317.         %    DUPES
  3318.         %    FREE
  3319.         %
  3320.         %
  3321.         %    PRIVATE Upload area by Privilege
  3322.              PUPLOAD PRIV     Twit
  3323.         %    PUPLOAD PATH     <path\>
  3324.              PUPLOAD AREA     3
  3325.         %
  3326.         %    PRIVATE Upload area by Keys
  3327.         %    KUPLOAD LOCK     <locks>
  3328.         %    KUPLOAD PATH     <path\>
  3329.              KUPLOAD AREA     3
  3330.         %
  3331.         %    APPLICATION
  3332.         %
  3333.         END AREA
  3334.         %
  3335.  
  3336.     You guessed it, please refer to section 2 of the Technical Reference
  3337.     Manual for a detailed description of each of the control file options
  3338.     in the sample file area definition above.
  3339.  
  3340.  
  3341.  
  3342.  
  3343.  
  3344.     Page 60                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  3345.  
  3346.  
  3347.     3.7.6 FILES DATABASE MAINTENANCE
  3348.  
  3349.     When a caller uploads a file, Opus will automatically put the file into
  3350.     files database.
  3351.  
  3352.     To add, delete or move files from the files database, or to edit the file
  3353.     descriptions, use the Opus File Area Manager (OPUS-FAM) program. Uhuh,
  3354.     please refer to the documentation that comes with OPUS-FAM for full
  3355.     details of this procedure. OPUS-FAM will also run in batch mode to
  3356.     produce file listings for file request lists (see below).
  3357.  
  3358.     You can also use Opus itself to "adopt" files which are not listed in
  3359.     the database, "orphan" files that are listed in the database, and
  3360.     "hurl" files from one area to another INCLUDING across physical
  3361.     drives! Yep, go check out section 3 of the Technical Reference Manual
  3362.     for the appropriate menu commands to include on your file menu.
  3363.  
  3364.     If you have other programs that need access to the old-style FILES.BBS
  3365.     file listings, use the UNCON program. UNCON with no parameters will
  3366.     regurgitate FILES.BBS in all areas, or you can put a list of areas on
  3367.     the command line and only those areas will get new FILES.BBS listings.
  3368.     UNCON.EXE will rename any existing FILES.BBS to FILES.BAK before
  3369.     writing the new FILES.BBS.
  3370.  
  3371.     To do minor, automatic maintenance there is OFARE. OFARE should be run
  3372.     as part of your automatic housekeeping like renumbering messages. It
  3373.     performs a number of functions, including re-packing the database as
  3374.     new files are added, expanding wildcard listings in the database to
  3375.     reflect any new files that have been added or deleted, eliminating
  3376.     files that have been deleted from the database and, optionally,
  3377.     eliminating any "Missing" files from your database. Here is a sample
  3378.     batch file:
  3379.  
  3380.          REM Sample nightly housekeeping
  3381.          REM Pick up any new files and remove deleted and missing files
  3382.          ofare /m
  3383.  
  3384.          REM Save the old files database in case of trouble
  3385.          pkzip -mex oldfiles filesbbs.o*
  3386.  
  3387.          REM Update FILES.BBS to match the database
  3388.          uncon 1 2 3 4 5 6 7 8 10
  3389.  
  3390.          REM Produce the FILES lists
  3391.          opus-fam -l
  3392.  
  3393.  
  3394.  
  3395.      
  3396.      
  3397.     SETTING UP OPUS V1.70                                        Page 61 
  3398.      
  3399.      
  3400.     3.8 BARRICADED MESSAGE AND FILE AREAS
  3401.  
  3402.     You can "barricade" message and file areas in Opus so that a caller
  3403.     needs another password to get into the area. This password not only
  3404.     admits the caller to the area, but is associated with a privilege
  3405.     level which the caller will have ONLY while in that area. Be careful
  3406.     that the privilege level associated with each password is equal to or
  3407.     higher that the privilege required for access to the area and its
  3408.     associated menu commands.
  3409.  
  3410.     Whenever users leave a barricaded message or file area, they lose
  3411.     the higher or lower privilege which was conferred on them. As an added
  3412.     security measure, if a user logs off or otherwise disconnects while in
  3413.     a barricaded area, Opus always resets the last message or file area
  3414.     accessed, as appropriate, to area number 1 and resets their privilege
  3415.     level to what it was before they entered the barricaded area. YOU
  3416.     CANNOT, THEREFORE, BARRICADE FILE AREA NUMBER 1.
  3417.  
  3418.     Unlike Opus 1.1x, both message and file areas may be separately
  3419.     barricaded by defining a password file associated with the relevant
  3420.     area definition in the control file.
  3421.  
  3422.     To implement barricaded areas you need to define a generic "warning"
  3423.     file shown to callers who attempt to enter the barricaded area. This
  3424.     is defined using the USES BARRICADE <filename> control file option
  3425.     which you will find in the Session Section of your control file. Here
  3426.     is a sample warning file:
  3427.  
  3428.         Warning!  Warning!  ^G^G^G
  3429.  
  3430.         This is a password protected area. If you have
  3431.         stumbled in here by mistake, press ENTER or RETURN to
  3432.         return to the system.
  3433.  
  3434.         Any other action will be recorded as an attempt to
  3435.         enter this area and you will be disconnected.
  3436.  
  3437.  
  3438.     In fact, Opus will not disconnect the caller if the caller incorrectly
  3439.     guesses the password twice in a row. Instead, Opus will return the
  3440.     caller to the area change menu. Your callers do not know that though!
  3441.  
  3442.     You also need to define a "password" file which contains the passwords
  3443.     and associated privilege level. The file may also contain a caller's
  3444.     name and an associated privilege level, in which case the caller will
  3445.     not be asked for a password, but will be admitted to the area with the
  3446.     assigned privilege (useful for co-sysops maybe). This password file is
  3447.     defined with the BARRICADE <filename> option in the area definition
  3448.     section of your control file. Each area may have its own password
  3449.     file, or you may use the same one in each area. Here is a sample
  3450.     password file:
  3451.  
  3452.  
  3453.  
  3454.     Page 62                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  3455.  
  3456.  
  3457.         SESAME     ASSTSYSOP ;for area moderator
  3458.         SHILOH     PRIVIL    ;for those who can enter echomail messages
  3459.         GREYSTOKE  NORMAL    ;for those who cannot enter messages
  3460.         PERFECT    NORMAL    ;for those who cannot enter messages
  3461.         K9W3F1     SYSOP     ;for the sysop
  3462.         Ken Morgan TWIT      ;for poor Ken
  3463.         Joe Smith  NORMAL    ;for Joe
  3464.  
  3465.  
  3466.     Neither Ken Morgan nor Joe Smith would have to give a password for the
  3467.     barricaded area. Instead, their privileges would be automatically set
  3468.     by Opus. The comment field after the password is optional, but handy
  3469.     to keep track of who has what access.
  3470.  
  3471.  
  3472.  
  3473.     3.9 WELCOME FILES
  3474.  
  3475.     Opus has a rich assortment of welcome files available for you to
  3476.     bend your mind with. Here's a summary:
  3477.  
  3478.         * The standard WELCOME file;
  3479.  
  3480.         * Custom welcome files (CWFs);
  3481.  
  3482.         * Special announcement files (SPANNs);
  3483.  
  3484.         * The special OEC file (SPOEC).
  3485.  
  3486.  
  3487.     For the particular sequence in which Opus will show these files to a
  3488.     caller, refer to the flowchart of the Opus login sequence in section 5
  3489.     of the Technical Reference Manual.
  3490.  
  3491.  
  3492.  
  3493.     3.9.1 THE STANDARD WELCOME FILE
  3494.  
  3495.     The standard welcome file is shown to ALL your callers, if you have
  3496.     defined such an file with the USES WELCOME option in the Session
  3497.     Section of your control file.
  3498.  
  3499.     As this is just a normal OEC file, you can use the Opus Embedded
  3500.     Command set in the file to do WAW (wierd and wonderful) things.
  3501.  
  3502.  
  3503.  
  3504.      
  3505.      
  3506.     SETTING UP OPUS V1.70                                        Page 63 
  3507.      
  3508.      
  3509.     3.9.2 SPECIAL ANNOUNCEMENT FILES
  3510.  
  3511.     Special announcement files are shown only to those callers whose
  3512.     records in the Opus user file you tweak. There are five "counters" in
  3513.     each caller record for associated special announcement files. The
  3514.     counters can be set to show each of the five special announcement
  3515.     files a certain number of times (up to a maximum of 255). Opus will
  3516.     then show the caller the corresponding special announcement file and
  3517.     decrement the counter by one each time the caller logs on to your
  3518.     system.
  3519.  
  3520.     To implement this option, you need to define the PATH SPANN option in
  3521.     the System Section of your control file to point to the directory in
  3522.     which the special announcement files will be stored. The special
  3523.     announcement files are named SPANNn.BBS where "n" is a number from 1
  3524.     to 5 to correspond with the five counters in each caller's record in
  3525.     the user file. The SPANN file is a normal OEC file, so you can use the
  3526.     full set of OECs in it. Here's a sample SPANN file:
  3527.  
  3528.  
  3529.         >>>> Access Upgraded <<<<
  3530.  
  3531.         ^F^F, as you have correctly answered the Q)uestionnaire, your
  3532.         access has now been upgraded to VERIFIABLE member.
  3533.  
  3534.         Choose O)utside from the M)ain Menu, then M)embership details
  3535.         for further information regarding membership.
  3536.  
  3537.         TREV.
  3538.         (Sysop: Sentry (02) 428-4687 & Sentry's Shadow (02) 418-6682)
  3539.  
  3540.         ^A
  3541.  
  3542.  
  3543.     No, there is more. You also need to set the relevant SPANN counter(s)
  3544.     in the caller's record in the user file. You can either use a program
  3545.     called, appropriately enough, SPANN (by Doug Boone) or OUFM (the Opus
  3546.     User File Manager by yours truly) to set these counters either
  3547.     globally or for specific callers.
  3548.  
  3549.  
  3550.  
  3551.     3.9.3 CUSTOM WELCOME FILES
  3552.  
  3553.     Custom welcome files (CWFs) are shown to individual callers only. The
  3554.     files are shown again and again until you delete them, or you can rig
  3555.     up a file which will delete itself using OECs after it has been shown.
  3556.  
  3557.     For once, you do not have to specify anything in your control file!
  3558.     Instead, there is a special format for the CWF filename: the filename
  3559.     is based on the caller's record number in the user file. The records
  3560.     in the user file are 1-based (ie, the first record is number 1) to
  3561.     make life easy for you. The files have the standard OEC file extension
  3562.     (.BBS -- if you use .GBS you better make sure that the caller has the
  3563.     required video mode set or the caller will not see your handiwork).
  3564.  
  3565.  
  3566.     Page 64                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  3567.  
  3568.  
  3569.     The CWFs must be stored in the same directory as the one from which
  3570.     you run the Opus program.
  3571.  
  3572.     One last point, you do not need to put a ^A pause OEC in these files
  3573.     as Opus will add one automatically at the end of the file for you.
  3574.  
  3575.  
  3576.  
  3577.     3.9.4 SPECIAL OEC WELCOME FILES
  3578.  
  3579.     Special OEC welcome files (SPOECs) are shown only to those callers you
  3580.     select. There is a field in the caller's record in the user file for
  3581.     defining an 8 letter filename without the extension which is assumed
  3582.     to be the standard OEC file .BBS/.GBS extension. You can define this
  3583.     file using the OUFM (Opus User File Manager) program. This file
  3584.     REPLACES the normal welcome file shown to all callers (ie, the SPOEC
  3585.     file is shown instead of the normal welcome file). I have one defined
  3586.     in my user record to bypass the normal logon bulletins; although you
  3587.     could also skin this hassle by using privilege level OECs in the
  3588.     normal welcome file. If your system is used by a club of some sort, a
  3589.     SPOEC file may be useful for showing only club members details of
  3590.     upcoming events. The only limit is your imagination.
  3591.  
  3592.  
  3593.  
  3594.     3.10 THE RELOGGING FUNCTION
  3595.  
  3596.     If you, or your callers, need to exit Opus to run a particular online
  3597.     program, you can relog on to the system and end up back at the menu
  3598.     which you exited from without having to go through the normal log on
  3599.     procedure! The infamous Opus relog function <ask Doug>.
  3600.  
  3601.     To implement the relog function you need to set the SECURE, RELOG and
  3602.     AFTER RELOG EXIT options in the Session Section of your control file.
  3603.     Go on, refer to section 2 of the Technical Reference Manual for
  3604.     details of these options.
  3605.  
  3606.     To exit from Opus you need to set up an _OUTSIDE EXIT menu command
  3607.     off one of your menus like this:
  3608.  
  3609.         _OUTSIDE      Sysop     "Drop to DOS"  = EXIT 15
  3610.  
  3611.      
  3612.      
  3613.     SETTING UP OPUS V1.70                                        Page 65 
  3614.      
  3615.      
  3616.     and then trap the DOS errorlevel of 15 in your NERF.BAT batch file
  3617.     like so:
  3618.  
  3619.  
  3620.         :OPUS
  3621.         CHAT 30
  3622.         SET PORT=2
  3623.         OPUS BBS
  3624.  
  3625.         :TEST
  3626.         IF ERRORLEVEL 255 GOTO ERROR255
  3627.         [...]
  3628.         IF ERRORLEVEL 15 GOTO DOS
  3629.         IF ERRORLEVEL 4 GOTO ERROR4
  3630.         IF ERRORLEVEL 3 GOTO ERROR3
  3631.         IF ERRORLEVEL 2 GOTO ERROR2
  3632.         IF ERRORLEVEL 1 GOTO OFFLINE
  3633.         GOTO ERROR0
  3634.  
  3635.         :DOS
  3636.         NEWBAUD Q:\OPUS\LASTUS00.DAT
  3637.         IF ERRORLEVEL 96 GOTO REMOTE_DROP
  3638.         IF ERRORLEVEL 48 GOTO REMOTE_DROP
  3639.         IF ERRORLEVEL 24 GOTO REMOTE_DROP
  3640.         IF ERRORLEVEL 12 GOTO REMOTE_DROP
  3641.         IF ERRORLEVEL 3 GOTO REMOTE_DROP
  3642.         IF ERRORLEVEL 0 GOTO LOCAL_DROP
  3643.  
  3644.         :REMOTE_DROP
  3645.         CTTY COM%PORT%:
  3646.  
  3647.         :LOCAL_DROP
  3648.         COMMAND
  3649.  
  3650.         :RETURN
  3651.         Q:
  3652.         CD Q:\OPUS
  3653.         CTTY CON
  3654.         OPUS BBS -O
  3655.         GOTO TEST
  3656.  
  3657.  
  3658.     and you need to re-run Opus with the -O command line switch.
  3659.  
  3660.  
  3661.     IMPORTANT: make sure you define an AFTER RELOG EXIT errorlevel and
  3662.     that the flow of your batch file does not keep executing Opus with
  3663.     the -O command line switch or else ...
  3664.  
  3665.         > Hi everyone, I've been having this strange problem and I
  3666.         > can't figure it out.
  3667.  
  3668.     ... Opus reload will reload itself over and over again after each
  3669.     caller who goes outside.
  3670.  
  3671.  
  3672.  
  3673.     Page 66                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  3674.  
  3675.  
  3676.     3.11 EXPIRATION CONTROL SYSTEM
  3677.  
  3678.     The optional Opus caller expiration control system allows the
  3679.     termination of caller access based on either expiration date or
  3680.     minutes given and used, or both. Since this system operates
  3681.     independently of the existing daily time and file download limiting,
  3682.     all three forms of limiting can be used in combination. All control
  3683.     settings are made on a per caller basis so you can have a mix of
  3684.     callers with different forms of limiting. Additional per-user settings
  3685.     control whether a caller is disconnected, demoted, both, or neither.
  3686.  
  3687.  
  3688.  
  3689.     3.11.1 EXPIRATION CONTROL METHOD
  3690.  
  3691.     Expiration control may be based on:
  3692.  
  3693.         Date ..... When a caller's ByDate flag is enabled, that caller is
  3694.                    "expired" on the given expiry date.
  3695.  
  3696.         Time ..... When a caller's ByTime flag is enabled, that caller is
  3697.                    "expired" when the caller has used (debited) as many
  3698.                    minutes as the caller was given (credited) as shown by
  3699.                    the Debit and Credit minutes fields in the caller's
  3700.                    user record. These fields act in much the same way as
  3701.                    the FidoNet credit/debit fields do in that they
  3702.                    continually accumulate and their difference is the
  3703.                    actual balance remaining.
  3704.  
  3705.     You can set a caller's user record for both Date and Time expiry so as
  3706.     to allow the case where you want a user to consume their given minutes
  3707.     within some calendar time frame to avoid the case where some low
  3708.     activity caller takes 10 years to use the 30 minutes of usage credit.
  3709.  
  3710.  
  3711.  
  3712.     3.11.2 HANDLING EXPIRED CALLERS
  3713.  
  3714.     The way an expired caller is handled is controlled by the AxeUser and
  3715.     DemoteUser flags in the caller's record. If neither is set then the
  3716.     caller will only get the relevant warning and/or expiration messages
  3717.     (see the section on Implementing Expiration Control below).
  3718.  
  3719.         DemoteUser .. If enabled, the caller's privilege is reset to the
  3720.                       expiration privilege value in the control file. If
  3721.                       that value has not been set, then the caller is
  3722.                       forced to the lowest privilege (Twit).
  3723.  
  3724.         AxeUser ..... If enabled in the caller's record, the caller is
  3725.                       rather unceremoniously disconnected by Opus.
  3726.  
  3727.      
  3728.      
  3729.     SETTING UP OPUS V1.70                                        Page 67 
  3730.      
  3731.      
  3732.     Both Demote and Axe can be used together so that you can reduced a
  3733.     caller's privilege level and stop the caller from logging on. That may
  3734.     be handy when you want to signal an external maintenance utility by
  3735.     setting the privilege level to something unique for further, external
  3736.     processing or purging.
  3737.  
  3738.  
  3739.  
  3740.     3.11.3 IMPLEMENTING EXPIRATION CONTROL
  3741.  
  3742.     First of all, you need to decide how you are going to implement the
  3743.     expiration control system (if at all).
  3744.  
  3745.     You can make expiration control automatic for all new callers to your
  3746.     system by defining the LOGON XDAYS and/or LOGON XMINS and EXPIRE PRIV
  3747.     options in the Session Section of the control file.
  3748.  
  3749.     You may also want to define the EXPIRE DAYS, EXPIRE MINUTES and USES
  3750.     XDWARN, USES XTWARN, USES XDGONE, USES XTGONE options in the Session
  3751.     Section of your control file.
  3752.  
  3753.     The USES XD/XTWARN options allow you to define OEC files to give
  3754.     callers separate expiration warning messages for date and time expiry
  3755.     when callers are within a preset number of days or minutes from
  3756.     expiration. These time limits are defined with the EXPIRE DAYS/MINUTES
  3757.     options.
  3758.  
  3759.     The USES XD/XTGONE options allow you to define OEC files to give
  3760.     callers expiration messages for date and time expiry when callers have
  3761.     expired.
  3762.  
  3763.     When the caller is within the preset number of days from expiration,
  3764.     the caller would be shown XDWARN.BBS at logon. Here is a sample file
  3765.     using the expiration OECs:
  3766.  
  3767.         G'day ^F^F, I just thought you should know that your access to
  3768.         this system will expire in ^XD days on ^XC.
  3769.  
  3770.         ^A
  3771.  
  3772.  
  3773.     If the current date is greater than or equal to the expiry date you
  3774.     have set, then the caller is shown XDGONE.BBS which would typically
  3775.     say:
  3776.  
  3777.  
  3778.         >> Attention <<     Access Expiration    >> Attention <<
  3779.  
  3780.         ^F^F, your access to this system expired on ^XC.
  3781.  
  3782.         Please bribe the Sysop NOW if you wish further access!
  3783.  
  3784.         ^A
  3785.  
  3786.  
  3787.  
  3788.  
  3789.     Page 68                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  3790.  
  3791.  
  3792.     To implement expiration control fo your existing callers, you will
  3793.     need to use OUFM (Opus User File Manager) to set the relevant fields
  3794.     in the callers' user records. Refer to the documentation that comes
  3795.     with OUFM for further details.
  3796.  
  3797.  
  3798.  
  3799.     3.12 "SECTIONS" OR "SIGS"
  3800.  
  3801.     Each online user of a system can be allocated a "section" by the
  3802.     sysop at logon, or can define their own section from the section menu
  3803.     if it has been implemented. The ability to choose sections from the
  3804.     section menu can, of course, be restricted by privilege level and/or
  3805.     by locks.
  3806.  
  3807.     A section restricts a user's access to your Opus system. It is used to
  3808.     allocate message and file areas, so that a user will only be able to
  3809.     access those areas which are included in their allocated or chosen
  3810.     section. You can look at sections as being something like TBBS Sigs,
  3811.     except that the use of sections in Opus is optional.
  3812.  
  3813.     Callers could use MSG_NAREA and sections to make Opus operate somewhat
  3814.     like the old CP/M Citadel BBS system. When you read all the messages
  3815.     in one area and then go on to the next area with unread messages, you
  3816.     only get those areas that you were interested in.
  3817.  
  3818.     Or you can look at sections as being something like TBBS Sigs, except
  3819.     that users do not _have_ to use them.
  3820.  
  3821.  
  3822.  
  3823.     3.12.1 SYSOP DEFINED SECTIONS
  3824.  
  3825.     You define the section(s) to which a message or file area belongs in
  3826.     the message or file area definition in the control file (BBS.CTL)
  3827.     using the SECTION item. For example, you could setup your system to
  3828.     have:
  3829.  
  3830.               * an Assembly language section (SECTION AP);
  3831.               * a C language section (SECTION CP);
  3832.               * a Turbo Pascal section (SECTION TP); and
  3833.               * a Programming section (SECTION P).
  3834.  
  3835.     If callers are allocated section P by the sysop at logon, or they
  3836.     choose that section themselves (if there is a section menu to which
  3837.     they have access), then they will only have access to those message
  3838.     and file areas which have either the P or A or C section set in their
  3839.     area definition (in this example, the Assembly, C and Turbo Pascal
  3840.     areas). If callers are allocated section A, or they choose that
  3841.     section themselves, they would only have access to message and file
  3842.     areas that have the "A" section set in their area definitions (in this
  3843.     example, only the Assembly language area).
  3844.  
  3845.  
  3846.  
  3847.      
  3848.      
  3849.     SETTING UP OPUS V1.70                                        Page 69 
  3850.      
  3851.      
  3852.     3.12.2 USER DEFINED SECTIONS
  3853.  
  3854.     A User Defined Section (UDS) is a section that callers can create on
  3855.     their own. Callers can have any combination of up to 80 areas in their
  3856.     section. They can have 1 file area and 79 message areas or 40 message
  3857.     areas and 40 file areas, or any other combination. Opus keeps track of
  3858.     how many message and how many file areas the caller has selected.
  3859.  
  3860.     Although in most ways UDS are just like any other section, User
  3861.     Sections have a couple of extensions to be considered, MSG_SCAN,
  3862.     F_NEW, MSG_NAREA, F_LOCATE and the NextArea/PriorAreas will no longer
  3863.     be concerned with high message/file area limits. They read the area
  3864.     table in the user record directly.
  3865.  
  3866.  
  3867.  
  3868.     3.12.3 THE SECTION MENU
  3869.  
  3870.     A new addition to the Opus V1.70 menu system is the Section Menu. You
  3871.     do not have to have a section menu, it is optional. A sample section
  3872.     menu is set out below:
  3873.  
  3874.         %
  3875.         SECTION MENU
  3876.         _PICK_SECTION Disgrace "All areas" =
  3877.         _PICK_SECTION Disgrace "Programming" = PCA
  3878.         _PICK_SECTION Disgrace "LOCAL" = L
  3879.         _PICK_SECTION Disgrace "Buy & Sell" = B
  3880.         _PICK_SECTION Disgrace "Opus" = O
  3881.         _SHOW         Twit     "?Help" = C:\Hlp\Sections
  3882.         _MAIN         Twit     "Quit section menu"
  3883.         END Menu
  3884.         %
  3885.  
  3886.  
  3887.     It is worth pointing out that there is no misprint or typographical
  3888.     error in the first _PICK_SECTION menu command -- there is nothing
  3889.     after the "equals" sign. You NEED this option if you are going to
  3890.     allow your callers to get out of their sections. Without it, you will
  3891.     only cause yourself and your callers grief ... as several Beta and
  3892.     Gamma testers can attest.
  3893.  
  3894.     To allow callers to set up their own UDS (User Defined Sections)
  3895.     instead of choosing sections which have been set up in advance by the
  3896.     sysop, your section menu might look like this:
  3897.  
  3898.         %
  3899.         SECTION MENU
  3900.         _PICK_SECTION Disgrace "All areas" =
  3901.         _MAKE_SECTION Disgrace "Make area list"
  3902.         _MY_SECTION   Disgrace "Use area list"
  3903.         _SHOW         Twit     "?Help" = C:\Hlp\Sections
  3904.         _MAIN         Twit     "Quit section menu"
  3905.         END Menu
  3906.         %
  3907.  
  3908.  
  3909.     Page 70                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  3910.  
  3911.  
  3912.     The _MAKE_SECTION menu command allows callers to add/delete message
  3913.     and/or file areas to their section. The _MY_SECTION menu command then
  3914.     allows callers to select their UDS. It is a good idea to include the
  3915.     "All areas" option so that callers can quickly and easily reset their
  3916.     area list to all areas without having to individually add message and
  3917.     file areas.
  3918.  
  3919.  
  3920.  
  3921.     3.12.4 RELATED CONTROL FILE OPTIONS
  3922.  
  3923.     There are several options in the Session Section of your control
  3924.     file that you may need to define:
  3925.  
  3926.         USES MAKE c:\help\makesec
  3927.  
  3928.     This option defines the help file that will be shown before users
  3929.     start making their own user defined section or if they press '?' to
  3930.     get help.
  3931.  
  3932.  
  3933.         MAKESECTION ABC
  3934.  
  3935.     This option defines the section that callers will be dumped into while
  3936.     editing their section. Consider that if a user is inside their UDS,
  3937.     they could not add any new areas, because no more areas would be
  3938.     available to them! You should define this option.
  3939.  
  3940.  
  3941.         LOGON SECTION
  3942.  
  3943.     This option defines the section which will be assigned to all new
  3944.     callers to your system without sysop or caller intervention.
  3945.  
  3946.  
  3947.         USES SECTMENU
  3948.  
  3949.     This option defines the so-called "ASCII" menu to replace the "normal"
  3950.     Opus menu.
  3951.  
  3952.  
  3953.         SECTION
  3954.  
  3955.     This option is not in the Session Section of your control file. Look
  3956.     for it instead in the message and file area definitions. It defines
  3957.     the section(s) to which the particular message or file area belongs.
  3958.  
  3959.  
  3960.     As ever, full details of these control file option may be found in
  3961.     section 2 of the Technical Reference Manual.
  3962.  
  3963.  
  3964.  
  3965.      
  3966.      
  3967.     SETTING UP OPUS V1.70                                        Page 71 
  3968.      
  3969.      
  3970.     3.12.5 SAFETY FEATURE
  3971.  
  3972.     Sections have a special inbuilt safety feature to protect callers
  3973.     from themselves and you: if a caller goes into a section and fails to
  3974.     get into a file or message area for three tries, Opus will drop the
  3975.     caller back to the "default" section that you defined in your control
  3976.     file with the MAKESECTION option. You _did_ define that option ...
  3977.     better go do it now!
  3978.  
  3979.  
  3980.  
  3981.     3.13 TIME ZONE SETTINGS
  3982.  
  3983.     Internally, Opus always works in Universal Coordinated Time (what was
  3984.     called Greenwich Mean Time when grizzled Opus veterans were not so
  3985.     grizzled). You are rarely affected by this. In fact, you may not have
  3986.     even realized it until now. Your SCHED.BBS (or whatever name you have
  3987.     defined in your control file for the USES SCHEDULE option) file is
  3988.     probably in local time ... so you need to tell Opus how to convert
  3989.     the time or you will have to learn to live in interesting times.
  3990.  
  3991.     Please find the item (below) that applies to you and put it into your
  3992.     AUTOEXEC.BAT file.
  3993.  
  3994.  
  3995.         USA EASTERN
  3996.         ----------------------------------------------
  3997.         For standard time......... SET TZ=EST05
  3998.         For daylight time......... SET TZ=EST05EDT
  3999.  
  4000.         USA CENTRAL
  4001.         ----------------------------------------------
  4002.         For standard time......... SET TZ=CST06
  4003.         For daylight time......... SET TZ=CST06CDT
  4004.  
  4005.         USA MOUNTAIN
  4006.         ----------------------------------------------
  4007.         For standard time......... SET TZ=MST07
  4008.         For daylight time......... SET TZ=MST07MDT
  4009.  
  4010.         USA PACIFIC
  4011.         ----------------------------------------------
  4012.         For standard time......... SET TZ=PST08
  4013.         For daylight time......... SET TZ=PST08PDT
  4014.  
  4015.  
  4016.  
  4017.     Page 72                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  4018.  
  4019.  
  4020.         OTHER (STANDARD) TIME ZONES
  4021.         ----------------------------------------------
  4022.         Yukon..................... SET TZ=YST09
  4023.         Alaska.................... SET TZ=AST10
  4024.         Bering.................... SET TZ=BST11
  4025.         Bratislava,
  4026.             Czechoslovakia........ SET TZ=CET-1
  4027.         Sydney,
  4028.             Australia............. SET TZ=EST-10
  4029.         Perth,
  4030.             Western Australia..... SET TZ=WST-8
  4031.  
  4032.  
  4033.         The `TZ' means `Time Zone'.
  4034.         The first three characters are the initials used the time zone
  4035.         The final three characters represent the deviation from Universal
  4036.         Coordinated Time (UTC -- blame the French for it not being UCT).
  4037.  
  4038.      
  4039.      
  4040.     THE OPUS EVENT SYSTEM                                        Page 73 
  4041.      
  4042.      
  4043.  
  4044.                                  +-------------------------------------+
  4045.                                  |  Events or ...                      |
  4046.                                  |                                     |
  4047.                                  |  things that go bump in the night.  |
  4048.                                  +-------------------------------------+
  4049.  
  4050.  
  4051.     4.0 THE OPUS EVENT SYSTEM
  4052.  
  4053.     The first thing you need to understand about how events work in Opus
  4054.     V1.70 is to understand that the term "event" is convenient, but sort
  4055.     of misleading in some cases. What we are talking about are behaviour
  4056.     windows that modify the default behaviour that you have set in the
  4057.     Opus control file. Events, for some fixed period, change the way Opus
  4058.     will work during that period.
  4059.  
  4060.     In Opus, you can have an event that runs every day, just weekdays,
  4061.     just weekends, one day every week, or every Monday-Wednesday-Friday.
  4062.     Events can also run past midnight.
  4063.  
  4064.     You can have as many as 254 events in Opus, or as few as 1. There is
  4065.     no requirement that you have an external event every day. The event
  4066.     manager assumes that there is an event 24 hours away, and looks for
  4067.     anything closer. If it does not find anything, Opus will just report
  4068.     that the next event is 24 hours away and go on, 24 hours later,
  4069.     (assuming there have not been any calls in or out to reset the event
  4070.     manager), Opus will just go check the event file again.
  4071.  
  4072.     As virtually everyone using Opus 1.03 discovered, Microsoft's time
  4073.     library had a glaring weakness when dealing with UTC (Universal
  4074.     Coordinated Time, what used to be called GMT). Starting with V1.10,
  4075.     Opus does NOT use Microsoft's time library. The environment and the
  4076.     DOS clock are read directly.
  4077.  
  4078.  
  4079.  
  4080.     4.1 TYPES OF EVENT
  4081.  
  4082.     There are seven basic types of event or behaviour window:
  4083.  
  4084.     Matrix:         Changes the way Opus handles outgoing and incoming
  4085.                     mail (often referred to as Z events).
  4086.  
  4087.     User:           Changes the way Opus handles users, giving them more,
  4088.                     or less, time and download privileges.
  4089.  
  4090.     Scan all:       Forces Opus to scan all echomail message areas for new
  4091.                     outgoing echomail messages.
  4092.  
  4093.     Housecleaning:  Deletes all those pesky .$$5 files in the outbound
  4094.                     mail holding subdirectory.
  4095.  
  4096.     External:       Halts Opus operations to return control to DOS or a
  4097.                     batch file.
  4098.  
  4099.  
  4100.     Page 74                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  4101.  
  4102.  
  4103.     Yell:           Opus will allow the remote user to request help from
  4104.                     the Sysop if allowed.
  4105.  
  4106.     Mailer:         This event can be used to control whether the Opus
  4107.                     internal mailer or an external mailer is used.
  4108.  
  4109.  
  4110.     Some types of event or behaviour window come in two flavours:
  4111.  
  4112.     Forced:         These events MUST start at a certain time, and Opus
  4113.                     will get Guido to do whatever it takes to prevent
  4114.                     human users from interfering with the start of these
  4115.                     events. If for some reason Opus is inactive when a
  4116.                     forced event should have started, Opus will execute
  4117.                     the event as soon as it starts up again.
  4118.  
  4119.     Informal:       These events start and end on a more flexible
  4120.                     schedule. They do not interfere with human callers by
  4121.                     limiting the caller's time. Instead, they start as
  4122.                     soon as Opus is free after the specified start time
  4123.                     for the event. Opus will execute any informal events
  4124.                     that have not run if it has been inactive for some
  4125.                     reason.
  4126.  
  4127.  
  4128.     The following list shows which events are which flavour (if any):
  4129.  
  4130.     External event: can be forced or informal or neither (see below).
  4131.  
  4132.     Matrix window:  always informal, unless they occur in those periods
  4133.                     when you do not allow human callers.
  4134.  
  4135.     User events:    always informal.
  4136.  
  4137.     Scan event:     always informal.
  4138.  
  4139.     Yell event:     neither forced nor informal.
  4140.  
  4141.     Mailer event:   always forced.
  4142.  
  4143.     Housecleaning:  always informal.
  4144.  
  4145.  
  4146.  
  4147.     4.2 EXTERNAL EVENTS
  4148.  
  4149.     External events are used when you want Opus to stop operating and
  4150.     return control to your batch file. You can specify external events as
  4151.     being Forced or Informal or you just create an external event without
  4152.     declaring it to be either Forced or Informal. In that case the event
  4153.     will affect users who log on before the start of the event, but Opus
  4154.     will make no effort to execute the event if it was skipped for some
  4155.     reason and is now over.
  4156.  
  4157.      
  4158.      
  4159.     THE OPUS EVENT SYSTEM                                        Page 75 
  4160.      
  4161.      
  4162.     There are two inter-relationships between External events and Matrix
  4163.     Behaviour Windows (Z events) that should be pointed out:
  4164.  
  4165.       *  There is a field called an "errorlevel offset" in the Matrix
  4166.          Behaviour Window. This offset will be ADDED to the errorlevel from
  4167.          any exit during that behaviour window.
  4168.  
  4169.       *  The "Exits suppressed" flag in Matrix Behaviour Windows, does NOT
  4170.          affect External Events. It only affects matrix exits such as
  4171.          "Exit after Arcmail" and "Exit after Matrix". It is used to
  4172.          prevent your system from performing a matrix exit after a mail
  4173.          session (eg you may wish to process all incoming mail once only
  4174.          after the end of the zone mail hour so that your system is
  4175.          available for incoming mail for the whole hour).
  4176.  
  4177.     Generally it is better to make all external events last 0 minutes and
  4178.     either Forced or Informal so that Opus will release control to the
  4179.     batch file for the minimum amount of time necessary to perform the
  4180.     specified task or whatever. If you give the event some length, and it
  4181.     is completed before that time is up, Opus will exit again with the
  4182.     same errorlevel to the batch file over and over until the time period
  4183.     specified for the external event has passed.
  4184.  
  4185.  
  4186.  
  4187.     4.3 USER EVENTS
  4188.  
  4189.     User Events are more accurately described as User Behaviour Windows.
  4190.     They allow you a great deal of flexibility in how Opus will treat
  4191.     human callers during the time window in which they are enabled.
  4192.  
  4193.     There are two active fields in a user behaviour window: the Download
  4194.     multiplier and the Time multiplier. These fields only affect callers
  4195.     who have a privilege level below ASSISTANT SYSOP. SYSOP and ASSISTANT
  4196.     SYSOP are not affected by these behaviour windows.
  4197.  
  4198.     A value of "20" is considered to be neutral, users will get exactly
  4199.     what you have specified in your Opus control file. A value of "10" in
  4200.     the Time Multiplier would give users 1/2 the amount of time specified
  4201.     in the PRM file. A value of 50 in the Download Multiplier would give
  4202.     users two-and-a-half times as many kilobytes of download access during
  4203.     the specified time window.
  4204.  
  4205.  
  4206.  
  4207.     Page 76                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  4208.  
  4209.  
  4210.     If you have set your Opus control file so that it reports something
  4211.     like this:
  4212.  
  4213.          DEFINE Normal Cume       120
  4214.          DEFINE Normal Time        60
  4215.          DEFINE Normal File Limit 500
  4216.  
  4217.     and you have a user behaviour window with a Download Multiplier of 30
  4218.     and a Time Multiplier of 40, a NORMAL user would get:
  4219.  
  4220.          DEFINE Normal Cume 120 * 40/20       =  240
  4221.          DEFINE Normal Time 60 * 40/20        =  120
  4222.          DEFINE Normal File Limit 500 * 30/20 =  750
  4223.  
  4224.     If you had a user event with a Download Multiplier of 0 and a Time
  4225.     Multiplier of 10, a NORMAL user would get:
  4226.  
  4227.          DEFINE Normal Cume 120 * 10/20      =   60
  4228.          DEFINE Normal Time 60 * 10/20       =   30
  4229.          DEFINE Normal File Limit 500*  0/20 =    0
  4230.  
  4231.  
  4232.  
  4233.     4.4 MAILER EVENTS
  4234.  
  4235.     A mailer event lets you decide when you want to use the internal Opus
  4236.     mailer or an external mailer as a "front-end" to your Opus system.
  4237.  
  4238.     The external mailer command line is specified in the Opus control
  4239.     file. Whether you want to use the Opus internal mailer or the external
  4240.     mailer as your default mailer may also be set in the Opus control
  4241.     file. You can then use the mailer event to override the default
  4242.     setting in your Opus control file.
  4243.  
  4244.     If an external mailer is chosen, Opus loads and initializes itself,
  4245.     and then loads the external mailer. When a call comes in the mailer
  4246.     answers the phone. If it is another FidoNet system sending mail, the
  4247.     mailer handles everything. If it is a human calling in, the mailer is
  4248.     dropped out of memory and Opus takes over. Since Opus is already in
  4249.     memory and initialized this method is a LOT faster than the way other
  4250.     software deals with external mailers. However, it is memory intensive.
  4251.  
  4252.  
  4253.  
  4254.     4.5 MATRIX EVENTS
  4255.  
  4256.     Matrix events are more accurately described as Matrix behaviour
  4257.     windows. They are primarily used to control the way outbound calls are
  4258.     made. Should any calls be made? Should they be local or long distance
  4259.     calls? How do you define a "local" call? How often should calls be
  4260.     made?
  4261.  
  4262.     All matrix behaviour windows are considered to be informal except
  4263.     for those in which the behaviour window does not allow human callers.
  4264.  
  4265.      
  4266.      
  4267.     THE OPUS EVENT SYSTEM                                        Page 77 
  4268.      
  4269.      
  4270.     4.5.1 MATRIX EVENT FLAGS
  4271.  
  4272.     Matrix events have 7 possible flags. You do not have to set any of
  4273.     them if you do not wish to use their functionality. The Matrix event
  4274.     flags and their meanings are listed below:
  4275.  
  4276.     Mail            Allow outbound calls to placed during this window.
  4277.  
  4278.     Local-Only      Only make calls that are equal to or below the cost of
  4279.                     the local cost field.
  4280.  
  4281.     No-Local        Only make calls that are above the value stored in the
  4282.                     local cost field.
  4283.  
  4284.     Continuous-Mail Only call those systems in the nodelist that are
  4285.                     marked as being able to handle continuous incoming
  4286.                     mail. (CM in FidoNet.)
  4287.  
  4288.     Suppress-Exits  Do not allow matrix exits for packing, unpacking or
  4289.                     otherwise processing incoming mail.
  4290.  
  4291.     Mail-Only       Do not allow human callers online. Just handle mail.
  4292.  
  4293.     Requests        Allow file requests to be honoured. (Usually disabled
  4294.                     during the zone mail hour.)
  4295.  
  4296.     NO-Out-Reqs     Do NOT allow Opus to make outbound requests. This only
  4297.                     works with oMMM V1.70 and OMAIL V0.41 and above by
  4298.                     creating special names for the file that forces Opus
  4299.                     to make calls. Do NOT send outbound requests during
  4300.                     Zone Mail Hour.
  4301.  
  4302.  
  4303.  
  4304.     4.5.2 MATRIX EVENT FIELDS
  4305.  
  4306.     Matrix events have 5 possible numeric fields. You do not have to set
  4307.     any of them if you do not wish to use their functionality. The Matrix
  4308.     event fields are set out below:
  4309.  
  4310.     Local Cost      Range: 0-255
  4311.  
  4312.                     Set the value that will be considered to be a "local"
  4313.                     phone call during this event. If you have the Local-
  4314.                     Only flag set, then only calls to those boards listed
  4315.                     in your NODELIST.DAT file that are at or below the
  4316.                     value stored in Local Cost will be made.
  4317.  
  4318.                     If you have the No-Local flag set, then only calls to
  4319.                     those boards that have costs ABOVE this value will be
  4320.                     made.
  4321.  
  4322.  
  4323.  
  4324.     Page 78                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  4325.  
  4326.  
  4327.     Error Offset    Range: 0-255
  4328.  
  4329.                     A value that will be added to any exits made during
  4330.                     this event. One use would be to pack mail with
  4331.                     different routing verbs at different times of the day.
  4332.                     You might want to pack all local mail as HOLD during
  4333.                     Zone Mail Hour to keep your board free during ZMH.
  4334.  
  4335.     Call-Frequency  Range: 5-40
  4336.                     (5 is more frequent, 40 is less frequent)
  4337.  
  4338.                     Controls how often Opus will check the outbound mail
  4339.                     directory (ie tickle the hard disk unless you are
  4340.                     running a disk cache) looking for mail to be sent.
  4341.                     Opus will not find something every time, but it will
  4342.                     reinitialize the modem each time.
  4343.  
  4344.                     The default value is 14. With this setting Opus will
  4345.                     place an outbound call roughly every 90 seconds. With
  4346.                     a setting of 5, Opus will try to make a call roughly
  4347.                     every 10 seconds, with a value of 40, it will be
  4348.                     roughly 12 minutes between calls.
  4349.  
  4350.     Request limit   Range: 0-255
  4351.  
  4352.                     Controls the number of minutes that Opus will allow
  4353.                     another system to file request from your system. Opus
  4354.                     will check AFTER each requested file is sent to see if
  4355.                     the specified number of minutes has expired. If it
  4356.                     has, Opus will hang up. Otherwise, Opus will proceed
  4357.                     to send the next requested file, even if the time it
  4358.                     takes to send that file will exceed the total number
  4359.                     of minutes specified in the request limit.
  4360.  
  4361.  
  4362.     The word "roughly" came up in that paragraph a lot. The reason is that
  4363.     the time between calls has a random factor of +/-25%. So if you have
  4364.     the default frequency set, the average time between calls will be 90
  4365.     seconds, but it might be as low as 45 seconds or as high as 105
  4366.     seconds. With a value of 40, the time between calls might be as low as
  4367.     8 minutes and as long as 16 minutes.
  4368.  
  4369.     The formula for creating the time to the next outbound call is:
  4370.  
  4371.         time = (45 + (rand() % 31)) * call-frequency * call-frequency
  4372.                ------------------------------------------------------
  4373.                                  14 * 14
  4374.  
  4375.  
  4376.  
  4377.      
  4378.      
  4379.     THE OPUS EVENT SYSTEM                                        Page 79 
  4380.      
  4381.      
  4382.     4.6 YELL EVENTS
  4383.  
  4384.     Yell events are used to determine when the sysop wishes to allow
  4385.     callers to page the sysop for an online chat. If no yell events are
  4386.     specified, then users will be told that yell is disabled whenever they
  4387.     choose the Y)ell menu command.
  4388.  
  4389.     If a yell event exists, and a caller pages the sysop between the
  4390.     starting and ending time defined by the yell event, Opus will cause
  4391.     the speaker on the sysop's computer to beep. The length of this
  4392.     beeping can be controlled by using the "errorlevel" field to set the
  4393.     number of seconds for which the speaker is to beep.
  4394.  
  4395.  
  4396.  
  4397.     4.7 SCAN ALL EVENTS
  4398.  
  4399.     Scan all events cause Opus to scan all echomail message areas, except
  4400.     inbound-only areas, for new echomail messages to be scanned out.
  4401.     This only works if Opus is handling echomail processing internally.
  4402.  
  4403.  
  4404.  
  4405.     4.8 HOUSE-CLEANING EVENTS
  4406.  
  4407.     House-cleaning events are used to clean out the .$$n files in the Opus
  4408.     outbound mail holding directory (or directories if you are using zoned
  4409.     outbound directories. These flag files are incremented from .$$1 to
  4410.     .$$5 to prevent Opus from wasting its time and your money making
  4411.     unsuccessful calls to systems which CONNECT but do not successfully
  4412.     complete a mail transfer for whatever reason. If .$$5 flag files are
  4413.     not deleted, Opus would not make calls to those systems again. It is
  4414.     therefore a good idea to run a house-cleaning event at least once a
  4415.     day, especially if your system is a major mail mover.
  4416.  
  4417.  
  4418.  
  4419.  
  4420.  
  4421.     Page 80                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  4422.  
  4423.  
  4424.     4.9 OVERLAPPING BEHAVIOUR WINDOWS
  4425.  
  4426.     The end of a behaviour window is considered to be as important as the
  4427.     start of an event, so Opus also tracks the end of an active event. Two
  4428.     events of the same kind can overlap. If you have two windows that
  4429.     overlap, Event 1 starts at 1:00 and ends at 5:00, Event 2 starts at
  4430.     2:00 and ends at 3:00 like this:
  4431.  
  4432.  
  4433.                      ┌── Z event 2 ──┐
  4434.                      │               │
  4435.             1:00    2:00    3:00    4:00    5:00
  4436.              │       (A)     (B)     (C)     │
  4437.              │                               │
  4438.              └────────── Z event 1 ──────────┘
  4439.  
  4440.  
  4441.          A) Next event at 2:00, Event 1 is active.
  4442.          B) Next event at 4:00, Event 2 is active.
  4443.          C) Next event at 5:00, Event 1 is active.
  4444.  
  4445.  
  4446.  
  4447.     4.10  ADVANCED EVENTS FOR TIME TRAVELLERS
  4448.  
  4449.     One neat trick that Opus will allow you to use is that events can
  4450.     begin and end in different time zones. This can be a lot of help when
  4451.     you are trying to handle mail routing through your lowest cost carrier
  4452.     and dealing with FidoNet's Zone Mail Hour.
  4453.  
  4454.     For example, Sysop-X (Guido?) has a Matrix Event that starts at
  4455.     midnight local time (0:00 hours) and ends at 9:00 UTC (the start of
  4456.     FidoNet's Zone Mail Hour in Zone 1). The next Matrix Event runs from
  4457.     9:00 UTC to 10:00 UTC (Zone Mail Hour in Zone 1) and then another
  4458.     event takes over at 10:00 UTC and ends at 6:40 local time.
  4459.  
  4460.     Why go through all that?  Simple, when Daylight Savings time ends all
  4461.     Sysop-X has to do is reset the time on the computer and the TZ
  4462.     environment variable. The events will automatically swing around and
  4463.     adjust themselves to either Daylight or Standard time accordingly.
  4464.  
  4465.      
  4466.      
  4467.     THE OPUS EVENT SYSTEM                                        Page 81 
  4468.      
  4469.      
  4470.     This is what Sysop-X's schedule looks like:
  4471.  
  4472.        Tag  Day    Start    End   Run  Exit Mail LO NL CM SX MO RQ FR
  4473.  
  4474.     000 Z SMTWTFS  0:00 L  9:00 U ENA       Y    N  N  Y  N  N  Y  10
  4475.     001 X SMTWTFS  8:59 U  8:59 U ENA F 030
  4476.     002 H SMTWtFS  9:00 U  9:00 U ENA            Clean Holding Area
  4477.     003 Z SMTWTFS  9:00 U 10:00 U ENA   050 Y    N  11 N  N  Y  Y  20
  4478.     004 U SMTWTFS 10:00 U  6:00 L ENA       User event, DL = 50 Time = 40
  4479.     005 Z SMTWTFS 10:00 U  6:40 L ENA       Y    N  N  Y  N  N  Y  10
  4480.     006 X SMTWTFS 10:00 U 10:00 U ENA F 050
  4481.     007 S SMTWTFS  5:45 L  5:45 L ENA           Scan All Echo Areas
  4482.     008 X SMTWTFS  5:46 L  5:46 L ENA I 060
  4483.     009 U SMTWTFS  6:00 L  8:00 L ENA       User event, DL = 20 Time = 20
  4484.     010 X SMTWTFS  6:40 L  6:40 L ENA I 059
  4485.     011 Z sMTWTFs  6:40 L 18:00 L ENA       Y    Y  N  Y  N  N  Y  30
  4486.     012 Z Smtwtfs  6:40 L 17:00 L ENA       Y   45  N  Y  N  N  Y  30
  4487.     013 Z smtwtfS  6:40 L 23:00 L ENA       Y   40  N  Y  N  N  Y  24
  4488.     014 U Smtwtfs  8:00 L 18:00 L ENA       User event, DL = 30 Time = 30
  4489.     015 U sMTWTFs  8:00 L 15:30 L ENA       User event, DL = 60 Time = 40
  4490.     016 U smtwtfS  8:00 L 22:30 L ENA       User event, DL = 30 Time = 30
  4491.     017 Y SMTWTFS 10:00 L 21:00 L ENA            Yell Event
  4492.     018 U sMTWTFs 15:30 L 22:30 L ENA       User event, DL = 20 Time = 20
  4493.     019 Z Smtwtfs 17:00 L 22:00 L ENA       Y   10  N  Y  N  N  Y  32
  4494.     020 U Smtwtfs 18:00 L 22:30 L ENA       User event, DL = 15 Time = 15
  4495.     021 Z sMTWTFs 18:00 L 22:00 L ENA       Y   10  N  Y  N  N  Y  24
  4496.     022 X SmtwtfS 21:00 L 21:00 L ENA I 055
  4497.     023 Z SMTWTFs 22:00 L 23:00 L ENA       Y   20  N  Y  N  N  Y  24
  4498.     024 U SMTWTFS 22:30 L  9:00 U ENA       User event, DL = 30 Time = 30
  4499.     025 Z SMTWTFS 23:00 L  0:00 L ENA       Y   40  N  Y  N  N  Y  12
  4500.  
  4501.     000  Make calls Anywhere until ZMH
  4502.     001  External event to pack logs before ZMH
  4503.     002  Clean out all *.$$? flags in Outbound dir.
  4504.     003  Zone Mail Hour, No humans, do not call the local boards
  4505.     004  Users get 2+ times download/time
  4506.     005  End of Zone Mail hour, early morning Mail status
  4507.     006  End of Zone Mail hour, Renumber message areas
  4508.     007  This is the Scan All event
  4509.     008  Do morning Polls
  4510.     009  Users get "normal" time/download
  4511.     010  Morning external, unpack MegaList, run POLE_MQ
  4512.     011  Weekday Mail status, no long distance calls.
  4513.     012  Sunday morning/afternoon Mail status
  4514.     013  Saturday Mail status
  4515.     014  Users get extended time/dl on weekends
  4516.     015  Users Weekday get extended time/download during business hours
  4517.     016  Users get extended time/dl on weekends
  4518.     017  Daily Yell event
  4519.     018  Users get limited time/dl during "prime time"
  4520.     019  Sunday 5:00 p.m. Mail. Reach Out America off
  4521.     020  Users get limited time/dl during "prime time"
  4522.     021  Early evening mail status, Use PC Pursuit
  4523.     022  Evening Poll set up.
  4524.     023  Reach Out America starts. Call in US, but outside of California
  4525.  
  4526.  
  4527.     Page 82                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  4528.  
  4529.  
  4530.     024  Users get 50% extra 10:30 p.m. to ZMH
  4531.     025  Make calls inside California, but no non-USA calls
  4532.  
  4533.  
  4534.  
  4535.     4.11 HOW TO SET UP EVENTS
  4536.  
  4537.     To set up events in Opus V1.70, the program to use is Doug Boone's
  4538.     OEVENT.EXE Version 0.81. It was used to generate the event listings in
  4539.     section 4.10 above. For further details on the operation of OEVENT,
  4540.     please refer to the documentation that comes with OEVENT.
  4541.      
  4542.      
  4543.     WHEN THE SYSOP IS AT THE KEYBOARD                            Page 83 
  4544.      
  4545.      
  4546.  
  4547.                           +--------------------------------------------+
  4548.                           |  "He's crazy!"                             |
  4549.                           |  "Yeah, but he has all the machine guns."  |
  4550.                           |                                            |
  4551.                           |                             -- Miami Vice  |
  4552.                           +--------------------------------------------+
  4553.  
  4554.  
  4555.     5.0 WHEN THE SYSOP IS AT THE KEYBOARD
  4556.  
  4557.     Opus has four basic modes:
  4558.  
  4559.               * When the system is waiting for a call or an event;
  4560.  
  4561.               * Sysop "calling" the system from the keyboard;
  4562.  
  4563.               * When a caller is on-line; and
  4564.  
  4565.               * Chat mode.
  4566.  
  4567.     The following sections describe the use of the local keyboard in each
  4568.     of these modes.
  4569.  
  4570.  
  4571.  
  4572.     5.1 WHEN OPUS IS WAITING FOR A CALL
  4573.  
  4574.     When Opus is sitting at the "Ready" prompt waiting for your next lucky
  4575.     caller, or the next scheduled event or matrix behaviour window, you
  4576.     may:
  4577.  
  4578.               * Hold down CONTROL and press C
  4579.                 Hold down ALT and press Q
  4580.  
  4581.                 This quits Opus and returns you to DOS.
  4582.  
  4583.  
  4584.               * Press ESCape
  4585.  
  4586.                 This allows you to enter a DOS command. When the DOS
  4587.                 command completes, you will be returned to Opus. Opus does
  4588.                 not busy out the phone line during the lifetime of the DOS
  4589.                 command.
  4590.  
  4591.  
  4592.               * Press F1 - F10 function keys
  4593.  
  4594.                 This runs the batch file associated with the function key
  4595.                 (see below for setting up these batch files).
  4596.  
  4597.  
  4598.  
  4599.  
  4600.     Page 84                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  4601.  
  4602.  
  4603.               * Press Y
  4604.  
  4605.                 This overrides the scheduled Yell event and forces Yell
  4606.                 ON;
  4607.  
  4608.  
  4609.               * Press U
  4610.  
  4611.                 This overrides the scheduled Yell event and forces Yell
  4612.                 OFF;
  4613.  
  4614.  
  4615.               * Press T
  4616.  
  4617.                 This forces Opus to follow the scheduled Yell event;
  4618.  
  4619.  
  4620.               * Press the CURSOR UP key
  4621.  
  4622.                 This increases the delay between outbound mail calls by
  4623.                 Opus. The bigger the number, the longer the delay is
  4624.                 between calls, the smaller number, the more often Opus
  4625.                 will make calls. It is a manual way to override the
  4626.                 outbound call frequency you set in the event file (see
  4627.                 Opus Event System section of this manual). With a setting
  4628.                 of 5 Opus tries to make an outbound call every 10 seconds
  4629.                 and with a setting of 40, Opus tries to make an outbound
  4630.                 call every 10 to 15 minutes.
  4631.  
  4632.  
  4633.               * Press the CURSOR DOWN key
  4634.  
  4635.                 This decreases the delay between outbound mail calls by
  4636.                 Opus. The bigger the number, the longer the delay is
  4637.                 between calls, the smaller number, the more often Opus
  4638.                 will make calls. It is a manual way to override the
  4639.                 outbound call frequency you set in the event file (see
  4640.                 Opus Event System section of this manual). With a setting
  4641.                 of 5 Opus tries to make an outbound call every 10 seconds
  4642.                 and with a setting of 40, Opus tries to make an outbound
  4643.                 call every 10 to 15 minutes.
  4644.  
  4645.  
  4646.      
  4647.      
  4648.     WHEN THE SYSOP IS AT THE KEYBOARD                            Page 85 
  4649.      
  4650.      
  4651.               * Press M to select the Matrix Menu
  4652.  
  4653.                 This option displays the current matrix behaviour window
  4654.                 setting and gives you the option of checking the status of
  4655.                 outbound mail (Information), polling another matrix system
  4656.                 (Poll), unpacking any inbound mail bundles (Unpack), scan
  4657.                 all your EchoMail message areas (Scan), clear the
  4658.                 ########.$$n files from your outbound directory or
  4659.                 directories (Clear undialables) or return to Opus (Quit).
  4660.                 While you are in the Matrix Menu, Opus will busy out the
  4661.                 phone line using the method specified in the control file
  4662.                 (refer to the BUSY option in section 2 of the Technical
  4663.                 Reference Manual).
  4664.  
  4665.  
  4666.               * Press C
  4667.  
  4668.                 This forces Opus to make an outbound call now provided
  4669.                 you have some outbound mail to deliver, the current matrix
  4670.                 behaviour window and local call cost settings allow
  4671.                 outbound calls at this time etc. You may have to press C
  4672.                 several times to attract the attention of Opus. This is
  4673.                 normal behaviour.
  4674.  
  4675.  
  4676.               * Press K
  4677.  
  4678.                 This lets you log on to your system in "keyboard mode".
  4679.                 (This is sometimes called "testmode" by a certain LCD.)
  4680.                 See further the keyboard mode section below.
  4681.  
  4682.  
  4683.  
  4684.     5.1.1 SETTING UP F1-F10 BATCH FILES
  4685.  
  4686.     To run a batch file associated with one of the function keys F1
  4687.     through F10, batch files with the names F1.BAT through F10.BAT must
  4688.     exist in the Opus miscellaneous directory (ie the directory defined in
  4689.     your control file with the PATH MISC option).
  4690.  
  4691.     F1 usually means help, right?  (I hope you pass this impromptu test or
  4692.     Guido will ...) Right. My F1.BAT file contains the following, which is
  4693.     very useful for those of us whose memories are in recess:
  4694.  
  4695.  
  4696.  
  4697.     Page 86                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  4698.  
  4699.  
  4700.     @echo off
  4701.     cls
  4702.     echo
  4703.     echo
  4704.     echo Function Key Batch Files
  4705.     echo
  4706.     echo F 1 - This help summary
  4707.     echo F 2 - Run User File Manager
  4708.     echo F 3 - List Opus.log
  4709.     echo F 4 - List disk cache stats
  4710.     echo F 5 - Drop to DOS, busy line out
  4711.     echo F 6 - Run Event Manager
  4712.     echo F 7 - Run Opus-Fam
  4713.     echo F 8 -
  4714.     echo F 9 -
  4715.     echo F10 -
  4716.     echo
  4717.  
  4718.  
  4719.     A "skeleton" or "generic" batch file which may be used to implement
  4720.     the other function key batch files is set ut below with comments (do
  4721.     not enter the comments if you decide to use it!):
  4722.  
  4723.  
  4724.     @echo off                       ;avoid screen clutter DOS 3.3+
  4725.     at com%PORT%: h1                ;busy out the phone line
  4726.     <program name> <parameters>     ;insert your program etc here
  4727.     at com%PORT%: h0                ;hangup the modem
  4728.     goto end                        ;just to be safe
  4729.     :END                            ; "   "  "   "
  4730.     c:                              ; "   "  "   "
  4731.     cd \opus                        ; "   "  "   "
  4732.  
  4733.  
  4734.     * AT is a small program which sends AT commands to your modem; if you
  4735.       do not have this program (stocked by most BBS file areas) you may be
  4736.       able to use:  ECHO ATH1 > COM1:  and  ECHO ATH0 > COM1:
  4737.  
  4738.     * %PORT% is a DOS environment variable containing the communications
  4739.       port which is used by Opus on the system invoking the batch file
  4740.       (very handy if you are running a multi-line system). You can set it
  4741.       by placing SET PORT=1 (for com1:) in your NERF.BAT batch file;
  4742.       alternatively you can simply hardcode the entry in the function
  4743.       batch file like so:  AT COM1: H0  and  AT COM1: H1
  4744.  
  4745.     * <program name> inserting COMMAND here will let you drop to DOS and
  4746.       busy out the phone line.
  4747.  
  4748.  
  4749.  
  4750.      
  4751.      
  4752.     WHEN THE SYSOP IS AT THE KEYBOARD                            Page 87 
  4753.      
  4754.      
  4755.     5.2 SYSOP CALLING FROM KEYBOARD
  4756.  
  4757.     When Opus is sitting at the "Ready" prompt waiting for a call or the
  4758.     next scheduled event, the sysop can log on to the system by pressing
  4759.     K. Opus will ask you to confirm it is you, will ask for your password
  4760.     etc and then log you on to the system.
  4761.  
  4762.     The keyboard works just like it would if you were calling in using a
  4763.     modem. There is only one primary difference. When Opus asks for your
  4764.     name, you can quickly get back to DOS by just pressing ENTER. You can
  4765.     also terminate Opus <ouch> and get back to DOS by typing ALT-X from
  4766.     anywhere inside Opus (this also works remotely, Opus will log you off
  4767.     without asking you any questions at all, if you are using Avatar
  4768.     emulation to transfer ALT keys over the modem line -- see further
  4769.     below).
  4770.  
  4771.     A few things are different. If you find that Opus is not listening to
  4772.     your every keystroke when you try to abort searches and listings, and
  4773.     you have VIDEO IBM set in the Equipment Section of the control file,
  4774.     change it to VIDEO DOS and Opus may just pay more attention to your
  4775.     pounding on the keyboard. Also note that if you have IBM VIDEO set,
  4776.     any Avatar or ANSI graphics commands will be written straight to the
  4777.     screen ... not a very pretty sight unless you have honed your skill to
  4778.     translate these commands on the fly.
  4779.  
  4780.     In keyboard mode OpEd, the Opus full-screen editor, accepts additional
  4781.     keyboard commands as follows:
  4782.  
  4783.               ALT-R  Open a quotation window
  4784.               ALT-Q  Copy four lines of quotation into reply
  4785.               ALT-X  Abort message
  4786.               ALT-W  Save message
  4787.  
  4788.               +      Copy four lines of quotation into reply
  4789.  
  4790.               TAB    (Insert 8 spaces (insert mode)
  4791.                      (Overwrite 8 characters (overwrite mode)
  4792.  
  4793.               PgUp   Scroll message up
  4794.               PgDn   Scroll message down
  4795.               CUP    Cursor up
  4796.               CUD    Cursor down
  4797.               CUL    Cursor left
  4798.               CUR    Cursor right
  4799.  
  4800.               HOME   Move cursor to beginning of line
  4801.               END    Move cursor to end of line
  4802.  
  4803.               INS    Turn insert mode on
  4804.               DEL    Delete character under cursor
  4805.  
  4806.               F1     Help screen
  4807.               F10    Editor Menu
  4808.  
  4809.     If you call your system remotely and have Avatar emulation turned on,
  4810.  
  4811.  
  4812.     Page 88                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  4813.  
  4814.  
  4815.     and are using a proper Avatar terminal emulator (such as TinyTerm or
  4816.     FrontDoor), you can transfer those keys over the phone line and use
  4817.     them in OpEd (to use OpEd you need at least an 80x25 screen AND screen
  4818.     clear turned on). To allow this transfer, press ScrollLock in
  4819.     FrontDoor, or Shift-F1 in TinyTerm, which will tell these programs to
  4820.     transfer any function keys remotely. The same key that turns this
  4821.     feature on in these two terminal programs turns it off.
  4822.  
  4823.  
  4824.  
  4825.     5.3 WHEN A CALLER IS ONLINE
  4826.  
  4827.     When a caller is online, there are two different keyboard modes
  4828.     available: (1) the sysop can type commands as if the caller had typed
  4829.     them, and (2) the sysop can obtain information about the caller and
  4830.     change some of it while the caller is still online -- Opus will
  4831.     remember any changes made for next time the caller logs on.
  4832.  
  4833.     The full list of keyboard commands available while a caller is online
  4834.     are set out below:
  4835.  
  4836.  
  4837.               <up arrow>          Add 1 minute to the caller's time
  4838.  
  4839.               <down arrow>        Subtract 1 minute from the caller's
  4840.                                   time.
  4841.  
  4842.               C                   Go into chat mode (see below).
  4843.  
  4844.               CONTROL-X           Ignominiously hang up on the caller!
  4845.  
  4846.               A (or CONTROL-A)    Turn on the local keyboard. Opus will
  4847.                                   take commands from your keyboard or from
  4848.                                   the modem, but your keyboard had
  4849.                                   priority.
  4850.  
  4851.               <ESC>               Turn off the local keyboard.
  4852.  
  4853.               - ("minus")         Lower the privilege level of the caller
  4854.                                   by one notch. Starting with Opus V1.70,
  4855.                                   this also changes the caller's time and
  4856.                                   download allowances to reflect those
  4857.                                   associated with the new privilege level
  4858.                                   for this call.
  4859.  
  4860.               + ("plus")          Raise the caller's privilege level by
  4861.                                   one notch. Starting with Opus V1.70,
  4862.                                   this also changes the caller's time and
  4863.                                   download allowances to reflect those
  4864.                                   associated with the new privilege level
  4865.                                   for this call.
  4866.  
  4867.               O (or CONTROL-O)    Turn off SNOOP. Only status-type
  4868.                                   messages appear on your monitor when the
  4869.                                   SNOOP is turned off.
  4870.      
  4871.      
  4872.     WHEN THE SYSOP IS AT THE KEYBOARD                            Page 89 
  4873.      
  4874.      
  4875.               N (or CONTROL-N)    Turn on SNOOP mode. Your monitor will
  4876.                                   show everything that the caller's
  4877.                                   monitor shows.
  4878.  
  4879.               Z                   Zero the cumulative daily time for the
  4880.                                   caller. This has NO EFFECT on the time
  4881.                                   for the current call ... only the total
  4882.                                   time spent online for the day. Use <up>
  4883.                                   and <down> to change the caller's time
  4884.                                   limit for the call that is in progress.
  4885.  
  4886.               ?                   Show a detailed chart of information
  4887.                                   about the caller (eg keys, user macros,
  4888.                                   number of calls, time online today, file
  4889.                                   up/down loads etc, whether chat was
  4890.                                   requested).
  4891.  
  4892.               K                   Display the caller's keys. You can then
  4893.                                   toggle keys on or off by pressing those
  4894.                                   keys that you want to toggle on or off.
  4895.                                   This will cause the keys to redisplay.
  4896.                                   The caller's current keys are shown in
  4897.                                   upper case, the other keys are shown in
  4898.                                   lower case. Press ENTER to finish
  4899.                                   toggling the keys.
  4900.  
  4901.              Y                    Override the scheduled Yell event and
  4902.                                   force Yell ON;
  4903.  
  4904.              U                    Override the scheduled Yell event and
  4905.                                   force Yell OFF;
  4906.  
  4907.              T                    Force Opus to follow the scheduled Yell
  4908.                                   event;
  4909.  
  4910.              F1                   Send  F1.BBS   or  F1.GBS
  4911.              F2                   Send  F2.BBS   or  F2.GBS
  4912.              F3                   Send  F3.BBS   or  F3.GBS
  4913.              F4                   Send  F4.BBS   or  F4.GBS
  4914.              F5                   Send  F5.BBS   or  F5.GBS
  4915.              F6                   Send  F6.BBS   or  F6.GBS
  4916.              F7                   Send  F7.BBS   or  F7.GBS
  4917.              F8                   Send  F8.BBS   or  F8.GBS
  4918.              F9                   Send  F9.BBS   or  F9.GBS
  4919.              F10                  Send  F10.BBS  or  F10.GBS
  4920.  
  4921.  
  4922.  
  4923.     Page 90                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  4924.  
  4925.  
  4926.              The NIEL KEYS are sometimes called "function keys" by those
  4927.              who do not live in Dallas. Ask any grizzled Dallas Opus
  4928.              veteran why! The Niel Keys are a set of keys that work like
  4929.              photon torpedoes. You can send any one of ten OEC (BBS/GBS)
  4930.              files to the caller at the press of a button ... which means
  4931.              they can have ANSI graphics and OECs to do everything from
  4932.              greet the caller with the caller's own name, send a quote of
  4933.              the day, or even hang up on the caller (or all of the above).
  4934.              The F1.BBS / F1.GBS) files must be located in the Opus
  4935.              miscellaneous directory which is defined in the control file
  4936.              with the PATH MISC option.
  4937.  
  4938.              <unknown key>        If you press any other key ... you will
  4939.                                   be shown a short status screen and a
  4940.                                   brief menu of some of these commands.
  4941.  
  4942.  
  4943.     5.4 CHAT MODE
  4944.  
  4945.     Starting with Opus V1.10, chat mode is only available if you have
  4946.     loaded George Stanislav's "chat fossil" (a small Terminate and Stay
  4947.     Resident program) or you are using one of the several external chat
  4948.     programs which are available (eg William Beebe's OPHONE) via an
  4949.     external menu command.
  4950.  
  4951.     The chat fossil should be loaded from the NERF.BAT batch file which
  4952.     you use to start Opus. Load it just after the point that you load your
  4953.     fossil. If you run DESQview and load your fossil outside of DESQview,
  4954.     then load the chat module outside also.
  4955.  
  4956.     To chat with a caller is who online, simply press C. To end chat mode,
  4957.     use ALT-Q.
  4958.  
  4959.  
  4960.  
  4961.     5.4.1 CONFIGURING THE CHAT FOSSIL
  4962.  
  4963.     You can configure CHAT.COM to slow down between the individual beeps.
  4964.     CHAT uses a very simple method of waiting between the beeps: it loops
  4965.     so many times. The default it uses is a 4.77 MHz PC. On any faster
  4966.     computer this is not the way to go! To slow it down, simply place a
  4967.     number on the command line.
  4968.  
  4969.               EXAMPLE, on a 386SX-16 computer:  chat 30
  4970.  
  4971.     This tells CHAT to repeat the loop 30 times. Play with the value till
  4972.     you find one that suits your particular system.
  4973.      
  4974.      
  4975.     THE MATRIX                                                   Page 91 
  4976.      
  4977.      
  4978.  
  4979.                            +--------------------------------------------+
  4980.                            |  Arrogance is the mother of invention.     |
  4981.                            |                                            |
  4982.                            |                          -- Guido Palermo  |
  4983.                            |   Opus Bylaws and Covert Action Committee  |
  4984.                            |                                            |
  4985.                            |        Actually, Guido just claims this    |
  4986.                            |        quotation.  When I checked, the     |
  4987.                            |        quotation's serial number had been  |
  4988.                            |        filed off ... so it's impossible    |
  4989.                            |        to tell for sure.                   |
  4990.                            +--------------------------------------------+
  4991.  
  4992.  
  4993.     6.0 THE MATRIX
  4994.  
  4995.     This is a general explanation of the procedures involved in setting up
  4996.     your system to send messages from your system to other systems in the
  4997.     Matrix. It assumes that you have followed the procedures outlined in
  4998.     the section in this manual entitled "Setting Up Opus V1.70" -- if you
  4999.     have not followed those procedures exactly, this section may not be of
  5000.     much help to you.
  5001.  
  5002.     Skip this section if you do not want to run netmail ... there is no
  5003.     rule that says you have to run netmail.
  5004.  
  5005.     Uhuh, I thought you might ... read on then.
  5006.  
  5007.  
  5008.  
  5009.     6.1 NETMAIL FOR THE COMPLETE NOVICE
  5010.  
  5011.     This section is dedicated to the sysop who has no previous experience
  5012.     with netmail. If you follow the step-by-step instructions, you will
  5013.     quickly set up simple node-to-node netmail. This does not cover
  5014.     netmail comprehensively, but it will get you up and running without a
  5015.     lot of frustration. Advanced netmail topics will be covered in other
  5016.     sections of the manual. EchoMail is also dealt with in its own section
  5017.     of this manual.
  5018.  
  5019.     The novice's introduction to the Matrix can be overwhelming,
  5020.     especially with all the jargon and programs that abound:
  5021.  
  5022.  
  5023.  
  5024.     Page 92                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  5025.  
  5026.  
  5027.             +-----------------------------------------------------+
  5028.             |         ECHOMAIL       PACKETS      HIGHWATER MARKS |
  5029.             |                                                     |
  5030.             |   DUPES        NETWORK        TOSSING      NODES    |
  5031.             |                                                     |
  5032.             |          ROUTE       PARSELIST      BADWAZOO        |
  5033.             |                                                     |
  5034.             |     NODELIST   SEEN-BY        PATH          ZMH     |
  5035.             |                                                     |
  5036.             | NET       REGION       BUNDLES        ARCS          |
  5037.             |                                                     |
  5038.             |   INBOUND HOST    HUB       SCANNING      TOSSING   |
  5039.             +-----------------------------------------------------+
  5040.  
  5041.  
  5042.     No wonder it is confusing! Unfortunately, no single source of
  5043.     documentation or information covers it all.
  5044.  
  5045.  
  5046.  
  5047.     6.2 FILES REQUIRED FOR NETMAIL
  5048.  
  5049.     If you check out an active Opus-CBCS, you will undoubtedly see many
  5050.     programs for doing all kinds of wonderful and interesting things.
  5051.     However, we are trying to save time and get you going. So here is a
  5052.     list of only the essentials that you will need:
  5053.  
  5054.  
  5055.     oMMM  originally by Wynn Wagner III
  5056.  
  5057.     oMMM stands for the Opus Matrix Message Masher. This program is used
  5058.     to bundle messages for sending to other systems in the Matrix. You
  5059.     can use other similar programs which bundle messages, but oMMM was
  5060.     specifically written to support Opus and has some Opus-specific
  5061.     widgets that may not be found in other similar programs.
  5062.  
  5063.  
  5064.     NODELIST
  5065.  
  5066.     This is your "phone directory" of other systems in the Matrix. It
  5067.     contains information about each system's name, location, sysop,
  5068.     maximum baud rate and special information on operating times and types
  5069.     of mail that can be processed.
  5070.  
  5071.     The nodelist will be in a file named something like NODELIST.107 (the
  5072.     107 means it was published on the 107th day of the year). The file is
  5073.     usually found compressed inside an archive that will have a file
  5074.     extension something like .A07 (ie the first digit of the raw
  5075.     nodelist's filename extension becomes an A to indicate that file is
  5076.     ARChived); such a file will need to be uncompressed before it can be
  5077.     used.
  5078.  
  5079.      
  5080.      
  5081.     THE MATRIX                                                   Page 93 
  5082.      
  5083.      
  5084.     The nodelist is published weekly by the FidoNet International
  5085.     Coordinator and available from most FidoNet bulletin board systems.
  5086.     Ask your local, friendly, FidoNet sysop if you cannot find it. In
  5087.     fact, it may pay to make friends with a local sysop because the file
  5088.     is currently over half-a-megabyte in size when archived, and just
  5089.     under one megabyte when unarchived. Downloading the nodelist at 2400
  5090.     bps is not exactly high on the fun scale.
  5091.  
  5092.  
  5093.     OPARSE    by Doug Boone
  5094.     =or=
  5095.     PARSELST  by Bob Hartman
  5096.  
  5097.     This program is used to "compile" or "translate" the raw NODELIST data
  5098.     into a form usable by Opus. For example, the program will strip the
  5099.     area codes from local phone numbers. The program can also process a
  5100.     per-message "cost" item. This is the amount you would charge your
  5101.     users for sending a message, should you decide to give them access to
  5102.     the Matrix message area. Opus will use the "cost" information to
  5103.     decide whether a call to a remote system is local or long-distance.
  5104.  
  5105.     OPARSE will generate the advanced Opus V1.70 Version 7 nodelist files;
  5106.     PARSELST will generate the "old" Version 6 nodelist files used by Opus
  5107.     1.1x and some other mailer programs.
  5108.  
  5109.  
  5110.     ARCA.COM  by Vernon D. Buerg
  5111.  
  5112.     Used to create compressed mail bundles.  DO NOT SUBSTITUTE ANY FILE
  5113.     COMPRESSION PROGRAM THAT CREATES COMPRESSED FILES DIFFERENTLY FROM
  5114.     ARCA without the prior approval of all of the other systems to which
  5115.     you intend sending mail bundles. ARCA is the lowest common denominator
  5116.     in file compression which is supported by every Matrix system. Other
  5117.     file compressors may not be supported by Matrix systems.
  5118.  
  5119.  
  5120.     ARCE.COM  by Vernon D. Buerg
  5121.  
  5122.     Used to uncompress mail bundles from other systems which have been
  5123.     compressed with ARCA or another compatible file compressor.
  5124.  
  5125.  
  5126.     OEVENT.EXE by Doug Boone
  5127.  
  5128.     The Opus Event Manager which you use to setup events, or often more
  5129.     accurately described as behaviour windows, which affect how Opus will
  5130.     operate.
  5131.  
  5132.  
  5133.  
  5134.  
  5135.  
  5136.     Page 94                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  5137.  
  5138.  
  5139.     6.3 AN OVERVIEW OF NETMAIL
  5140.  
  5141.     Most novices are quickly confused by the complexities of netmail, but
  5142.     would appreciate a simple overview. The following flowcharts show what
  5143.     happens to incoming and outgoing mail bundles and which programs
  5144.     operate on them. Note that once your nodelist is compiled, only four
  5145.     programs are required to handle all forms of node-to-node mail: OPUS,
  5146.     ARCA, ARCE, and oMMM.
  5147.  
  5148.  
  5149.                                  Figure 6.3-1
  5150.                            The incoming mail bundle
  5151.  
  5152.                    ╔══════════════════════════════════════════╗
  5153.                    ║          <Incoming mail bundle>          ║
  5154.                    ╚═════════════════════╤════════════════════╝
  5155.                                          │
  5156.                                          │
  5157.                    ╔═════════════════════╧════════════════════╗
  5158.                    ║           OPUS (Matrix session)          ║
  5159.                    ╚═════════════════════╤════════════════════╝
  5160.                                          │
  5161.                                          │
  5162.                           ╔══════════════╧═════════════╗
  5163.                           ║ Is mail bundle compressed? ║
  5164.                           ╚════╤═══════════════════╤═══╝
  5165.                                │                   │
  5166.                               Yes                 No
  5167.                                │                   │
  5168.                       ╔════════╧═════════╗         │
  5169.                       ║      ARCE        ║         │
  5170.                       ║  (decompressor)  ║         │
  5171.                       ╚════════╤═════════╝         │
  5172.                                │                   │
  5173.                                │                   │
  5174.                ╔═══════════════╧═══════════════════╧═════════════╗
  5175.                ║                      OPUS                       ║
  5176.                ║            (inbuilt message unpacker)           ║
  5177.                ║ <Bundle is now broken into individual messages> ║
  5178.                ╚═══════════════════════╤═════════════════════════╝
  5179.                                        │
  5180.                                        │
  5181.                   ╔════════════════════╧════════════════════╗
  5182.                   ║          [Matrix Message Area]          ║
  5183.                   ╚═════════════════════════════════════════╝
  5184.      
  5185.      
  5186.     THE MATRIX                                                   Page 95 
  5187.      
  5188.      
  5189.  
  5190.  
  5191.                                  Figure 6.3-1
  5192.                            The outgoing mail bundle
  5193.  
  5194.                   ╔═════════════════════════════════════════╗
  5195.                   ║          [Matrix Message Area]          ║
  5196.                   ╚════════════════════╤════════════════════╝
  5197.                                        │
  5198.                                        │
  5199.              ╔═════════════════════════╧══════════════════════════╗
  5200.              ║                       oMMM                         ║
  5201.              ║ (creates message bundles from individual messages) ║
  5202.              ╚═════════════════════════╤══════════════════════════╝
  5203.                                        │
  5204.                      ╔═════════════════╧════════════════╗
  5205.                      ║ Is mail bundle to be compressed? ║
  5206.                      ╚════╤═════════════════════════╤═══╝
  5207.                           │                         │
  5208.                          Yes                       No
  5209.                           │                         │
  5210.            ╔══════════════╧══════════════╗          │
  5211.            ║            ARCA             ║          │
  5212.            ║ (compressor called by oMMM) ║          │
  5213.            ╚══════════════╤══════════════╝          │
  5214.                           │                         │
  5215.               ╔═══════════╧═════════════════════════╧═══════════╗
  5216.               ║  <mail bundles ready to send are stored in the  ║
  5217.               ║        appropriate "outbound hold area">        ║
  5218.               ╚════════════════════════╤════════════════════════╝
  5219.                                        │
  5220.                  ╔═════════════════════╧════════════════════╗
  5221.                  ║           OPUS (Matrix session)          ║
  5222.                  ╚═════════════════════╤════════════════════╝
  5223.                                        │
  5224.                                        │
  5225.                  ╔═════════════════════╧════════════════════╗
  5226.                  ║           Outgoing mail bundle           ║
  5227.                  ╚══════════════════════════════════════════╝
  5228.  
  5229.  
  5230.  
  5231.     6.4 QUICK START TO NETMAIL
  5232.  
  5233.     This section will list each step required to get node-to-node netmail
  5234.     working. It is a "cookbook". Rather than attempt to explain it all
  5235.     here, some assumptions are going to be made to keep it simple. You may
  5236.     wish to change things later. To get your system up and running
  5237.     quickly, the following assumptions have been made:
  5238.  
  5239.     * your system has at least 256k memory available to run Opus; and
  5240.  
  5241.     * your Opus system directory is C:\OPUS. If it is not, you will need
  5242.       to substitute your own directory pathname in the following
  5243.       instructions.
  5244.  
  5245.  
  5246.     Page 96                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  5247.  
  5248.  
  5249.     (1)  Place the following programs and files in your Opus system
  5250.          directory (usually C:\OPUS where OPUS.EXE resides):
  5251.  
  5252.          OPUS.EXE                   ARCA.COM
  5253.          BBS.CTL                    ARCE.COM
  5254.          oMMM.EXE                   NACL.EXE
  5255.          oMMM.CFG                   NACL.HLP
  5256.          OEVENT.EXE                 NACL.MSG
  5257.  
  5258.          OPARSE.EXE      =or=       PARSELST.EXE
  5259.  
  5260.          The Latest NODELIST.??? file
  5261.  
  5262.  
  5263.     (2)  Edit the PARSELST or OPARSE control file (PARSELST.CFG or
  5264.          OPARSE.LST) to represent your phone costs and local area code
  5265.          (see the documentation included with the PARSELST or OPARSE
  5266.          program).
  5267.  
  5268.          In the PARSELST.CFG file make sure you set the following options
  5269.          for Opus V1.70:
  5270.  
  5271.                                  ; Stuff everyone should have:
  5272.          Node 3:711/401          ; Your network address
  5273.          Country 61              ; Your country phone code
  5274.          MaxBaud 9600            ; Your highest baud rate
  5275.  
  5276.                                  ; For Opus V1.70 use the following:
  5277.          Complete                ; Generate entire nodelist
  5278.          UseZone                 ; Do not change Zone to Region
  5279.          Version6                ; Generate Version 6 format files
  5280.  
  5281.  
  5282.     (3)  Compile the nodelist by running OPARSE or PARSELST.
  5283.  
  5284.  
  5285.     (4)  Create the following directories:
  5286.  
  5287.          C:\MSG\NET\         (where the individual messages are stored)
  5288.          C:\FILE\NET\        (where inbound files are stored)
  5289.          C:\OPUS\OUTBOUND\   (where outgoing message bundles are stored)
  5290.  
  5291.          NOTE: if you are going to be sending netmail directly to
  5292.          different Zones (ie, not routing it via the zonegate systems),
  5293.          you need to also create a C:\OPUS\OUTBOUND.ZZZ directory for each
  5294.          Zone to which you will be sending mail. The .ZZZ is the
  5295.          HEXADECIMAL number of the Zone, so Zone 3 is 3, but Zone 16 is
  5296.          10.
  5297.  
  5298.          IMPORTANT: If you do create additional "zoned" outbound
  5299.          directories, make sure that they appear in your directory IN
  5300.          ORDER or else you will experience some grief to put it mildly
  5301.          (just ask Paul "I've broken it, Doug" Kelly). Watch out for disk
  5302.          defragmenters which order directory entries alphabetically!
  5303.  
  5304.      
  5305.      
  5306.     THE MATRIX                                                   Page 97 
  5307.      
  5308.      
  5309.     (5)  There are several options in your Opus Control File which must be
  5310.          set in order to handle netmail. These options appear in two
  5311.          sections of the control file, "Equipment Section" and "Matrix and
  5312.          EchoMail Section". Since this section is devoted to the novice,
  5313.          all non-essential advanced options will be skipped. For full
  5314.          details of these control file options, refer to section 2 of the
  5315.          Opus Technical Reference Manual. Edit your Opus control file
  5316.          (named BBS.CTL) as follows:
  5317.  
  5318.          The Equipment Section
  5319.  
  5320.          OUTPUT COM1:       % If your modem is attached to COM2:
  5321.                             % substitute that for COM1: here.
  5322.  
  5323.          BAUD MAXIMUM 2400  % If your modem goes faster, substitute its
  5324.                             % top speed here (typically 19200 or 38400 for
  5325.                             % high speed modems).
  5326.  
  5327.          INIT ATZ|          % The character string for Opus to send to
  5328.                             % your modem to initialise it.
  5329.                             % You should place any commands required to
  5330.                             % setup your modem in the batch file which
  5331.                             % runs Opus and store them in your modem's
  5332.                             % non-volatile memory using the AT&W command.
  5333.                             % If your modem does not have non-volatile
  5334.                             % memory (ie it does not remember settings
  5335.                             % when you turn the power off) you will need
  5336.                             % to put your full initialisation string here.
  5337.  
  5338.          DIAL PREFIX ATDT   % The character string for Opus to send to
  5339.                             % your modem before the phone number to cause
  5340.                             % it to dial out.
  5341.                             % If your phone only supports pulse dialing
  5342.                             % substitute ATDP for ATDT.
  5343.                             % This is where you could add any special
  5344.                             % characters required for ALL outbound phone
  5345.                             % calls. For example, "ATDT0,," to go through
  5346.                             % a PABX and obtain an outside line.
  5347.  
  5348.          DIAL SUFFIX |      % The character for Opus to send after the
  5349.                             % phone number. Usually just a carriage
  5350.                             % return, represented by the "|" character.
  5351.  
  5352.          MASK CARRIER 128   % Refer to the Opus Technical Reference Manual
  5353.                             % if you must know what this means.
  5354.  
  5355.          MASK HANDHSHAKING CTS   % May be required for high speed modems or
  5356.                                  % modems that can accept data faster than
  5357.                                  % they send it PROVIDED you have setup
  5358.                                  % your modem to use "hardware flow
  5359.                                  % control".
  5360.  
  5361.  
  5362.  
  5363.     Page 98                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  5364.  
  5365.  
  5366.          SEND BREAK TO CLEAR BUFFER % Comment this line out by placing the
  5367.                                     % percent (ie "%") character in front
  5368.                                     % of the line UNLESS you have an HST
  5369.                                     % modem and have set its registers up
  5370.                                     % using the &Y0 command.
  5371.  
  5372.          SLOW MODEM         % If you have a FAST computer (286 or better),
  5373.                             % uncomment this line to make Opus put a tiny
  5374.                             % delay between characters which it sends to
  5375.                             % the modem EVEN if you have a FAST modem.
  5376.  
  5377.  
  5378.          The Matrix and EchoMail Section
  5379.  
  5380.          ADDRESS -1:-1/-1.0 % This is essential for sending/receiving
  5381.                             % netmail. You are normally assigned a number
  5382.                             % by a coordinator for your region or net.
  5383.                             % Information on coordinator locations is
  5384.                             % located in the nodelist. Before you are
  5385.                             % assigned an official number, you should use
  5386.                             % -1:-1/-1.0 as your address. Other local
  5387.                             % sysops can temporarily patch your phone
  5388.                             % number into their nodelists until you have
  5389.                             % an "official" address.
  5390.  
  5391.          PATH NETINFO C:\OPUS\  % Tell Opus where to find your nodelist
  5392.                                 % files.
  5393.  
  5394.          USES VERSION 6     % If you are using OPARSE, comment out this
  5395.                             % line if it exists by placing a percent sign
  5396.                             % (ie %) character in front of it.
  5397.  
  5398.          PATH OUTBOUND HOLD AREA C:\OPUS\OUTBOUND\ % Tell Opus where to
  5399.                                                    % store outgoing mail
  5400.                                                    % bundles. This
  5401.                                                    % directory can be
  5402.                                                    % anywhere you want,
  5403.                                                    % but the one shown is
  5404.                                                    % recommended. Some
  5405.                                                    % programs will use
  5406.                                                    % this directory as the
  5407.                                                    % default outbound.
  5408.  
  5409.          PATH INBOUND MESSAGES C:\MSG\NET\  % Tell Opus where to store
  5410.                                             % incoming messages. The
  5411.                                             % directory can be anywhere
  5412.                                             % you want, but it should be
  5413.                                             % the message area you
  5414.                                             % declared as being Matrix.
  5415.  
  5416.          PATH INBOUND FILES C:\FILE\NET\  % Tell Opus where to store files
  5417.                                           % that are sent to you by other
  5418.                                           % systems.
  5419.  
  5420.      
  5421.      
  5422.     THE MATRIX                                                   Page 99 
  5423.      
  5424.      
  5425.          SEND LOCAL                       % Opus will only send mail to
  5426.                                           % "local" cost nodes UNLESS you
  5427.                                           % override this behaviour.
  5428.  
  5429.          AFTER ARCMAIL EXTRACT PACKETS    % Tell Opus to extract messages
  5430.                                           % from incoming compressed mail
  5431.                                           % files
  5432.  
  5433.  
  5434.          MESSAGE EDIT ASK CRASH SYSOP      % Tells Opus to ask you about
  5435.          MESSAGE EDIT ASK FILEATTACH SYSOP % which message attributes
  5436.          MESSAGE EDIT ASK UPDATE SYSOP     % you wish matrix messages
  5437.          MESSAGE EDIT ASK KILLSENT SYSOP   % you create to have.
  5438.  
  5439.          Create a matrix message area definition in the Opus control file.
  5440.          It should reference the directory C:\MSG\NET\ and the message
  5441.          type should be "Matrix". Here is a sample Matrix message area
  5442.          definition with just the bare essentials:
  5443.  
  5444.          AREA   0005   MATRIX          % Area number and name
  5445.          MATRIX                        % Matrix type message area
  5446.          ACCESS PRIV   Disgrace        % Access for access to the area
  5447.          EDIT PRIV     Sysop           % Access for E)nter & R)eply
  5448.          PATH C:\MSG\NET\              % Path to your matrix message area
  5449.          TITLE Netmail                 % Title for this message area
  5450.          END AREA                      % End of message area definition
  5451.  
  5452.  
  5453.     (6)  Use NACL to compile your now modified BBS.CTL control file. NACL
  5454.          will produce a file called BBS.PRM which is the compiled version
  5455.          of the Opus control file. To compile your control file type the
  5456.          following line and press ENTER:
  5457.  
  5458.          NACL /L /V /I BBS > REPORT
  5459.  
  5460.          If there are any problems with the compilation of your BBS.CTL
  5461.          file, error messages listing the line numbers of the problem
  5462.          lines may be found in the file REPORT which is created using the
  5463.          above NACL command line. Use the error messages to track down the
  5464.          problem(s) and fix them; then recompile.
  5465.  
  5466.  
  5467.     (7)  Make sure you have loaded your FOSSIL program by running the
  5468.          program (eg OPUSCOM1.COM, OPUSCOMM.COM or X00.COM) =or=  by
  5469.          installing your FOSSIL device driver by putting a "device=" line
  5470.          in your CONFIG.SYS file in the root directory (c:\) of your boot
  5471.          drive and rebooting (eg DEVICE=C:\X00.SYS).
  5472.  
  5473.  
  5474.     (8)  Run Opus by typing OPUS BBS and pressing ENTER.
  5475.  
  5476.  
  5477.  
  5478.  
  5479.     Page 100                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  5480.  
  5481.  
  5482.     (9)  If you created the default event schedule with OEVENT.EXE, Opus
  5483.          outbound netmail behaviour should default to the settings in your
  5484.          control file. To confirm this is true, go to the Matrix menu
  5485.          (press "M" at the ready prompt while Opus is waiting for a
  5486.          call). Select the I)nformation option. At the top of the screen
  5487.          it should say:  "Matrix Behavior: LOCAL"
  5488.  
  5489.  
  5490.     (10) Test the integrity of your setup by selecting the M)atrix menu
  5491.          (press M while Opus is sitting at the ready prompt) and then
  5492.          choose the P)oll option from the menu to call a known node in
  5493.          your local area. This part is really satisfying if everything
  5494.          works correctly. If it does not work, pay attention to any error
  5495.          messages which might hint at the problem, and then recheck
  5496.          EVERYTHING.
  5497.  
  5498.  
  5499.     (11) Terminate Opus by pressing ALT-Q. Now edit the oMMM configuration
  5500.          file to reflect your system (refer to the documentation included
  5501.          with oMMM for further details of the options in this file). The
  5502.          following is an example of a very simple, working oMMM.CFG file:
  5503.  
  5504.          =============================================================
  5505.           ; this is line one of the file oMMM.CFG
  5506.           ; path to your matrix message area
  5507.           MESSAGEPATH     c:\msg\net
  5508.  
  5509.           ; path to your outbound message holding area
  5510.           ; only specify your primary outbound path
  5511.           HOLDPATH        c:\opus\outbound
  5512.  
  5513.           ; Matrix address of system.
  5514.           ADDRESS    65535:65535/65535.0  ;equivalent to -1:-1/-1.0
  5515.  
  5516.           ; Define the program for creating compressed mail packets.
  5517.           Define_Stuffer  ARC  arca
  5518.  
  5519.           ; this is the last line of the file oMMM.CFG
  5520.          ============================================================
  5521.  
  5522.          Run oMMM (type oMMM and press ENTER) and see if it terminates
  5523.          with any error messages. If it does, it will usually tell you the
  5524.          line number of the line in the oMMM.CFG file where the problem
  5525.          occurred so that you can correct it. You can ignore its complaint
  5526.          that there is no route file; you do not need one for the moment
  5527.          (refer to the oMMM documentation for details of the route file if
  5528.          you are curious).
  5529.  
  5530.  
  5531.      
  5532.      
  5533.     THE MATRIX                                                   Page 101 
  5534.      
  5535.      
  5536.     (12) Log on from the keyboard (type K at the ready prompt while Opus
  5537.          is waiting for a call). Enter a message in your Matrix mail area
  5538.          to a sysop of a local node, preferably one running Opus that can
  5539.          accept mail at any time. Mark the message as "Crash" (Answer YES
  5540.          to the CRASH question). After logging off, terminate Opus with
  5541.          ALT-Q and then run oMMM. oMMM will move any messages you have
  5542.          created in your matrix message area to the outbound holding area.
  5543.          Look for a screen report that it is processing the message.
  5544.  
  5545.  
  5546.     (13) Re-run Opus (OPUS BBS). Select the M)atrix menu (press "M" when
  5547.          Opus is at the ready prompt waiting for a call) and choose
  5548.          I)nformation; it should show your message in the outbound area,
  5549.          waiting to be sent. After Q)uitting the M)atrix menu, Opus will
  5550.          wait a few minutes, then attempt to send the message. If you are
  5551.          anxious, you can select the C)all option from the keyboard. You
  5552.          may have to press C several times to get Opus to pay attention.
  5553.          This will make Opus peek in the outbound holding area and send
  5554.          the mail immediately, regardless of cost. You can try it again
  5555.          with a file attached. Just attach a file when entering a message
  5556.          in the Matrix message area.
  5557.  
  5558.  
  5559.     (14) Test your ability to receive and unpack mail by having a local
  5560.          sysop send mail and files to you. If everything is working
  5561.          correctly, you will see it come in. If Opus does not unpack it
  5562.          automatically, choose the M)atrix menu, select U)npack and the
  5563.          mail bundle will be unpacked and the message(s) placed in the
  5564.          Matrix message area for you. Log on from the keyboard and verify
  5565.          the message(s) made it there.
  5566.  
  5567.  
  5568.     (15) Create a batch file, NERF.BAT, to run Opus and automate the
  5569.          bundling of mail by oMMM. The following is a very bare bones
  5570.          example NERF.BAT batch file which will handle mail bundling
  5571.          automagically (the file consists of the lines between the two
  5572.          lines of "======", with each line starting in column 1):
  5573.  
  5574.          ==================================
  5575.          C:
  5576.          CD \OPUS
  5577.          :OPUS
  5578.          OPUS BBS
  5579.          :TEST
  5580.          IF ERRORLEVEL 16 GOTO BUNDLE
  5581.          IF ERRORLEVEL 1 GOTO OFFLINE
  5582.          :BUNDLE
  5583.          oMMM
  5584.          GOTO OPUS
  5585.          :OFFLINE
  5586.  
  5587.          ==================================
  5588.  
  5589.  
  5590.  
  5591.  
  5592.  
  5593.     Page 102                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  5594.  
  5595.  
  5596.     6.5 OPUS DEFAULT NETMAIL BEHAVIOUR
  5597.  
  5598.     Opus can be configured in many different ways to accommodate the many
  5599.     variables in netmail as well as your own preferences. Some of the
  5600.     variables in netmail are:
  5601.  
  5602.          * your own system configuration - see the BBS.CTL file and refer
  5603.            to section 2 of the Opus Technical Reference Manual;
  5604.  
  5605.          * cost of outgoing phone calls - refer to the documentation for
  5606.            your nodelist compiler program for setting call costs, and to
  5607.            the section 4 of this manual on the Opus Event System for
  5608.            setting the cost of what are to be regarded as "local" calls;
  5609.  
  5610.          * scheduling mail traffic to conform to local, national or
  5611.            international mail schedules (eg Zone mail hours) - refer to
  5612.            section of 4 this manual describing the Opus event system and
  5613.            to the oMMM documentation which describes routing;
  5614.  
  5615.          * the display of various attributes associated with a netmail
  5616.            message while reading messages in Opus - refer to the BBS.CTL
  5617.            file and to section 2 of the Opus Technical Reference Manual;
  5618.  
  5619.          * the ability to define various attributes of a netmail message.
  5620.  
  5621.  
  5622.  
  5623.     6.5.1 BEHAVIOUR WINDOWS
  5624.  
  5625.     Doing outbound mail with Opus is fairly simple. In fact, getting that
  5626.     message across has been one of the toughest jobs.
  5627.  
  5628.     Idea #1: With Opus, "mail events" do not exist. Instead, there are
  5629.              matrix "behaviour windows."
  5630.  
  5631.     With an event, you have to give every detail ... making statements
  5632.     that are procedural in nature. With a behaviour window, you paint with
  5633.     a wide brush telling the system what to do with different classes of
  5634.     remote system.
  5635.  
  5636.     When systems could handle Matrix mail only during special times,
  5637.     routing and times were important. Now that most systems can process
  5638.     mail at any time, the idea of a schedule becomes less important.
  5639.  
  5640.     The item of prime importance in Opus is COST. We are going to try to
  5641.     relieve you of the tedious details of scheduling and concentrate on
  5642.     doing things for the least cost. More on this later.
  5643.  
  5644.  
  5645.  
  5646.      
  5647.      
  5648.     THE MATRIX                                                   Page 103 
  5649.      
  5650.      
  5651.     6.5.2 BUILDING MAIL BUNDLES
  5652.  
  5653.     Idea #2: A "bundle" is what some other systems call a "packet." In
  5654.              network operations, a packet has a special meaning ... a
  5655.              meaning that has nothing to do with network mail. An "XModem
  5656.              Block" is a packet in network terminology. To avoid confusion
  5657.              with an established word, Opus documentation use "bundle".
  5658.  
  5659.     With some programs, bundles are built every time a mail schedule
  5660.     starts. As a result, one message may be put into a bundle several
  5661.     times. With Opus, bundles are built once. As Opus has no internal
  5662.     bundler (the thing that maintains message bundles destined for some
  5663.     other system) you must use an external program called oMMM (Opus
  5664.     Matrix Message Masher). You can exit Opus with a preset DOS errorlevel
  5665.     to call the bundler program when the contents of the Matrix area
  5666.     changes (refer to the AFTER EDIT EXIT <number> line in the Opus
  5667.     control file).
  5668.  
  5669.  
  5670.  
  5671.     6.5.3 FILENAMES DRIVE OUTBOUND MAIL
  5672.  
  5673.     Idea #3: The driving force behind outbound message and file traffic is
  5674.              filenames!
  5675.  
  5676.     You will have special subdirectories set aside just for bundles and
  5677.     other Matrix files. These subdirectories belong to Opus and should not
  5678.     have anything else put in there. Opus will maintain these
  5679.     subdirectories for you.
  5680.  
  5681.     As soon as you run oMMM, messages that are marked KILL/SENT in your
  5682.     Matrix message area will disappear. They have not been sent, yet. They
  5683.     have just been bundled up and deposited in your outbound mail holding
  5684.     area, ready to go.
  5685.  
  5686.  
  5687.     Bundle filenames
  5688.  
  5689.     The filenames of the bundles tell Opus how to treat the different
  5690.     bundles. Here is a typical bundle name:
  5691.  
  5692.               12345678.OUT
  5693.  
  5694.     That says the bundle is for 1234/5678.  The numbers are in hexadecimal
  5695.     (base 16). The ".OUT" means it is a regular bundle and, if left with
  5696.     that extension, will be treated by Opus like a .DUT file (see below).
  5697.  
  5698.     Other bundle extensions include:
  5699.  
  5700.  
  5701.               .CUT ... send the bundle to the destination node NOW,
  5702.                        regardless of cost;
  5703.  
  5704.  
  5705.  
  5706.     Page 104                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  5707.  
  5708.  
  5709.               .DUT ... send the mail direct to the other node without
  5710.                        routing it via another system; if the destination
  5711.                        node can accept CM (Continuous Mail, ie, mail at
  5712.                        any time) send it now provided there is no Opus
  5713.                        behaviour window overriding this directive (eg
  5714.                        local call cost is observed - see further the
  5715.                        section 4 of this manual on the Opus Event System);
  5716.  
  5717.               .HUT ... hold the bundle for pickup by the destination node;
  5718.  
  5719.               .CRT ... the same as CUT but with an attached file request;
  5720.  
  5721.               .DRT ... the same as DUT but with an attached file request;
  5722.  
  5723.               .HRT ... the same as HUT but with an attached file request;
  5724.  
  5725.               .ORT ... the same as OUT but with an attached file request.
  5726.  
  5727.     One nice thing is that you can manually change the filename's
  5728.     extension if you need to do so. That would change the behaviour of the
  5729.     bundle the next time Opus sees it. Only change it if you know what you
  5730.     are doing!
  5731.  
  5732.     The oMMM program knows about these extensions and creates them based
  5733.     on information you put into the oMMM route file.  You will have
  5734.     statements like this:
  5735.  
  5736.               ONEHOLD 1:119/5
  5737.  
  5738.     That would create a .HUT bundle file of messages addressed to 1:119/5
  5739.     that are to be HELD for 1:119/5 to pickup when it calls.
  5740.  
  5741.  
  5742.     Flow file names
  5743.  
  5744.     Files are also sent through the Matrix. oMMM builds and maintains a
  5745.     file that tells Opus what files to send to destination systems and
  5746.     what files to hold for pickup by destination systems. A typical "file
  5747.     attach" file might be named:
  5748.  
  5749.               12345678.FLO
  5750.  
  5751.     Other flow file extensions are:
  5752.  
  5753.               .HLO ... hold these files for pickup
  5754.  
  5755.               .CLO ... crash these files to the other system NOW,
  5756.                        regardless of the cost!
  5757.  
  5758.               .DLO ... send these files if the destination is capable of
  5759.                        receiving CM (Continuous Mail, ie, can accept mail
  5760.                        at any time).
  5761.  
  5762.      
  5763.      
  5764.     THE MATRIX                                                   Page 105 
  5765.      
  5766.      
  5767.     A flow file is just a text file. It contains a list of files that are
  5768.     to be sent to another system, for example:
  5769.  
  5770.               #c:\opus\outbound\00096581.mo1
  5771.               #e:\pascal\program.arc
  5772.  
  5773.     Now for a few details about what may be contained in flow files:
  5774.  
  5775.               * Filenames in a flow file never include wildcard characters
  5776.                 such as *.* or ????????.ARC etc;
  5777.  
  5778.               * Filenames in a flow file should always be fully pathed
  5779.                 with disk drive letter and full directory path from the
  5780.                 root directory (eg c:\opus\outbound\00095681.mo1 and not
  5781.                 just 00095681.mo1);
  5782.  
  5783.               * If the first character in front of the disk drive letter
  5784.                 is a # (hash sign or American pound sign -- NOT an English
  5785.                 pound sign!) , Opus will truncate the file (make it zero
  5786.                 bytes in length) after it has been successfully sent to,
  5787.                 or picked up by, the destination system;
  5788.  
  5789.               * If the first character in front of the disk drive letter
  5790.                 is a ^, Opus will delete the file after it has been
  5791.                 successfully sent to, or picked up by, the destination
  5792.                 system;
  5793.  
  5794.               * If there is no character in front of the drive letter, the
  5795.                 file will not be touched after it has been successfully
  5796.                 sent to, or picked up by, the destination system.
  5797.  
  5798.  
  5799.     Compressed messages
  5800.  
  5801.     The oMMM program will compress messages for you using your favourite
  5802.     file compressor. Do not forget that the only method of compression
  5803.     that is supported by ALL nodes in FidoNet is the original ARC
  5804.     compression employed by ARCA (to create compressed files) and ARCE
  5805.     (to extract compressed files). Details on how this is done may be
  5806.     found in the documentation which comes with oMMM.
  5807.  
  5808.     oMMM creates archives using the same numbering convention as other
  5809.     message archive programs. The filename is the difference between the
  5810.     sender's net/node and the receiver's net/node. The file extension is
  5811.     ."MO#" where `#' is a number between 0 and 9. In this case, MO stands
  5812.     for "Monday". oMMM will also produce "TU", "WE", "TH", "FR", "SA" and
  5813.     "SU" files depending on the day of the week when the archive is
  5814.     created.
  5815.  
  5816.  
  5817.     6.6 HOW IT ALL WORKS
  5818.  
  5819.     So far, we have covered bundles and flow files. We have also hit on
  5820.     some of the high points of oMMM. More detailed information on oMMM may
  5821.     be found in the documentation which comes with oMMM.
  5822.  
  5823.  
  5824.     Page 106                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  5825.  
  5826.  
  5827.     This is the flow of a message ...
  5828.  
  5829.     If I have written a message to Doug Boone, the message is in my Matrix
  5830.     message area and I have flagged it as KILL/SENT and CRASH (ie, I do
  5831.     not want to keep a copy, so th original in the Matrix message area
  5832.     directory will be deleted after it has been bundled and moved by oMMM
  5833.     to my outbound mail holding directory). See below for why I used
  5834.     CRASH.
  5835.  
  5836.     oMMM is run, and converts the message into a bundle in the outbound
  5837.     holding directory. In my route control file for oMMM, I have this:
  5838.  
  5839.               ONECM 1:119/5 1:119/All
  5840.  
  5841.     This route control file line tells oMMM to build a compressed message
  5842.     bundle using my favourite file compressor (whatever is specified in
  5843.     the oMMM.CFG file) to 1:119/5 and mark it CRASH. In the bundle will be
  5844.     any messages to Doug (119/5) as well as messages to anybody else in
  5845.     Net 119. The ONECM verb should only be used when you know the
  5846.     destination system can receive continuous mail (the nodelist entry for
  5847.     the destination node is marked CM) and you want to send the message
  5848.     NOW, regardless of the cost.
  5849.  
  5850.     Now there is one GOTCHA that must be mentioned. If you are in a
  5851.     different zone from the zone you are sending to, AND you wish to send
  5852.     the message DIRECT from your system to the system in the other zone,
  5853.     you MUST mark the message as CRASH in the message editor or the
  5854.     message will be routed via the appropriate Zonegate system instead of
  5855.     being sent direct.
  5856.  
  5857.     If I did not want to incur the expense of an international phone call
  5858.     to send mail to Doug, in my oMMM ROUTE.CTL I could use the following
  5859.     lines instead:
  5860.  
  5861.               UNCM 1:119/5
  5862.               ONEHOLD 1:119/5
  5863.  
  5864.     First oMMM bundles messages it finds in the Matrix message area, then
  5865.     oMMM processes lines in the route control file sequentially -- one
  5866.     after the other starting with the first line. In this example, oMMM
  5867.     would create a compressed mail bundle containing any messages to
  5868.     1:119/5 and mark it as a CRASH bundle (using the .CLO extension for
  5869.     the flow file). The UNCM verb would then turn the flow file into a
  5870.     normal .FLO flow file, and the ONEHOLD verb would change that .FLO
  5871.     flow file into a .HLO flow file. The mail will now be held for 1:119/5
  5872.     to collect when Doug calls me.
  5873.  
  5874.  
  5875.      
  5876.      
  5877.     THE MATRIX                                                   Page 107 
  5878.      
  5879.      
  5880.                                         +-------------------------------+
  5881.                                         |                               |
  5882.                                         | "Roads?  Where we're going we |
  5883.                                         | don't need roads."            |
  5884.                                         |                               |
  5885.                                         | - from Back To The Future     |
  5886.                                         |                               |
  5887.                                         +-------------------------------+
  5888.  
  5889.     Enter Opus, stage right.
  5890.  
  5891.     Opus can tell by looking at the outbound holding subdirectory that
  5892.     there is a bundle for Doug. Opus infers from the .CLO extension that
  5893.     Doug's system can receive continuous mail.
  5894.  
  5895.     It is in the middle of the afternoon. Phone rates between Sydney,
  5896.     Australia and Chico, California are the highest that they will be all
  5897.     day. It is a bad time to call.
  5898.  
  5899.     We are not controlling calling times because of our software. The
  5900.     software does not care. Both ends can handle Matrix traffic anytime.
  5901.     We are controlling calling times based on the phone rates.
  5902.  
  5903.     I have a Matrix behaviour window (Z-event) set in Opus that tells the
  5904.     system to make daytime calls only to local systems that can receive
  5905.     continuous mail.
  5906.  
  5907.  
  5908.  
  5909.     6.7 CONTROLLING OUTBOUND CALLS
  5910.  
  5911.     You have two primary methods for controlling phone calls made by your
  5912.     Opus system: the Opus control file (BBS.CTL) and the event manager
  5913.     program which manages the schedule file of events.
  5914.  
  5915.     The control file method is in effect if there is no other event to
  5916.     override it. Matrix behaviour windows or Z-Events described below
  5917.     are used to override these control file events.
  5918.  
  5919.  
  5920.  
  5921.     6.7.1 OPUS CONTROL FILE
  5922.  
  5923.     To disable outbound calls, uncomment this line (remove the  percent
  5924.     sign % from in front of the line) in your Opus control file:
  5925.  
  5926.               SEND NOTHING
  5927.  
  5928.     To disable long distance outbound calls, uncomment this line in your
  5929.     Opus control file:
  5930.  
  5931.               SEND LOCAL
  5932.  
  5933.  
  5934.  
  5935.     Page 108                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  5936.  
  5937.  
  5938.     To enable the sending of mail to nodes which can accept Continuous
  5939.     Mail (these nodes are marked with the CM flag in the nodelist), ie,
  5940.     can accept mail 24 hours a day, uncomment this line in your Opus
  5941.     control file:
  5942.  
  5943.               SEND CM
  5944.  
  5945.     With those restrictions, Opus now attempts to send any outbound
  5946.     mail it finds in the outbound mail holding area(s).
  5947.  
  5948.     If you want to keep humans off-line during a critical mail period,
  5949.     uncomment this line in the Opus control file:
  5950.  
  5951.               REFUSE HUMAN CALLERS
  5952.  
  5953.     There is a way to override these control file settings: Matrix
  5954.     behaviour windows (or Z-Events). Read on ...
  5955.  
  5956.  
  5957.  
  5958.     6.7.2 MATRIX BEHAVIOUR WINDOWS
  5959.  
  5960.     A Matrix behaviour window or Z-Event is set up using the Opus Event
  5961.     Manager, OEVENT.EXE by Doug Boone. The event starts out looking like
  5962.     any other event ... except that it has a Z for the tag.
  5963.  
  5964.                         +----------------------------------------------+
  5965.                         |                                              |
  5966.                         | "But what HAPPENS during this event?"        |
  5967.                         |                                              |
  5968.                         | "Nothing.  It's not a real event.  A better  |
  5969.                         |  phrase would be BEHAVIOUR WINDOW."          |
  5970.                         |                                              |
  5971.                         |                              Anonymous       |
  5972.                         +----------------------------------------------+
  5973.  
  5974.     When a Matrix behaviour window or Z-Event is in progress, its settings
  5975.     remain in effect until the next "Z" event.  In other words, the
  5976.     settings do NOT RETURN TO THEIR ORIGINAL VALUE at the "end" of this
  5977.     event.
  5978.  
  5979.     If you declare a Matrix behaviour window or Z-Event for every day of
  5980.     the week from 09:00 (9am) to 12:00 (noon), the behaviour you describe
  5981.     in that behaviour window will be in effect for those three hours.
  5982.     Here is the part that needs to be stressed: at noon, the behaviour
  5983.     will remain in effect unless there is another behaviour window
  5984.     declared to take effect then.
  5985.  
  5986.      
  5987.      
  5988.     THE MATRIX                                                   Page 109 
  5989.      
  5990.      
  5991.     That should probably be repeated:
  5992.  
  5993.             * You can set up Matrix behaviour in the Opus control file
  5994.               (BBS.CTL). If Opus runs into a Matrix behaviour window or
  5995.               Z-Event that is in progress, those control file values are
  5996.               gone for the life of the program;
  5997.  
  5998.             * To end a Matrix behaviour window or Z-Event, you have to
  5999.               begin another one. In this case, the duration of the event
  6000.               means, "go to these values whenever you find yourself in
  6001.               this time period".
  6002.  
  6003.             * The end of a Matrix behaviour window or Z-Event does NOT
  6004.               mean return to the old values.
  6005.  
  6006.     In addition to the start time and end time, there are several other
  6007.     decisions you must make when setting up a Matrix behaviour window or
  6008.     Z-Event:
  6009.  
  6010.               Offset errorlevel? .. The offset is added to any errorlevel
  6011.                                     that Opus exits with during this
  6012.                                     behaviour window. (Optional.)
  6013.  
  6014.               Mail? ............... YES: Opus can make outbound calls
  6015.                                     during this behaviour window.
  6016.  
  6017.                                     NO: Opus cannot make outbound calls
  6018.                                     during this behaviour window.
  6019.  
  6020.               Local only? ......... YES: only make calls to systems whose
  6021.                                     cost field (set by your nodelist
  6022.                                     compiler) is less than or equal to the
  6023.                                     "local cost" that you set for this
  6024.                                     behaviour window.
  6025.  
  6026.                                     NO: it is okay to make calls that cost
  6027.                                     more than the "local call" cost that
  6028.                                     you set for this behaviour window.
  6029.  
  6030.               No Local Mail? ...... YES: do not make calls to systems
  6031.                                     whose cost field is equal to or below
  6032.                                     the "local cost" that you set for this
  6033.                                     behaviour window.
  6034.  
  6035.                                     NO: it is okay to make calls to
  6036.                                     systems whose cost field is above the
  6037.                                     "local call" cost that you set for
  6038.                                     this behaviour window.
  6039.  
  6040.               #CM ................. YES: only make outbound calls to
  6041.                                     systems that are marked as CM in the
  6042.                                     nodelist.
  6043.  
  6044.                                     NO: outbound calls are not restricted
  6045.                                     to continuous mail systems.
  6046.  
  6047.  
  6048.     Page 110                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  6049.  
  6050.  
  6051.               Suppress exits? ..... YES: stop Opus from exiting with
  6052.                                     "after mail" exits (set in the BBS.CTL
  6053.                                     file) after inbound and outbound
  6054.                                     matrix calls.
  6055.  
  6056.                                     NO: allow Opus to exit according to
  6057.                                     the Matrix exits specified in the
  6058.                                     BBS.CTL file.
  6059.  
  6060.               Mail only? .......... YES: do not let human callers online,
  6061.                                     concentrate on mail.
  6062.  
  6063.                                     NO: human callers and the outbound
  6064.                                     calls can coexist.
  6065.  
  6066.               File requests? ...... YES: let other systems make file
  6067.                                     requests on your system.
  6068.  
  6069.                                     NO: do not allow file requests on your
  6070.                                     system.
  6071.  
  6072.               Frequency? .......... A numerical value used to regulate how
  6073.                                     often Opus make outbound matrix calls
  6074.                                     during this behaviour window. Range:
  6075.                                     between 5 and 40 (5= call every 10
  6076.                                     seconds approx, 40 = call every 12
  6077.                                     minutes approx). (Optional.)
  6078.  
  6079.               Local call cost? .... A numerical value used to set what
  6080.                                     Opus is to regard as the "local call"
  6081.                                     cost during this behaviour window.
  6082.                                     Used by the Local Only and No Local
  6083.                                     options above. (Optional, but you
  6084.                                     should really use it to get the most
  6085.                                     out of Opus and make outbound call
  6086.                                     scheduling cost effective.)
  6087.  
  6088.  
  6089.                        +----------------------------------------------+
  6090.                        |                                              |
  6091.                        |  Getting the cost information correct is a   |
  6092.                        |  vital part of controlling outbound traffic! |
  6093.                        |                                              |
  6094.                        +----------------------------------------------+
  6095.  
  6096.  
  6097.     During the day (from 06:30 till 20:00 AEST), I have a Matrix behaviour
  6098.     window that has LOCAL, #CM, and FILE REQUESTS set to YES. My local
  6099.     call cost field for this behaviour window is 10c. I do not want to
  6100.     make long-distance calls, and I do not want to call systems that
  6101.     cannot handle mail on a continuous basis.
  6102.  
  6103.     WARNING            MAIL MARKED AS CRASH WILL ALWAYS BE SENT
  6104.     WARNING ===---->>  REGARDLESS OF COST. Do not mark mail as CRASH
  6105.     WARNING            unless you really want to make that call NOW!
  6106.      
  6107.      
  6108.     THE MATRIX                                                   Page 111 
  6109.      
  6110.      
  6111.     Back to the example, in my oMMM route control file I might have the
  6112.     following lines:
  6113.  
  6114.               UNCM 1:119/5
  6115.               ONEDIRECT 1:119/5
  6116.  
  6117.     So, if I enter a CRASH message to Doug, there it sits, a .DLO file for
  6118.     Doug. Although it says Doug's board can accept mail on a continuous
  6119.     basis, the COST field in the nodelist for 1:119/5 is $2.50 which is
  6120.     above my local call cost field of 10c. It is an international phone
  6121.     call.
  6122.  
  6123.     Opus will not call 1:119/5.
  6124.  
  6125.     At 20:00 AEST, the phone rates are lower. I have another behaviour
  6126.     window that allows #CM and Non-local calls. In other words, at
  6127.     20:00 AEST I drop the requirement that all calls be local.
  6128.  
  6129.     At that point, Opus will start trying to send the mail to Doug.
  6130.  
  6131.     Here is how my Z-Events would go:
  6132.  
  6133.               Daytime ..... CM, Local
  6134.               Overnight ... CM, Non-Local
  6135.               ZMH ......... Mail only
  6136.  
  6137.     For ZMH (Zone Mail Hour), I drop the CM requirement. That lets Opus
  6138.     send to systems that cannot handle continuous mail. The point to all
  6139.     of this is that messages stay bundled all the time.  What changes is
  6140.     the behaviour of Opus.
  6141.  
  6142.     That is about it ...
  6143.  
  6144.     At this point, the standard reaction is "I have some special cases
  6145.     that this won't handle. I have several pages of routing and batch
  6146.     files to do all this special stuff."
  6147.  
  6148.     Possibly, just possibly, there are some special cases that Opus
  6149.     outbound cannot handle. I cannot think of any. Guido says there are
  6150.     none, so do not try thinking any up unless you are fond of grey
  6151.     cement shoes and wooden overcoats.
  6152.  
  6153.  
  6154.  
  6155.     6.8 SETTING UP BEHAVIOUR WINDOWS
  6156.  
  6157.     Set up your schedule of Matrix behaviour windows using those set out
  6158.     below as examples of how to control when Opus will make outbound calls
  6159.     depending on the cost of the calls. You can fine tune them if you
  6160.     want, or add more. The examples below are just meant to serve as a
  6161.     realistic guide as to how you should go about setting up Matrix
  6162.     behaviour windows.
  6163.  
  6164.  
  6165.  
  6166.  
  6167.  
  6168.     Page 112                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  6169.  
  6170.  
  6171.     6.8.1 THE ZONE MAIL HOUR
  6172.  
  6173.     The theory is, if you cannot get a message to another system at any
  6174.     other time, you can send it during the relevant zone mail hour (ZMH).
  6175.     One hour is supposed to be set aside for Matrix traffic ... with no
  6176.     human callers. Being able to accept traffic during ZMH is the sole
  6177.     requirement for maintaining your listing in the FidoNet nodelist. File
  6178.     requests are often disabled during the ZMH, although this is optional.
  6179.  
  6180.               Tag:             Z (Matrix Behaviour Window)
  6181.               Day:             ALL
  6182.               Start:           (the start of the appropriate ZMH)
  6183.               End:             (60 minutes later)
  6184.               Mail:            Yes
  6185.               Local only:      No
  6186.               No Local:        No
  6187.               CM:              No
  6188.               Suppress exits:  Yes
  6189.               Mail only:       Yes
  6190.               File requests:   No (optional)
  6191.               Frequency:       15
  6192.               Local call cost: not applicable
  6193.  
  6194.  
  6195.  
  6196.     6.8.2 OVERNIGHT LONG DISTANCE
  6197.  
  6198.     This behaviour window tells Opus that it is okay to make long distance
  6199.     calls because rates are low ... but only if the remote systems can
  6200.     receive mail on a continuous basis.
  6201.  
  6202.               Tag:             Z (Matrix Behaviour Window)
  6203.               Day:             ALL
  6204.               Start:           00:00
  6205.               End:             06:00
  6206.               Mail:            Yes
  6207.               Local only:      No
  6208.               No Local:        No
  6209.               CM:              Yes
  6210.               Suppress exits:  No
  6211.               Mail only:       No
  6212.               File requests:   Yes (optional)
  6213.               Frequency:       40
  6214.               Local call cost: not applicable
  6215.  
  6216.  
  6217.  
  6218.     6.8.3 DAYTIME LOCAL-ONLY
  6219.  
  6220.     During the day, when long distance phone rates are high, you should
  6221.     probably tell Opus not to make any long distance calls.  In fact, the
  6222.     only calls should be to local systems that can accept mail
  6223.     continuously.
  6224.  
  6225.      
  6226.      
  6227.     THE MATRIX                                                   Page 113 
  6228.      
  6229.      
  6230.               Tag:             Z (Matrix Behaviour Window)
  6231.               Day:             ALL
  6232.               Start:           06:00
  6233.               End:             23:59
  6234.               Mail:            Yes
  6235.               Local only:      Yes
  6236.               No Local:        No
  6237.               CM:              Yes
  6238.               Suppress exits:  No
  6239.               Mail only:       No
  6240.               File requests:   Yes (optional)
  6241.               Frequency:       40
  6242.               Local call cost: (set an appropriate number of cents,
  6243.                                 depending on what you have in your
  6244.                                 nodelist control file call cost table for
  6245.                                 local calls)
  6246.  
  6247.     You should not skip setting the "local call cost"; it is one of the
  6248.     main ways of controlling the cost of outbound phone calls made by Opus
  6249.     and will reward you in the long run by saving you unnecessary phone
  6250.     charges. When Opus implemented the "local call cost" field, Guido now
  6251.     sold all his shares in the local phone company. Need we say more?
  6252.  
  6253.  
  6254.  
  6255.     6.9 HOW TO GET INTO THE MATRIX
  6256.  
  6257.     The term "Matrix" is used to mean the worldwide amateur email network
  6258.     that is sometimes called FidoNet<tm>. Although this section describes
  6259.     the operation of FidoNet, there is nothing to stop you from creating
  6260.     and maintaining your own private nodelist or joining another network
  6261.     using FidoNet technology.
  6262.  
  6263.     Getting into FidoNet consists of getting a Matrix address. Those
  6264.     numbers are assigned by NET HOSTS.
  6265.  
  6266.     Normally, you cannot call your net host or log onto his/her system.
  6267.     That is not the way this works. Instead, you have to send a message
  6268.     requesting an address direct to the Network HOST to prove that your
  6269.     system is capable of supporting netmail.
  6270.  
  6271.     When your address is assigned, you will be informed of the address in
  6272.     a return message from the network host to ensure that you are also
  6273.     able to receive netmail.
  6274.  
  6275.     By the time you have an address, you will have proved that you have a
  6276.     minimally functioning system!  You will have sent and received mail.
  6277.  
  6278.  
  6279.  
  6280.  
  6281.     Page 114                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  6282.  
  6283.  
  6284.     6.9.1 MATRIX STRUCTURE
  6285.  
  6286.     The Matrix is a loose collection of fiercely independent systems and
  6287.     system operators. To break things down into manageable pieces, the
  6288.     Matrix is divided five ways. You will be dealing with the NETWORK and
  6289.     NODE items for the most part:
  6290.  
  6291.          ZONE      ... a very large geographical area, normally a
  6292.                        continent (Zone 1 = North America, Zone 2 = Europe
  6293.                        & United Kingdom, Zone 3 = Australia & NZ, Zone 4 =
  6294.                        South America, Zone 5 = Africa, Zone 6 = Asia);
  6295.  
  6296.          REGION    ... normally a large geographical area, but smaller
  6297.                        than a continent;
  6298.  
  6299.          NETWORK   ... an even smaller geographical area, often based on a
  6300.                        local phone company free/low cost calling area;
  6301.  
  6302.          NODE      ... an individual system (you may be a node!);
  6303.  
  6304.          POINT     ... a sub-node (you may be a point!).
  6305.  
  6306.     Unless you are sending international email, you do not have to worry
  6307.     about zones. Zone Coordinators are responsible for overseeing the
  6308.     coordination of ZONES.
  6309.  
  6310.     Major cities are usually designated as NETWORKS in the Matrix. The
  6311.     person who coordinates things in a network is called a Network
  6312.     Coordinator (among other not-so-nice things sometimes!).
  6313.  
  6314.     The person who oversees the running of the networks in a REGION is
  6315.     called the Regional Coordinator.
  6316.  
  6317.     A NODE is part of a net or a region.  The person who runs a node is
  6318.     you, the Sysop. Your system may be either a NODE or a POINT (if it is
  6319.     a point, refer to section 7 of this manual for details of setting up
  6320.     as a point.
  6321.  
  6322.  
  6323.  
  6324.     6.9.2 MATRIX ADDRESSES
  6325.  
  6326.     A Matrix address looks like this:      3:711/401.5
  6327.  
  6328.     That is a system in zone 3, net 711, node 401, point 5. Most of the
  6329.     time, you will see the shorthand version of that:
  6330.  
  6331.               711/401
  6332.  
  6333.     The address of a Network Coordinator or "host" system looks like this:
  6334.  
  6335.               NET/0
  6336.  
  6337.     The host for net 711, for example, would be 711/0.  The zero for the
  6338.     second digit is the signal that the address refers to a host.
  6339.      
  6340.      
  6341.     THE MATRIX                                                   Page 115 
  6342.      
  6343.      
  6344.     The address of a regional coordinator looks just like a network
  6345.     coordinator's address except that the first sequence of digits refers
  6346.     to the REGION not the NET.
  6347.  
  6348.     Whatever you do, do not make up your own matrix address; use -1:-1/-1.0
  6349.     until you are officially assigned a matrix address.
  6350.  
  6351.  
  6352.  
  6353.     6.9.3 FINDING YOUR NETWORK
  6354.  
  6355.     Here is how to find the network in your area:
  6356.  
  6357.        * Using a text editor or viewer, look at the raw NODELIST.nnn file.
  6358.          Search for your city or town -- or perhaps for other phone
  6359.          numbers having your area code.
  6360.  
  6361.        * Find the line that begins with the word HOST. Here is an example:
  6362.  
  6363.          Host,711,SYDNEY_NORTH,Springfield_NSW,Kevin_Mann,61-43-23-2275,
  6364.           9600,PEP,MNP,CM
  6365.  
  6366.          This line tells you that folks living in North Sydney are in net
  6367.          number 711. The Network name indicates this, but may not always.
  6368.          If it does not imply a geographical area, check the location
  6369.          which occurs before the sysop name.
  6370.  
  6371.          If you live in a small town, you may not be in a net. Rural areas
  6372.          are covered by regions. If your town is not in the nodelist, do
  6373.          a text search for a nearby town or your State.
  6374.  
  6375.  
  6376.  
  6377.     6.9.4 ASKING FOR AN ADDRESS
  6378.  
  6379.        * Use Opus to generate a Matrix-area message to your network host
  6380.          or regional coordinator;
  6381.  
  6382.        * Use Opus & oMMM to send your message;
  6383.  
  6384.        * Wait patiently for a reply. If you do not hear anything for a few
  6385.          days, you might call the host system and leave a local message.
  6386.  
  6387.  
  6388.  
  6389.     6.9.5 GETTING ALONG IN THE MATRIX
  6390.  
  6391.     Please remember that network coordinators and regional coordinators
  6392.     do not get paid elephant dollars or even peanuts. It is a hobby for
  6393.     them.
  6394.  
  6395.     Getting hooked up to the Matrix can be a frustrating experience
  6396.     sometimes. The network coordinator knows that ... he/she had to go
  6397.     through it, too!
  6398.  
  6399.  
  6400.  
  6401.     Page 116                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  6402.  
  6403.  
  6404.     It is OK to ask for help.
  6405.  
  6406.     When things are finally running smoothly, you ought to consider
  6407.     offering to help. YOU ARE NOT A CONSUMER ... this is a hobby where
  6408.     everybody pitches in. There's plenty to do, and no net host can do it
  6409.     all. The point is that being in the Matrix is not like subscribing to
  6410.     a commercial service.
  6411.  
  6412.  
  6413.  
  6414.     6.10 MATRIX FILE REQUESTS
  6415.  
  6416.     A file request is when one matrix system asks another matrix system
  6417.     for a file. It is something like logging onto the other system and
  6418.     downloading a file, but it is handled during a matrix session rather
  6419.     than a human caller session and is usually quicker (read cheaper)
  6420.     because you do not have to go through the logon sequence and then
  6421.     search the file areas for the file you want. Of course, it is only
  6422.     really of benefit if you know the name of the file you want in
  6423.     advance. File requests can help here too. If you request the magic
  6424.     filename FILES, most system will send you a compressed file containing
  6425.     an up to date list of files which they have available for request.
  6426.  
  6427.  
  6428.  
  6429.     6.10.1 REQUEST METHODS
  6430.  
  6431.     There are currently two methods for handling matrix file requests:
  6432.     "bark" and WaZOO. "Bark" is a telink-transfer method used by some non-
  6433.     WaZOO systems. The WaZOO method uses zmodem and offers more
  6434.     capabilities than the older method.
  6435.  
  6436.                     Opus will process incoming "bark" style file requests,
  6437.     INFO ==---->>   but never initiates such requests. Opus always
  6438.                     initiates "WaZOO" style file requests.
  6439.  
  6440.  
  6441.  
  6442.     6.10.2 ENABLING/DISABLING REQUESTS
  6443.  
  6444.     If you want to allow other systems to make file requests from your
  6445.     system, comment this line in the Matrix and EchoMail Section of your
  6446.     Opus control file (BBS.CTL) by placing a percent sign % in front of
  6447.     it:
  6448.  
  6449.               REFUSE FILE REQUESTS
  6450.  
  6451.                     See the section called "Matrix Behaviour Windows". You
  6452.     INFO ==---->>   can override these control file settings with a matrix
  6453.                     behaviour window (or Z-Event).
  6454.  
  6455.  
  6456.  
  6457.      
  6458.      
  6459.     THE MATRIX                                                   Page 117 
  6460.      
  6461.      
  6462.     6.10.3 THE OKFILE LIST
  6463.  
  6464.     You will need a file containing a list of files approved for file
  6465.     requests. This is a standard, garden-variety text file. It MAY include
  6466.     wildcards. Declare the file like this in the "Matrix and EchoMail
  6467.     Section" of your Opus control file:
  6468.  
  6469.               USES FILEREQ OKFILE c:\opus\okfile.lst
  6470.  
  6471.     This is a "raw" list of fully-pathed filenames. Normally, only one
  6472.     filename should be on a line. The items must begin in the far left
  6473.     column. The format of a normal OKFILE listing is:
  6474.  
  6475.     <path\filename> [!<password>]
  6476.  
  6477.     For example, you might place the following in your OKFILE:
  6478.  
  6479.     c:\comms\*.*
  6480.     c:\net\node*.a??
  6481.     c:\pascal\tp-tutor.zip
  6482.     c:\forth\this.one
  6483.  
  6484.     You can also include an optional password like this:
  6485.  
  6486.     c:\private\*.* !sesame
  6487.  
  6488.     The requesting system must supply the password with the request or
  6489.     Opus will not send the requested file if it is in the c:\private\
  6490.     directory. Instead, Opus will send the ABOUT file as it does with all
  6491.     failed requests. The password is always listed as the second item,
  6492.     regardless of the type of request (magic, dollar sign, normal).
  6493.  
  6494.  
  6495.  
  6496.     6.10.3.1 MAGIC FILENAME REQUESTS
  6497.  
  6498.     Opus also provides support for so-called "magic" filename requests. A
  6499.     magic file request is where you "define" an arbitrary "magic" name and
  6500.     associate it with a particular file or files which will be sent if
  6501.     another system requests the magic name. The format of the OKFILE for a
  6502.     magic filename is:
  6503.  
  6504.     @<magicname> [!<password>] <path\filename>
  6505.  
  6506.     For example, you might place the following in your OKFILE:
  6507.  
  6508.     @OPUS120 c:\120\oexe_120.zip
  6509.     @OPUS120 c:\120\odoc_120.zip
  6510.  
  6511.     =or=
  6512.  
  6513.     @OPUS120 c:\120\oexe_120.zip c:\120\odoc_120.zip
  6514.  
  6515.     Notice that each line begins with an "at" sign @ to alert Opus to the
  6516.     fact that this is a magic file request.
  6517.  
  6518.  
  6519.     Page 118                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  6520.  
  6521.  
  6522.     You may prefer the first method of putting each associated file on a
  6523.     separate, especially if you have 10 or more files being sent in
  6524.     response to a magic filename. It makes it easier if an update comes
  6525.     through if you do it on a line-by-line basis.
  6526.  
  6527.     You can also optionally password protect magic filenames, for example:
  6528.  
  6529.     @BETA120 !kinky c:\120\oexe_120.zip
  6530.     @BETA120 !kinky c:\120\odoc_120.zip
  6531.  
  6532.     Notice that the password is preceded by an exclamation point and is
  6533.     the second item listed. The password is always the second item
  6534.     listed, regardless of the type of request (magic, dollar sign,
  6535.     normal).
  6536.  
  6537.  
  6538.  
  6539.     6.10.3.2 DOLLAR SIGN FILENAMES
  6540.  
  6541.                                   +-------------------------------+
  6542.                                   | The following material is not |
  6543.                                   | for novices or the squeemish. |
  6544.                                   |                               |
  6545.                                   |                     -- Guido  |
  6546.                                   +-------------------------------+
  6547.  
  6548.     You can execute a .COM, .EXE, or .BAT file from inside your OKFILE by
  6549.     using a dollar sign in column one.
  6550.  
  6551.     For example, if the remote system does a WaZOO file request for
  6552.     "LIST" and your OKFILE contains this line:
  6553.  
  6554.               $LIST C:\STUF\GETDIR.BAT %04x %04x
  6555.  
  6556.     The `%04x" items are for Opus to use to stick in additional
  6557.     information. They are C-Language format symbols. For more info on this
  6558.     convention, refer to a book on C.
  6559.  
  6560.     The data is available IN THIS ORDER:
  6561.  
  6562.           Remote net number (integer)
  6563.           Remote node number (integer)
  6564.  
  6565.     Future releases might include more than just those two items, so
  6566.     anything you do with the data should be protected from additional
  6567.     information appended to this list.
  6568.  
  6569.     When the LIST request comes through, Opus will bring up a copy of
  6570.     COMMAND.COM and try to execute "C:\Stuf\GetDir.Bat".
  6571.  
  6572.     The GetDir file could contain this:
  6573.  
  6574.           DIR *.ARC > %1%2.DIR
  6575.           ECHO ^%1%2.DIR >> C:\OUTBOUND\%1%2.HLO
  6576.  
  6577.      
  6578.      
  6579.     THE MATRIX                                                   Page 119 
  6580.      
  6581.      
  6582.     See what we did? Opus supplied the net/node of the remote system. The
  6583.     "%04x" items asked that the net/node be passed as two 4-character hex
  6584.     numbers. The batch file did a directory of all the archives in the
  6585.     current subdirectory, and piped the directory listing to a file made
  6586.     up of the net/node number and a tag of ".DIR". Then we told DOS to
  6587.     append or create a .HLO file for the remote system in which the .DIR
  6588.     file is listed. In addition, we used a "^" as the first character of
  6589.     the listing in the .HLO file as a signal that the .DIR file should be
  6590.     deleted after it is sent.
  6591.  
  6592.     Another use would be at a zone gateway. You could use this feature as
  6593.     a "Directory Assistance" method. Let's say I need to know all the
  6594.     systems in Sydney, Australia. I could put this in a .REQ file:
  6595.  
  6596.           INFO SYDNEY
  6597.  
  6598.     At the gateway, the system could have a customized program that did a
  6599.     case-insensitive pattern match on the other zone's node list. The
  6600.     system could have this in its okfile:
  6601.  
  6602.           $INFO ZONEFINO.EXE %d %d
  6603.  
  6604.     "ZoneInfo.Exe" would be the name of the program that searches the node
  6605.     list. Note that the ZoneInfo program would have to open up the .REQ
  6606.     file. The other system has sent additional information with the
  6607.     request ("Sydney"), and this additional information is only available
  6608.     in the .REQ file itself. The information is not pulled out by Opus.
  6609.     Leaving it in the .REQ file gives your external program the maximum
  6610.     amount of flexibility. Anyway, the ZoneInfo program opens the .REQ
  6611.     file, looks for "INFO", pulls the next token from the same line
  6612.     ("Sydney"), goes through the node list doing a pattern match, creates
  6613.     a text file with the requested information, appends a .HLO file using
  6614.     the net/node information supplied on its command line by Opus, and
  6615.     quickly exits. I said "quickly" because this entire procedure had to
  6616.     be finished before ZModem times out. If your external program will
  6617.     take more time than is available, you can always just drop DTR on the
  6618.     modem to end the session and create a .HLO file so the remote system
  6619.     can call back later for the information it wanted.
  6620.  
  6621.  
  6622.     Another example, in your OKFILE place the following line:
  6623.  
  6624.     $sendlogs !password c:\opus\getlog.bat %d %d
  6625.  
  6626.     GETLOG.BAT contains:
  6627.  
  6628.     pkzip c:\opus\logs c:\opus\*.log
  6629.     omail kill c:\opus\logs.zip -h%1/%2 -poutbound
  6630.  
  6631.     This example runs the batch file, GETLOG.BAT, passing the calling
  6632.     system's net/node number. The program OMAIL then runs, creating a
  6633.     file attach to the calling system, and Opus then regains control and
  6634.     then sends the file log.zip to the calling system during that call
  6635.     and then deletes the file logs.zip (which is why OMAIL was called
  6636.     with the kill command line switch).
  6637.  
  6638.  
  6639.     Page 120                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  6640.  
  6641.  
  6642.     If you need the information, the original .REQ file will be available
  6643.     in your inbound files directory to your external batch file or
  6644.     program.
  6645.  
  6646.     When Opus sees a dollar sign in the OKFILE, it will immediately call
  6647.     the external program/batch file. In other words, if there are any
  6648.     actual file requests in the .REQ file following the dollar-sign
  6649.     activator, those file requests will be ignored.
  6650.  
  6651.     The power offered by the dollar-sign convention is extraordinary. Its
  6652.     primary limitations are your ability and creativity.
  6653.  
  6654.           The dollar-sign convention offers low-level access to your
  6655.           system. Do not use it unless you are sure you know what you
  6656.           are doing.                               -- Wynn Wagner III
  6657.  
  6658.  
  6659.  
  6660.     6.10.4 THE ABOUT FILE
  6661.  
  6662.     The ABOUT file is sent on file requests for "ABOUT," or when a  file
  6663.     request cannot be satisfied because the file requested does not exist
  6664.     or is not listed in your okfile.lst or its name in the okfile.lst is
  6665.     misspelt.
  6666.  
  6667.  
  6668.     The ABOUT file should tell the requestor something about your system
  6669.     (eg, its main purpose or theme) and perhaps your file requesting
  6670.     policy (eg, when file requests can be made, how often, how many etc).
  6671.     It could also list any MAGIC filenames (see the section on the okfile
  6672.     above).
  6673.  
  6674.     Opus sends the ABOUT file if a file request fails. So, you might like
  6675.     to explain in the file that it may have been received because the
  6676.     file which was requested could not be found or was PASSWORDED (see
  6677.     the section on okfile.lst above).
  6678.  
  6679.     As you include the extension in the control file, the file can be a
  6680.     TXT, DOC, ARC or any other kind of file.
  6681.  
  6682.  
  6683.     6.10.5 THE FILES FILE
  6684.  
  6685.     If the sysop of another system wants to know what files you have
  6686.     available for file requesting, the standard Opus method is to request
  6687.     a file called FILES.  When Opus receives a request for FILES, it will
  6688.     automatically transmit the file that you have declared like this:
  6689.  
  6690.               USES FILEREQ FILELIST c:\opus\filelist.arc
  6691.  
  6692.     As you include the extension in the control file, the file can be a
  6693.     TXT, DOC, ARC or any other kind of file. However, it is kinder to your
  6694.     long-distance and international file requestors to use one of the
  6695.     several available file compression programs to compress the file and
  6696.     thereby save them a large phone bill. It will also ensure that Guido
  6697.     does not send Nunzio around to measure you for those grey concrete
  6698.     shoes he makes.
  6699.  
  6700.  
  6701.  
  6702.      
  6703.      
  6704.     THE MATRIX                                                   Page 121 
  6705.      
  6706.      
  6707.     6.10.6 MAKING A FILE REQUEST
  6708.  
  6709.     There are several ways to make a WaZOO file request. You can use
  6710.     standalone programs to generate the file request file (########.REQ)
  6711.     and then have Opus deliver the file, or you can use Opus together with
  6712.     oMMM to generate the file request file.
  6713.  
  6714.     The file request file is simply a text file which contains a list of
  6715.     the file(s) being requested. Wildcards are allowable. Each filename
  6716.     should be on a line by itself. You may add a password after the
  6717.     filename using an exclamation point / bang / this sign ! immediately
  6718.     followed by the password with no intervening space (for example,
  6719.     thisfile.exe !password). The filename is special and looks like this:
  6720.  
  6721.               11112222.REQ
  6722.  
  6723.  
  6724.               "1111"   ... a four-digit hex number that is the NET of the
  6725.                            system that has the files we are requesting.
  6726.  
  6727.               "2222"   ... a four-digit hex number that is the NODE of the
  6728.                            system that has the files we are requesting.
  6729.  
  6730.               "REQ"    ... the file tag that tells Opus this file contains
  6731.                            file request information.
  6732.  
  6733.  
  6734.     * Opus still knows how to respond to the older "Bark" style method for
  6735.       file requests, but it does not initiate such a request.
  6736.  
  6737.     * The presence of a ".REQ" file does not make Opus make an outgoing
  6738.       call. Only ".?UT" and ".?LO" files cause a phone call.
  6739.  
  6740.  
  6741.     To generate the file request file with Opus:
  6742.  
  6743.               * enter a netmail message in your Matrix message area to the
  6744.                 node from which you are requesting the file;
  6745.  
  6746.               * put the name of the sysop (or just Sysop) from whom you
  6747.                 are requesting the file on the To: line ;
  6748.  
  6749.               * put the name of the file you are requesting on the subject
  6750.                 line of the message (and !password, if applicable);
  6751.  
  6752.               * invoke the handling menu (in LORE, press enter on a blank
  6753.                 line - in OpEd, press ^KH) by choosing H and set the
  6754.                 "Request a file" attribute to YES;
  6755.  
  6756.               * save the message (see note below);
  6757.  
  6758.               * run oMMM which will create the .REQ file for transmission
  6759.                 by Opus.
  6760.  
  6761.  
  6762.  
  6763.  
  6764.     Page 122                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  6765.  
  6766.  
  6767.     The message which you entered, assuming you did enter some "body" for
  6768.     it, may or may not also be sent to the system from which you were
  6769.     requesting the file. Check your oMMM.CFG file to ensure that the NAKED
  6770.     request option is not uncommented. oMMM V1.70 will only create the
  6771.     .REQ file if you have NAKED uncommented. The accompanying message (if
  6772.     any) will not be sent -- and this means that Opus will not try to make
  6773.     an outbound call, although you may force it to do so by POLLING the
  6774.     system to which you now have a valid .REQ file waiting to be sent.
  6775.  
  6776.     Another way that some grizzled Opus veterans and a certain LCD have
  6777.     been known to use to create requests is to use:
  6778.  
  6779.      echo nodediff > c:\outbound\00770000.REQ
  6780.      echo  > c:\outbound\00770000.DLO
  6781.  
  6782.     If you do not understand this method, do not worry about it. When you
  6783.     become a grizzled Opus veteran, you will! (You do have to know the
  6784.     hexadecimal filename for the destination system before you can use
  6785.     this method -- see above for how to work it out.)
  6786.  
  6787.  
  6788.  
  6789.     6.10.7 MAKING AN UPDATE REQUEST
  6790.  
  6791.     Making an update file request is just as easy as making a normal file
  6792.     request. What is an update request? Good question. Oh, you want an
  6793.     answer!  It is a request which is conditional on the date of the file
  6794.     you are requesting being newer than the copy of the file you already
  6795.     have.
  6796.  
  6797.     To make an update request, refer to the section above on making a
  6798.     normal file request. The method is almost identical, except that you
  6799.     set Update Request to YES instead of Request a File and when you enter
  6800.     the filename on the subject line, you must give the full path to the
  6801.     copy of the file you already have on your system (ie you must type in
  6802.     something like c:\files\thisfile.exe rather than just thisfile.exe).
  6803.  
  6804.     When Opus calls the other system and transfers the .REQ file, the
  6805.     other system will only send you another copy of the file if it is
  6806.     newer than the one you already have!
  6807.  
  6808.     Advanced Users: note that you can also manually create "update"
  6809.     requests which will result in your being sent a file older than the
  6810.     one you have (hint: look at a sample update .REQ file and think about
  6811.     the time offset specified therein).
  6812.  
  6813.  
  6814.  
  6815.     6.11 THE MATRIX MENU
  6816.  
  6817.     When Opus is at the ready prompt waiting for a call or the next
  6818.     scheduled event, you can get to a special Matrix section.
  6819.  
  6820.     Press "M" when you see the "Ready" prompt line. The menu includes
  6821.     the following options:
  6822.      
  6823.      
  6824.     THE MATRIX                                                   Page 123 
  6825.      
  6826.      
  6827.     I)nformation:  This generates a chart showing the status of pending
  6828.                    outbound traffic and where it is going.
  6829.  
  6830.     P)oll:         Force a call to another system whether there is any
  6831.                    pending outbound mail or not. If a connection is made,
  6832.                    Opus will dynamically generate and transmit a dummy
  6833.                    message bundle if a real one is not available.
  6834.  
  6835.                    As many as 10 tries will be made. You can stop the poll
  6836.                    by pressing <esc>. If no connection is made after
  6837.                    several attempts, Opus will recycle to its on-line
  6838.                    ("Ready") state.
  6839.  
  6840.                    If a connection is made, you can expect all items for
  6841.                    that node to be transmitted ... except those marked as
  6842.                    "hold" or "left".
  6843.  
  6844.                    When you cancel a poll, you may have to press <esc> a
  6845.                    few times. The first will cancel the current call; the
  6846.                    second one will cancel the poll.
  6847.  
  6848.     U)npack:       Process/toss any PKT files found in the current default
  6849.                    subdirectory. This does the same thing as the "-u"
  6850.                    command line option.
  6851.  
  6852.     S)can          Scans the echomail message areas looking for new
  6853.                    messages that need to be gathered up into the outbound
  6854.                    area.
  6855.  
  6856.     C)lear undialables
  6857.                    Resets the "unavailable" counter for any boards that
  6858.                    Opus has found to be unreachable, so calls may once
  6859.                    again be made to them.
  6860.  
  6861.     Q)uit          Quits so that Opus goes back to waiting for the next
  6862.                    caller or scheduled event.
  6863.  
  6864.  
  6865.  
  6866.     6.12 FORCING AN OUTBOUND CALL
  6867.  
  6868.     When Opus has outbound traffic but is waiting for a call, you can
  6869.     force it to make a call immediately. Simply press "C" when you see the
  6870.     "Ready" prompt line.
  6871.  
  6872.     If it has any pending mail (not counting "hold" items), Opus will make
  6873.     a call. In other words, this does not cause Opus to make a call it
  6874.     would not have made, it merely speeds up the process.
  6875.  
  6876.     Sometimes Opus will just flicker your modem lights instead of actually
  6877.     making a call. This is normal behaviour. Just select C)ALL again.
  6878.  
  6879.  
  6880.  
  6881.  
  6882.  
  6883.     Page 124                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  6884.  
  6885.  
  6886.     6.13 UNSUCCESSFUL CONNECTIONS
  6887.  
  6888.     Opus maintains a counter. It is incremented when there is an
  6889.     unconsummated connection. Whenever there is a carrier but no
  6890.     successful Matrix session, this counter gets bumped.
  6891.  
  6892.            +-----------------------------------------------------------+
  6893.            | IMPORTANT:  If Opus finds a counter file showing it tried |
  6894.            |             five times unsuccessfully to call a node, it  |
  6895.            |             will not make any more calls to that node.    |
  6896.            +-----------------------------------------------------------+
  6897.  
  6898.     You can manually delete a counter file to enable further calls to the
  6899.     node in question.
  6900.  
  6901.     If you have some kind of daily house-cleaning routine, you could put
  6902.     this into your batch file:
  6903.  
  6904.               DEL C:\OPUS\OUTBOUND\*.?$?
  6905.  
  6906.     The path should be your Opus hold area. It deletes all files that have
  6907.     "$" as the middle character of the extension. Every time you use this
  6908.     statement, it will re-enable calls to nodes that had unsuccessful
  6909.     tries earlier.
  6910.  
  6911.     There is also a HOUSECLEANING event which will remove these counter
  6912.     files.
  6913.  
  6914.  
  6915.  
  6916.     6.14 MATRIX SESSION SCRIPTS
  6917.  
  6918.     Instead of (or in addition to) a phone number, the "phone" field of a
  6919.     record in the node list can contain the name of a script file. The
  6920.     script file name and optional phone number must be in the following
  6921.     format:
  6922.  
  6923.               "FILENAME.EXT"123-456-7890
  6924.  
  6925.     The quotation marks are mandatory; they tell Opus that this is a
  6926.     script name. The name within the quotes must be the simple filename
  6927.     (no directory path) of a script file in the subdirectory you've
  6928.     declared as being the NET_INFO subdirectory. The phone number, if
  6929.     given, must be in the format shown. It's used only by the AREACODE and
  6930.     PHONE script commands.
  6931.  
  6932.     Script names may be easily inserted into the node list by using the
  6933.     PHONE and/or DIAL substitution commands provided by PARSELST:
  6934.  
  6935.               phone 124/210 "HardWire.Scr"
  6936.                    or
  6937.               Dial   /   011-
  6938.                    1-201- "PCP.SCR"201-
  6939.                     ...
  6940.                    1-919- "PCP.SCR"919-
  6941.      
  6942.      
  6943.     THE MATRIX                                                   Page 125 
  6944.      
  6945.      
  6946.     6.14.1 CONTENTS OF A SCRIPT FILE
  6947.  
  6948.     A script file is created with a text editor. Each line must contain a
  6949.     KEYWORD (refer to the Opus Technical Reference Manual for a fuller
  6950.     description of the full list of keywords). In many cases, a script
  6951.     file will contain other material.
  6952.  
  6953.     The keyword must be in the far lefthand column of each line. The
  6954.     system is not sensitive to the case of keywords ... uppercase and
  6955.     lowercase are treated the same.
  6956.  
  6957.     Some keywords require additional information. You should put a single
  6958.     space after the keyword, then start typing the additional information.
  6959.     In other words, if you put a keyword then TWO spaces ... the second
  6960.     space will be considered part of the additional information.
  6961.  
  6962.  
  6963.     Keywords
  6964.  
  6965.               Remember: In actual practice, the following keywords
  6966.                         must always begin appear in the far lefthand
  6967.                         column.
  6968.  
  6969.  
  6970.     Xmit:     Send something to the modem.  As in the modem initialization
  6971.               string in the control file, Opus understands the following
  6972.               special characters:
  6973.  
  6974.                         ~    slight pause
  6975.                         |    transmit a <cr> character
  6976.  
  6977.               EXAMPLE:  xmit ATZ|
  6978.                         xmit AT|~ATH0|
  6979.  
  6980.  
  6981.     Dial:     Transmit whatever additional information appears on the same
  6982.               line of the script, then wait for a modem response.  If the
  6983.               modem reports any kind of failure (eg, "BUSY"), the script
  6984.               will be terminated.
  6985.  
  6986.               NOTE:     The dial "prefix" and "suffix" from the
  6987.                         control file are NOT used here.
  6988.  
  6989.               EXAMPLE:  dial 555-1212
  6990.  
  6991.  
  6992.     Areacode: Transmit the area code portion of the phone number given
  6993.               after the script file name, eg:
  6994.  
  6995.                    "xxxxxxxx.xxx"@@@-xxx-xxxx
  6996.  
  6997.               This is primarily useful for placing PC-Pursuit calls.
  6998.  
  6999.               EXAMPLE:  areacode
  7000.  
  7001.  
  7002.  
  7003.     Page 126                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  7004.  
  7005.  
  7006.     Phone:    Transmit the local phone number portion of the phone number
  7007.               given after the script file name, eg:
  7008.  
  7009.                    "xxxxxxxx.xxx"xxx-@@@-@@@@
  7010.  
  7011.               This is primarily useful for placing PC-Pursuit calls.
  7012.  
  7013.               EXAMPLE:  phone
  7014.  
  7015.  
  7016.     Pattern:  Designate a text string to be searched for by the WAIT
  7017.               command. Up to 4 such text strings, numbered 0-3, may be
  7018.               searched for simultaneously. Each string may be a single
  7019.               "word" (no embedded spaces) up to 20 characters long.
  7020.               Upper/lower-case ARE significant; a pattern will only be
  7021.               matched by an identical incoming string.
  7022.  
  7023.               EXAMPLES: pattern 0 :
  7024.                         pattern 1 OPUS
  7025.                         pattern 2           (disables pattern)
  7026.  
  7027.  
  7028.     Wait:     Wait for any of the text strings previously designated by
  7029.               PATTERN to be received from the remote system. The command
  7030.               will continue until either a match is found, or there is no
  7031.               input from the remote system for the specified number of
  7032.               seconds. The silence timeout defaults to 40 seconds if not
  7033.               given. If no match is found the script is terminated.
  7034.  
  7035.               EXAMPLES: wait
  7036.                         wait 20
  7037.  
  7038.  
  7039.     Session:  In most cases, this will be the last keyword in your
  7040.               scripts. It means Opus should begin a network session with
  7041.               the remote system.
  7042.  
  7043.               The session begins with whacking, if necessary. Then it
  7044.               moves through the SYNC procedure into the exchange of
  7045.               bundles and files.
  7046.  
  7047.               EXAMPLE: session
  7048.  
  7049.  
  7050.     Dos:      Send a command to DOS. You can process something.or even
  7051.               summon a stand-alone netmail session-handler.
  7052.  
  7053.               EXAMPLE:  dos DIR
  7054.                         dos ARCA test *.pkt
  7055.  
  7056.  
  7057.     Carrier:  If there is no carrier when Opus reaches this keyword, the
  7058.               script will terminate.
  7059.  
  7060.               EXAMPLE:  carrier
  7061.      
  7062.      
  7063.     THE MATRIX                                                   Page 127 
  7064.      
  7065.      
  7066.     Init:     Go through the normal modem initialization routine.
  7067.  
  7068.               EXAMPLE:  init
  7069.  
  7070.  
  7071.     Baud:     Set the computer's async port to the remote system's baud
  7072.               rate.
  7073.  
  7074.               EXAMPLE:  baud
  7075.  
  7076.  
  7077.  
  7078.     6.14.2 SCRIPT CHECKLIST
  7079.  
  7080.        * Script file names are in quotes in the node list phone field;
  7081.  
  7082.        * All script files must be in the NET_INFO subdirectory;
  7083.  
  7084.        * Each line must have a keyword in the far lefthand column;
  7085.  
  7086.        * Most keywords require additional information. This information
  7087.          should be separated from the keyword by a single space character;
  7088.  
  7089.        * Most script files should end with "session".
  7090.  
  7091.  
  7092.  
  7093.  
  7094.  
  7095.     Page 128                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  7096.  
  7097.  
  7098.     6.14.3 SAMPLE SCRIPT
  7099.  
  7100.     This script, for PC PURSUIT, was done by Rick Huebner:
  7101.  
  7102.              +--------------------------------------------+
  7103.              |  init                                      |
  7104.              |  baud                                      |
  7105.              |                                            |
  7106.              |  xmit ~~AT|~~ATDT3417733|~(32 squiggles)~  |
  7107.              |  carrier                                   |
  7108.              |                                            |
  7109.              |  xmit ~|~D~|                               |
  7110.              |  pattern 0 =                               |
  7111.              |  wait 10                                   |
  7112.              |  xmit ~D1|                                 |
  7113.              |                                            |
  7114.              |  pattern 0 @                               |
  7115.              |  wait 10                                   |
  7116.              |  xmit ~c dial                              |
  7117.              |  areacode                                  |
  7118.              |  xmit /12,username|                        |
  7119.              |  pattern 0 =                               |
  7120.              |  wait 10                                   |
  7121.              |  xmit ~password|                           |
  7122.              |                                            |
  7123.              |  pattern 0 CONNECT                         |
  7124.              |  wait 20                                   |
  7125.              |  xmit ~~~~|~~~~I|~~~~ATZ|                  |
  7126.              |                                            |
  7127.              |  pattern 0 OK                              |
  7128.              |  wait 20                                   |
  7129.              |  xmit ~ATDT                                |
  7130.              |  phone                                     |
  7131.              |  xmit |                                    |
  7132.              |                                            |
  7133.              |  pattern 0 OPUS                            |
  7134.              |  pattern 1 SEA                             |
  7135.              |  pattern 2 Fido                            |
  7136.              |  wait                                      |
  7137.              |  xmit ~~~~~~                               |
  7138.              |  carrier                                   |
  7139.              |                                            |
  7140.              |  session                                   |
  7141.              +--------------------------------------------+
  7142.  
  7143.  
  7144.  
  7145.      
  7146.      
  7147.     THE MATRIX                                                   Page 129 
  7148.      
  7149.      
  7150.     6.15 MATRIX-ORIENTED BATCH FILES
  7151.  
  7152.     Any batch file for Opus must be able to respond to the following pre-
  7153.     defined DOS errorlevels:
  7154.  
  7155.           +-------+-------------------------------------+---------+
  7156.           | VALUE | MEANING                             | ACTION  |
  7157.           +-------+-------------------------------------+---------+
  7158.           |  255  | an internal error generated by      | recycle |
  7159.           |       | Microsoft "C."  (e.g., stack        |         |
  7160.           |       | overflow                            |         |
  7161.           |       |                                     |         |
  7162.           |    4  | reserved by Opus                    | recycle |
  7163.           |       |                                     |         |
  7164.           |    3  | extremely serious error (No FOSSIL, | halt    |
  7165.           |       | no user file, etc)                  |         |
  7166.           |       |                                     |         |
  7167.           |    2  | minor error (i/o error)             | recycle |
  7168.           |       |                                     |         |
  7169.           |    1  | ^C (keyboard halt request)          | halt    |
  7170.           |       |                                     |         |
  7171.           |    0  | ???                                 | recycle |
  7172.           +-------+-------------------------------------+---------+
  7173.  
  7174.  
  7175.     Sample, bare bones NERF.BAT batch file to run Opus which assumes that
  7176.     you are using Opus internal mail handling capabilities and oMMM to
  7177.     bundle Matrix messages:
  7178.  
  7179.          +----+----------------------------------------------------+
  7180.          |Line| Batch file command                                 |
  7181.          +----+----------------------------------------------------+
  7182.          |  1 | :opus                                              |
  7183.          |  2 | c:                                                 |
  7184.          |  3 | cd c:\opus                                         |
  7185.          |  4 | Opus %1 %2 %3 %4 %5 %6                             |
  7186.          |  5 | if ERRORLEVEL 255 goto opus                        |
  7187.          |  6 | if ERRORLEVEL   8 goto opus                        |
  7188.          |  7 | if ERRORLEVEL   7 goto bundle                      |
  7189.          |  8 | if ERRORLEVEL   3 goto end                         |
  7190.          |  9 | if ERRORLEVEL   2 goto opus                        |
  7191.          | 10 | if ERRORLEVEL   1 goto offline                     |
  7192.          | 11 | if ERRORLEVEL   0 goto opus                        |
  7193.          | 12 | :bundle                                            |
  7194.          | 13 | c:\opus\oMMM                                       |
  7195.          | 14 | goto start                                         |
  7196.          | 15 | :offline                                           |
  7197.          | 16 |                                                    |
  7198.          +----+----------------------------------------------------+
  7199.  
  7200.  
  7201.  
  7202.     Page 130                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  7203.  
  7204.  
  7205.     NOTES:
  7206.  
  7207.     Line 1:   Batch file label for "goto opus"
  7208.  
  7209.     Line 2:   Ensure we are logged in to drive c:
  7210.  
  7211.     Line 3:   Ensure we are in the Opus system directory
  7212.  
  7213.     Line 4:   Runs Opus with up to six optional command line switches; you
  7214.               would specify these by running the batch file like this:
  7215.  
  7216.               NERF BBS
  7217.  
  7218.               which would cause the batch file to run "OPUS BBS" when it
  7219.               gets to this line.
  7220.  
  7221.     Line 5:   The check for errorlevel 255 is not really needed here
  7222.               because the following line (errorlevel 8) will end up
  7223.               trapping 255. It is put here to stress that 255 is a
  7224.               possible errorlevel.
  7225.  
  7226.     Line 6:   Checking for errorlevel 8 is a safety measure. It will trap
  7227.               any ErrorLevels above 8, too. In other words, the batch
  7228.               file is saying "If you get anything else just recycle."
  7229.  
  7230.     Line 7:   Respond to "After Edit Exit 7". The errorlevel 7 means
  7231.               something in the matrix message area has changed. The only
  7232.               thing we need to do is put the new messages into bundles by
  7233.               calling oMMM. This errorlevel happens after somebody enters
  7234.               a message in the matrix area.
  7235.  
  7236.     Line 8:   Errorlevel 3 is a reserved Opus errorlevel. The batch file
  7237.               should halt.
  7238.  
  7239.     Line 9:   Errorlevel 2 is a reserved Opus errorlevel. The batch file
  7240.               should recycle.
  7241.  
  7242.     Line 10:  The sysop pressed CTRL-C or ALT-Q on the keyboard to
  7243.               terminate Opus and return to the DOS prompt.
  7244.  
  7245.     Line 11:  Errorlevel 0 is a reserved Opus errorlevel. The batch file
  7246.               should recycle.
  7247.  
  7248.     Line 12:  The batch file bundle label used in "goto bundle".
  7249.  
  7250.     Line 13:  Runs the oMMM program to bundle and/or compress any new mail
  7251.               to be sent to other systems.
  7252.  
  7253.     Line 14:  Rerun Opus after bundling any new mail.
  7254.  
  7255.     Line 15:  The batch file label used in "goto offline".
  7256.  
  7257.     Line 16:  With DOS, you always have to have a blank line when the last
  7258.               item is a label.
  7259.  
  7260.      
  7261.      
  7262.     THE MATRIX                                                   Page 131 
  7263.      
  7264.      
  7265.     6.16 CHECKLIST FOR GOING ONLINE
  7266.  
  7267.        * Quadruple check to be absolutely sure that you have a "TZ"
  7268.          environment variable set ... and that your event manager is
  7269.          reacting to it well. When your system is waiting for a call, the
  7270.          "Ready" prompt message should show information about the next
  7271.          scheduled event or behaviour window. See that the time of the
  7272.          next event coincides with your expectations. The "TZ" environment
  7273.          variable can be a little tricky. See the "Setting Up Opus V1.70"
  7274.          section of this manual for full details.
  7275.  
  7276.        * Make sure you have an outbound holding area subdirectory;
  7277.  
  7278.        * Quadruple check to make sure that both ARCE and ARCA are on your
  7279.          path. This may seem silly, but some folks had trouble with it.
  7280.          For example, they had changed "ARCA.COM" into "AA.COM" because of
  7281.          a patch message archive program;
  7282.  
  7283.        * Without both ARCE and ARCE on your DOS path, you can expect
  7284.          problems ... tragic and/or humourous depending on your attitude.
  7285.  
  7286.  
  7287.     Do this:
  7288.  
  7289.        * From the DOS prompt, type ARCE and press Enter. The ARCE program
  7290.          should display a help screen. If it does not, do not try to run
  7291.          Opus outbound. ARCE must be in the Opus system directory or on
  7292.          your DOS path;
  7293.  
  7294.        * From the DOS prompt, type ARCA and press Enter. If ARCA does not
  7295.          respond with a help screen, you need to put ARCA in your Opus
  7296.          system directory or on your DOS path;
  7297.  
  7298.        * Put OPUS.EXE into your Opus system directory;
  7299.  
  7300.        * Customize the Opus control file, BBS.CTL, and compile it using
  7301.          NACL;
  7302.  
  7303.        * Compile the raw NODELIST to produce your Version 6 or Version 7
  7304.          nodelist files;
  7305.  
  7306.        * Build an oMMM control file and oMMM route file;
  7307.  
  7308.        * Build a new NERF.BAT batch file.
  7309.  
  7310.                          +----------------------------------------------+
  7311.                          |   The chief cause of problems is solutions.  |
  7312.                          |                                              |
  7313.                          |                           -- Eric Sevareid   |
  7314.                          +----------------------------------------------+
  7315.  
  7316.  
  7317.     Page 132                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  7318.  
  7319.  
  7320.  
  7321.                                 +--------------------------------------+
  7322.                                 |  Everything has its beauty, but not  |
  7323.                                 |  everyone sees it.                   |
  7324.                                 |                       -- Confucious  |
  7325.                                 +--------------------------------------+
  7326.  
  7327.  
  7328.     7.0 IMPLEMENTING POINT SUPPORT
  7329.  
  7330.     Opus can function as either a "point" or in its traditional role as a
  7331.     fully-fledged BBS. Starting with Opus V1.70, special point support has
  7332.     been added to Opus to make it easy to run Opus as either a point or a
  7333.     "BossNode" (usually a fully-fledged Bulletin Board System which
  7334.     provides mail facilities points).
  7335.  
  7336.     The following sections explain how to set up Opus V1.70 as a BossNode
  7337.     to support a PointNet, and as a Point in a PointNet under a BossNode.
  7338.  
  7339.     Opus cannot be set up as both a BossNode and as a Point at the same
  7340.     time. You can, however, achieve this feat by using two Opus control
  7341.     files and switching from one to the other using external events to
  7342.     switch the resulting parameter files at the specified times.
  7343.  
  7344.  
  7345.  
  7346.     7.1 WHAT IS A POINT?
  7347.  
  7348.     A point is the perfect solution if you are heavily into messaging and
  7349.     do not have the time or inclination to run and maintain a fully-
  7350.     fledged Bulletin Board System. A point is like a small BBS with no
  7351.     users other than yourself. It does not require the full time,
  7352.     dedicated use of a phone line and its phone number is not publicly
  7353.     listed in any list or the nodelist.
  7354.  
  7355.     So, what is it really? A point is a computer system which calls a
  7356.     fully-fledged BBS regularly to collect any new EchoMail or netmail
  7357.     since its last call. The new mail which is collected is then read on
  7358.     the point system, "off-line" from the main BBS. The mail collected is
  7359.     usually for one person's use only, rather than for general consumption
  7360.     as in the case of a fully-fledged BBS where users call into the system
  7361.     and read the mail on-line.
  7362.  
  7363.     A point does not have to be limited to this use only, it is just that
  7364.     the majority do use it this way. For example, a point could be a
  7365.     fully-fledged BBS which allows users to call in. The only limitation
  7366.     (advantage?) with a BBS point is that it is NOT included in the weekly
  7367.     nodelist and does not have to make its system available for other BBS
  7368.     calls.
  7369.  
  7370.  
  7371.  
  7372.      
  7373.      
  7374.     IMPLEMENTING POINT SUPPORT                                   Page 133 
  7375.      
  7376.      
  7377.     7.2 HOW DO POINTS WORK?
  7378.  
  7379.     You leave Opus running (or to be run automatically) on your computer
  7380.     system at a pre-arranged time each day/night (e.g. in the early
  7381.     morning). At the pre-arranged time (usually when users are not allowed
  7382.     on the BBS), your system will phone the BBS to send all your new
  7383.     messages to the BBS and pick up all the new messages from the BBS.
  7384.     This should take 2 to 15 minutes at 2400 baud depending on how many
  7385.     EchoMail message conferences you wish, or are allowed, to take.
  7386.  
  7387.     Opus then sorts all the new messages out into the various EchoMail
  7388.     conference topics and waits for you to read them. You can come along
  7389.     at any time and read them, and possibly also reply to some of them.
  7390.     You no longer need to try calling the BBS in person to read the
  7391.     messages, you do not tie up the telephone lines and there are no time
  7392.     limits. It makes messaging very easy and leisurely.
  7393.  
  7394.  
  7395.  
  7396.     7.3 HOW TO BECOME A FIDONET POINT
  7397.  
  7398.     A "point" system is allocated a FidoNet address. This means that a
  7399.     person running a point (although not listed in the nodelist) can send
  7400.     and receive worldwide netmail, in addition to participating in
  7401.     EchoMail conferences. A normal BBS FidoNet address consists of a Zone
  7402.     number (Australia is in Zone 3), a Network number within that Zone and
  7403.     a node number within that Network. For example, Sentry's full FidoNet
  7404.     address is 3:711/409.
  7405.  
  7406.     To get a node number in a network (and be listed in the nodelist) you
  7407.     need to be able to send and receive mail in the designated Zone Mail
  7408.     Hour and comply with the additional mail times prescribed by the
  7409.     particular Network in which you are a node. This means that your
  7410.     system must be able to be on line a considerable percentage of the
  7411.     day.
  7412.  
  7413.     This is where points and point operators come in. In FidoNet, points
  7414.     are an additional layer in the hierarchy under normal nodes.  A full
  7415.     point address is made up of the Zone:Net/Node number of the BBS (known
  7416.     as the BossNode) which provides the NetMail and EchoMail service to
  7417.     the point plus a point number: i.e. 3:711/409.1 would be the address
  7418.     of point 1 under node 409 in network 711 in zone 3.
  7419.  
  7420.     The BossNode also usually needs to run special software (eg Opus) to
  7421.     ensure that mail from other FidoNet systems is passed on to the point
  7422.     to which it is addressed. It should also be noted that not every node
  7423.     Sysop is prepared to provide point services to someone wishing to be a
  7424.     point. There are many reasons for this. It does involve extra work for
  7425.     the Sysop of a BossNode, and it is the Sysop of the BossNode who is
  7426.     responsible for the behaviour or "netiquette" of the points under the
  7427.     node. In addition, nodes which bear a heavy mail processing burden
  7428.     already (for example, Network Hosts and EchoMail Hubs) will usually
  7429.     not be prepared to provide additional mail services to points. The
  7430.     bottom line is, it is a free service provided voluntarily by the Sysop
  7431.     of a node. It pays to ask (nicely!) the Sysops of the FidoNet nodes
  7432.  
  7433.  
  7434.     Page 134                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  7435.  
  7436.  
  7437.     which you frequent whether they are able or willing to support you as
  7438.     a point off their node.
  7439.  
  7440.  
  7441.  
  7442.     7.4 SETTING UP AS A BOSSNODE
  7443.  
  7444.     The first step is to setup a working Opus BBS, which is explained
  7445.     elsewhere in the Opus documentation. Once you have the BBS working,
  7446.     it is just a matter of adding a line to your Opus control file.
  7447.  
  7448.     An official PointNet number may be obtained from your FidoNet Zone
  7449.     Coordinator, but this is not compulsory. You are free to choose
  7450.     whatever number your heart desires. To obtain an official PointNet
  7451.     number, send a netmail message to the your ZC asking to be allocated a
  7452.     PointNet number for your zone. The ZC will then send back to you a
  7453.     unique (to your zone) point net number for your use.
  7454.  
  7455.     This PointNet number needs to be added to your Opus control file in
  7456.     the section titled "MATRIX AND ECHOMAIL SECTION" as follows:
  7457.  
  7458.          Address   3:711/409.0        % BossNode's FidoNet address
  7459.          PointNet  30141              % Your PointNet number
  7460.  
  7461.     It is usually a good idea to put the PointNet option directly after
  7462.     your Address option in the Opus control file.
  7463.  
  7464.     The PointNet option tells Opus to check any incoming mail from the
  7465.     points and strip off the SEEN-BY and Origin lines and put the
  7466.     BossNode's Opus system's SEEN-BY and Origin lines in the message
  7467.     before passing it on to other systems.
  7468.  
  7469.     To send echomail to any PointNet node, is simply a matter of including
  7470.     that point's point address (PointNet/Point) in the SCAN line of an
  7471.     echomail message area definition in the Opus control file. For
  7472.     example (note: this area definition has been viciously edited for
  7473.     brevity):
  7474.  
  7475.             AREA    0002    DESQVIEW
  7476.             %
  7477.             PUBLIC MESSAGES ONLY
  7478.             ECHOMAIL        DESQVIEW
  7479.             ACCESS PRIV     Disgrace
  7480.             PATH            C:\MSG\DESQVIEW\
  7481.             TITLE           Int'l DESQVIEW Conference [Echomail]
  7482.             HELP            C:\OPUS\HLP\ECHOHELP.BBS
  7483.             SCAN            711/0 30141/1 30141/2 30141/3
  7484.             END AREA
  7485.  
  7486.     Opus's support for points has certain limitations. First, you need to
  7487.     use Opus to process your incoming packets so that the correct
  7488.     addressing is placed in the point-generated mail. This leads on to the
  7489.     second limitation. When stripping off the SEEN-BY line inserted by the
  7490.     point, Opus does not save this information in the message. If the
  7491.     first message in any echomail message area (1.MSG) is subsequently
  7492.      
  7493.      
  7494.     IMPLEMENTING POINT SUPPORT                                   Page 135 
  7495.      
  7496.      
  7497.     deleted and Opus re-scans messages in that area, Opus will send out
  7498.     second copies of the echomail messages which originated from the point
  7499.     to all the points in your PointNet.
  7500.  
  7501.  
  7502.  
  7503.     7.5 SETTING UP AS A POINT
  7504.  
  7505.     To setup Opus as a point, Opus needs setting up almost as if it was
  7506.     going to be run as a fully-fledged BBS. This includes having a
  7507.     nodelist available to Opus to enable it to call its BossNode. Refer to
  7508.     the documentation for your favourite nodelist compiler program for
  7509.     details of the generation of nodelist files.
  7510.  
  7511.     Once Opus has been set up as a BBS system, adding point support is
  7512.     simply a matter of adding the BossNode option to the "MATRIX AND
  7513.     ECHOMAIL SECTION" of your Opus control file along with the Address
  7514.     option as follows:
  7515.  
  7516.          Address  3:30141/1.0       % Your Zone:PointNet/Point
  7517.          BossNode 711/409           % Your BossNode's address
  7518.  
  7519.     The address option is in the form Zone:PointNet/Point. The address is
  7520.     supplied by your BossNode. The BossNode is the address of the BBS
  7521.     which is called to pickup and send mail too. It does not include the
  7522.     zone, it is assumed to be the same as the zone in the address field.
  7523.  
  7524.     The address used for a point is generally for use between the point
  7525.     system and its boss ONLY. Some Sysops consider it to be "annoying" if
  7526.     the address is used to call up their system to plunder its files
  7527.     without first getting permission to do so. Other Sysops do not mind at
  7528.     all. Be warned!
  7529.  
  7530.     The point can receive netmail by using the full address of
  7531.     Zone:Net/Node.Point. This is 3:711/409.1 using the above examples.
  7532.     Your outgoing PointNet address will be translated by your BossNode to
  7533.     this full FidoNet address, and the address on your incoming mail will
  7534.     be translated from the full FidoNet address to your PointNet address.
  7535.  
  7536.  
  7537.     Page 136                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  7538.  
  7539.  
  7540.  
  7541.                              +------------------------------------------+
  7542.                              | ... then anyone who leaves behind a      |
  7543.                              | written manual, and likewise anyone who  |
  7544.                              | receives it in the belief that such      |
  7545.                              | writing will be clear and certain, must  |
  7546.                              | be exceedingly simple-minded.            |
  7547.                              |                                          |
  7548.                              |                             -- Plato     |
  7549.                              +------------------------------------------+
  7550.  
  7551.  
  7552.     8.0 IMPLEMENTING UUCP SUPPORT
  7553.  
  7554.     While this section of the manual has no intention of providing full
  7555.     details on UUCP e-mail, some explanations as applicable to Opus and
  7556.     FidoNet are in order.
  7557.  
  7558.     UUCP is a Unix-to-Unix copy protocol -- the means by which many people
  7559.     on FidoNet communicate with people on other networks such as Internet
  7560.     and Bitnet. Several gateways operate between FidoNet and UUCP to
  7561.     permit such communication, and these gateways are indicated in the
  7562.     FidoNet nodelist by the flag "Guucp".
  7563.  
  7564.     Opus-CBCS V1.70 is the first version to incorporate UUCP awareness
  7565.     into a FidoNet-compatible BBS program. The Matrix section of any Opus
  7566.     V1.70 setup can now be configured to recognise UUCP e-mail.
  7567.  
  7568.     It must be stated, however, that this UUCP awareness merely means that
  7569.     Opus recognizes UUCP e-mail and can offer certain features to make its
  7570.     use much simpler than it has been in the past or with the other BBS
  7571.     programs which have netmail capabilities. This awareness does not turn
  7572.     an Opus setup into a UUCP gateway.
  7573.  
  7574.  
  7575.  
  7576.     8.1  DEFINITIONS
  7577.  
  7578.     To help you understand the new Opus V1.70 UUCP features, the following
  7579.     is a list of definitions which are used throughout this section of the
  7580.     manual:
  7581.  
  7582.          Gateway -- a FidoNet system which has installed the UUCP gateway
  7583.          software and has registered with the FidoNet domain recognized by
  7584.          UUCP;
  7585.  
  7586.          From: address -- a path showing how a UUCP e-mail message made
  7587.          its way to the destination system;
  7588.  
  7589.          Address String -- a stand-alone line of characters containing
  7590.          "to:" plus address components (information on who is to receive
  7591.          the UUCP e-mail message plus a routing path by which that message
  7592.          is exported through the gateway into the proper domain);
  7593.  
  7594.      
  7595.      
  7596.     IMPLEMENTING UUCP SUPPORT                                    Page 137 
  7597.      
  7598.      
  7599.          Address Tag -- a name or some alias on the UUCPlist which points
  7600.          to the address components Opus uses to generate an Address
  7601.          String;
  7602.  
  7603.          Netmail -- point-to-point mail on FidoNet;
  7604.  
  7605.          E-Mail -- point-to-point mail on Internet, Bitnet, etc;
  7606.  
  7607.          Override -- replace a parameter;
  7608.  
  7609.          Cancel -- throw away a parameter
  7610.  
  7611.  
  7612.  
  7613.     8.2 ELEMENTARY FIDONET <--> UUCP
  7614.  
  7615.     How FidoNet interacts with UUCP depends on your perspective. The
  7616.     gateway has a more complicated view of the activity than does a
  7617.     FidoNet system served by a gateway. As the UUCP awareness now built
  7618.     into Opus has no impact on UseNet newsgroups (backbone echomail
  7619.     equivalent), the discussion in this manual concentrates on UUCP
  7620.     e-mail, which is the USENET equivalent to FidoNet netmail. Here are
  7621.     the basics:
  7622.  
  7623.          The host server (often a university) permits a FidoNet system to
  7624.          use UUCP for access to networks such as Internet. That FidoNet
  7625.          system (the gateway) has installed the software package which
  7626.          facilitates this access.
  7627.  
  7628.          As UUCP e-mail is imported from the host server to the gateway,
  7629.          the software on the gateway determines if that message is to
  7630.          remain "local" or be exported to another FidoNet system. If the
  7631.          message is destined for another FidoNet system, the appropriate
  7632.          zone:net/node address is applied to the message, which is then
  7633.          sent out as regular netmail.
  7634.  
  7635.          A non-gateway FidoNet system can take advantage of these new UUCP
  7636.          features built into Opus V1.70 to enter UUCP e-mail messages,
  7637.          reply to them, and send them via netmail to the proper gateway,
  7638.          even if the FidoNet system which delivered a replied-to message
  7639.          was not the same gateway.
  7640.  
  7641.          When a gateway receives FidoNet netmail bound for UUCP, specially
  7642.          installed software strips the message of FidoNet kludge lines,
  7643.          reads the Address String, and formats the message for use by the
  7644.          host server. On the next connect to the host server, the gateway
  7645.          delivers the UUCP e-mail.
  7646.  
  7647.  
  7648.  
  7649.     Page 138                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  7650.  
  7651.  
  7652.     If you plan to use a gateway, please notify the gateway sysop. Some
  7653.     gateways serve designated nets only; others serve none. But a gateway
  7654.     sysop might be willing to accept in-transit UUCP e-mail if prior
  7655.     arrangements are made. Some sysops are charged for connect time to
  7656.     their host servers; others are not. And remember that UUCP e-mail
  7657.     passing from Internet through the gateway to another FidoNet system is
  7658.     traveling as netmail and should be respected as such.
  7659.  
  7660.     End of an incredibly basic lesson, folks!
  7661.  
  7662.  
  7663.  
  7664.     8.3 DIFFERENCES BETWEEN FIDONET AND UUCP
  7665.  
  7666.     When you enter a FidoNet netmail message, you respond to Matrix
  7667.     options prompts before entering the editor. When you enter a UUCP e-
  7668.     mail message, you respond to many of the same prompts, but your
  7669.     responses are different. In addition, some prompts have no meaning.
  7670.     For example, you cannot file-attach anything to a UUCP e-mail message,
  7671.     nor can you do file-requests.
  7672.  
  7673.     When you enter and save a UUCP e-mail message, that message typically
  7674.     lives out part of its life as FidoNet netmail; for the other part, it
  7675.     is UUCP e-mail. (If you happen to enter that message on a gateway, its
  7676.     netmail life span is *real* short.) Thus, you must apply both netmail
  7677.     and UUCP e-mail characteristics to your message. During its life as
  7678.     netmail, it is sent to a recipient called "UUCP." So, how do we insert
  7679.     the real information, such as to whom and where? With the Address
  7680.     String.
  7681.  
  7682.  
  7683.  
  7684.     8.3.1 THE UUCP ADDRESS STRING
  7685.  
  7686.     A message destined for UUCP requires an Address String on line 1 of
  7687.     the actual message. It must stand alone on this line with no other
  7688.     information, for this string contains data on the person who is to
  7689.     receive the message and the path to reach that person. It functions
  7690.     like your to/destination of FidoNet netmail, and must begin with "to:"
  7691.     followed by address components -- the recipient/destination
  7692.     information. It looks something like this:
  7693.  
  7694.            to: bevvie@bricks.charm.edu
  7695.  
  7696.                       or
  7697.  
  7698.            to: host!bricks.charm.edu!bevvie
  7699.  
  7700.     It is this critical string which Opus V1.70 takes into consideration
  7701.     when you reply to or enter UUCP e-mail.
  7702.  
  7703.  
  7704.  
  7705.      
  7706.      
  7707.     IMPLEMENTING UUCP SUPPORT                                    Page 139 
  7708.      
  7709.      
  7710.     8.4 OPUS UUCP FEATURES
  7711.  
  7712.     The Opus V1.70 UUCP features work with both the full screen editor and
  7713.     LORE. The following is a list of these features:
  7714.  
  7715.       o  Default UUCP gateway;
  7716.       o  Default Address String;
  7717.       o  UUCPlist;
  7718.       o  Address String verification;
  7719.       o  Address String handling;
  7720.       o  Forwarding of UUCP e-mail to Matrix area.
  7721.  
  7722.  
  7723.  
  7724.     8.4.1 SCOPE OF THE UUCP FEATURES
  7725.  
  7726.     Now that you have an overview, you are probably thinking "when are
  7727.     these features appropriate?" or "what can I expect?" Some of the
  7728.     explanations here may not be totally clear until you actually start
  7729.     playing with the UUCP features.
  7730.  
  7731.  
  7732.  
  7733.     8.4.2 CONTROL FILE PARAMETERS
  7734.  
  7735.     To take full advantage of the Opus V1.70 UUCP features, certain lines
  7736.     of the Opus control file must be set. These lines are as follows:
  7737.  
  7738.               MATRIX AND ECHOMAIL SECTION
  7739.  
  7740.                      GUUCP
  7741.                      USES UUCPlist
  7742.                      MESSAGE EDIT Ask UUCP
  7743.                      USES VERSION6
  7744.  
  7745.               OpEd and LORE EDITOR MENUS
  7746.  
  7747.                      ED_UUCP
  7748.  
  7749.     GUUCP <zone:net/node.point>
  7750.  
  7751.          Tells Opus V1.70 the zone:net/node of the system you have assigned
  7752.          as your default UUCP gateway.
  7753.  
  7754.          Example:    GUUCP 1:129/104.0
  7755.  
  7756.  
  7757.  
  7758.     Page 140                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  7759.  
  7760.  
  7761.     USES UUCPlist <path>\<filename>
  7762.  
  7763.          Tells Opus V1.70 the location and filename of your list
  7764.          containing frequently contacted people and their corresponding
  7765.          address components. It is just like FIDOUSER.LST, a list of names
  7766.          and addresses. The difference is that UUCPlist is UUCP addresses,
  7767.          not FidoNet addresses. If this option is specified, you simply
  7768.          enter Netmail messages with the person's name on the address line
  7769.          and Opus will look them up in UUCPlist first; if that fails, then
  7770.          Opus tries either FIDOUSER (version 6 nodelist users) or
  7771.          SYSOP.NDX (version 7 nodelist users).
  7772.  
  7773.          Example:    USES UUCPlist c:\opus\uucp.lst
  7774.  
  7775.     MESSAGE EDIT Ask UUCP <priv>
  7776.  
  7777.          Tells Opus 1.70 the privilege level of anyone who is permitted to
  7778.          cancel or override the default Address String.
  7779.  
  7780.          Any user below this privilege level will *not* be permitted to
  7781.          send a UUCP e-mail reply to anyone other than the individual who
  7782.          sent the original message.
  7783.  
  7784.          Example:    MESSAGE EDIT Ask UUCP Limited
  7785.  
  7786.     ED_UUCP <priv> "<menu option>"
  7787.  
  7788.          May be added to the Oped and LORE Menus. It presents the user
  7789.          with a display of the selected Address String and a (Y/n)? prompt
  7790.          to accept or cancel that string.
  7791.  
  7792.          Example:    ED_UUCP Limited "Verify UUCP"
  7793.  
  7794.     USES VERSION6
  7795.  
  7796.          This line is important for gateways because it tells Opus to use
  7797.          the version 6 nodelist, which is recognized by packages such as
  7798.          UFGATE. Gateways should uncomment it. The version 7 nodelist can
  7799.          be used by non-gateway systems without any impact on UUCP e-mail.
  7800.  
  7801.  
  7802.  
  7803.     8.4.3 THE DEFAULT UUCP GATEWAY
  7804.  
  7805.     UUCP gateways are flagged in the nodelist by "Guucp." When you want to
  7806.     send a UUCP e-mail message, Opus will not waste time scanning the
  7807.     nodelist for the nearest gateway; it uses the gateway you have
  7808.     designated via a control file parameter. When you do any of the
  7809.     following, you trigger Opus to assign the gateway to that message:
  7810.  
  7811.       o  Type "UUCP" on the Matrix address line;
  7812.       o  Apply the default Address String to your message;
  7813.       o  Apply an address from the UUCPlist to your message.
  7814.  
  7815.      
  7816.      
  7817.     IMPLEMENTING UUCP SUPPORT                                    Page 141 
  7818.      
  7819.      
  7820.     Opus does NOT assign the gateway when you type "UUCP" on the "To:"
  7821.     line of the Matrix options. Think of "UUCP" as a recipient whose
  7822.     FidoNet address is your designated gateway. This gateway can be
  7823.     overridden by another FidoNet address.
  7824.  
  7825.     If you cancel the default Address String, the message destination
  7826.     becomes the originating system (which may or may not be the gateway).
  7827.  
  7828.     If you override the default Address String with an address from the
  7829.     UUCPlist, the message destination becomes the gateway.
  7830.  
  7831.     If you cancel the UUCPlist Address String, the message destination
  7832.     becomes the gateway.
  7833.  
  7834.     For details, refer to section 8.3.3 (Control File Parameters) and
  7835.     section 8.6 (UUCP Procedures) of this manual.
  7836.  
  7837.  
  7838.  
  7839.     8.4.4 THE DEFAULT ADDRESS STRING
  7840.  
  7841.     This feature works only with replies to UUCP e-mail. Opus does the
  7842.     following to generate a default Address String:
  7843.  
  7844.       o  reads the "From:" (or "From") address path of a received UUCP
  7845.          e-mail message;
  7846.       o  uses that line to generate Address String components;
  7847.       o  automatically prefaces the components with "to:" ;
  7848.       o  inserts the Address String onto line 1 plus a blank line onto
  7849.          line 2 of the saved reply.
  7850.  
  7851.     Do not look for this string to appear on your message body. It is
  7852.     applied to the message after it has been saved.
  7853.  
  7854.     For details, refer to section 8.6 (UUCP Procedures) of this manual.
  7855.  
  7856.  
  7857.  
  7858.     8.4.5 THE UUCPLIST
  7859.  
  7860.     The UUCPlist feature works with both replies and new messages. You
  7861.     create a file containing commonly used UUCP addresses. Opus does the
  7862.     following when you type an Address Tag from that list onto the Matrix
  7863.     address line:
  7864.  
  7865.       o  reads the list for the tag's corresponding Address String
  7866.          components;
  7867.       o  automatically prefaces the components with "to:";
  7868.       o  inserts the Address String onto line 1 plus a blank line on
  7869.          line 2 of the saved message.
  7870.  
  7871.     Do not look for this string to appear on your message body. It is
  7872.     applied to the message after it has been saved.
  7873.  
  7874.  
  7875.  
  7876.     Page 142                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  7877.  
  7878.  
  7879.     For details, refer to section 8.3.3 (Control File Parameters) and
  7880.     section 8.6 (UUCP Procedures) of this manual.
  7881.  
  7882.  
  7883.  
  7884.     8.4.6 ADDRESS STRING VERIFICATION
  7885.  
  7886.     As you are accustomed to verifying FidoNet addresses, it is a good
  7887.     idea to develop the habit of verifying the Address String. Opus does
  7888.     NOT apply the Address String to the message until the message has been
  7889.     saved. Depending on how you have selected the string to use, Opus
  7890.     displays it in two places.
  7891.  
  7892.     It appears above the Matrix options prior to entry to the editor when
  7893.     all the following conditions have been met:
  7894.  
  7895.       o  the message is a REPLY;
  7896.       o  IF AND ONLY IF "Use UUCP Address" is "Yes".
  7897.  
  7898.     It appears on the Editor and Handling menus when either of the
  7899.     following conditions is met:
  7900.  
  7901.       o  UUCPlist is used;
  7902.       o  the default Address String is used.
  7903.  
  7904.  
  7905.  
  7906.     8.4.7 ADDRESS STRING HANDLING
  7907.  
  7908.     Whether the Address String is defaulted or extracted from the
  7909.     UUCPlist, Opus permits some limited manipulation of that string in the
  7910.     form of a cancellation or an override.
  7911.  
  7912.     WHEN YOUR MESSAGE IS A REPLY: Prior to entering the editor, you can
  7913.     either cancel or override a displayed Address String via the Matrix
  7914.     options. After entering the editor, you can cancel, but not override,
  7915.     via the Editor or the Handling menus. At no time, however, can you
  7916.     actually modify the Address String Opus has been instructed to apply.
  7917.  
  7918.     WHEN YOUR MESSAGE IS NEW: The only feature which produces an Address
  7919.     String for a new message is the UUCPlist (defaults are generated from
  7920.     replies). This string is NOT displayed prior to entering the editor.
  7921.     Neither can it be canceled or overridden from the Matrix options once
  7922.     you have chosen to use it. But you can cancel it via the Editor Menu
  7923.     or the Handling Menu after you have entered the editor. At no time,
  7924.     however, can you actually modify the Address String Opus has been
  7925.     instructed to apply.
  7926.  
  7927.     For details, refer to section 8.6 (UUCP Procedures) and section 8.7
  7928.     (Editor and Handling Menus) of this manual.
  7929.  
  7930.  
  7931.  
  7932.      
  7933.      
  7934.     IMPLEMENTING UUCP SUPPORT                                    Page 143 
  7935.      
  7936.      
  7937.     8.4.8 FORWARDING UUCP E-MAIL TO THE MATRIX
  7938.  
  7939.     This feature works only with messages having "To: UUCP" in their
  7940.     headers, and does not refer to forwarding mail to another system; it
  7941.     refers to forwarding a particular message from one message area to the
  7942.     Matrix area on the same system. There may be occasions when a message
  7943.     destined for UUCP ends up in a message area which does not handle UUCP
  7944.     e-mail. In the past, when you forwarded such a message, Opus added
  7945.     "from/to/date" information to the top burying the Address String. Opus
  7946.     V1.70, however, does not. When the message contains "To: UUCP" in its
  7947.     header, Opus withholds adding the "from/to/date" information, thereby
  7948.     preserving the Address String on line 1. (Such information is added to
  7949.     all other messages, as usual.)
  7950.  
  7951.  
  7952.  
  7953.     8.5 THE UUCPLIST
  7954.  
  7955.     The UUCPlist is like your own personal "UUCP nodelist". Similar in
  7956.     function to Fidouser.Lst, it is a simple text file which contains the
  7957.     addresses of individuals you frequently contact via UUCP.
  7958.  
  7959.  
  7960.  
  7961.     8.5.1 CREATING THE UUCPLIST
  7962.  
  7963.     To create the UUCPlist, simply use a text editor and list one set of
  7964.     address components per Address Tag per line as follows:
  7965.  
  7966.                   <address tag> <address>
  7967.  
  7968.     An Address Tag can be any string of alpha characters: single name,
  7969.     first/last names, alias, some made-up name -- whatever you assign. IT
  7970.     CANNOT BE ALL NUMERIC.
  7971.  
  7972.     You have to create and maintain this list with a text editor. Opus
  7973.     does not provide an option by which you can adopt an address from some
  7974.     UUCP message.
  7975.  
  7976.     When you type a tag onto the Matrix address line, Opus examines the
  7977.     UUCPlist for a matching address. If the tag is not found, Opus assumes
  7978.     the tag is a name and begins a search in the Fidouser.Lst or
  7979.     Sysop.Ndx. If the tag is indeed a name, it might appear in both the
  7980.     UUCPlist and the FidoNet sysop list. To distinguish between the two,
  7981.     you merely customize the UUCPlist tag, ensuring that it is not
  7982.     identical to a name in the FidoNet nodelist.
  7983.  
  7984.  
  7985.  
  7986.  
  7987.     Page 144                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  7988.  
  7989.  
  7990.     == Example Of A UUCPlist ==
  7991.  
  7992.         George Brown brown@fvm.info.com
  7993.         Boughman pitt!muswa.dialix.oz.au!wizard
  7994.         Pinhead saddam@bunker.blooey.gov
  7995.         Martha Garrity xfgt1@csvax.cal.edu
  7996.         Uppity Wench freed@nss.fidonet.org
  7997.         Digest digest+@luther.ohio.edu
  7998.         Vince Smith digest-request@luther.ohio.edu
  7999.         Vince vince@luther.ohio.edu
  8000.  
  8001.     Now . . . why "Uppity Wench"? Because "Bev Freed" is also in the
  8002.     FidoNet nodelist. Therefore, if you wanted to send a FidoNet netmail
  8003.     message to Bev Freed, you would type "Bev Freed" onto the Matrix
  8004.     address line. But if you wanted to send a UUCP e-mail message to Bev
  8005.     Freed, you would type "Uppity Wench" onto that line, because when you
  8006.     created the UUCPlist, you assigned "Uppity Wench" as the tag to her
  8007.     address components, and thereby differentiated between her FidoNet and
  8008.     UUCP e-mail addresses.
  8009.  
  8010.     It makes no difference to any UUCP mailer if you do not use the
  8011.     person's proper name on the UUCPlist. The mailer does not even know
  8012.     about your list. The components of the Address String are what contain
  8013.     the critical information.
  8014.  
  8015.     Also, notice that the last three lines on the sample list have
  8016.     something in common: they are all related to the same system. This
  8017.     ability to customize the tag is handy when you contact a person via
  8018.     different addresses for different reasons. In this example, Vince
  8019.     Smith participates on a private e-mail conference called "Digest." He
  8020.     is also the administrator of that conference. Plus, he has another
  8021.     address you can use to communicate outside the conference and outside
  8022.     his official capacity as conference administrator. You would use
  8023.     "digest" to participate in the private e-mail conference. You would
  8024.     use "Vince Smith" to communicate to Vince regarding Digest
  8025.     administrative matters. You would use "Vince" when you wanted to send
  8026.     personal mail that would not be placed in Vince's official
  8027.     administrative spool on his system. Set the multiple tags according to
  8028.     whatever is best for you.
  8029.  
  8030.     By the way ... there is only one legitimate entry on that sample list.
  8031.     If you try any of the others, you will learn "The Joy Of Bounced
  8032.     Mail".
  8033.  
  8034.  
  8035.  
  8036.     8.5.2 FINDING A PROPER UUCP ADDRESS
  8037.  
  8038.     There are a few ways to determine someone's proper address:
  8039.  
  8040.       o  the person tells you;
  8041.       o  you construct an address using the From: address path;
  8042.       o  you select the address from the person's signature line at the
  8043.          end of a message you have read;
  8044.       o  you use a "reply-to" line sometimes added to UUCP e-mail.
  8045.      
  8046.      
  8047.     IMPLEMENTING UUCP SUPPORT                                    Page 145 
  8048.      
  8049.      
  8050.     Keep in mind that a From: address should, but does not always,
  8051.     represent the proper path. A machine routing a message on its way to
  8052.     you may have discovered that another machine was down. It may have
  8053.     rerouted the message via a different machine at that moment. The best
  8054.     place to obtain a proper address is from the person with whom you wish
  8055.     to communicate. For more information or assistance in determining a
  8056.     proper address, contact your gateway sysop.
  8057.  
  8058.  
  8059.  
  8060.     8.5.3 VIEWING THE UUCPLIST
  8061.  
  8062.     Here is a trick for keeping your UUCPlist handy for viewing even while
  8063.     you are in Opus. Add the following line to the Opus control file for
  8064.     your Editor Menu (OpEd or LORE or both):
  8065.  
  8066.         _SHOW     <priv>     "UUCPlist" = <path>\<filename>
  8067.  
  8068.     This line lets you see the entire list while you are in the message
  8069.     editor.
  8070.  
  8071.     To enable viewing outside the editor, I simply added that line to my
  8072.     Sysop Menu as well. If you maintain the list for users too, you might
  8073.     want to put the viewing feature elsewhere. Just keep in mind that the
  8074.     entire list would be available for viewing by all who had access to
  8075.     it. Assign it a security level at least equivalent to that for netmail
  8076.     access. Users cannot have separate lists. Opus looks for the filename
  8077.     as assigned to UUCPlist in the control file.
  8078.  
  8079.     There is one thing to say about viewing the list from the Editor Menu:
  8080.     it scrolls by and disappears when the screen is cleared. This does not
  8081.     happen when it is viewed from the Sysop Menu. To overcome this
  8082.     disappearing act, I added a ^A below the final entry in the list. Opus
  8083.     does not care that the OEC is in there. When it hits this command, it
  8084.     pauses, giving you a "Press Enter To Continue."
  8085.  
  8086.     Another hint: I have installed my text editor (WordStar) to run off
  8087.     the Sysop Menu. When, while browsing through UUCP e-mail or
  8088.     newsgroups, I find an address I want to add to the UUCPlist, I
  8089.     scribble that address down, go to the Sysop Menu, call up WS, edit the
  8090.     UUCPlist, save the file, then exit WS back to Opus.
  8091.  
  8092.     (In fact, I can edit on the fly many files residing on the hard drive
  8093.     while I am still in Opus. Comes in pretty handy when I want to see how
  8094.     something looks, create a quick bulletin, etc.)
  8095.  
  8096.  
  8097.  
  8098.     8.6 UUCP PROCEDURES
  8099.  
  8100.     Now to put this information into practice. The introductory notes and
  8101.     feature overviews should give you an idea of what is going on when you
  8102.     browse through these sample procedures.
  8103.  
  8104.  
  8105.  
  8106.     Page 146                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  8107.  
  8108.  
  8109.     BLANK LINES -- Many who use UUCP e-mail are accustomed to inserting a
  8110.     few blank lines after posting the Address String onto line 1. Although
  8111.     Opus adds a blank line after applying a defaulted or UUCPlist Address
  8112.     String to a saved message, it is a good idea to add a blank line or
  8113.     two at the top of your message in case you decide to cancel the
  8114.     Address String and replace it with one which you manually enter. These
  8115.     few extra lines overcome the editor's inability to insert a blank line
  8116.     when any text already exists on line 1 of the message body. A blank
  8117.     line or two reserves that space.
  8118.  
  8119.  
  8120.  
  8121.     8.6.1 USING NO UUCP FEATURES
  8122.  
  8123.     This procedure should be familiar to any FidoNetter who has ever used
  8124.     UUCP e-mail.
  8125.  
  8126.  
  8127.      1.  Type "E" to enter a message.
  8128.  
  8129.      2.  Type the gateway's FidoNet address on the Matrix line.
  8130.  
  8131.      3.  Type "UUCP" on the To: line.
  8132.  
  8133.      4.  Type in your subject then enter your editor.
  8134.  
  8135.      5.  Type the Address String on line 1 in the following format:
  8136.  
  8137.               to: <address components>
  8138.  
  8139.      6.  Add one or two blank lines (optional).
  8140.  
  8141.      7.  Enter then save your message.
  8142.  
  8143.  
  8144.  
  8145.      
  8146.      
  8147.     IMPLEMENTING UUCP SUPPORT                                    Page 147 
  8148.      
  8149.      
  8150.     8.6.2 ASSIGNING A GATEWAY
  8151.  
  8152.     This procedure can be used when you have no default address and no
  8153.     entry for the message recipient in the UUCPlist.
  8154.  
  8155.      1.  Type "E" to enter a message.
  8156.  
  8157.      2.  Type "UUCP" on the Matrix line.
  8158.  
  8159.          Note:  The gateway's address automatically appears, and "UUCP"
  8160.                 appears on the To: line.
  8161.  
  8162.      3.  Type in your subject then enter your editor.
  8163.  
  8164.      4.  Type the Address String on line 1 in the following format:
  8165.  
  8166.               to: <address components>
  8167.  
  8168.      5.  Add one or two blank lines (optional).
  8169.  
  8170.      6.  Enter then save your message.
  8171.  
  8172.  
  8173.  
  8174.     8.6.3 USING THE DEFAULT ADDRESS STRING
  8175.  
  8176.     When you reply to a UUCP e-mail message, Opus offers you a default
  8177.     Address String and brings up a new Matrix option special for replies:
  8178.     "Use UUCP address." When this option is set to "YES", the default
  8179.     Address String will be applied to the saved message.
  8180.  
  8181.          VERIFICATION -- The Address String may be verified as follows:
  8182.  
  8183.            o  Before entering the editor -- above the Matrix options
  8184.            o  After entering the editor -- via Editor or Handling menus
  8185.  
  8186.  
  8187.  
  8188.  
  8189.     Page 148                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  8190.  
  8191.  
  8192.      1.  Type "R" to reply.
  8193.  
  8194.          Note:  "Use UUCP Address: YES" appears as a Matrix option, and
  8195.                 "UUCP" appears on the To: line.
  8196.  
  8197.      2.  Let the "YES" stand and move to the Matrix address line.
  8198.  
  8199.          Note:  When the cursor hits the "Use UUCP Address" line, the
  8200.                 default Address String appears on the top of the screen
  8201.                 exactly as it will be applied to line 1 of the saved
  8202.                 message, excluding any name in parentheses. In addition,
  8203.                 the FidoNet address of the system which sent the message
  8204.                 appears. (That system may or may not be the designated
  8205.                 gateway. The saved message, however, is sent to the
  8206.                 designated gateway.)
  8207.  
  8208.      3.  Type in your subject, then enter your editor.
  8209.  
  8210.      4.  Add one or two blank lines (optional).
  8211.  
  8212.      5.  Enter then save your message.
  8213.  
  8214.          Note:  The saved message goes to the gateway.
  8215.  
  8216.  
  8217.  
  8218.     8.6.4 OVERRIDING THE DEFAULT ADDRESS STRING
  8219.  
  8220.     Used for replies, this default can be overridden by an address from
  8221.     the UUCPlist, or it can be canceled to be replaced by manual entry of
  8222.     the Address String into line 1 of the message. When overridden by an
  8223.     address from the UUCPlist, the default string displayed at the top of
  8224.     the screen is replaced by the address from the UUCPlist, as long as
  8225.     "Use UUCP Address" remains set to "YES."
  8226.  
  8227.          VERIFICATION -- The Address String may be verified as follows:
  8228.  
  8229.            o  Before entering the editor -- above the Matrix options
  8230.            o  After entering the editor -- via Editor or Handling menus
  8231.  
  8232.  
  8233.      1.  Type "R" to reply.
  8234.  
  8235.          Note:  "Use UUCP Address: YES" appears as a Matrix option, and
  8236.                 "UUCP" appears on the To: line.
  8237.  
  8238.      2.  Move to the "Use UUCP Address" line.
  8239.  
  8240.          Note:  When the cursor hits the "Use UUCP Address" line, the
  8241.                 default Address String appears on the top of the screen
  8242.                 exactly as it will be applied to line 1 of the saved
  8243.                 message, excluding any name in parentheses. In addition,
  8244.                 the FidoNet address of the system which sent the message
  8245.                 appears. (That system may or may not be the designated
  8246.                 gateway.)
  8247.      
  8248.      
  8249.     IMPLEMENTING UUCP SUPPORT                                    Page 149 
  8250.      
  8251.      
  8252.      3A. To Cancel The Default Address String And Use A Manual Entry
  8253.          Into the Message Body, do the following:
  8254.  
  8255.          a.  Type "N" at "Use UUCP Address."
  8256.  
  8257.              Note:  When you set this option to "NO", the ability to
  8258.                     override with the UUCPlist and use the designated
  8259.                     gateway are also canceled.
  8260.  
  8261.          b.  Type in the gateway's FidoNet address.
  8262.  
  8263.      3B. To Override The Default Address String With An Address From The
  8264.          UUCPlist, do the following:
  8265.  
  8266.          a.  Let the "YES" stand and move the cursor to the Matrix
  8267.              address line.
  8268.  
  8269.          b.  Type the Address Tag as it appears in the UUCPlist, and hit
  8270.              Enter.
  8271.  
  8272.              Note:  The string which will be applied to the message now
  8273.                     appears at the top of the screen. Also, the tag is
  8274.                     replaced by the gateway's FidoNet address.
  8275.  
  8276.      4.  Type in your subject, then enter your editor.
  8277.  
  8278.               If You Canceled The Default Address String, type the
  8279.               replacement Address String on line 1 in the following
  8280.               format:
  8281.  
  8282.                       to: <address components>
  8283.  
  8284.      5.  Add one or two blank lines (optional).
  8285.  
  8286.      6.  Enter then save your message.
  8287.  
  8288.          Note:  If you canceled the default string, the message goes to
  8289.                 the originating system unless you directed the message
  8290.                 to the gateway's FidoNet address.
  8291.  
  8292.                 If you overrode the default string, the message goes to
  8293.                 the gateway.
  8294.  
  8295.  
  8296.  
  8297.  
  8298.  
  8299.     Page 150                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  8300.  
  8301.  
  8302.     8.6.5 USING THE UUCPLIST
  8303.  
  8304.     An address from the UUCPlist can be used to apply an Address String to
  8305.     a new message or override the default Address String of a reply.
  8306.  
  8307.          VERIFICATION -- The Address String may be verified as follows:
  8308.  
  8309.            o  Before entering the editor -- above the Matrix options IF
  8310.               the UUCPlist was used to override the default Address
  8311.               String
  8312.  
  8313.            o  After entering the editor -- via Editor or Handling menus
  8314.  
  8315.  
  8316.      1.  Type "E" or "R" to enter a message or make a reply.
  8317.  
  8318.      2.  On the Matrix address line, type the Address Tag as it appears
  8319.          in the UUCPlist, and hit Enter.
  8320.  
  8321.          Note:  The tag is replaced by the gateway's FidoNet address.
  8322.                 "UUCP" appears in the To: line. If the message is a reply,
  8323.                 the default Address String display is replaced by a
  8324.                 display of the address from the UUCPlist.
  8325.  
  8326.      3.  Type in your subject and enter your editor.
  8327.  
  8328.      4.  Add one or two blank lines (optional).
  8329.  
  8330.      5.  Enter then save your message.
  8331.  
  8332.          Note:  The message goes to the designated gateway.
  8333.  
  8334.  
  8335.  
  8336.     8.7 EDITOR AND HANDLING MENUS
  8337.  
  8338.     Two new Opus V1.70 features let you verify Address Strings once you
  8339.     are in the editor. They do NOT permit editing. They permit you to
  8340.     cancel any default Address String or UUCPlist address. Once you cancel
  8341.     the address, you MUST enter the Address String manually in line 1 of
  8342.     the message body. For this reason, it is always a good idea to insert
  8343.     one or two blank lines at the top of your message body to permit such
  8344.     insertion and editing, in case you want to cancel the string after
  8345.     already starting your message text.
  8346.  
  8347.     When you cancel the default Address String, your message goes to the
  8348.     originating system (which may or may not be the gateway). When you
  8349.     cancel an Address String from the UUCPlist, your message goes to the
  8350.     designated gateway.
  8351.  
  8352.  
  8353.  
  8354.      
  8355.      
  8356.     IMPLEMENTING UUCP SUPPORT                                    Page 151 
  8357.      
  8358.      
  8359.     8.7.1 EDITOR MENU
  8360.  
  8361.     If you have added ED_UUCP to your editor menus, Opus displays the
  8362.     Address String it will apply to the message. The display reads:
  8363.  
  8364.                   Use <Address String> (Y/n)?
  8365.  
  8366.     If you type "N", the string is canceled. You might consider making
  8367.     this option available to your users, if you permit them to modify the
  8368.     Subject and To lines of their messages once they are in the editor.
  8369.     Remember: the Address String is really a "to" string.
  8370.  
  8371.  
  8372.  
  8373.     8.7.2 HANDLING MENU
  8374.  
  8375.     A new option has been added to the Handling Menu:
  8376.  
  8377.                   G)ated UUCP Address
  8378.  
  8379.     When a default Address String or a UUCPlist address is selected for
  8380.     application to line 1 of the saved message, this option appears on the
  8381.     Handling Menu, displaying the Address String that will be applied,
  8382.     excluding any name in parentheses.
  8383.  
  8384.  
  8385.  
  8386.     8.8 CREDIT WHERE CREDIT IS DUE
  8387.  
  8388.     I personally want to thank Doug Boone for tackling this tremendous
  8389.     UUCP adventure. The folks out there who run gateways and the many,
  8390.     many people who use UUCP e-mail will benefit greatly from his efforts.
  8391.     I also want to thank Trev Roydhouse for asking me to put this section
  8392.     of the manual together. And of course, my dearest thanks go out to
  8393.     Wynn Wagner III for being Wynn.
  8394.  
  8395.     Bev Freed
  8396.     1:129/104
  8397.     freed@nss.fidonet.org
  8398.  
  8399.  
  8400.     Page 152                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  8401.  
  8402.  
  8403.  
  8404.                              +-----------------------------------------+
  8405.                              |  We have more useless information than  |
  8406.                              |  ignorance of what is useful.           |
  8407.                              |                       -- Vauvenargues   |
  8408.                              +-----------------------------------------+
  8409.  
  8410.  
  8411.     9.0 ECHOMAIL
  8412.  
  8413.     An EchoMail Conference is a discussion on a particular topic which
  8414.     takes place on a number of FidoNet bulletin boards almost
  8415.     simultaneously. A message placed in an EchoMail Conference on one
  8416.     bulletin board is "broadcast" to all the other boards in the network
  8417.     which are participating in that conference. There are a number of
  8418.     conferences available, including international ones, which cover a
  8419.     wide variety of subjects. Not all conferences will necessarily be
  8420.     available on all FidoNet bulletin boards.
  8421.  
  8422.     What EchoMail does for you is allow you to talk to people on other
  8423.     FidoNet bulletin boards across the country and the world without
  8424.     having to know who, or where they are. You can tell an EchoMail
  8425.     Conference Area from the Area Name. It will say something about the
  8426.     echo, eg. mirrors, national conference, etc. All you have to do is
  8427.     enter a message in one of these areas, and it is automatically sent
  8428.     out to any and all FidoNet bulletin boards participating in that
  8429.     particular EchoMail Conference.
  8430.  
  8431.  
  8432.  
  8433.     9.1 AN ECHOMAIL TUTORIAL
  8434.  
  8435.     Before we get down to the nitty gritty of implementing EchoMail on
  8436.     your system, it is worthwhile spending a few minutes learning about
  8437.     how to use EchoMail. What follows is an edited, and somewhat updated,
  8438.     version of a tutorial I grabbed from Jon Sabol's system in 1986. Jon
  8439.     was the original author of the tutorial.
  8440.  
  8441.  
  8442.  
  8443.     9.1.1 ORIGIN LINES
  8444.  
  8445.     At the end of each message in an EchoMail Area there is a line called
  8446.     an Origin line which shows the name and FidoNet address of the board
  8447.     on which the message was entered. That name may or may not be a
  8448.     familiar to you. At the end of the origin line there are two or three
  8449.     numbers in parenthesis. This is the FidoNet address of the originating
  8450.     bulletin board, eg. EchoMail messages entered on Sentry have an origin
  8451.     line ending with "(3:711/401)" or "(711/401)". The "3" is the Zone
  8452.     number, the "711" is the network number and the "401" is the node
  8453.     number. You can find a listing of all the zone/net/node numbers in the
  8454.     entire world in a file which may be called 'NODELIST.TXT' on many
  8455.     FidoNet bulletin boards.
  8456.  
  8457.     If you wish to send a private FidoNet mail message (not an EchoMail
  8458.      
  8459.      
  8460.     ECHOMAIL                                                     Page 153 
  8461.      
  8462.      
  8463.     message) to a person who has entered a message in a particular
  8464.     conference, you can discover the person's FidoNet address by checking
  8465.     the origin line on the particular message which he/she entered. If you
  8466.     do not know how to send a FidoNet mail message, ask your friendly
  8467.     Sysop.
  8468.  
  8469.  
  8470.  
  8471.     9.1.2 PRIVATE MESSAGES
  8472.  
  8473.     All the messages in each EchoMail Conference area are sent out to all
  8474.     the other participating bulletin boards, even if they are labelled
  8475.     private. Most FidoNet bulletin board software now only allows public
  8476.     messages in EchoMail Conference areas. Beware! If you want to send a
  8477.     private message to someone, you should not use an EchoMail area. You
  8478.     should, instead, use the FidoNet mail area (also known as the Matrix
  8479.     area on Opus bulletin boards).
  8480.  
  8481.  
  8482.  
  8483.     9.1.3 PERSON-TO-PERSON MESSAGES
  8484.  
  8485.     Generally, person-to-person messages should not be entered in an
  8486.     EchoMail Conference. If you have a message for Bill Bloggs, and no one
  8487.     else is likely to be interested in it, then use FidoNet mail and not
  8488.     EchoMail otherwise the sysop of every bulletin board participating in
  8489.     that EchoMail Conference will pay to receive it. A message between two
  8490.     users in Sydney, received on a BBS in Perth, is not likely to win you
  8491.     any friends. It can be worse! If the particular EchoMail Conference is
  8492.     an International one, your message could end up on numerous FidoNet
  8493.     bulletin boards across North and South America and Europe.
  8494.  
  8495.  
  8496.  
  8497.     9.1.4 THANK-YOU MESSAGES
  8498.  
  8499.     If you do receive a flood of replies to a question which you entered
  8500.     in an EchoMail Conference, it is only natural to want to thank each
  8501.     individual who replied. DON'T do it! Those 15 short one line messages
  8502.     saying "Thanks for your reply <fill in the name>" will be echoed
  8503.     everywhere and are only of interest to the recipients. You have two
  8504.     choices: (1) send a FidoNet mail message, or (2) send a single "global"
  8505.     thank-you message in the EchoMail Conference (e.g. "Thanks to all
  8506.     those who helped with my modem problem. It is now fixed.").
  8507.  
  8508.  
  8509.  
  8510.     9.1.5 OFF-TOPIC MESSAGES
  8511.  
  8512.     Every EchoMail conference has a subject; do not stray too far off it.
  8513.     Most EchoMail Conferences have a moderator who will step in and shout
  8514.     if the topic strays too much. Unless you have been involved in a
  8515.     particular conference and have a good grasp of its scope, be cautious
  8516.     about entering messages on new topics.
  8517.  
  8518.  
  8519.  
  8520.     Page 154                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  8521.  
  8522.  
  8523.     9.1.6 REPLIES SHOULD STAND ALONE
  8524.  
  8525.     When you reply to a message in an EchoMail conference, mention enough
  8526.     of the previous message so that readers can tell what you are replying
  8527.     to.  It is maddening to see someone discussing the merits of a
  8528.     previous message when you cannot figure out what the previous message
  8529.     is about. On the other hand, it is equally maddening to see someone
  8530.     quote an entire message in reply only to add a short comment like "I
  8531.     agree" or "Me too".
  8532.  
  8533.  
  8534.  
  8535.     9.1.7 DELAYED REPLIES
  8536.  
  8537.     Also, remember the delay inherent in an EchoMail conference. If you
  8538.     post a question, don't expect a response tomorrow.  If you reply to a
  8539.     question, realise that many others may be replying at the same time,
  8540.     and that a flood of messages in reply may pour in over the next
  8541.     several days. This will be particularly so in the case of large
  8542.     National or International EchoMail Conferences.
  8543.  
  8544.  
  8545.  
  8546.     9.1.8 COMMERCIAL ADVERTISEMENTS
  8547.  
  8548.     Commercial advertisements are not allowed in many of the EchoMail
  8549.     Conference areas. Why should the individual sysops who bear the cost
  8550.     of moving the messages around the country, and the world in the case
  8551.     of international conferences, pay for your advertising? If you do
  8552.     enter a commercial advertisement, you will probably be warned not to
  8553.     do so again and your message will be deleted. If you persist in
  8554.     entering commercial advertisements in an EchoMail area you can expect
  8555.     to have your access to the relevant bulletin board cut off by the
  8556.     Sysop. If you are a Sysop, your link to that particular conference may
  8557.     be cut.
  8558.  
  8559.  
  8560.  
  8561.     9.1.9 COST OF ECHOMAIL
  8562.  
  8563.     EchoMail is NOT free. EchoMail messages are sent via local, long
  8564.     distance and international telephone calls. Unless sponsored, the
  8565.     Sysops involved (particularly the Sysops of "EchoMail hubs" and "host
  8566.     systems") bear the cost of this, and so users are NOT charged for
  8567.     EchoMail messages [at least in Australia].
  8568.  
  8569.  
  8570.  
  8571.     9.1.10 CONCLUSION
  8572.  
  8573.     Now, all you have to do to use EchoMail is read the messages in the
  8574.     EchoMail Conference Areas and enter or reply to them. EchoMail takes
  8575.     care of the rest. Please participate in EchoMail with us. We provide
  8576.     this as a free service, and really enjoy seeing it put to use. Enjoy!
  8577.  
  8578.      
  8579.      
  8580.     ECHOMAIL                                                     Page 155 
  8581.      
  8582.      
  8583.     9.1.11 ENCOUNTERS OF AN ABBREVIATED KIND
  8584.  
  8585.     In EchoMail messages you are bound to stumble over some of the
  8586.     abbreviations listed below. This list is far from exhaustive. It is a
  8587.     sample of the abbreviations noted in EchoMail over the course of a
  8588.     week.
  8589.  
  8590.     BTW      = By The Way
  8591.     OTOH     = On The Other Hand
  8592.     FWIW     = For What It's Worth
  8593.     ROFL     = Rolling On Floor Laughing
  8594.     IMHO     = In My Humble Opinion
  8595.     IMNSHO   = In My Not So Humble Opinion
  8596.     MYOB     = Mind Your Own Business
  8597.     IMHO     = In My Honest/Humble Opinion
  8598.     L8R      = Later!
  8599.     ZMH      = Zone Mail Hour
  8600.     LCD      = An Opus Lower Code Dweller
  8601.     TNSTAAFL = There's No Such Thing As A Free Lunch
  8602.  
  8603.  
  8604.  
  8605.     9.2 HOW ECHOMAIL STARTED
  8606.  
  8607.     Once upon a time, way back in 1985, Chuck Lawson (Dallas) and Harv
  8608.     Neghila (San Francisco) noticed they were spending lots of time in
  8609.     chat with each other ...  running up their long distance phone bills.
  8610.     "There's got to be a better way," they concluded.
  8611.  
  8612.     "We ought to do something like netmail chat."
  8613.  
  8614.     That subject was brought up at the next notorious Dallas  sysops'
  8615.     pizza party.  All the sysops had opinions and suggestions, as is
  8616.     expected.
  8617.  
  8618.     Somebody noticed that Jeff Rush had quietly taken out paper and
  8619.     pencil. He seemed to be taking notes.
  8620.  
  8621.     The idea was forgotten -- that is, by everyone except Jeff. A month or
  8622.     so after the discussion, he popped up and said, "Here 'tis!"
  8623.  
  8624.     It was a couple of programs which make up the heart of the EchoMail
  8625.     system ... and which had no similarity to any of the designs laid out
  8626.     so carefully on our pepperoni conference table.
  8627.  
  8628.     He wrote a two programs: SCANMAIL, to move outbound messages from an
  8629.     EchoMail area into the netmail message area, and TOSSMAIL to move
  8630.     inbound messages from the netmail message area into the EchoMail area.
  8631.  
  8632.     We decided to try it out by starting two EchoMail message areas. One
  8633.     for sysops, cleverly called SYSOP... one for users called TECH.
  8634.     Messages bounced around (most of the time) between systems run by
  8635.     Chuck Lawson, Jon Sabol, and Jeff Rush.
  8636.  
  8637.  
  8638.  
  8639.     Page 156                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  8640.  
  8641.  
  8642.     The next day two other message areas were added: CHATTER and POLITICS.
  8643.     Two other systems were added: Wynn Wagner in Dallas and Harv Neghila
  8644.     in San Francisco.
  8645.  
  8646.     Chuck-to-Harv: the first backbone.  They were spending their long
  8647.     distance money again.  Now, it wasn't just for their chatting. It was
  8648.     for chatting from Jon and Wynn and Jeff, too... and all they users on
  8649.     all five systems.  So it went.
  8650.  
  8651.     In short order, other sysops started getting curious and interested.
  8652.     The SYSOP area spread out quickly.
  8653.  
  8654.     One of the earliest battles was to keep Dallas sysops from talking
  8655.     about the most recent picnic or pizza party.  It took quite some time
  8656.     for the locals to realize their little local EchoMail area was not
  8657.     little or local any more.  <wiping brow> [Ed: Guido's brow?]
  8658.  
  8659.     Another early problem was net hosts and region coordinators. Nobody
  8660.     realized that the volume of EchoMail would grow so quickly.  At first,
  8661.     EchoMail went out like any other e-mail ... through net hosts.  Those
  8662.     hosts quickly made it known that they were not amused by the sudden
  8663.     increase in their long distance bills.  That seems like a reasonable
  8664.     attitude, and everybody agreed that EchoMail would never be "host-
  8665.     routed" again.
  8666.  
  8667.     "This is going to bring the network to its knees," was the cry from
  8668.     some quarters.
  8669.  
  8670.     So far, though, it seems to be working.
  8671.  
  8672.     The amazing thing is, EchoMail is working in spite of its lack of a
  8673.     firm organizational structure. The backbone is an informal coalition,
  8674.     and they certainly would not presume to tell you what you can or
  8675.     cannot do with EchoMail ... as long as you stay polite. Maybe it
  8676.     should be stated like this: EchoMail is working BECAUSE OF its lack of
  8677.     a firm organizational structure.
  8678.  
  8679.     A quotation from Wynn Wagner III (March 1991):
  8680.  
  8681.        "Jeff Rush is sometimes called the person who invented EchoMail.
  8682.         That is absolutely not correct. EchoMail was thought up by the
  8683.         sysops of Dallas. It happened at one of our pizza parties. Two
  8684.         sysops (Chuck/Dallas & Harv/San Francisco) were the first to draw
  8685.         up a design document. Jeff was the first to show up with working
  8686.         code. I don't want to lessen Jeff's contribution to EchoMail, but
  8687.         I need to make sure other toes aren't stepped on."
  8688.  
  8689.  
  8690.     ... and a quotation from Jeff Rush (March 1991):
  8691.  
  8692.        "In my opinion, the idea of echos was to cause all the little
  8693.         pockets of interesting ideas that only a few could find/dial-into
  8694.         to multiply into large lakes of discussion others could listen to.
  8695.         Specific boards should blur into the whole net, and the item of
  8696.         focus becomes the conference itself with its readership, and not
  8697.      
  8698.      
  8699.     ECHOMAIL                                                     Page 157 
  8700.      
  8701.      
  8702.         the BBS with its user base. This provides better dissemination of
  8703.         new ideas geographically.
  8704.  
  8705.        "Sort of like reaching critical mass and achieving fusion of the
  8706.         mind.
  8707.  
  8708.        "It means users choose their entry point into the conference based
  8709.         on system availability and registration requirements, and prevents
  8710.         a sysop from gaining a hold o ideas.
  8711.  
  8712.        "I very much object to the (seemingly) natural tendency of people
  8713.         to form cliques or clubs, and to withhold membership as a form of
  8714.         social control. I see it on the big networks and in technical
  8715.         support areas. People let 'friends' into special conferences and
  8716.         brag about how they might be able to get you in if you are up to
  8717.         their standards.
  8718.  
  8719.        "With echos, if the sysop is a jerk but the readership base is
  8720.         interesting, you go find another system that carries the echo.
  8721.  
  8722.        "Freedom of choice, we carry all flavors ... coke or pepsi or ..."
  8723.  
  8724.  
  8725.     You will find several national and international conferences on dozens
  8726.     of technical and non-technical subjects ... from Opus to C to Pascal
  8727.     to science fiction and genealogy.
  8728.  
  8729.     To be involved with an EchoMail conference, you first have to get a
  8730.     Matrix address. Although EchoMail is not affiliated with FidoNet, it
  8731.     would be impossible to handle EchoMail without FidoNet's Matrix
  8732.     structure. If you do not have an address, you need to take care of
  8733.     that first.
  8734.  
  8735.  
  8736.  
  8737.     9.3 ROUTING AND COORDINATION
  8738.  
  8739.     Most EchoMail conferences have a coordinator. Someone who is supposed
  8740.     to help with hookups and to keep the discussion on track. Most good
  8741.     coordinators are quiet. That is because most EchoMail conferences rely
  8742.     on the goodwill and cooperation of participating sysops.
  8743.  
  8744.     Some EchoMail conferences are on what's called "the backbone". A
  8745.     collection of mostly mail-only systems that do very little other than
  8746.     process and send EchoMail.
  8747.  
  8748.     Like almost everything else that touches Opus, EchoMail is a
  8749.     grassroots sort of deal. It is not a commercial service that has
  8750.     subscriptions, and you are not a consumer. If you get involved, you
  8751.     can be expected to share in the expense and in the responsibility. But
  8752.     that is what makes it a hobby!
  8753.  
  8754.  
  8755.  
  8756.  
  8757.     Page 158                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  8758.  
  8759.  
  8760.                In some Zones, eg Zone 1, EchoMail is never "host-routed".
  8761.      --==>>    It is sent directly from one system to another. In Zone 3,
  8762.                however, EchoMail is nearly always "host-routed" -- but
  8763.     +++++++++  then everything is upside down for us.
  8764.     IMPORTANT
  8765.     +++++++++  Do not attempt to send an EchoMail conference through your
  8766.                Net Host, Hub, Regional Coordinator or ZoneGate Operator
  8767.      --==>>    without obtaining their approval to do so IN ADVANCE or
  8768.                your career in the Matrix may well be very short-lived.
  8769.  
  8770.  
  8771.  
  8772.     9.4 GETTING STARTED WITH ECHOMAIL
  8773.  
  8774.     1.      Find an EchoMail conference you want to carry on your system.
  8775.             This is all fairly informal. Here are some suggestions:
  8776.  
  8777.             * Log onto another local system that carries lots of EchoMail.
  8778.               Leave a note to the sysop saying "Hey, can I tie into SUCH-
  8779.               N-SUCH on your board?" or "Where can I tie into this area?"
  8780.  
  8781.             * Check your net's newsletter or local sysop echo. Many local
  8782.               nets publish an up-to-date list of EchoMail conferences.
  8783.  
  8784.             * If you hear of some conference that is not available in your
  8785.               area, you can put yourself in charge of calling to bring it
  8786.               to your area. That is the way EchoMail conferences spread
  8787.               out!
  8788.  
  8789.             * If there simply is no conference that suits you, find
  8790.               another sysop who shares your interest and start your own
  8791.               EchoMail conference. That is precisely how conferences
  8792.               begin.
  8793.  
  8794.             * Do not assume you will get a helpful hand from your net host
  8795.               or regional coordinator. Remember that EchoMail has nothing
  8796.               to do with FidoNet, and some hosts/coordinators do not want
  8797.               anything to do with it.
  8798.  
  8799.     3.      Set up an Opus echomail message area definition in the Message
  8800.             Areas Section of your control file (BBS.CTL). A sample message
  8801.             area definition is given below:
  8802.  
  8803.      
  8804.      
  8805.     ECHOMAIL                                                     Page 159 
  8806.      
  8807.      
  8808.             %
  8809.             AREA      0030      MEADOW        % Area No/Name
  8810.             %
  8811.                  NAME           WOC           % Another Area No/Name
  8812.             %    MENU           <Number>
  8813.                  SECTION        O             % Opus Section
  8814.                  PUBLIC MESSAGES ONLY         % No private messages
  8815.             %    ALIAS                        % No aliases
  8816.                  ROUTE                        % Private replies by netmail
  8817.                  ECHOMAIL       MEADOW        % EchoMail tag
  8818.                  ACCESS PRIV    Extra         % For visiting
  8819.                  EDIT PRIV      Extra         %   Sysops
  8820.                  ACCESS LOCK    M             % but only Opus
  8821.                  EDIT LOCK      M             %   Sysops
  8822.             %    PEEK PRIV      <privilege>
  8823.             %    PEEK LOCK      <locks>
  8824.             %    Upload PRIV    <privilege>
  8825.             %    Upload LOCK    <locks>
  8826.                  PATH           C:\MSG\MEADOW\       % Message directory
  8827.                  TITLE          Int'l Meadow Conference [EchoMail]
  8828.                  MAXLINES       60                   % Three screens!
  8829.             %    BARRICADE      <filename>
  8830.                  ADDRESS        3:711/401.0                   % Who am I?
  8831.                  ORIGIN         WOCket Test Site, Sydney, Oz  % Where
  8832.             %    DOMAIN         <string>                      %     am I?
  8833.             %    PICTURE        <filename>
  8834.                  HELP           C:\OPUS\HLP\ECHOHELP.BBS      % Help!
  8835.             %    CHARSET        <ISO set>
  8836.             %    PASSTHROUGH
  8837.  
  8838.                  SCAN    621/201  681/854  711/907   % Where to next?
  8839.             %
  8840.             END AREA
  8841.             %
  8842.  
  8843.             Make sure you tell the system that the area is for ECHOMAIL
  8844.             and that it is to be "PUBLIC MESSAGES ONLY". (It is normally
  8845.             considered bad manners to send private messages in an EchoMail
  8846.             conference.) Refer to section 2 of the Opus Technical
  8847.             Reference Manual for a detailed explanation of the options in
  8848.             the message area definition above.
  8849.  
  8850.     4.      The Opus control file has some other EchoMail-related options
  8851.             which are listed below. Some of the options are designed to
  8852.             make EchoMail processing as automatic as possible, or to allow
  8853.             the use of an external EchoMail processor. A full explanation
  8854.             of these options may be found in section 2 of the the Opus
  8855.             Technical Reference Manual.
  8856.  
  8857.  
  8858.  
  8859.     Page 160                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  8860.  
  8861.  
  8862.             DOS CLOSE STANDARD FILES
  8863.             USES ECHOTOSS
  8864.             LEAVE ECHOTOSS
  8865.             Path BadEcho <path\>
  8866.             LOG         Echomail
  8867.             SCAN        Echomail
  8868.             ECHO        Guard
  8869.             ECHO        EconoScan
  8870.             ECHO        NOALIAS
  8871.             MAXECHO     <Kbytes>
  8872.             AFTER Mail    Exit    <Number>
  8873.             AFTER Inbound Exit    <Number>
  8874.             AFTER Inbound Toss Echomail
  8875.             AFTER Toss    Exit    <Number>
  8876.             AFTER Arcmail Exit    <Number>
  8877.             AFTER Arcmail Extract Packets
  8878.             MESSAGE SHOW Ctl_A to Hidden
  8879.             MESSAGE SHOW Seenby to Hidden
  8880.  
  8881.     5.      Compile your BBS.CTL file with NACL to produce the BBS.PRM
  8882.             file which Opus needs to run.
  8883.  
  8884.     4.      In your NERF.BAT batch file that runs Opus, set things up to
  8885.             run oMMM from time to time, to bundle messages for
  8886.             transmission. Refer to the sample NERF.BAT file in Appendix A.
  8887.  
  8888.  
  8889.     9.5 THE ECHOMAIL SCAN PROCESS
  8890.  
  8891.     The EchoMail scan process is triggered by one of three things:
  8892.  
  8893.           * EchoMail messages received through the Matrix. If scanning is
  8894.             enabled, the messages are scanned after all bundles are
  8895.             uncompressed and tossed. Only the areas that have new messages
  8896.             are scanned.
  8897.  
  8898.           * A caller entering an EchoMail message, provided you have the
  8899.             SCAN ECHOMAIL option in the control file uncommented. If
  8900.             scanning is enabled, the messages are scanned after the
  8901.             caller's logs off. Only the echomail areas that have new
  8902.             messages in them are scanned.
  8903.  
  8904.           * Selecting S)can from the M)atrix menu either while Opus is
  8905.             sitting at the "Ready" prompt waiting for a call or the next
  8906.             scheduled event or as an option off the Sysop Menu (in the
  8907.             latter case Opus will wait until the Sysop logs off before
  8908.             scanning). This will scan all EchoMail message areas which you
  8909.             have defined in your control file.
  8910.  
  8911.      
  8912.      
  8913.     ECHOMAIL                                                     Page 161 
  8914.      
  8915.      
  8916.     Bundles are created as .OUT files in the subdirectory designated as
  8917.     your outbound holding area. If you need other processing to take place
  8918.     after the scan, you can use the AFTER TOSS EXIT feature. The exit is
  8919.     supposed to happen after messages are scanned, whether the cause of
  8920.     the scan was the fact that messages came in from the Matrix or were
  8921.     entered by a caller. The most likely use for this EXIT will be to call
  8922.     oMMM to get the .OUT files into compressed mail archives.
  8923.  
  8924.  
  8925.     Page 162                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  8926.  
  8927.  
  8928.  
  8929.                                      +---------------------------------+
  8930.                                      |  Some folks are wise, and some  |
  8931.                                      |  are otherwise.                 |
  8932.                                      |              -- Tobias Smollet  |
  8933.                                      +---------------------------------+
  8934.  
  8935.  
  8936.     10.0 USING AN EXTERNAL MAILER
  8937.  
  8938.     You can configure Opus V1.70 to load an external mailer after it loads
  8939.     itself. The mailer will handle any matrix mail sessions. When it
  8940.     detects a human caller, the mailer should exit with a DOS errorlevel
  8941.     of baud/100. Opus will automagically trap this errorlevel, set its own
  8942.     baud rate and run the BBS for the caller.
  8943.  
  8944.     If the mailer exits with an errorlevel other than a valid baud
  8945.     rate/100, one of two things will happen:
  8946.  
  8947.       *  If the errorlevel = 255, Opus will assume the mailer quit
  8948.          (perhaps because you want a human-only window). Opus will no
  8949.          longer load the external mailer but will run itself as usual.
  8950.  
  8951.       *  In any other case, Opus will exit with the same errorlevel, plus
  8952.          the usual Z-behaviour window offset (if any).
  8953.  
  8954.     Since Opus remains in memory when the external mailer is loaded, there
  8955.     will be no delay between the moment Binkley, or any other compatible
  8956.     mailer, exits and the BBS starts.
  8957.  
  8958.     Note: With this setup, Opus runs the mailer (eg BinkleyTerm) instead
  8959.     of the other way around.
  8960.  
  8961.  
  8962.  
  8963.     10.1 OPUS CONTROL FILE SETTINGS
  8964.  
  8965.     To use the external mailer option you must define the command to run
  8966.     the external mailer in the Opus control file. You must also tell Opus
  8967.     whether to use its internal mailer or the external mailer as the
  8968.     default mailer. You therefore have to set the MAILER COMMAND and
  8969.     MAILER LOAD options in the Matrix and Echomail Section of the Opus
  8970.     control file. For example:
  8971.  
  8972.               MAILER COMMAND  BT.EXE share    % Run Binkley
  8973.               MAILER Load     1               % 0 = Internal
  8974.                                               % 1 = Load external
  8975.                                               % 2 = Call external
  8976.  
  8977.      
  8978.      
  8979.     USING AN EXTERNAL MAILER                                     Page 163 
  8980.      
  8981.      
  8982.     You should also uncomment the following line:
  8983.  
  8984.               REFUSE Inbound Traffic
  8985.  
  8986.     which will prevent the following anomalous situation from occurring:
  8987.  
  8988.     * the mailer answers the phone, decides that the caller is a human and
  8989.       passes control to Opus;
  8990.  
  8991.     * Opus decides the caller is a mailer and tries to do a mail session;
  8992.  
  8993.     * the caller, a human, disconnects and Opus goes back to the Ready
  8994.       prompt instead of taking the "after caller exit" caller and
  8995.       reloading the external mailer.
  8996.  
  8997.  
  8998.  
  8999.     10.2 EXTERNAL MAILER  SETTINGS
  9000.  
  9001.     A couple of notes about using External mailers like BinkleyTerm are in
  9002.     order. First of all, you will notice that with Binkley you must use
  9003.     the share command line switch to force Binkley to leave the FOSSIL
  9004.     driver "hot". Binkley must not deinitialize the FOSSIL driver on exit.
  9005.     This will probably be necessary with other mailers which use the
  9006.     FOSSIL driver.
  9007.  
  9008.     If you use Binkley you should also put "BBS EXIT" in your Binkley
  9009.     configuration file instead of using the batch or spawn method to start
  9010.     the BBS. This will tell Binkley to exit with the baud rate/100. You
  9011.     should use a similar configuration with other mailers.
  9012.  
  9013.  
  9014.  
  9015.     10.3 OPUS MAILER EVENTS
  9016.  
  9017.     The mailer event is an event which tells Opus whether to use its own
  9018.     internal mailer or load an external mailer. The mailer event setting
  9019.     overrides the Opus control file setting.
  9020.  
  9021.     You can set Opus to use its internal mailer in the Opus control file
  9022.     and have a mailer event that will run your external mailer at a
  9023.     predetermined time. Or, you can set Opus to use an external mailer in
  9024.     the Opus control file and have a mailer event that will run the Opus
  9025.     internal mailer at a predetermined time.
  9026.  
  9027.     Whenever you have scheduled a mailer event, Opus will use either its
  9028.     own internal mailer or the external mailer specified in the Opus
  9029.     control file depending on which mailer the mailer event specifies.
  9030.  
  9031.     For example, if you have told Opus to use its internal mailer in the
  9032.     Opus control file, have set an external mailer command in the control
  9033.     file, and have a mailer event scheduled at 1:00am to run the external
  9034.     mailer, Opus will exit at 1.00am to the external mailer using the
  9035.     command line specified in the Opus control file. The external mailer
  9036.     will then run until you set another mailer event telling Opus to use
  9037.  
  9038.  
  9039.     Page 164                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  9040.  
  9041.  
  9042.     its internal mailer again and exit from the external mailer to Opus
  9043.     (ie the external mailer must be set to exit to Opus a minute or two
  9044.     after the Opus mailer event is to come into effect).
  9045.  
  9046.     Obviously if both the Opus control file and the mailer event agree on
  9047.     which mailer to run, nothing will happen. When they disagree, whatever
  9048.     mailer the mailer event specifies will override the Opus control file
  9049.     setting.
  9050.  
  9051.  
  9052.  
  9053.     10.4 OPUS MAILER COMMAND LINE SWITCH
  9054.  
  9055.     You can also set an external event that would start Opus with another
  9056.     mailer by using the "-M" Opus command line switch. For example, you
  9057.     could have a FrontDoor command line set in the Opus control file for
  9058.     one mailer event and then start up Binkley with a command line such
  9059.     as:
  9060.  
  9061.      Opus BBS -M"bt.exe unattended share"
  9062.  
  9063.     The -M command line switch will override any setting in the Opus
  9064.     control file.
  9065.  
  9066.     Note that the mailer's command line is in quotes. This is necessary
  9067.     and will cause problems if it is NOT done. You should not put the
  9068.     external mailer's command line in quotes when it is specified in the
  9069.     Opus control file.
  9070.  
  9071.     Also note that there must not be a space between the -M and the first
  9072.     quote: Opus BBS -M "bt.exe unattended share" will NOT work properly.
  9073.  
  9074.     The -M command line switch will override both the Opus control file
  9075.     setting and the mailer event setting and run the specified external
  9076.     mailer instead.
  9077.  
  9078.  
  9079.  
  9080.     10.5 EXTERNAL MAILER EXAMPLE
  9081.  
  9082.     In this example the following assumptions are being made:
  9083.  
  9084.     (1) the default mailer is set to the Opus internal mailer;
  9085.  
  9086.     (2) the Opus control file has the mailer command set to use Binkley;
  9087.  
  9088.     (3) an Opus Mailer event is set to start at 1:00am and use the
  9089.         external mailer specified in the Opus control file (Binkley);
  9090.  
  9091.     (4) an external event is set to exit Binkley with errorlevel 255 at
  9092.         2:00am;
  9093.  
  9094.     (5) an Opus mailer event is set to start at 2:00am and use the Opus
  9095.         internal mailer;
  9096.  
  9097.      
  9098.      
  9099.     USING AN EXTERNAL MAILER                                     Page 165 
  9100.      
  9101.      
  9102.     (6) Opus has an external event set to exit with errorlevel 100 at
  9103.         3:00am;
  9104.  
  9105.     (7) the Opus batch file is set, using the -m Opus command line switch,
  9106.         to run Opus with FrontDoor as the external mailer if Opus exits
  9107.         with an errorlevel of 100.
  9108.  
  9109.     In the above set up, if Opus is started at midnight it will use its
  9110.     own internal mailer. At 1:00am, Opus will load Binkley. At 2:00am
  9111.     Binkley would exit to Opus and Opus would use its internal mailer. At
  9112.     3:00am, Opus would exit with an errorlevel of 100 which would be
  9113.     trapped in the batch file to run Opus with the -M command line switch
  9114.     to load FrontDoor.
  9115.  
  9116.  
  9117.  
  9118.     10.6 SCHEDULING EXTERNAL EVENTS
  9119.  
  9120.     If you have several external events which run various utilities, you
  9121.     will find that having those same events scheduled to be run by the
  9122.     external mailer and by Opus will, naturally enough, cause the events
  9123.     to be run twice.
  9124.  
  9125.     For example, if Binkley (as the external mailer) is active when the
  9126.     event is due, it will exit with the specified errorlevel, the
  9127.     errorlevel will be trapped, and the programs specified in the batch
  9128.     file will be run. Then Opus will restart, and before it loads Binkley,
  9129.     it will notice that it has not run the event; so it will run it (with
  9130.     the same errorlevel), and the event will be run twice.
  9131.  
  9132.     Now why would you do that?  The answer: you want whichever of the
  9133.     external mailer or Opus that is active when the event should be run to
  9134.     run the event. If the events are not duplicated in Opus, and a caller
  9135.     logs on just before an external event, the caller would be able to
  9136.     overrun the time when the event should start.
  9137.  
  9138.     Two ways of resolving this problems are described in the following
  9139.     sections. Refer to the section of this manual describing the Opus
  9140.     Event System for further information about events or behaviour
  9141.     windows.
  9142.  
  9143.  
  9144.  
  9145.     10.6.1 OPTION ONE
  9146.  
  9147.     Set up forced "dummy" external events in Opus so that Opus will know
  9148.     how much time is left until the next external event. The dummy events
  9149.     should all exit with the same errorlevel that is trapped by the batch
  9150.     file and simply reruns the batch file.
  9151.  
  9152.     Opus will regain control, load the external mailer, the external
  9153.     mailer will exit with the appropriate errorlevel (make sure it is not
  9154.     a valid baud rate; refer to section 10.0 above), Opus will pass the
  9155.     errorlevel on to the batch file, which will in turn take the
  9156.     appropriate action.
  9157.  
  9158.  
  9159.     Page 166                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  9160.  
  9161.  
  9162.     Under this setup, callers to the BBS will not be able to overrun the
  9163.     time when the events should occur.
  9164.  
  9165.  
  9166.  
  9167.     10.6.2 OPTION TWO
  9168.  
  9169.     Set up the external events in Opus as usual; set up forced dummy
  9170.     external events to cause the external mailer to exit to Opus shortly
  9171.     after (1) an Opus mailer event specifying that Opus should use its
  9172.     internal mailer and (2) the Opus external event; set up another Opus
  9173.     mailer event specifying that the external mailer should be loaded
  9174.     after the external event has occurred.
  9175.  
  9176.     The external mailer will relinquish control to Opus which will then
  9177.     use its own internal mailer (ie not reload the external mailer) and
  9178.     will execute the external event. Opus will then execute the mailer
  9179.     event and reload the external mailer.
  9180.  
  9181.     Under this setup, callers to the BBS will not be able to overrun the
  9182.     time when the events should occur.
  9183.      
  9184.      
  9185.     OPUS SECURITY                                                Page 167 
  9186.      
  9187.      
  9188.  
  9189.                  +--------------------------------------------------+
  9190.                  |  Adam was but human -- this explains it all. He  |
  9191.                  |  did not want the apple for the apple's sake, he |
  9192.                  |  wanted it only because it was forbidden.        |
  9193.                  |                                                  |
  9194.                  |                                Pudd'nhead Wilson |
  9195.                  |                                     (Mark Twain) |
  9196.                  +--------------------------------------------------+
  9197.  
  9198.  
  9199.     11.0 OPUS SECURITY
  9200.  
  9201.     Opus-CBCS has endured as one of the most secure online systems
  9202.     available. Opus V1.70 maintains that heritage and adds many more
  9203.     features that give the sysop much improved security management
  9204.     flexibility.
  9205.  
  9206.     Do not feel obligated to use all the features just because they are
  9207.     there. It is recommended that you set up your system with moderate
  9208.     security features using the privilege levels at first, then take
  9209.     advantage of additional features as your needs demand it. The security
  9210.     systems for online users are both flexible and potentially complex. If
  9211.     you have an idea on how you wish to setup your system, but think that
  9212.     Opus security features will not handle it, study them some more. It is
  9213.     very likely that you will be able to achieve the desired end result by
  9214.     a careful selection and application of the various options.
  9215.  
  9216.  
  9217.  
  9218.     11.1 ONLINE USERS
  9219.  
  9220.     Most sysops are concerned with flexibility in designing Opus CBCS
  9221.     security layout for online users. Opus has four primary adjuncts to
  9222.     achieve flexibility -- sections, privilege levels, locks, and
  9223.     passwords. These are described in the following section.
  9224.  
  9225.  
  9226.  
  9227.     11.1.1 SECTIONS
  9228.  
  9229.     Each online user of a system can be allocated a "section" by the
  9230.     sysop at logon or can define their own section from the section menu.
  9231.     The ability to choose sections from the section menu can, of course,
  9232.     be restricted by privilege level and/or by locks.
  9233.  
  9234.     A section restricts a user's access to your Opus system. It is used to
  9235.     allocate message and file areas, so that a user will only be able to
  9236.     access those areas which are included in their allocated or chosen
  9237.     section. You can look at sections as being something like TBBS Sigs,
  9238.     except that the use of sections in Opus is optional.
  9239.  
  9240.  
  9241.  
  9242.     Page 168                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  9243.  
  9244.  
  9245.     Sections have a couple of extensions to be considered, MSG_SCAN,
  9246.     F_NEW, MSG_NAREA, F_LOCATE and the NextArea/PriorAreas menu commands
  9247.     will no longer be concerned with the high message/high file area
  9248.     limits. They read the section area table in the user record directly.
  9249.  
  9250.     You define the section(s) to which a message or file area belongs in
  9251.     the message or file area definition in the Opus control file using the
  9252.     SECTION option. The implementation of sections, and user defined
  9253.     sections, is treated in detail in the section of this manual dealing
  9254.     with ... sections!
  9255.  
  9256.  
  9257.  
  9258.     11.1.2 PRIVILEGE LEVELS
  9259.  
  9260.     Each online user of a system is assigned a privilege level. This level
  9261.     is used by Opus to set many operating parameters. These parameters
  9262.     include:
  9263.  
  9264.          *    Access to various Opus functions;
  9265.          *    Total online time per day;
  9266.          *    Total online time per session;
  9267.          *    Lowest connect speed that can be used to access Opus;
  9268.          *    Lowest connect speed that can be used to download files;
  9269.          *    Total file kilobytes that may be downloaded per day.
  9270.  
  9271.     Opus has twelve privilege levels:
  9272.  
  9273.          Hidden
  9274.          Sysop
  9275.          Asstsysop
  9276.          Clerk
  9277.          Extra
  9278.          Favored
  9279.          Privil
  9280.          Worthy
  9281.          Normal
  9282.          Limited
  9283.          Disgrace
  9284.          Twit
  9285.  
  9286.     In order for a user to have access to a privilege protected function
  9287.     in Opus, he must have a privilege level equal to or greater than the
  9288.     function's privilege level. For example, most Opus systems will have a
  9289.     menu option in the MAIN menu to access the FILES section. If the FILES
  9290.     command has a privilege level of FAVORED, then the user must have a
  9291.     privilege level of FAVORED or higher to access, or even see, this
  9292.     command.
  9293.  
  9294.     HIDDEN is a special privilege level. You might think of it as being so
  9295.     high that no one can get to it. It is used for hiding a function from
  9296.     all users. This would be useful for hiding a menu option to a game
  9297.     door that you are constructing. If you set a user's privilege stored
  9298.     in the Opus user file to HIDDEN, it will cause Opus to hang up on them
  9299.     after they enter their password at logon.
  9300.      
  9301.      
  9302.     OPUS SECURITY                                                Page 169 
  9303.      
  9304.      
  9305.     In your Opus configuration file, you set times, speeds, and file
  9306.     download quantities and file upload/download ratios associated with
  9307.     each privilege level.
  9308.  
  9309.  
  9310.  
  9311.     11.1.3 LOCKS AND KEYS
  9312.  
  9313.     The "locks and keys" concept gives the sysop very flexible and
  9314.     powerful security management over a variety of functions in Opus.
  9315.     Locks are associated with the function and each user has a set of
  9316.     keys. There are 32 locks defined. They are denoted by letters and
  9317.     numbers as [ABCDEFGHIJKLMNOPQRSTUVWXYZ012345] for locks 1-32
  9318.     respectively. If a user attempts to access a function within Opus that
  9319.     has locks associated with it, Opus will compare the locks that are set
  9320.     against the user's keys to see if there is a match. For example,
  9321.     suppose a user has keys A, D, and 3 enabled and wishes to access the
  9322.     DOWNLOAD command, which has the D lock enabled.
  9323.  
  9324.          User Keys:          [A..D.........................3..]
  9325.          Download Locks:     [...D............................]
  9326.  
  9327.     The user's key set will unlock the DOWNLOAD command, PROVIDED his
  9328.     privilege level is equal to or higher than the privilege assigned to
  9329.     the DOWNLOAD command.
  9330.  
  9331.     A simple application of locks might be to use them for certain
  9332.     meanings. Here is an example scheme:
  9333.  
  9334.          D    Download access
  9335.          U    Upload access
  9336.          E    Enter Message access
  9337.          F    File area access
  9338.          V    Visiting sysop (use to limit access to certain
  9339.               functions and areas reserved for calling sysops)
  9340.          Y    YOU - set aside certain functions that only You can
  9341.               access
  9342.  
  9343.     Use your imagination. Locks and keys give you great control over your
  9344.     system.
  9345.  
  9346.  
  9347.  
  9348.     11.1.4 PASSWORDS AND BARRICADES
  9349.  
  9350.     Opus uses additional password protection to provide yet another level
  9351.     of security. Of course, every user normally must have a password to
  9352.     log onto your system. A second password feature is the area barricade
  9353.     file. Any Message/File area in Opus may have a set of passwords
  9354.     associated with it. These are defined in a password file associated
  9355.     with that area. The file is a plain text file in the following
  9356.     format:
  9357.  
  9358.     Password Security_Level           ;comment
  9359.     FirstName LastName Security_Level ;comment
  9360.  
  9361.  
  9362.     Page 170                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  9363.  
  9364.  
  9365.     The ;comment field is optional. Opus stops reading the file after the
  9366.     password and security items.
  9367.  
  9368.     An example password file for an echomail message could look like this:
  9369.  
  9370.     SESAME    ASSTSYSOP ; access for area moderator
  9371.     SHILOH    PRIVIL    ; access for those who can enter echomail messages
  9372.     GREYSTOKE NORMAL    ; access for those who cannot enter messages
  9373.     PERFECT   NORMAL    ; access for those who cannot enter messages
  9374.     JANE TRUSTED PRIVIL ; access for Jane who will not be asked for a pwd
  9375.  
  9376.     A unique aspect of the barricade file is that it temporarily adjusts
  9377.     the user's privilege level to that associated with the password
  9378.     entered to gain access to the area. Be sure that the privilege level
  9379.     associated with each password in the file is sufficient to pass the
  9380.     access privilege level for the area and its associated menu commands.
  9381.  
  9382.     Whenever users leave a barricaded message or file area, they lose
  9383.     the higher or lower privilege which was conferred on them by the
  9384.     password file. As an added security measure, if a user logs off or
  9385.     otherwise disconnects while in a barricaded area, Opus always resets
  9386.     the last message or file area accessed, as appropriate, to area number
  9387.     1 and resets their privilege level to what it was before they entered
  9388.     the barricaded area.
  9389.  
  9390.     Unlike Opus V1.1x, in V1.70 both message and file areas may be
  9391.     separately barricaded by defining a password file associated with the
  9392.     relevant area definition in the Opus Control File. Refer to the USES
  9393.     BARRICADE and BARRICADE options in section 2 of the Opus Technical
  9394.     Reference Manual.
  9395.  
  9396.     For further details on implementing barricaded areas, refer to the
  9397.     section 3 of this manual on Setting Up Opus.
  9398.  
  9399.  
  9400.  
  9401.     11.1.5 THE USER LIST
  9402.  
  9403.     The user list may be considered to be a sensitive list on some
  9404.     systems. The sysop may limit the availability of the menu option to
  9405.     list users by using the locks and privileges described above. There is
  9406.     a second method to view the list that is not readily apparent. Opus
  9407.     has the convenience of letting you search the user list when posting a
  9408.     private message. This helps you to find the correct spelling of the
  9409.     person's name that you wish to send a message to. If the user list is
  9410.     to be secured, the ability to view it when posting a private message
  9411.     needs to be defeated. This is done in the control file by enabling the
  9412.     option:
  9413.  
  9414.          EDIT DISABLE USERLIST
  9415.  
  9416.      
  9417.      
  9418.     OPUS SECURITY                                                Page 171 
  9419.      
  9420.      
  9421.     The user also has security options related to the user list. He can
  9422.     select what portions of information he allows to be displayed in the
  9423.     user list by going to the Change menu and turning on or off the
  9424.     options. These are:
  9425.  
  9426.          List User's Name
  9427.          List User's City
  9428.          List Last Time Called
  9429.  
  9430.     Once again, the sysop has ultimate control. If the sysop does not want
  9431.     users to have access to modifying the user list attributes, the sysop
  9432.     can disable the Change Menu option for selecting list attributes by
  9433.     using privilege levels, locks, or simple omission of the item from the
  9434.     menu.
  9435.  
  9436.     The Opus command line switch -NL is the same as the Opus Control File
  9437.     option EDIT DISABLE USERLIST and will override the control file
  9438.     setting.
  9439.  
  9440.  
  9441.  
  9442.     11.1.6 OUTSIDE SECURITY
  9443.  
  9444.     The REBOOT option in the Opus Control file is a security feature
  9445.     which will protect your system from being left in an unknown state
  9446.     should you or another caller hangup or otherwise disconnect while
  9447.     outside of Opus.
  9448.  
  9449.     For example, if the sysop calls in and drops to DOS but loses carrier
  9450.     due to line noise, the next caller to the system would find themselves
  9451.     at the DOS prompt. Callers who find themselves at the DOS prompt have,
  9452.     on occasion, been known to do a lot of damage with a few strategic
  9453.     commands like FORMAT E:, FORMAT D:, and finally a FORMAT C:. Of
  9454.     course, you could recover from this disaster because you have
  9455.     everything currently backed up ... you do have everything backed up?
  9456.  
  9457.     Specifying REBOOT in the Opus Control File turns on the watchdog
  9458.     function in the fossil driver when a user selects a function that will
  9459.     cause Opus to exit with an errorlevel. By turning on this function,
  9460.     the fossil will cause a system reboot if the caller is lost while the
  9461.     caller is outside Opus.
  9462.  
  9463.  
  9464.  
  9465.     11.2 APPLICATION OF ONLINE SECURITY
  9466.  
  9467.     This section is devoted to illustrating the application of online
  9468.     security measures. To the new Opus sysop, the security options may
  9469.     seem like a spaghetti bowl and very confusing. The diagram in figure
  9470.     11.2-1 should help you understand the hierarchy of things. Remember
  9471.     there are sections, privileges, locks, and passwords. These apply in
  9472.     numerous places in Opus. The reason so many places exist is to provide
  9473.     maximum flexibility in configuration. There are some basic guidelines
  9474.     that you may want to follow:
  9475.  
  9476.  
  9477.  
  9478.     Page 172                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  9479.  
  9480.  
  9481.          *    Use sections to restrict users' access to the various
  9482.               areas of your system. For example, you could use sections on
  9483.               a product support system so that only users with product A
  9484.               could access areas with section A set (ie those areas
  9485.               dealing with product A).
  9486.  
  9487.          *    Use menu command privileges and locks to globally control
  9488.               access to things that will apply to the majority of your
  9489.               areas.
  9490.  
  9491.          *    Use area specific privileges and locks to control those
  9492.               things in an area that are the exception to the majority of
  9493.               your areas.
  9494.  
  9495.          *    If none of the above satisfy your needs, then your final
  9496.               option is to build a separate menu file for use in a
  9497.               specific area or sets of areas.  This method carries with it
  9498.               more maintenance. A separate menu file gives you ultimate
  9499.               flexibility in configuring your system, but try to use the
  9500.               other Opus facilities first.
  9501.  
  9502.      
  9503.      
  9504.     OPUS SECURITY                                                Page 173 
  9505.      
  9506.      
  9507.  
  9508.               Figure 11.2-1    Hierarchy of Opus Security Options
  9509.  
  9510.        ╔═══════════════════════════════════════════════════════════════╗
  9511.        ║                             USER                              ║
  9512.        ║                  Password, Privilege & Keys                   ║
  9513.        ╚═══════════════════════════════╤═══════════════════════════════╝
  9514.                                        │
  9515.        ╔═══════════════════════════════╧═══════════════════════════════╗
  9516.        ║                           SECTIONS                            ║
  9517.        ╚═══════════════════════════════╤═══════════════════════════════╝
  9518.                                        │
  9519.        ╔═══════════════════════════════╧═══════════════════════════════╗
  9520.        ║                         MENU COMMANDS                         ║
  9521.        ║                       Privilege & Locks                       ║
  9522.        ╚═══════════════════════════════╤═══════════════════════════════╝
  9523.                                        │
  9524.        ╔═══════════════════════════════╧═══════════════════════════════╗
  9525.        ║                           BARRICADE                           ║
  9526.        ║                           Password                            ║
  9527.        ╚════════════════════╤═════════════════════╤════════════════════╝
  9528.                             │                     │
  9529.        ╔════════════════════╧══════════╗          │
  9530.        ║      MESSAGE AREA ACCESS      ║          │
  9531.        ║       Privilege & Locks       ║          │
  9532.        ╚════╤══════════╤══════════╤════╝          │
  9533.             │          │          │               │
  9534.             │          │          │               │
  9535.        ┌────┴────┬─────┴────┬─────┴────┐          │
  9536.        │EXTERNAL │   ENTER  │   OTHER  │          │
  9537.        │PROGRAMS │   REPLY  │ COMMANDS │          │
  9538.        │  Priv   │   Priv   │          │          │
  9539.        │    &    │     &    │          │          │
  9540.        │  Locks  │   Locks  │          │          │
  9541.        └─────────┴──────────┴──────────┘          │
  9542.                                                   │
  9543.                             ╔═════════════════════╧════════════════════╗
  9544.                             ║             FILE AREA ACCESS             ║
  9545.                             ║             Privilege & Locks            ║
  9546.                             ╚═════╤═════════╤══════════╤══════════╤════╝
  9547.                                   │         │          │          │
  9548.                                   │         │          │          │
  9549.                             ┌─────┴────┬────┴─────┬────┴─────┬────┴────┐
  9550.                             │ EXTERNAL │          │          │  OTHER  │
  9551.                             │ PROGRAMS │DOWNLOAD  │ UPLOAD   │COMMANDS │
  9552.                             │   Priv   │  Priv    │  Priv    │         │
  9553.                             │     &    │    &     │    &     │         │
  9554.                             │   Locks  │  Locks   │  Locks   │         │
  9555.                             └──────────┴──────────┴──────────┴─────────┘
  9556.  
  9557.  
  9558.  
  9559.  
  9560.  
  9561.     Page 174                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  9562.  
  9563.  
  9564.     11.2.1 MENUS
  9565.  
  9566.     Opus menus are wonderfully flexible for security. You are only limited
  9567.     by the types of commands that are allowed in each major section of
  9568.     Opus -- MAIN, FILES, MESSAGES, SECTION, CHANGE, HISTORY, SYSOP and
  9569.     CUSTOM1-6. You may add and delete commands, change privileges and
  9570.     locks, and change the wording of the menus and even the menu prompts.
  9571.     The rules for building menus are explained in detail in the Opus
  9572.     Technical Reference Manual in section 3 (Opus Menu System). The use of
  9573.     privileges and locks on commands is readily apparent, but the use of
  9574.     multiple menu files may not quite be so obvious.
  9575.  
  9576.     Separate menu files are useful when you have one or more areas that
  9577.     need to be treated as "exceptions" to how your menus look for most of
  9578.     your areas. Suppose most of your message areas are set to use the
  9579.     menus shown in Figure 11.2.1-1. These menus are set in your default
  9580.     menu file, ENGLISH.MNU. You also have two genealogy-related
  9581.     conferences on your system and would like to make available a database
  9582.     program through the menus, when the user is accessing either of these
  9583.     conferences. Just define another menu called ENGLISH.001 as shown in
  9584.     figure 11.2.1-2 for your genealogy conferences and specify that these
  9585.     conferences will use menu number 1.
  9586.  
  9587.  
  9588.                                 Figure 11.2.1-1
  9589.  
  9590.                       Sample menus defined by ENGLISH.MNU
  9591.  
  9592.        ╔═══════════════════════════════════════════════════════════════╗
  9593.        ║                                                               ║
  9594.        ║  ECHO area  12 ... Communications                             ║
  9595.        ║  Area change       Enter Message     Reply                    ║
  9596.        ║  Next              Prior msg         Current msg              ║
  9597.        ║  Goodbye           Kill message      ?Help                    ║
  9598.        ║  Select:                                                      ║
  9599.        ║                                                               ║
  9600.        ╟───────────────────────────────────────────────────────────────╢
  9601.        ║                                                               ║
  9602.        ║  ECHO area  25 ... Vietnam Veterans                           ║
  9603.        ║  Area change       Enter Message     Reply                    ║
  9604.        ║  Next              Prior msg         Current msg              ║
  9605.        ║  Goodbye           Kill message      ?Help                    ║
  9606.        ║  Select:                                                      ║
  9607.        ║                                                               ║
  9608.        ╚═══════════════════════════════════════════════════════════════╝
  9609.  
  9610.      
  9611.      
  9612.     OPUS SECURITY                                                Page 175 
  9613.      
  9614.      
  9615.  
  9616.                                 Figure 11.2.1-2
  9617.  
  9618.                Sample menus defined by ENGLISH.001 with External
  9619.                  Program Command for Genealogy database search
  9620.  
  9621.        ╔═══════════════════════════════════════════════════════════════╗
  9622.        ║                                                               ║
  9623.        ║  ECHO area  16 ... Genealogy                                  ║
  9624.        ║  Area change       Enter Message     Reply                    ║
  9625.        ║  Next              Prior msg         Current msg              ║
  9626.        ║  Goodbye           Kill message      DATABASE Search          ║
  9627.        ║  ?Help                                                        ║
  9628.        ║  Select:                                                      ║
  9629.        ║                                                               ║
  9630.        ╟───────────────────────────────────────────────────────────────╢
  9631.        ║                                                               ║
  9632.        ║  ECHO area  17 ... Jewish Genealogy                           ║
  9633.        ║  Area change       Enter Message     Reply                    ║
  9634.        ║  Next              Prior msg         Current msg              ║
  9635.        ║  Goodbye           Kill message      DATABASE Search          ║
  9636.        ║  ?Help                                                        ║
  9637.        ║  Select:                                                      ║
  9638.        ║                                                               ║
  9639.        ╚═══════════════════════════════════════════════════════════════╝
  9640.  
  9641.  
  9642.  
  9643.     11.2.2 AREAS
  9644.  
  9645.     It is quite common to have a need for security variations from area to
  9646.     area. The first level of security checked per area is the barricade
  9647.     password option, if you have it enabled. In Opus V1.70 the barricade
  9648.     password for an area is separately definable for each message and file
  9649.     section. In Opus 1.1x, the same barricade password applied to the
  9650.     message and file area which had the same area number. All area
  9651.     associated security options are now independent of each other with
  9652.     respect to message and file areas.
  9653.  
  9654.     In message areas, you have separately definable privilege levels and
  9655.     locks for each of these:
  9656.  
  9657.          *    Area access;
  9658.          *    Message creation (Enter or Reply or Upload or Upload Reply);
  9659.          *    Every external program.
  9660.  
  9661.     In file areas, you have separately definable privilege levels and
  9662.     locks for each of these:
  9663.  
  9664.          *    Area access;
  9665.          *    Download command;
  9666.          *    Download & Hangup command;
  9667.          *    Upload command;
  9668.          *    Every external program.
  9669.  
  9670.  
  9671.  
  9672.     Page 176                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  9673.  
  9674.  
  9675.     11.2.3 OPUS EMBEDDED COMMANDS
  9676.  
  9677.     Opus embedded commands provide the sysop with the ultimate flexibility
  9678.     in customizing system security. There are embedded commands to control
  9679.     presentation of text file segments to a user according to privilege
  9680.     level and key settings. These are explained in detail in the embedded
  9681.     codes section on customizing Opus. With embedded commands, you could
  9682.     do things like:
  9683.  
  9684.          *    Present a note of explanation, then hangup on a user that is
  9685.               relegated to privilege level of TWIT.
  9686.  
  9687.          *    Ask a set of questions, then automatically invoke a callback
  9688.               validation program.
  9689.  
  9690.          *    Ask a set of questions and change a user's privilege level
  9691.               with an external program depending on their answers.
  9692.  
  9693.          *    Ask a set of questions and add or remove a user's keys using
  9694.               the OECs to add and remove keys.
  9695.  
  9696.          *    Present access to external program such as online games, but
  9697.               do so on the basis of privilege of key settings.
  9698.  
  9699.          *    Lock out a mail waiting program to new users based on
  9700.               privilege level. Since they are new and will not have any
  9701.               mail waiting anyway, it prevents a useless "Check for mail".
  9702.  
  9703.          *    Present an AREAINFO file (see section 5 of the Opus
  9704.               Technical Reference Manual -- Opus Support Files) in your
  9705.               "members" area where you require new users to post short
  9706.               biographies about themselves. After the users are validated
  9707.               and their privilege is raised, the AREAINFO will not display
  9708.               to them based on their elevated privilege level. In this
  9709.               way, they can go read the biographies of other users without
  9710.               the annoyance of having to read the file that gives new user
  9711.               instructions.
  9712.  
  9713.  
  9714.  
  9715.     11.3.1 MATRIX AND ECHOMAIL SECURITY
  9716.  
  9717.     If a sysop runs matrix and EchoMail with Opus, there may be a need to
  9718.     use security measures to protect against unauthorized access,
  9719.     unauthorized routing of mail through your system, prevent hostile file
  9720.     upload via the matrix, prevent unauthorized pickup of mail, and even
  9721.     prevent the insertion of bogus EchoMail into the system. All of these
  9722.     things can and have happened in different networks. Opus provides a
  9723.     number security measures to help protect you from these attacks on
  9724.     your system integrity.
  9725.  
  9726.  
  9727.  
  9728.      
  9729.      
  9730.     OPUS SECURITY                                                Page 177 
  9731.      
  9732.      
  9733.     11.3.1 SESSION LEVEL PASSWORDS
  9734.  
  9735.     In order to prevent a node from "impersonating" another node and
  9736.     picking up their mail, matrix session level passwords may be
  9737.     implemented. Opus supports password matrix sessions with other
  9738.     mailers. The password can be up to eight characters long. Opus treats
  9739.     upper and lower case characters in the password as the same character,
  9740.     i.e., "Password" is the same as "PASSWORD".
  9741.  
  9742.     You insert the passwords for the various nodes into your nodelist
  9743.     using your favourite nodelist compiler. Refer to the documentation for
  9744.     your nodelist compiler for details on implementing this option.
  9745.  
  9746.  
  9747.  
  9748.     11.3.2 FILE REQUESTS
  9749.  
  9750.     When you set up your system to accept file requests and update file
  9751.     requests, you can password certain files in your file request list to
  9752.     prevent unauthorized access to those files. This might be useful if
  9753.     you are part of a software test team and you want to make new versions
  9754.     of the software available in a secure way to your team. See the
  9755.     section on file requests in the matrix mail section of this manual on
  9756.     how to setup passwords.
  9757.  
  9758.  
  9759.  
  9760.     11.3.3 ECHOMAIL
  9761.  
  9762.     Unfortunately, there have been instances of EchoMail abuse wherein an
  9763.     errant sysop sent inflammatory or bogus messages into a conference by
  9764.     sending them to a node in the matrix that carried the conference. Opus
  9765.     has protection for this with a feature called ECHO GUARD. You simply
  9766.     enable this feature in the Opus control file. With this feature
  9767.     enabled, any message received for a conference which does not come
  9768.     from a passworded connection, will be tossed into the matrix area and
  9769.     marked as an orphan. If you have the PATH BADECHO enabled, the
  9770.     messages will be tossed into the bad messages directory.
  9771.  
  9772.  
  9773.  
  9774.     11.3.4 INTRANSIT MAIL
  9775.  
  9776.     Intransit mail is mail that is sent to your system but is addressed to
  9777.     another system. There are legitimate and intentional reasons to do
  9778.     this. However, it is hardly welcome, if someone sends mail to your
  9779.     system that is destined for a long distance telephone call. If your
  9780.     system processes the mail and sends it along, guess who gets to pay
  9781.     the phone bill?  You, yourself, you.
  9782.  
  9783.  
  9784.  
  9785.     Page 178                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  9786.  
  9787.  
  9788.     Opus has protection against intransit mail that you do not want. There
  9789.     are four options in the Opus control file to help protect you. They
  9790.     are:
  9791.  
  9792.          REFUSE All InTransit
  9793.          REFUSE Unpassworded InTransit
  9794.          REFUSE Nonlocal InTransit
  9795.          REFUSE Attribute InTransit
  9796.  
  9797.     The function of each of these is explained in detail in the Opus
  9798.     Control File Parameters section of the Opus Technical Reference
  9799.     Manual.
  9800.  
  9801.  
  9802.  
  9803.     11.4 OPUS NAME FILTER
  9804.  
  9805.     Opus has its own inbuilt "bad name", "dirty word" or "trashcan" name
  9806.     filter for filtering out the undesirable names which some callers to
  9807.     your system invariably try to use for their logon name. The filter is
  9808.     also handy for stopping that rogue modem which wants to log on to your
  9809.     system using your phone number for its name! What? You do not get
  9810.     those calls? You will.
  9811.  
  9812.  
  9813.  
  9814.     11.4.1 CONTROL FILE SETTINGS
  9815.  
  9816.     To use the inbuilt name filter you need to uncomment the USES
  9817.     NAMEFILTER option in your Opus control file (BBS.CTL). For example,
  9818.  
  9819.     USES NAMEFILTER c:\opus\misc\username.txt
  9820.  
  9821.     The precise format for the file "username.txt" is described below.
  9822.  
  9823.     There is also another control file option, USES BADNAME, which you may
  9824.     optionally use to deliver a custom message to the caller whose name
  9825.     has been rejected by the filter, just before Opus hangs up. For
  9826.     example:
  9827.  
  9828.     USES BADNAME c:\opus\misc\badname
  9829.  
  9830.     Note: When you define the filename for the badname message, you do not
  9831.     use a file extension. However, the file you define must be an OEC file
  9832.     with a BBS extension (ie, the file in the example would be
  9833.     badname.bbs).
  9834.  
  9835.     Do not forget to recompile your BBS.CTL file with NACL after making
  9836.     these changes!
  9837.  
  9838.  
  9839.  
  9840.      
  9841.      
  9842.     OPUS SECURITY                                                Page 179 
  9843.      
  9844.      
  9845.     11.4.2 FILTER NAME FILE FORMAT
  9846.  
  9847.     The filter name file contains a sequence of lines that are interpreted
  9848.     in one of two ways, depending on the first character:
  9849.  
  9850.               ? ... the material that follows on this line is not
  9851.                     to appear in any form in a caller's name
  9852.  
  9853.                     EXAMPLE:  ?shit
  9854.  
  9855.               ! ... the material that follows on this line is not
  9856.                     to appear AS IS in a caller's name.  This is a
  9857.                     case sensitive filter.
  9858.  
  9859.                     EXAMPLE:  !Ass
  9860.  
  9861.  
  9862.     Remember that Opus converts all names to an uppercase character
  9863.     followed by lowercase characters.  In the first example, the character
  9864.     sequence "shit" would be disallowed in any form in a caller's name.  In
  9865.     the second example, "Ass" would be thrown out ONLY if it appears as
  9866.     the first Three characters of a caller's first or last name.  The reason
  9867.     for the second (case sensitive) version is this: the characters "ass"
  9868.     appear in several legitimate names.
  9869.  
  9870.     One other special character is available: the hash sign or American
  9871.     (not English) pound sign. Opus will convert a hash/pound sign to a
  9872.     SPACE character. This lets you further refine your list of banned
  9873.     words for caller names.
  9874.  
  9875.               EXAMPLE: ?All#
  9876.  
  9877.     After all, you do not want to keep everybody named "Allison" off your
  9878.     system just because you are trying to keep folks from logging on as
  9879.     "All".
  9880.  
  9881.  
  9882.  
  9883.     11.4.3 BEHAVIOUR OF THE FILTER
  9884.  
  9885.     Opus will go through the file defined by the USES NAMEFILTER option on
  9886.     a line-by-line basis after an unregistered caller types his/her name.
  9887.  
  9888.     If Opus finds a problem, it will either:
  9889.  
  9890.           (1) pretend that you run a PRIVATE system that requires pre-
  9891.               registration and hang up on the caller after sending the
  9892.               message "This is a Private system."; or
  9893.  
  9894.           (2) If you have defined a badname message file, Opus will show
  9895.               that file to the caller before hanging up.
  9896.  
  9897.     Problems include a match with any item in the USERNAME.TXT file ... or
  9898.     some DOS I/O error in reading the file.
  9899.  
  9900.  
  9901.  
  9902.     Page 180                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  9903.  
  9904.  
  9905.     11.4.4 ERRORS IN THE FILTER NAME FILE
  9906.  
  9907.     The name filter is really an idiot when it comes to error recovery. It
  9908.     assumes that if you are using the filter, you know how to use it.
  9909.  
  9910.     Here is an example, if a line in the name file begins with some
  9911.     character other than "?" or "!" then the entire line is ignored.
  9912.     There is no error message.
  9913.  
  9914.     In a nutshell, if you decide to use the filter you need to be sure you
  9915.     are using it correctly because the system's primary job is that of a
  9916.     filter ... not a tutorial on its usage.
  9917.  
  9918.  
  9919.  
  9920.     11.4.5 SPECIFIC EXAMPLES OF USE
  9921.  
  9922.     Set out below are a few specific examples of how to use the inbuilt
  9923.     name filter. These are all taken from a working filter file that has
  9924.     not been modified in months, so you should not encounter any
  9925.     unexpected problems.
  9926.  
  9927.     Note: each item should appear by itself on its own line, starting in
  9928.     the far left column. The setting out in the following sections is to
  9929.     save space.
  9930.  
  9931.  
  9932.  
  9933.     11.4.5.1 ONE LETTER NAMES
  9934.  
  9935.     To prevent callers from using one letter names, you need to have the
  9936.     following in your name filter text file:
  9937.  
  9938.     !A#
  9939.     !B#
  9940.     (all the way to)
  9941.     !Z#
  9942.  
  9943.  
  9944.  
  9945.     11.4.5.2 ROGUE MODEM NAMES
  9946.  
  9947.     To prevent those rogue modems from logging on to your system, you need
  9948.     to have the following in your name filter text file :
  9949.  
  9950.     ?atd             ?+            ?4          ?8
  9951.     ?atz             ?1            ?5          ?9
  9952.     ?atdp            ?2            ?6          ?0
  9953.     ?atdt            ?3            ?7
  9954.  
  9955.  
  9956.  
  9957.      
  9958.      
  9959.     OPUS SECURITY                                                Page 181 
  9960.      
  9961.      
  9962.     11.4.5.3 SHY CALLER NAMES
  9963.  
  9964.     Some callers are _very_ shy when it comes to revealing their real
  9965.     name(s) to Opus. Here are a few of the more common shy personalities
  9966.     for your name filter file:  ?test  ?qwer  ?asdf  ?visitor
  9967.  
  9968.  
  9969.  
  9970.     11.4.5.4 DIRTY WORD NAMES
  9971.  
  9972.     You will have to supply your own, but here are a few pointers. The
  9973.     following entry will prevent anyone using "Xxxx" as a first name,
  9974.     middle name or last name:  !Xxxx#
  9975.  
  9976.  
  9977.  
  9978.     11.4.5.5 WANNABE HACKER NAMES
  9979.  
  9980.     Ever since 1986 when Fido V11w was in vogue, there have been the
  9981.     wannabe hackers who try to log on to a system as "All", "Anyone" and
  9982.     "Everyone" and then merrily proceed to go through the message areas
  9983.     deleting messages. Of course, with today's volume of EchoMail this may
  9984.     no longer be the major disaster it once was! To spoil their fun, add
  9985.     the following to your name filter file:  !All#  !Anyone#  !Everyone#
  9986.  
  9987.     What about ye olde "Hacker" who calls?  You may have to handle this
  9988.     case carefully. A quick check of the Sydney metropolitan telephone
  9989.     directory reveals about a dozen people listed with that surname, so it
  9990.     is not necessarily a good idea to lock out "Hacker" with:  !Hacker#
  9991.     unless you are sure either that (1) you will not get any calls from
  9992.     legitimate Hackers, or (2) you do not want any calls from anyone with
  9993.     that name.
  9994.  
  9995.  
  9996.     Page 182                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  9997.  
  9998.  
  9999.  
  10000.                              +-----------------------------------------+
  10001.                              |  The greatest fool is he who thinks he  |
  10002.                              |  is not one and all others are.         |
  10003.                              |                                         |
  10004.                              |                    -- Baltasar Gracian  |
  10005.                              +-----------------------------------------+
  10006.  
  10007.  
  10008.     12.0 OPUS FOLKLORE
  10009.  
  10010.     Opus has attracted its fair share of ... "Guido, put that bat down
  10011.     NOW!" ...
  10012.  
  10013.  
  10014.  
  10015.     12.1 THE ELUSIVE NERF.BAT
  10016.  
  10017.     Ever wondered why the batch file commonly used to run an Opus-CBCS is
  10018.     named NERF.BAT ?
  10019.  
  10020.     Well, here is how it all began ...
  10021.  
  10022.  
  10023.        "From: Wynn Wagner III
  10024.         Subj: RE: Nerf.bat
  10025.  
  10026.        "DEEP BACKGROUND.
  10027.  
  10028.        "It started here at work on my first project in C. I'm an old
  10029.         assembly language jockey, and I was having some trouble with C.
  10030.  
  10031.        "I used to take the white "K-and-R" book on C (that's kind of the C
  10032.         Bible), put it on the floor, and jump up and down on it.
  10033.  
  10034.        "My manager at the time bought me a nerf HAMMER and told me to use
  10035.         it on the book so I didn't cause quite so much damage. She also
  10036.         said this:  "I was going to get you a nerf bat, but I figured the
  10037.         hammer was more business-like."
  10038.  
  10039.        "I still have the hammer in my office. I still use it sometimes.
  10040.         The "K-and-R" book was worn out years ago.
  10041.  
  10042.  
  10043.        "NERF FOR OPUS.
  10044.  
  10045.        "I did some of the docs for Opus 0.0. [Editor's note: it was the
  10046.         V1.00 docs] On a lark, I stuck in "nerf bat" in the "Required
  10047.         Equipment" list.
  10048.  
  10049.        "I mean, it's for hobbyists.  There wasn't any requirement to be
  10050.         businesslike, so the bat made more sense than the hammer.
  10051.  
  10052.      
  10053.      
  10054.     OPUS FOLKLORE                                                Page 183 
  10055.      
  10056.      
  10057.        "The 0.0 docs were full of junk like that: quotes and leg-pulling
  10058.         and on and on.  There's a difference between being serious and
  10059.         being solemn.  The 0.0 docs were serious, but they weren't very
  10060.         solemn.
  10061.  
  10062.  
  10063.        "MISSING THE WHOLE POINT.
  10064.  
  10065.        "Somewhere along the way, somebody did some docs for Opus called
  10066.         NERF FREE.  As far as I can tell, about the only thing these
  10067.         'unauthorized' docs did was remove the humor.
  10068.  
  10069.        "Nowadays, the Opus ByLaws And Covert Action Committee requires
  10070.         humor for Opus documentation, so that kind of nonsense won't
  10071.         happen again."
  10072.  
  10073.  
  10074.     ... and the list of required hardware in the Opus V1.00 documentation
  10075.     read:
  10076.  
  10077.  
  10078.        "Required Hardware
  10079.  
  10080.        "Standard equipment for Opus consists of:
  10081.  
  10082.              AT-class computer with Award BIOS
  10083.              72-Meg hard drive
  10084.              One each:
  10085.                   TeleBit Trailblazer modem (9600 bps)
  10086.                   U.S.Robotics HST modem (9600 bps)
  10087.              Amdek 722 EGA monitor
  10088.              PC DOS 3.3
  10089.              Mirror sunglasses
  10090.              Nerf bat
  10091.  
  10092.        "That roughly describes Wynn's computer setup. It is the only one
  10093.         that carries any sort of assurances. It is:
  10094.  
  10095.              -={ Opus will sometimes run on Wynn's computer }=-
  10096.  
  10097.        "No other assurances are made. All other equipment is officially
  10098.         classified as Non-Standard."
  10099.  
  10100.  
  10101.  
  10102.  
  10103.     Page 184                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  10104.  
  10105.  
  10106.     ... and then there was THAT message in the MEADOW:
  10107.  
  10108.  
  10109.        "From: Jim Beeler
  10110.         To:   All
  10111.         Subj: Nerf.bat
  10112.  
  10113.        "I have a friend at work who I am helping set up an OPUS BBS for
  10114.         his company located in Tokyo, Japan. Being Oriental, he possesses
  10115.         infinite patience and, unlike his American counterparts in the
  10116.         U.S., realises the importance of following instructions to the
  10117.         Letter.
  10118.  
  10119.        "He began installing OPUS utilising the OKITs. Soon he discovered
  10120.         the missing items: Mirror Shades and a NERF Bat. Realising that
  10121.         these must be necessary items, he pulled out his sunglasses. The
  10122.         nerf bat, however, was another problem. Not realising exactly what
  10123.         a Nerf Bat was, but none-the-less realising that if it was in the
  10124.         documentation it must be necessary, he searched through the .ARC
  10125.         files for further references to the elusive Nerf Bat. Finally, he
  10126.         figured it out!
  10127.  
  10128.        "He called me over to his computer to see the installation of OPUS
  10129.         that he had done ... from the "C:\" prompt he evoked NERF.BAT and
  10130.         up came OPUS.
  10131.  
  10132.        "So, for those of you that have trouble locating a Nerf Bat, take a
  10133.         lesson from a wise Oriental, just rename your RUNBBS.BAT to
  10134.         NERF.BAT.
  10135.  
  10136.         Jim."
  10137.  
  10138.  
  10139.     ... and now you know what, hithertofor, only some of us really
  10140.     grizzled Opus veterans were privy to.
  10141.  
  10142.  
  10143.  
  10144.     12.2 IDENTIFYING THE CHICO CONNECTION
  10145.  
  10146.     You can tell someone from Chico by two words, "fir" ("I'm going fir
  10147.     some beer.") and "ahmund" ("We knock the 'L' out of them." You have to
  10148.     see the way almonds are harvested to get it.)
  10149.                                                    -- From a conversation
  10150.  
  10151.  
  10152.  
  10153.     12.3  oPOL0: OPUS POLICY, VERSION ZERO
  10154.  
  10155.     (pronounced "oh-pahl'-oh")
  10156.  
  10157.     This is the official policy statement of WOC: The Worldwide Opus
  10158.     Consortium.
  10159.  
  10160.  
  10161.      
  10162.      
  10163.     OPUS FOLKLORE                                                Page 185 
  10164.      
  10165.      
  10166.     12.3.1 DRESS CODE
  10167.  
  10168.     WOC sysops must wear mirror shades.
  10169.  
  10170.  
  10171.  
  10172.     12.3.2 ATTITUDE
  10173.  
  10174.     There is a difference between "serious" and "solemn".
  10175.  
  10176.     Any WOC sysop caught being solemn will be referred to the Enforcement
  10177.     Squad of the Opus ByLaws and Covert Action Committee for a
  10178.     solemnectomy.
  10179.  
  10180.     Any WOC sysop caught being sirius will be sent to Bob Klahn for
  10181.     technical support.
  10182.  
  10183.  
  10184.  
  10185.     12.3.3 BACKBITING, SNIDE REMARKS, AND ON AND ON
  10186.  
  10187.     Any WOC sysop who backbites, or makes a snide remark to another WOC
  10188.     sysop, or who on-and-on's will be forced to memorize the entire set of
  10189.     GBS/BBS embedded commands.
  10190.  
  10191.     Note that the "snide remark" clause only refers to other WOC sysops.
  10192.     It's okay to snipe at non-WOC sysops.
  10193.  
  10194.  
  10195.  
  10196.     12.3.4 MATRIX
  10197.  
  10198.     If you run netmail, you gotta run Zone Mail Hour.
  10199.  
  10200.  
  10201.  
  10202.     12.3.5 TRANSIENTS
  10203.  
  10204.     If you accept "In Transit" messages, you can't delete or change the
  10205.     content unless it would be illegal for you to transmit the messages.
  10206.  
  10207.     If you do delete or change messages, your title is "editor" instead of
  10208.     "host."  Because WOC doesn't have a title anything like "editor",
  10209.     deleting or changing a message is the same thing as resigning as host.
  10210.  
  10211.     The change clause does not apply to software which adds "Via" or
  10212.     "SeenBy" or other automated festooning for reasonable technical
  10213.     purposes.
  10214.  
  10215.  
  10216.  
  10217.  
  10218.  
  10219.     Page 186                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  10220.  
  10221.  
  10222.     12.3.6 RULES IN A NUTSHELL
  10223.  
  10224.        Rule #1: Don't take yourself so seriously.
  10225.        Rule #2: Run Zone Mail Hour.
  10226.        Rule #3: Don't delete or change "in transit" messages.
  10227.        Rule #4: Send code.
  10228.  
  10229.  
  10230.  
  10231.     12.3.7 ENFORCEMENT
  10232.  
  10233.     Except where noted, this is a codification of Natural Law.  It is not
  10234.     necessary to account for enforcement of such things as the National
  10235.     Mail Hour in the same way as it isn't necessary to enforce the Laws of
  10236.     Gravity.
  10237.  
  10238.     It is like there is no need to make a law that says "All bachelors
  10239.     must remain unmarried."  That would be silly.  When a bachelor gets
  10240.     married, he's simply not a bachelor any more.  When a system doesn't
  10241.     run Zone Mail Hour, it isn't running net-mail. It's very simple and
  10242.     straight-forward.
  10243.  
  10244.     Enforcement of the Unnatural Laws, such as wearing mirror shades, is
  10245.     absolute.  It is now a standard that any WOC software incorporate
  10246.     enforcement procedures.  For example, when entering chatmode, WOC
  10247.     software will produce a brilliant flash on the monitor that could
  10248.     result in eye damage to anybody not wearing mirror shades.
  10249.  
  10250.  
  10251.  
  10252.     12.3.8 DISCLAIMER
  10253.  
  10254.     Membership in WOC doesn't preclude membership in any other
  10255.     association. WOC is neither for or against anything or anybody, and
  10256.     never takes a stand on any issue (except mirror shades).
  10257.  
  10258.  
  10259.  
  10260.      
  10261.      
  10262.     OPUS FOLKLORE                                                Page 187 
  10263.      
  10264.      
  10265.     12.3.9 MERIT BADGES
  10266.  
  10267.     The following merit badges are available to WOC members:
  10268.  
  10269.              * Continuous Mail...
  10270.  
  10271.                       WOC AROUND THE CLOCK logon certificate
  10272.  
  10273.              * 386-based mail system...
  10274.  
  10275.                       WOC DON'T RUN gbs file
  10276.  
  10277.              * WOC system carrying more than 50 echomail areas...
  10278.  
  10279.                       WOC ON THE WILD SIDE ribbon
  10280.  
  10281.              * New WOC sysop...
  10282.  
  10283.                       OUT OF THE SKILLET INTO THE WOC badge
  10284.  
  10285.     Penalties for improperly displaying a WOC badge or honor gbs file are
  10286.     too severe to even mention.
  10287.  
  10288.  
  10289.     Page 188                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  10290.  
  10291.  
  10292.  
  10293.                      +-------------------------------------------------+
  10294.                      |  It is a shameful thing to be weary of enquiry  |
  10295.                      |  when what we search for is excellence.         |
  10296.                      |                                                 |
  10297.                      |                                    -- Cicero    |
  10298.                      +-------------------------------------------------+
  10299.  
  10300.  
  10301.     13.0 MORE INFORMATION ON OPUS
  10302.  
  10303.     There are two ways to find out more about the way Opus works and to
  10304.     get questions answered. If you are having problems with Opus, contact
  10305.     one of the InfoNodes. DO NOT CONTACT THEM if you have not carefully
  10306.     read the whole of the Opus Technical Reference Manual and the Opus
  10307.     Operations Manual.
  10308.  
  10309.       System name        Phone number     Location              FidoNet
  10310.       ----------------   --------------   --------------------  ---------
  10311.  
  10312.       OPUSinfo `West'    1-404-296-9681   Atlanta, Ga           1:1/113
  10313.       OPUSinfo `Under'  +61-2-872-3571    Sydney NSW Australia  3:3/113
  10314.       OPUSinfo `Europe' +46-46-138039     Lund, Sweden          2:200/420
  10315.       OPUSinfo `East'   +866-6-237-0657   Tainan, Taiwan        6:721/100
  10316.  
  10317.       OPUSinfo `Snail' P.O. Box 16410 San Francisco Ca 94116 (send SASE)
  10318.       OPUSarchive      1-713-980-9671 Houston Texas 1:106/2000 (specs etc)
  10319.  
  10320.  
  10321.     The above nodes are for questions involving specific problems. They
  10322.     can give you answers to some of the most commonly asked questions.
  10323.     Other help nodes are:
  10324.  
  10325.       System name        Phone number     FidoNet     Notes
  10326.       -----------        -------------    ---------   -------------------
  10327.       Sentry            +61-2-428-4687    3:711/401   Technical Reference
  10328.       Sentry's Shadow   +61-2-418-6682    3:711/501   Operations Manual
  10329.       Milliways BBS     1-703-491-5445    1:265/100   oMMM operation
  10330.       NS BBS            1-412-366-5208    1:129/104   Meadow echo area
  10331.  
  10332.  
  10333.     For general discussions about the usage of Opus, you should seriously
  10334.     consider subscribing to the Opus sysop EchoMail area, called MEADOW.
  10335.     Any of the distribution nodes can refer you to a tie-in point for this
  10336.     area. If all else fails, contact Bev Freed at 1:129/104 for
  10337.     information pertaining to MEADOW EchoMail connections.
  10338.  
  10339.     MEADOW carries the same copyright as Opus. You are required to act in
  10340.     a friendly and lawful manner if you participate. We are trying
  10341.     desperately to keep a casual and constructive atmosphere in the Opus
  10342.     area. If that is not your intent, please do not subscribe to the
  10343.     conference. If you wish to discuss technical aspects of the programs,
  10344.     you are wholeheartedly welcome to join!!!
  10345.  
  10346.      
  10347.      
  10348.     MORE INFORMATION ON OPUS                                     Page 189 
  10349.      
  10350.      
  10351.     Here are the MEADOW "rules" posted by the moderator (aka the Uppity
  10352.     Wench ... don't ask!):
  10353.  
  10354.  
  10355.     From: Bev Freed
  10356.     To:   All
  10357.     Subj: Meadow Rules
  10358.  
  10359.     Guess what?  It's that time of the month again: MEADOW ADMINISTRIVIA!
  10360.  
  10361.     TOPIC:  Meadow is for the discussion of Opus problems, the future of
  10362.     Opus, Opus utilities, suggestions, ideas, and support among Opus
  10363.     sysops.  It is involved in the technical operation of Opus and
  10364.     responsible to the Opus Bylaws and Covert Action Committee.
  10365.  
  10366.     PARTICIPANTS:  Opus sysops ONLY!  Definitely UNAVAILABLE to users.
  10367.     While sysops of other systems are welcome to READ Meadow, they can't
  10368.     expect answers to QBBS, TBBS, Fido, or whateveryourerunningthisweek.
  10369.     That would be off-topic.
  10370.  
  10371.     RULES:  In addition to general rules for any conference, Meadow rules
  10372.     are simple, standard, and may be bent a little, but not trashed.  The
  10373.     Meadow "spirit" is one of cooperation.  And remember: Guido is
  10374.     watching.
  10375.  
  10376.     1.  Keep your messages on-topic --
  10377.         On occasion, the Moderator may get the feeling that message
  10378.         content is inappropriate or has the potential to attract a barrage
  10379.         of inappropriate messages.  In such instances, the Moderator will
  10380.         post a reminder of the rules or send netmail.  It's not personal.
  10381.         If you post an off-topic message, let it be for comic relief and
  10382.         the fostering of friendships.
  10383.  
  10384.     2.  Be excellent to one another and keep your sense of humor --
  10385.         Personal attacks (thinly disguised or not) are prohibited.  The
  10386.         useful exchange of information requires you to accept that people
  10387.         have opinions or experiences which contrast yours.  The object of
  10388.         this conference is to learn from others, not argue with them.
  10389.  
  10390.     3.  Be helpful --
  10391.         If you can help someone with a technical problem, PLEASE do, but
  10392.         avoid blind guesses.  You'd be doing a disservice.  If you're not
  10393.         certain of a proper response, wait a few days to see if someone
  10394.         out there has the definitive answer.  Then everyone learns
  10395.         something.
  10396.  
  10397.     4.  Never use Meadow to reply to inappropriate messages --
  10398.         If you feel a message is inappropriate, simply take a deep breath
  10399.         and ignore it.  It'll go away.  And if it doesn't, LET THE
  10400.         MODERATOR HANDLE THE PROBLEM.  If you feel particularly strong
  10401.         about a specific posting, send the Moderator private netmail, or
  10402.         take your beef off-echo and flame the person directly.  Leave the
  10403.         others out of it.  The Moderator has probably already addressed
  10404.         the problem via netmail.
  10405.  
  10406.  
  10407.  
  10408.     Page 190                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  10409.  
  10410.  
  10411.     5.  Keep your quotes to a minimum --
  10412.         People read Meadow regularly; you don't need to quote and explain
  10413.         the obvious.  If you get a bad case of quotitis, the Moderator
  10414.         will come over to administer something you hated as a kid.
  10415.  
  10416.     6.  Keep your messages public and without nuisances such as
  10417.         encryption, encoding, or rotation --
  10418.         If you have a driving need to send a private or fancy message,
  10419.         there's something intriguing out there called netmail.  Use it.
  10420.  
  10421.     7.  Keep to a minimum BBS ads and notices on new conferences or toys--
  10422.         Such advertisements and so on should be restricted to no more than
  10423.         ONCE per month.  We hear ya, already.
  10424.  
  10425.     HANDLES:  While not encouraged, "handles" or anonymous names are
  10426.     permitted provided they are not used with the intent to conceal the
  10427.     identity of a person posting malicious, annoying, or illegal messages.
  10428.     Please include your proper name someplace on every message.
  10429.  
  10430.     NONCOMPLIANCE:  If you cannot abide by and comply with the rules, you
  10431.     are requested to forego posting messages to this conference.  Anyone
  10432.     who posts inappropriate messages will be warned of the infraction.  If
  10433.     such postings continue, you will be asked to drop the conference.  If
  10434.     you do not drop the conference voluntarily, the system(s) uproute will
  10435.     be asked to disconnect your feed.  This method of keeping the Meadow
  10436.     interesting and productive is not preferred.  It is preferable that
  10437.     participants simply abide by the rules and "spirit" of the conference,
  10438.     and that they serve one another.
  10439.  
  10440.     Bev Freed -- Meadow Moderator and Uppity Wench, 1:129/104
  10441.                  freed@nss.fidonet.org
  10442.  
  10443.     --- Opus-CBCS 1.14
  10444.      * Origin: NSS BBS - Ad Astra! (412)366-5208 *HST* (1:129/104.0)
  10445.  
  10446.  
  10447.     From: Bev Freed
  10448.     To:   All
  10449.     Subj: Rules follow-up
  10450.  
  10451.                           NOTICE ON OPUS DEVELOPMENT
  10452.  
  10453.     Opus isn't something you slam in and let 'er rip.  It's an ongoing
  10454.     project which means it's ALWAYS under development.  It's fostered by
  10455.     the entire Opus community -- Lower Code Dwellers (LCDs) as well as
  10456.     Opus sysops and grizzled veterans -- within an environment of
  10457.     participation, cooperation, and above all, PATIENCE.  The list at the
  10458.     bottom of this notice changes as needed to address many of the
  10459.     complaints/requests in Meadow.
  10460.  
  10461.      
  10462.      
  10463.     MORE INFORMATION ON OPUS                                     Page 191 
  10464.      
  10465.      
  10466.     BUG/SECURITY PROBLEMS:  In the course of all human events, we
  10467.     encounter problems.  And so it goes with Opus development.  When you
  10468.     feel you've encountered a real nasty bug or security problem, send
  10469.     your reports via DIRECT netmail to 1:119/25 or 1:129/104.  Otherwise,
  10470.     use Meadow.  Someone out there has probably already solved your
  10471.     troubles.
  10472.  
  10473.     NEW RELEASES:  Please don't ask when the next version of OPUS will be
  10474.     released.  You'll always receive the standard answer:  WHEN IT'S
  10475.     READY.  The LCD's maintain Opus as a hobby.  It isn't a full-time job
  10476.     for anyone.  No one is making money from this.  After the beta and
  10477.     gamma testers have had their chance to break Opus, the new(est)
  10478.     version will be released for everyone.  Please be patient.  And when
  10479.     it's ready, you'll hear it on Meadow first.  :-)
  10480.  
  10481.     SEND CODE:  If you have a suggestion, try to provide as complete an
  10482.     explanation/model/example/source-code as you can.  Even a chunk of
  10483.     BASIC code is better than nothing at all.  Send code to Doug Boone at
  10484.     119/25.
  10485.  
  10486.     SEND DOCS:  If you have a good explanation of how to handle aspects of
  10487.     Opus or integration of tricks and utilities, please share them.  Send
  10488.     docs or a note that you have them on hold to Trev Roydhouse at
  10489.     3:711/401 (PEP) or 3:711/501 (V32).
  10490.  
  10491.  
  10492.     Page 192                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  10493.  
  10494.  
  10495.     APPENDIX A: COMMENTED NERF.BAT
  10496.  
  10497.  
  10498.     @ECHO OFF
  10499.     C:
  10500.     CD C:\OPUS
  10501.     REM make sure we are where we think we are
  10502.  
  10503.     X00 B,0,19200 T=8192 R=4096 F=12
  10504.     XU CAPTURE
  10505.     REM load the comms fossil and make sure it has
  10506.     REM control of the comms interrupt
  10507.  
  10508.     :MODEM
  10509.     SET OPUS=BBS
  10510.     SET TZ=UTC-10
  10511.     REM set up some environment variables, especially the
  10512.     REM timezone (tz) so that opus can keep track of events
  10513.  
  10514.     AT COM1: s2=255s7=50s50=0s52=1s53=1s54=4q0v1
  10515.     AT COM1: s0=0s9=12s51=5s58=2s66=1s68=2s90=1e0x3&w
  10516.     REM initialise the trailblazer
  10517.  
  10518.     OPUSDATE + NERF ** Sentry Opus Online ** >> C:\opus\opus.log
  10519.     REM make a log entry
  10520.  
  10521.     :OPUS
  10522.     CHAT120 25
  10523.     OPUS BBS
  10524.     REM load the chat fossil and run opus using the bbs
  10525.     REM parameter file produced from the bbs.ctl file by nacl
  10526.  
  10527.     :TEST
  10528.     IF ERRORLEVEL 255 GOTO ERROR255
  10529.     IF ERRORLEVEL 16 GOTO MASH
  10530.     IF ERRORLEVEL 12 GOTO DOS
  10531.     IF ERRORLEVEL 9 GOTO OPUS
  10532.     IF ERRORLEVEL 4 GOTO ERROR4
  10533.     IF ERRORLEVEL 3 GOTO ERROR3
  10534.     IF ERRORLEVEL 2 GOTO ERROR2
  10535.     IF ERRORLEVEL 1 GOTO OFFLINE
  10536.     GOTO ERROR0
  10537.     REM test for various dos errorlevels so that
  10538.     REM we can take the appropriate action
  10539.  
  10540.     :MASH
  10541.     OMMM
  10542.     GOTO OPUS
  10543.     REM run oMMM to bundle mail and then rerun opus
  10544.  
  10545.     :DOS
  10546.     OPUSDATE # NERF Sysop dropped to DOS >> c:\opus\opus.log
  10547.     REM log that sysop is heading for dos
  10548.  
  10549.     NEWBAUD C:\OPUS\LASTUS00.DAT
  10550.      
  10551.      
  10552.     APPENDIX A: COMMENTED NERF.BAT                               Page 193 
  10553.      
  10554.      
  10555.     IF ERRORLEVEL 96 GOTO REMOTE_DROP
  10556.     IF ERRORLEVEL 48 GOTO REMOTE_DROP
  10557.     IF ERRORLEVEL 24 GOTO REMOTE_DROP
  10558.     IF ERRORLEVEL 12 GOTO REMOTE_DROP
  10559.     IF ERRORLEVEL 3 GOTO REMOTE_DROP
  10560.     IF ERRORLEVEL 0 GOTO LOCAL_DROP
  10561.     REM newbaud reads the baud rate from lastus00.dat and exits
  10562.     REM with an errorlevel = baud/100 so we can check if the
  10563.     REM sysop logged on from the keyboard
  10564.  
  10565.     :REMOTE_DROP
  10566.     FSU 1 ON +
  10567.     CTTY COM1:
  10568.     ECHO ## Type EXIT to return to Opus ##
  10569.     ECHO ** Carrier Monitoring in effect **
  10570.     REM sysop must be logged on remotely so
  10571.     REM turn on modem carrier watchdog and
  10572.     REM redirect screen and keybaord to the
  10573.     REM comms port
  10574.  
  10575.     :LOCAL_DROP
  10576.     COMMAND
  10577.     REM we are here either because we fell through from
  10578.     REM remote_drop, or the sysop logged on from the
  10579.     REM keyboard
  10580.  
  10581.     :RETURN
  10582.     C:
  10583.     CD C:\OPUS
  10584.     FSU 1 OFF -
  10585.     OPUSDATE # NERF Sysop returned from DOS >> c:\opus\opus.log
  10586.     CTTY CON
  10587.     REM make sure we are in the opus directory when returning
  10588.     REM from dos, turn off carrier watchdog, log sysop's return
  10589.     REM and cancel redirection of screen and keyboard
  10590.  
  10591.     OPUS BBS -O
  10592.     GOTO TEST
  10593.     REM restart opus with the relog option and loop back to
  10594.     REM errorlevel tests NOTE: after relog exit is set to 9
  10595.     REM so that after the sysop logs off opus will exit with
  10596.     REM errorlevel 9 and be rerun without the -o relog switch
  10597.  
  10598.     :ERROR0
  10599.     OPUSDATE ! NERF Errorlevel not detected in TEST >> c:\opus\opus.log
  10600.     GOTO OPUS
  10601.     REM log error and rerun opus
  10602.  
  10603.     :ERROR2
  10604.     OPUSDATE ! NERF Opus Errorlevel 2: Recycling >> c:\opus\opus.log
  10605.     GOTO OPUS
  10606.     REM log error and rerun opus
  10607.  
  10608.     :ERROR3
  10609.     OPUSDATE ! NERF Opus Errorlevel 3: Halting >> c:\opus\opus.log
  10610.  
  10611.  
  10612.     Page 194                      OPUS-CBCS V1.70 SYSOP OPERATIONS MANUAL 
  10613.  
  10614.  
  10615.     GOTO OFFLINE
  10616.     REM log error and halt
  10617.  
  10618.     :ERROR4
  10619.     OPUSDATE ! NERF Opus Errorlevel 4: Recycling >> c:\opus\opus.log
  10620.     GOTO OPUS
  10621.     REM log error and rerun opus
  10622.  
  10623.     :ERROR255
  10624.     OPUSDATE ! NERF MSC Stack Error: Recycling >>  c:\opus\opus.log
  10625.     GOTO OPUS
  10626.     REM log error and rerun opus
  10627.  
  10628.     :OFFLINE
  10629.     OPUSDATE : NERF ** Sentry Taken Offline ** >> c:\opus\opus.log
  10630.     ECHO ON
  10631.     REM log system taken offline
  10632.