home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Professional / OS2PRO194.ISO / os2 / com / utils / msg / msg.doc < prev    next >
Text File  |  1989-11-05  |  26KB  |  521 lines

  1.  
  2.  
  3.  
  4.                                         +----------------------+
  5.                                         | "Why anybody would   |
  6.                                         | name a program after |
  7.                                         | a food additive is   |
  8.                                         | beyond me..."        |
  9.                                         |          -Bryny      |
  10.                                         +----------------------+
  11.  
  12.  
  13.                                     MSG
  14.                                     ---
  15.  
  16.                             Copyright 1986-1989
  17.                         by Ron Bemis - Node 124/1113
  18.  
  19. MSG is a program that allows you to read, reply, enter, and modify FidoNet 
  20. messages.  It has proven especially useful for point operators, because it 
  21. is much smaller than other message readers, and it gets all of its needed 
  22. information from AREAS.BBS and CONFIG.DOG, and does not rely on SYSTEM*.BBS 
  23. files.
  24.  
  25. MSG works much like FIDO or OPUS.  You can invoke it with a chain of 
  26. commands separated by spaces, and you can type a chain of commands at any of 
  27. the program's prompts.  The program always starts in your mail area.
  28.  
  29.  
  30.                      ENVIRONMENT VARIABLES USED BY MSG
  31.                      ---------------------------------
  32.  
  33. BBS - your root Fido/Opus directory; the place you keep your AREAS.BBS, 
  34. CONFIG.DOG, FIDOUSER.LST, and USERLIST.DOG files.  If not defined, these 
  35. files must be in the current directory.
  36.  
  37. MSGED - your favorite text editor.  Provided it's in your path, you don't 
  38. need to specify the path or extension.  If not defined, your editor will 
  39. default to EDLIN (probably not what you want).
  40.  
  41.      EXAMPLE: 
  42.  
  43.      SET BBS=C:\BINK
  44.      SET MSGED=Q
  45.  
  46.                               GENERAL COMMENTS
  47.                               ----------------
  48.  
  49. The program is fairly self-explanatory.  The user interface is much like
  50. you're used to using with Fido or Opus.  Typing "MSG ?" will give a quick
  51. syntax reminder. Typing "?" at the main prompt, the C)hange prompt, the
  52. X)change prompt, or the Z)ap prompt will give a description of the
  53. available commands and their meanings.
  54.  
  55. Great care has been taken in the programming of MSG so that unneeded output 
  56. is not created when commands are "stacked".  For example, typing "MSG A 
  57. SYSOP = G > SYSOP.NEW" will create a file named SYSOP.NEW containing new 
  58. messages in the SYSOP area, without the copyright message or any questions 
  59. being sent to the file. 
  60.  
  61. MSG makes use of and updates the LASTREAD file in each of the message areas.  
  62. If you use a renumbering utility on your message areas, be sure to specify 
  63. an option to also update the LASTREAD files.
  64.  
  65. As mentioned above, all information about message areas is read from 
  66. AREAS.BBS.  If you're a sysop, you've undoubtedly got at least one message 
  67. area that is not an echomail area.  To get MSG to recognize these areas, you 
  68. must add them to your AREAS.BBS.  Create a tag for them, but don't list any 
  69. nodes on the line.
  70.  
  71. Eight commands are not shown in the help screen.  They are all two-letter 
  72. commands:
  73.  
  74.      A=   Read all new messages in next areas.
  75.      AL   List headers of all new messages in next areas.
  76.      AN   Change to next message area.
  77.      AP   Change to previous message area.
  78.      RP   Reply to the current message privately (default in netmail area)
  79.      RN   Reply to the current message publicly (only in netmail area)
  80.      RC   Mark reply message 'crash' (ignored except in netmail area)
  81.      RH   Mark reply message 'hold' (ignored except in netmail area)
  82.  
  83. For example, to read all new messages in all areas, you could invoke the 
  84. program like this:
  85.  
  86.      MSG X M C H ^ A=
  87.  
  88. If the "A=" or "AL" subfunction is used in an area other than the mail area 
  89. (message area #0), they will work on the current area and subsequent areas 
  90. only.  So if you used "A=" to read all messages, you could stop the output, 
  91. enter or reply to a message, then type "A=" again to continue reading.
  92.  
  93. If a file named MESSAGE.LOG exists in the 'BBS' directory, the four A? 
  94. commands mentioned above will work differently.  They will act as if the 
  95. only message areas available are those that are listed in MESSAGE.LOG.  
  96. Other commands are not affected.  Starting with MSG V3.3, this file 
  97. (MESSAGE.LOG) is maintained for you.  You may add to it, but you won't need 
  98. to delete it.  MSG will re-write it when you exit the program, and will list 
  99. only those areas in which you have not yet read the last message.  So if you 
  100. don't finish reading messages in all areas, MSG will keep track of which 
  101. ones are left.  If you use CONFMAIL to toss messages, use the -F switch to 
  102. create a log file.  Append the contents of this file to the end of 
  103. MESSAGE.LOG each time you toss.  For example:
  104.  
  105.      ConfMail Import Areas.BBS -K -N -M -S -F EchoToss.Log -A Arce
  106.      Copy Message.Log+EchoToss.Log Message.Log
  107.  
  108. The J)ump command invokes a DOS shell if nothing follows the "J" on the 
  109. command input line.  If a DOS command follows the "J", it will be passed to 
  110. the command processor, and control will then return to MSG.
  111.  
  112. If you "visit" an area that contains no messages, the LASTREAD pointer will 
  113. be stored as 1 rather than 0 in echomail areas only.  This is mainly to 
  114. ignore the "High water mark" message in echomail areas that is created when 
  115. you scan an empty area.
  116.  
  117. When you first enter a message area, MSG stores a copy of the LASTREAD
  118. pointer in its local memory.  This local copy is called a marker.  There
  119. is a separate marker for each message area.  You can return to the "marked"
  120. message by using the "@" command, and you can change the marker to the
  121. current message by using the "!" command.
  122.  
  123. MSG maintains a file named MSGTOSS.LOG file in the home (BBS) or default (if 
  124. BBS is undefined) directory which contains a list of areas into which you
  125. entered echomail messages.  This file is compatible with ConfMail's -F
  126. switch, and could be used with the export function.  The file is deleted
  127. when the program begins, and is only appended when a message is entered in
  128. a new area, so if no echomail messages are entered, it won't exist.  The
  129. sample MSGS.BAT file, included in this archive, will help you to understand
  130. this special feature.  When MSG starts, it deletes MSGTOSS.LOG if one
  131. already exists from a previous run.
  132.  
  133. To use the mailing list feature, create one or more text file with the
  134. extension .LST in your root (BBS) directory.  Each should contain a list of
  135. names, one per line.  When you E)nter a message, answer the "To:" prompt
  136. with an "@" sign followed immediately by the name of the file (no
  137. extension).  For example, To: @DIST would use the file DIST.LST in the
  138. directory pointed to by the BBS environment variable.
  139.  
  140. Pressing Control-C during any output will cause that output to stop.  At the 
  141. "More?" prompt, there are several keys that have special meaning.  Control-C 
  142. will stop the output, as will Escape, "N", and "Q".  Any other key will 
  143. cause the program to continue normally.
  144.  
  145. The P)rivate setting in the Z)ap menu causes an area to be marked/unmarked
  146. as a private area.  Anytime you E)nter a message, R)eply, or M)ove a
  147. message to a private area, that message will be marked private.  While in a
  148. private area, you can still use the RN command to enter a public reply.
  149.  
  150. Most of the program's output goes to "stdout", which means that it is 
  151. redirectable.  Certain error messages, screen clearing, cursor positioning, 
  152. and "More?" messages however, go to stderr, and will be displayed to the 
  153. screen regardless of any redirection in progress.
  154.  
  155.  
  156.                                 HOTKEYS
  157.                                 -------
  158.  
  159. The H)otkey command at the X)change menu toggles Hotkeys on and off.  When
  160. Hotkeys are on, you don't have to press Enter after most commands.  Other
  161. differences you'll encounter when Hotkeys are ON:
  162.  
  163.     o   You can't use any of the two-letter Reply commands.
  164.  
  165.     o   To go directly to a message, press the "#" symbol.  The program
  166.         will prompt you for a message number.
  167.  
  168.     o   Left-arrow = "P"                o   Right-arrow = "N"
  169.  
  170.     o   Ctrl Left-arrow = "-"           o   Ctrl Right-arrow = "+"
  171.  
  172.     o   Up-arrow = "AP"                 o   Down-arrow = "AN"
  173.  
  174.     o   Ctrl Up-arrow = "AL"            o   Ctrl Down-arrow = "A="
  175.  
  176.     o   Home = "?"                      o   End = "G"
  177.  
  178.     o   Ins = "E"                       o   Del = "K"
  179.  
  180.     o   PgUp = "R"                      o   PgDn = "W"
  181.  
  182.     o   Keypad 5 = "H"
  183.  
  184.  
  185.     o   At the "More?" prompt, pressing any of these keys will immediately
  186.         clear the prompt (as if you'd typed "N") and then execute the key
  187.         you pressed.
  188.         
  189.     o   When you press the "G" or End key, you will be asked to confirm
  190.         that you want to leave the program.  Press "Y" to confirm, or "N"
  191.         to remain in the program.
  192.  
  193.     o   If the definitions above don't suit you, you can define your own.
  194.         See MSG.REF and the sample MSG.MAC file for details.
  195.  
  196.  
  197.                         FOR THE TECHNICALLY ORIENTED
  198.                         ----------------------------
  199.  
  200. For command input, MSG uses the console device, not "stdin".  This results 
  201. in the program cooperating very nicely with the shareware program CED or the 
  202. commercial program PCED.  However, echoed console input is sent to the 
  203. console rather than "stdout".  Since "stdout" is a fully-buffered device, 
  204. and console output is not, it's not a good idea to redirect the output if a 
  205. mixture of input is used.  For example, if you type
  206.  
  207.      MSG A= > TEMP
  208.  
  209. you'll get a listing of all new messages in the TEMP file.  However, the 
  210. program will not terminate until you type "G" from the keyboard.  If you 
  211. examine the TEMP file, you'll find the "G" you typed in a strange place, 
  212. probably somewhere in the middle of the last message.  The solution to this 
  213. problem is to carefully construct your command line to not need any input 
  214. while using redirection.  The "fixed" example above would look like this:
  215.  
  216.      MSG A= G > TEMP
  217.  
  218. which would cause the program to end normally and not require any input from 
  219. the console.
  220.  
  221. Input directed into MSG will also work, but the same problems apply here as 
  222. described above.  Directed input is taken from the console device, so you 
  223. shouldn't use redirection in both directions (i.e. "MSG <MSG.CMD >TEMP").
  224.  
  225. If you make a file named MSG.CMD containing:
  226.  
  227.      A TECH
  228.      E John Doe
  229.      Your broken hard disk
  230.      G
  231.  
  232. you'll be able to do this:
  233.  
  234.      MSG < MSG.CMD
  235.  
  236. and MSG will plop you into your editor to type the text of the message, then 
  237. quit.
  238.  
  239.  
  240.                       BATCH FILES AND THE COMMAND LINE
  241.                       --------------------------------
  242.  
  243. Three things have been done so that MSG will work nicely from the command 
  244. line and automated batch files:  1) Empty word responses, 2) Line 
  245. terminators, 3) Automatic message entry.
  246.  
  247. Empty word response:  When entering/changing a name, MSG expects a full
  248. name (two words).  In interactive use, you can just type one name and hit
  249. return. But from the command line, you might need a way to tell MSG that
  250. you don't want to specify a last name.  To do this, use the carat (^) by
  251. itself.  This is also needed to quit from the C)hange, X)change, and Z)ap
  252. submenus.  The sample batch file included in this archive gives an example
  253. of this.
  254.  
  255. Line terminator:  When entering a subject, search string, origin line,
  256. signature, area description, or DOS command, the full buffer of input is
  257. normally read.  On the command line, you may want to specify more commands
  258. after a subject or search string.  To do this, terminate the string with a
  259. carat (^) immediately following the last word of the string.
  260.  
  261.     EXAMPLE: Jump DIR /W \BINK^ Huh
  262.  
  263. Automatic message entry:  Every time you use the E), R), or B) command and 
  264. edit a message's text, you are editing a disk file named MESSAGE.TXT.  After 
  265. you've saved this file, MSG reads it back, creates a message from it, and 
  266. deletes it (and MESSAGE.BAK if one exists).  So normally, there isn't a 
  267. MESSAGE.TXT file in your default directory (which is always where it is 
  268. created).  But, if a file named MESSAGE.TXT *does* exist when you E)nter a 
  269. message, your editor will not be invoked, and the existing file will be 
  270. used.  There are several ways to take advantage of this, here are a couple 
  271. examples:
  272.  
  273.      COPY TECH.NOT MESSAGE.TXT
  274.      MSG A TECH E John Doe Your broken hard disk^ G
  275.  
  276.      MSG A SYSOP J Copy TECH.NOT MESSAGE.TXT^ E Dave ^ Again?^ G
  277.  
  278.  
  279.                              POINTS AND BOSSES
  280.                              -----------------
  281.  
  282. Two special-purpose lines in AREAS.BBS are recognized by MSG.  They are:
  283.  
  284.      -BOSSNODE=xxx/xxx
  285.      -POINTNET=xxx
  286.  
  287. These lines may be anywhere in the file except the first line.  The '-'
  288. should be in column one.  You shouldn't use both of these lines, but you
  289. may need to use one or neither of them.
  290.  
  291. -BOSSNODE=xxx/xxx   This is used if you are a point.  This is where you'll 
  292.                     need to specify the net and node number of your boss 
  293.                     system.  Do not include a zone number - your boss must 
  294.                     be in the same zone as you.  If you are not in zone 1, 
  295.                     you must specify your zone in the NODE line of 
  296.                     CONFIG.DOG.  The NODE line in CONFIG.DOG should specify 
  297.                     your "fake" network number, and should not include a 
  298.                     point number.
  299.  
  300. -POINTNET=xxx       This is used if you are a boss node with points.  This 
  301.                     is where you'll need to specify the "fake" network 
  302.                     number of your point systems.  With this line in place, 
  303.                     you can send messages to your points by using either 
  304.                     their "fake" address or their fully-qualified point 
  305.                     address (your net/node number '.' their point number).
  306.  
  307.  
  308.                      ENTERING AND REPLYING TO MESSAGES
  309.                      ---------------------------------
  310.  
  311. When entering a message in the MAIL area (#0), a destination node number 
  312. must be known.  If the person you're entering the message to is listed in 
  313. USERLIST.DOG or FIDOUSER.LST, you won't need to enter this node number, it 
  314. will be entered for you.
  315.  
  316. If you are a boss node and have a -POINTNET statement in your AREAS.BBS
  317. file, messages to one of your points will be re-addressed to your private
  318. network number.  For example, my network number is 124/1113.  In my
  319. AREAS.BBS I have a "-POINTNET=9130" statement.  In my USERLIST.DOG file, I
  320. have a line which says "Freiheit, Bill 124/1113.2002".  If I enter a
  321. message to "Bill Freiheit", MSG will address it to 9130/2002.  However, if
  322. I enter a message to "Joe Blow" on 124/6215.12, MSG will recognize that
  323. this isn't one of my points, and will address it to 124/6215 and will
  324. prefix the appropriate "TOPT 12" kludge line to the message body.
  325.  
  326. If you are a point node and have a -BOSSNODE statement in your AREAS.BBS 
  327. file, all mail messages (in area #0) you enter will be FROM your bossnode, 
  328. with an appropriate "FMPT" kludge line in the message body.
  329.  
  330. If you enter or reply to a mail message that is destined for a node outside
  331. your own zone, the message will be addressed to the zone gateway, and an
  332. appropriate "INTL" kludge line will be prefixed to the message body.
  333.  
  334. If this all seems a little complicated, a little playing around with 
  335. "Kludges On" (in the X)change menu) should enlighten you.
  336.  
  337. File attaches:  When entering the subject of a message when E)ntering or 
  338. R)eplying in the mail area (area #0), you should specify a filename rather 
  339. than a subject if you wish to attach a file.  If the 2nd and 3rd characters 
  340. of the subject are ':' and '\', respectively, MSG will assume that you've 
  341. typed a filename, and will set the file attach flag.  If this is not what 
  342. you want, you can toggle the file attach flag on or off with the C)hange 
  343. F)ileattach command.
  344.  
  345.  
  346.                               EXIT ERRORLEVELS
  347.                               ----------------
  348.  
  349. MSG exits with one of four errorlevels:
  350.  
  351.      3 - fatal error, can't continue.
  352.      2 - echomail was entered.  MSGTOSS.LOG was created.
  353.      1 - matrix mail (area #0) was entered only.
  354.      0 - no error, no messages need to be scanned.
  355.  
  356. See the included MSGS.BAT file for an example of how to put the errorlevel
  357. and the MSGTOSS.LOG file to work for you.
  358.  
  359.  
  360.                              FILES USED BY MSG
  361.                              -----------------
  362.  
  363. *.LST          A mailing list.  To use, enter the filename preceeded by "@"
  364.                (without the .LST extension) in response to the "To:" prompt
  365.                when entering a message.
  366.  
  367. AREAS.BBS      This is a text file that you create, and which is shared by 
  368.                utilities such as ConfMail.  One special note:  The system 
  369.                name ! sysop name line must be on the FIRST line of 
  370.                AREAS.BBS.  No blank or comment lines should be above it.  
  371.                See the "POINTS AND BOSSES" section above for more 
  372.                information about the -BOSSNODE and -POINTNET lines.
  373.  
  374.                     Example:
  375.  
  376.                Nibbles & Bytes - Dallas, Texas - 214-231-3841! Ron Bemis
  377.                ;Area Location      Area Name      Forwarding Nodes
  378.                -POINTNET=9130
  379.                M:\NOTES\           NOTES
  380.                M:\POINTS\          POINTS         265/7 124/4115 124/6215
  381.                ;and so on...
  382.  
  383. CONFIG.DOG     This is a text file that you create, and which is shared by 
  384.                other utilities.  MSG only requires that there be two lines 
  385.                in this file, although there may be others.  In the NODE 
  386.                line, if a zone number is not specified, the default is zone 
  387.                1.  If you are a point system, do not specify your point 
  388.                number on the NODE line.  Put your "fake" address here, and 
  389.                use the -BOSSNODE statement in AREAS.BBS.
  390.  
  391.                     Example:
  392.  
  393.                Node 1:124/1113     ;my network address
  394.                Mail M:\MAIL        ;matrix msgs location
  395.  
  396. DIR.BBS        This is an area description file.  You may have one in each 
  397.                of your message area directories.  MSG only uses them to 
  398.                display your current area.  If they do not exist, MSG will 
  399.                instead display the directory path.
  400.  
  401. FIDOUSER.LST   This is created by your nodelist compiler.  When you enter a 
  402.                netmail message, USERLIST.DOG is searched first.  If the name 
  403.                is not found in USERLIST.DOG, or USERLIST.DOG does not exist, 
  404.                MSG will search FIDOUSER.LST.
  405.  
  406. HANCOCK.JON    This is the 'signature' file.  If a file with this name 
  407.                exists in a message area, the contents will be appended to 
  408.                each message you create by E)ntering or R)eplying.  If a file 
  409.                with this name exists in the 'BBS' directory, it will be used 
  410.                as a default if there is no HANCOCK.JON in the corresponding 
  411.                message area.  Only one line of up to 75 characters will be 
  412.                read.  Do not use graphics or other non-ASCII characters in 
  413.                this file.
  414.  
  415. LASTREAD.      These are small binary files that exists in each of your 
  416.                message area directories.  They are used to store a pointer 
  417.                to the last message you have read in each area.
  418.  
  419. MESSAGE.TXT    This is the filename passed to your editor for any message 
  420.                editing.  This includes E)nter, R)eply, and B)ody.  Once 
  421.                saved back into a message format, the file is deleted.
  422.  
  423. MESSAGE.BAK    Possibly created by your editor.  If it exists after editing, 
  424.                it is deleted.
  425.  
  426. MESSAGE.LOG    Maintained by MSG.  If it exists in the 'BBS' directory when 
  427.                MSG starts, the "A=", "AL", "AN", and "AP" commands will be 
  428.                limited to the areas listed in this file.  This file might be 
  429.                appended by using the -F option of CONFMAIL IMPORT.  It will 
  430.                only be re-written by MSG if it existed when MSG started.
  431.  
  432. MESSAGE.SAV    This is the default filename for the W)rite command.  Of 
  433.                course you may type any filename you like instead.  If you
  434.                specify a different file, MSG will remember it, and that
  435.                file will be the default the next time you W)rite.
  436.  
  437. MSG.COL        This is a small file that contains your color setup.  If
  438.                this file is present in the 'BBS' directory, MSG will use it
  439.                to initialize your colors.  You can configure the colors
  440.                temporarily or permanently by using the X)change D)ecorate
  441.                option.  MSG's default settings are in color (with no
  442.                MSG.COL).  The MSG distribution archive contains a sample
  443.                MSG.COL for monochrome systems.  If you have a color system,
  444.                you should probably not install this sample file.
  445.  
  446. MSG.MAC        This is the macro definition file.  Any line beginning with
  447.                anything other than a numeric character is ignored.  A macro
  448.                definition starts with the scan code, and is followed by the
  449.                macro string.  Macros are valid only for "0-scan" keys, and
  450.                only when Hotkeys are enabled.  See the file MSG.REF for a
  451.                list of definable keys.
  452.  
  453. MSG.REF        A fairly complete list of the keyboard scan codes that can
  454.                be used for macros.  This isn't used by the program, but is
  455.                provided as an aid in editing MSG.MAC.
  456.  
  457. MSGTOSS.LOG    This is created by MSG when you enter messages in an
  458.                echomail area.  See the description above, and the sample
  459.                MSGS.BAT batch file.
  460.  
  461. ORIGIN         You can use this file to create custom origin lines.  If a 
  462.                file with this name exists in a message area, the contents 
  463.                will be used to create your origin line in echomail areas 
  464.                when you E)nter or R)eply to a message.  If the file does not 
  465.                exist in a given message area, the default origin from 
  466.                AREAS.BBS will be used.  " * Origin: " will be added before 
  467.                this line, and your node number will be added at the end, so 
  468.                these should not be included.  Up to 50 characters are 
  469.                permitted.  Do not use graphics or other non-ASCII characters 
  470.                in this file.
  471.  
  472. PASSTHRU       MSG doesn't use this file at all, it just creates/deletes it
  473.                with the PassT)hru option in the Z)ap menu.  It's a
  474.                zero-length file, which means it doesn't take up any
  475.                additional disk space.  It is intended to signify an area
  476.                that contains pass-through echomail messages not used on the
  477.                local system.  A batch file could do special processing
  478.                based on an IF EXIST xxx\PASSTHRU statement.
  479.  
  480. PRIVATE        MSG creates/delete this file with the P)rivate option in the
  481.                Z)ap menu.  It's a zero-length file, which means it doesn't
  482.                take up any additional disk space.  If found, MSG will
  483.                create private messages when you enter or reply in the area.
  484.  
  485. USER           MSG doesn't use this file at all, it just creates/deletes it
  486.                with the U)ser option in the Z)ap menu.  It's a zero-length
  487.                file, which means it doesn't take up any additional disk
  488.                space.  It is intended to signify an area that is set up for
  489.                users of a BBS, but is not read by the sysop.  A batch file
  490.                could do special processing based on an IF EXIST xxx\USER
  491.                statement.
  492.  
  493. USERLIST.DOG   If this file exists, it is searched first when you enter a 
  494.                message in your netmail area (area #0).  Each line must have 
  495.                the exact same length, and have the same format as the 
  496.                FIDOUSER.LST file described above.
  497.  
  498. *.MSG          Of course.
  499.  
  500. Congratulations on reading this far through this rather badly written
  501. documentation.  I hope you'll enjoy this program, and I also hope that
  502. you'll consider sending in a registration if you like it.  I've always got
  503. an ear open to suggestions or enhancements that you might like to see
  504. added.  Don't patch this program - drop me a note if you need something
  505. special done.  And please report any bugs you may find!
  506.  
  507.                  - Ron Bemis, Sysop 124/1113, 214-213-3841 
  508.  
  509. MSG is shareware!  That means that if you use it on a regular basis, you
  510. must pay for it.  You are hereby granted a limited licence to use this
  511. program for a period of one month.  At the end of this month, you must
  512. either register this program or discontinue its use.  This program may NOT
  513. be used in a business, for-profit organization, or corporate environment
  514. without first being registered.  Registration price for this program is $20
  515. per machine.  Registrations should be mailed to:
  516.  
  517.                Ron Bemis
  518.                9601 Forest Ln #222
  519.                Dallas, TX  75243
  520.  
  521.