Maximus 3.x Mass Mail System, Version 2.3
Copyright (c) 1997 by Anthony Tibbs


   The Maximus Mass Mail System is a program which allows the System
   Operator (and users, if the SysOp wishes) to send messages to each
   individual user on the system.  This can be used as a way of sending
   "bulletins" to everyone, and yet, adding a more personal approach
   to your system.

Legal Notes
===========

   Maximus and Squish are trademarks of Lanius Corporation.

   MS-DOS, Windows, Windows 95, and Windows NT are trademarks of Microsoft
   Corporation.

   OS/2, IBM, and PC-DOS are trademarks of International Business Machines.

   All other trade names are trademarks of their respective owners.


   The Maximus Mass Mail Utility and associated documentation are
   the property of Anthony Tibbs ("the author") and may not be sold
   with prior written permission.  The program may be distributed,
   unaltered and as a unit, via electronic Bulletin Board Systems, or
   the Internet.

   THIS PROGRAM MAY NOT BE USED IN A COMMERCIAL ENVIRONMENT (business,
   government, educational, etc.) WITHOUT PRIOR PERMISSION FROM THE
   AUTHOR.

   NO WARRANTY!
   
   THE AUTHOR OF THIS PROGRAM DISCLAIMS ALL WARRANTIES, EITHER
   EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, IMPLIED
   WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   PURPOSE, WITH REGARD TO THE SOFTWARE, THE ACCOMPANYING WRITTEN
   DOCUMENTATION, AND THE MEDIUMS ON WHICH THE SOFTWARE IS
   CONTAINED.  IN NO EVENT SHALL THAT AUTHOR BE LIABLE TO YOU FOR
   AND CONSEQUENTIAL, SPECIAL, INCIDENTAL OR INDIRECT DAMAGES, OF
   ANY KIND ARISING OUT OF THE USE OF THE SOFTWARE, EVEN IF THE
   AUTHOR HAS BEEN NOTIFIED OF THE POSSIBILITY OF SUCH DAMAGES.  
   
   YOUR USE OF THIS PROGRAM CONSTITUTES YOUR ACCEPTANCE OF THESE
   TERMS.
   

   The Squish Developement Kit says:

      "If you use this code in your application, you must give credit
       for the MsgAPI code and indicate that "Squish" is a trademark of
       SCI Communications."

   So, I'll just take a moment to say that Squish is a trademark of
   SCI Communications (or Lanius Corporation, depending on which
   version we're talking about), and that Scott Dudley wrote the
   MsgAPI code.

   Happy?

History
=======

   Version  Date        Comments
   2.3      Dec 15 97   + You can now specify a minimum and maximum ACS level
                          Users which are outside of these "boundaries" will
                          be ignored (SYSOP mode only)

   2.2      Nov 18 97   * This version was never publically released...

                        - A few cosmetic changes to the `sent to' listing
                          to make life a little easier for those using a
                          speech card.  (the result is now printed to the
                          right of the name/msg#, rather than on the
                          left)  Let me know if it mucks up.

                        # Now compiled with Borland C++ 4.52.  Let me know
                          if anything strange crops out of the wood.

                        + Now supports "ignore"ing of certain users.  If you
                          don't want a certain user to receive any mail,
                          simply add "Ignore <username>" to your .CFG file.

                        ! Another origin line bug has been fixed.  Nodes with
                          no point number (i.e. 201:935/603.0) should NOT
                          have .0 added to the end of them now.

   2.1a     Oct 28 97   ! Origin line didn't have the address on it  
                        ! Config file parser was busted.  If there was not
                          a blank line at the end, it would "repeat" the
                          last line, causing an error message.  Now fixed.
   
   2.1      Oct 15 97     Initial public release


Usage
=====

   MassMail <mode> [switches]

   <mode>      USER     Scan message base for messages written from users.
                        Forward these message(s) to everyone else.

               SYSOP    Post of a copy of your message file (filename set
                        in config file) to each user on the board.

   [switches]  -C<file> Specify an alternate configuration file (<file>).

Sytem Requirements/Locations
============================

   At this time, the Maximus Mass Mail System MUST be located in your
   Maximus 3.x directory (or wherever your user base is).

   System requirements:

      *  Maximus 3.x installation (other BBS systems will be supported in
         the future - you send me the specs, I'll take a look at it.  See
         "Contacting the Author")

      *  MS-DOS 3.3+, Windows 95/NT, PC-DOS, OS/2 2.x+, etc. should all
         work fine.

      *  Approximately 200k of free DOS memory (differs, depending on size
         of messages, etc.)

      *  Approximately 150k of disk space for configuration, programs, etc.

Sending User Messages
=====================

   If a user wants to send a message to everyone else, they address it
   to "Mass Mail" (no quotes) in the area you have deisgnated.  The
   subject line will be preserved.

   Once the message has been processed, it will be deleted.  If
   "AcknowledgeUserMail" is enabled, a reply will be sent back to the
   user stating that the message was processed.

Sending SysOp Messages
======================

   To send a message from the SysOp to everyone, use SysOp mode.  The
   filename of the file you wish to post must be set in the config file.

   The format for this file is simple.  You must have at least two lines
   in the file - one specifying the subject, and one specifying the
   name to use in the From: field.  Everything else will be copied to
   the message body.  i.e.

   From:    SysOp
   Subject: Testing New MassMail System

   Hey guys, is this thing working?

   The `From:` and `Subject:` lines do NOT have to be the first two lines
   in the file.  However, I recommend keeping it simple...

   Try to keep your lines less than 75 characters wide, as some (brain-
   dead) editors barf on the longer lines.  The program will warn you
   of long lines.

Config File
===========

   The configuration file is a plain ASCII text file.  You can create or
   edit this file with most any standard DOS text editor, such as the DOS
   editor, or QEdit.  Lines beginning with a semi-colon (';') and blank
   lines are ignored.

   Configuration verbs (commands) are not case-sensitive, so "teSting" is
   the same thing as "TEsTING".

   ALL of the keywords (except AcknowledgeUserMail and AllowUserMail) are
   MANDATORY, and CANNOT BE OMITTED.  (Hopefully,) the program will tell
   you if you forget something, but I wouldn't rely on this . . .

   AcknowledgeUserMail
   -------------------

      If this keyword is active (i.e. it exists, and is not commented
      out), and a user sends a message, the Mass Mail System will send
      a reply back to the user, letting them know that the message was
      delivered.

      Normally, you will probably want this behaviour.

      This keyword has no effect if AllowUserMail is inactive.

      Examples:   AcknowledgeUserMail

   AllowUserMail
   -------------

      If this keyword is active (i.e. it exists, and is not commented
      out), and a user sends a message, the Mass Mail System will send
      that message to everyone else on the bulletin board (who is in 
      your user file).  If it is NOT active, the Mass Mail System will
      ignore user messages.

      WARNING:    This feature could lead to a "Maximus" style of spamming!
                  Use at your own risk.

      Examples:   AllowUserMail  

   Address <addr>
   --------------

      The Maximus Mass Mail System needs to know what system address
      you wish to use.  (Personally, I think this is stupid, but Fido
      standards are Fido standards . . .)  Also, if you intend to, for
      whatever reason, send the messages across an echomail link, this
      address is absolutely required.

      If you don't know what I am talking about, or don't have an address,
      simply use 1:1/1.1 for now.

      Examples:   Address     201:935/603.4
                  Address     1:1/1.1

   File <filename>
   ---------------

      When the Maximus Mass Mail System is run in SysOp mode, it will
      post a copy of this file to each user on the board.  You must
      tell the program the filename (and path, if you wish) of the
      file containing your message.

      Examples:   File     C:\Max\Misc\Bulletins\Games.Txt
                  File     Testing.123

   Ignore <username>
   -----------------

      Tells the Mass Mail System to NOT send any messages to <username>
      This name must match, EXACTLY, what is in the USER.BBS file, but
      case is not important.  Currently, this must be a REAL name, and
      NOT an alias.

      Note that IGNORE'd users can still write messages to everyone
      else, unless that too is disabled.  Also be advised that
      everything from the right of Ignore is a considered to be part
      of the name (i.e. you can't have any comments on that particular
      line).  Names are limited to 36 characters, as per the FTS
      specifications.

      You are currently limited to about 254 Ignore'd users.  This
      limit MAY be expandable if enough users require it.

      Example:    Ignore   John Richards
                  Ignore   Sysop
      WON'T WORK: Ignore   Sysop                      ; Ignore myself

   MinACS <acs>
   ------------

      Specifies the MINIMUM access level the user must have.  If their
      ACS level is lower than this, they will not receive a message (applies
      to SYSOP mode only!).  This is NOT the string representation of the
      access level, since that can be changed.  This is the corresponding
      "Level" value.  In a default Maximus setup, this is what you have:

         Level       Desc
         0           Transient/Twit
         10          Demoted/Disgrace
         20          Limited
         30          Normal
         40          Worthy
         50          Privil
         60          Favoured
         70          Extra
         80          Clerk
         90          AsstSysop
         100         Sysop
         65535       Hidden

      If this keyword is specified, you must also specify MaxACS (see
      below).

      Examples:      MinACS         20
                     MinACS         50

   MaxACS <acs>
   ------------

      Specifies the MAXIMUM access level the user must have.  If their
      ACS level is higher than this, they will not receive a message (applies
      to SYSOP mode only!).  This is NOT the string representation of the
      access level, since that can be changed.  This is the corresponding
      "Level" value.  In a default Maximus setup, this is what you have:

         Level       Desc
         0           Transient/Twit
         10          Demoted/Disgrace
         20          Limited
         30          Normal
         40          Worthy
         50          Privil
         60          Favoured
         70          Extra
         80          Clerk
         90          AsstSysop
         100         Sysop
         65535       Hidden

      Examples:      MaxACS         40
                     MaxACS         70

   MsgBase <path/type>
   -------------------

      Specifies the path/type of your message base.  If the first character
      in the path is a dollar sign ('$'), the messagebase will be treated
      as a Squish (*.SQ?) format base.  Otherwise, the Fidonet *.MSG format
      will be used instead.

      NOTE: Squish message bases are MUCH faster, and MUCH more efficient
            than their counterpart, *.MSG.  Unless you have a very good
            reason NOT to use Squish message bases, please use them!

      Examples:   MsgBase     $C:\Max\Msgs\Bulletin

   Origin <string>
   ---------------

      The Maximus Mass Mail System needs to know what origin line
      you wish to use.  (Personally, I think this is stupid, but Fido
      standards are Fido standards . . .)  Also, if you intend to, for
      whatever reason, send the messages across an echomail link, this
      is absolutely required.

      If you don't know what I am talking about, or don't want to send
      the messages to any other systems, just use your system name, or
      something like "The Mass Mail Robot".

      Examples:   Origin      The Biggest BBS In The World!
                  Origin      The Mass Mail System


CONTACTING THE AUTHOR
=====================

   You may contact me for the following reasons:

      *  Technical support/bug reports
      *  Adding support for other BBS systems.  If you want me to add
         support for another BBS system, please send the following:

            - The technical specifications for the user file (preferrably
              in C/C++, but Pascal *should* be OK (I think I can translate)

            - An actual user base for testing purposes.  If you are worried
              about password security, don't.  There is a very good chance
              that you are not in my local calling area anyhow, and I
              generally don't make LD BBS calls.  If you ARE in my local
              calling area, and I am not already calling your board,
              chances are I never will.

      *  Feature requests
      *  You have encouraging comments           

   Do NOT contact me for the following reasons:

      *  You think the program (or myself) stink
      *  You don't like the way your user's are using it

   You may contact me in any of the following ways:

      Internet E-Mail         Tibbs@offsbbs.com
      Netmail                 Anthony Tibbs @ 1:163/215.38     (fido)
                                              77:200/304.0     (namca)
                                              201:935/603.0    (tcn)
                                              17:613/302.0     (MTLnet)
