home *** CD-ROM | disk | FTP | other *** search
/ Beijing Paradise BBS Backup / PARADISE.ISO / software / BBSDOORW / INF100.ZIP / INFOMAIL.DOC < prev    next >
Encoding:
Text File  |  1996-03-28  |  22.8 KB  |  721 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.                         Centurion InfoMail 1.00
  28.  
  29.                    An Information-by-Netmail Utility
  30.  
  31.                             by Damian Walker
  32.  
  33.                      Centurion, Fidonet 2:2502/666
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61. Centurion InfoMail 1.00
  62.  
  63. CONTENTS
  64.  
  65.         1.      WHAT IS INFOMAIL?
  66.         1.1.    Program Description
  67.         1.2.    Program Requirements
  68.         1.3.    Disclaimer
  69.         1.4.    Acknowledgements
  70.  
  71.         2.      SETTING UP INFOMAIL
  72.         2.1.    Unpacking InfoMail
  73.         2.2.    General Setup Parameters
  74.         2.3.    Setting up Information Packs
  75.  
  76.         3.      USING INFOMAIL
  77.         3.1.    Running InfoMail on Your Mailer
  78.         3.2.    Addressing InfoMail
  79.  
  80.         4.      REFERENCE
  81.         4.1.    Command Line Switches
  82.         4.2.    Version History
  83.  
  84.         5.      DEVELOPER'S GUIDE
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120. Contents                                                               2
  121. Centurion InfoMail 1.00
  122.  
  123. 1. WHAT IS INFOMAIL?
  124.  
  125. 1.1. Program Description
  126.  
  127.         InfoMail is a small utility which responds automatically to
  128.         requests for information via routed netmail.  It runs on just
  129.         about any MS-DOS based PC, and interfaces with FrontDoor and
  130.         compatible front-end mailers.
  131.  
  132.         The idea behind this program to allow anyone linked to the
  133.         Fidonet mail network to offer information about themselves, the
  134.         services they offer, or general information about a subject they
  135.         are interested in.
  136.  
  137.         Possible uses for this are descriptions and adverts for BBS's
  138.         and other Fidonet systems, echo descriptions and rules, small
  139.         FAQ files and software information.  These are by no means the
  140.         only uses that this software may be put to; its use is limited
  141.         only by the imagination.
  142.  
  143.         InfoMail will respond to netmails sent to 'InfoMail', or another
  144.         name defined by you, at an address defined by you (usually your
  145.         own Fidonet address), and will use the subject line of the
  146.         incoming message as the details of which information pack is
  147.         required (InfoMail can keep track of up to 32767 information
  148.         packs).
  149.  
  150. 1.2. System Requirements
  151.  
  152.         This program will run under MSDOS or 100% compatible operating
  153.         system. Although the slowest machine tested was a 386/16, it
  154.         should run on any PC with more than 128k of memory.  The program
  155.         has been tested on MS-DOS 6.0, but the author sees no reason why
  156.         it should not work on MS-DOS 3.0 or above, and possibly even
  157.         MS-DOS 2.0.
  158.  
  159.         The program is also designed to interface with the FrontDoor
  160.         2.12 mailer.  Thus it is useless without this mailer or a
  161.         compatible mailer/mail processor combination.  This includes all
  162.         mailers which store their inbound and outbound netmail in *.MSG
  163.         format, complete with zone and point information.
  164.  
  165. 1.3. Disclaimer
  166.  
  167.                           **** IMPORTANT ****
  168.  
  169.         No warranty or guarantee is provided with this program.  While
  170.         the author has attempted to ensure that the program is fully
  171.         operational and bug-free, no responsibilty can be taken by the
  172.         author in the event that damage or inconvenience is caused by
  173.         the program.  Run InfoMail at your own risk.
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180. What is InfoMail?                                                      3
  181. Centurion InfoMail 1.00
  182.  
  183. 1.4. Acknowledgements
  184.  
  185.         Thanks go to the following people for help in the development of
  186.         InfoMail:
  187.  
  188.             Bill Birrell, 2:2504/200, for beta testing, and for many
  189.             invaluable messages and snippets of code in the C_ECHO,
  190.             without which the author would have had much more difficulty
  191.             progressing to the level of proficiency required to produce
  192.             this program.
  193.  
  194.             Bill Welch (2:254/222), for beta testing. Steven Holme
  195.             (2:2503/216), Kelvin Phillips (2:2502/666.4), Peter Barley
  196.             (2:2502/666.15), and Andy Altoft (2:2502/666.2107), for beta
  197.             testing.
  198.  
  199.         The following people helped in the development without even
  200.         knowing it:
  201.  
  202.             Joaquim Homrighausen, 2:270/17, for writing FrontDoor.
  203.  
  204.             Randy Bush, 1:105/6, for the document FTS-0001.
  205.  
  206.             Anyone who ever wrote 'send an email to info@x.y.z for
  207.             information' or similar, as such references are what
  208.             provided the idea for this program.
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240. What is InfoMail?                                                      4
  241. Centurion InfoMail 1.00
  242.  
  243. 2. SETTING UP INFOMAIL
  244.  
  245. 2.1. Unpacking InfoMail
  246.  
  247.         InfoMail will be supplied as a standard ZIP or ARJ file, or
  248.         perhaps compressed with some other archiver.  It has no
  249.         subdirectories, so to unpack it you just have to create a
  250.         directory and unpack the files into the directory using the
  251.         appropriate archiver.
  252.  
  253. 2.2. General Setup Parameters
  254.  
  255.         After unpacking InfoMail, it must be set up with a few global
  256.         parameters before it will operate.  To set up InfoMail in this
  257.         way, call it up with the following command line:
  258.  
  259.                 INFOMAIL -S
  260.  
  261.         You can use a slash ("/") instead of a hyphen ("-") if you
  262.         prefer.  InfoMail is case insensitive throughout, so all command
  263.         line switches and text strings may be supplied in upper, lower
  264.         or mixed case without affecting the outcome of searches and
  265.         comparisons.
  266.  
  267.         Upon running InfoMail's setup utility you should be presented
  268.         with a window containing the following:
  269.  
  270.         ┌──────────────────────────────────────────────────────────────┐
  271.         │ Netmail  .\                                                  │
  272.         │    Name  InfoMail                                            │
  273.         │ Address  2:2502/666.0                                        │
  274.         │    Kill  No                                                  │
  275.         └──────────────────────────────────────────────────────────────┘
  276.  
  277.         As you can see, some default values are set up for you.  These
  278.         are unlikely to be to your satisfaction, unless you run the
  279.         utility from your netmail directory and take over the running of
  280.         the author's node.  So, you will have to change the values as
  281.         follows.
  282.  
  283.         Netmail: This is your netmail directory.  Typically, you will
  284.         change this to something like \FD\MAIL.  InfoMail will
  285.         capitalise this for you, and it will add a trailing backslash if
  286.         you have not done this yourself.  It will not, however, add a
  287.         drive letter.
  288.  
  289.         If you prefer, you can use Unix-style slashes in your pathname,
  290.         although you will have to add the trailing slash yourself
  291.         otherwise InfoMail will add a DOS-style backslash to the end,
  292.         which in all probability is not what you want.
  293.  
  294.         Name: Currently set at InfoMail, and it is suggested that you
  295.         leave this as it is in order to standardise the use of InfoMail.
  296.         This is the name by which your InfoMail server will be known;
  297.         messages are sent to this name (and replied to from this name).
  298.  
  299.  
  300. Setting up InfoMail                                                    5
  301. Centurion InfoMail 1.00
  302.  
  303.         If you changed it, for instance, to InfoServer, then users would
  304.         have to write their messages to InfoServer at your address,
  305.         instead of InfoMail.
  306.  
  307.         Address: This is your Fidonet address, or perhaps a point AKA if
  308.         so desired. Messages must be sent to this address if InfoMail is
  309.         expected to respond to them, and replies will also be sent from
  310.         this address.
  311.  
  312.         Kill: Setting this to Yes will cause outbound messages from
  313.         InfoMail to carry the Kill flag.  This will delete the messages
  314.         when they leave your system.  Setting this field to No prevents
  315.         the Kill flag from being used, in which case sent messages will
  316.         just be marked with the 'sent' flag once they depart your
  317.         system.  In this case, your mail processor can shift the sent
  318.         messages to your Sent Netmail area as with other locally written
  319.         netmails.
  320.  
  321.         This is currently all there is to setting up InfoMail's standard
  322.         parameters.  However, you will have to define some InfoMail
  323.         documents, or Information Packs, before the program becomes at
  324.         all useful.
  325.  
  326. 2.3. Setting up Information Packs
  327.  
  328.         You can set up any number of Information packs from zero to
  329.         32,767.  Of course, if you set up no information packs, there is
  330.         little point to running the InfoMail program at all.  To enter
  331.         the appropriate section of the program, use the command line
  332.  
  333.                 INFOMAIL -L
  334.  
  335.         (L for list) replacing the hyphen for a slash if you prefer, as
  336.         with the -S option discussed earlier.  A window similar to the
  337.         following will appear.
  338.  
  339.         ┌──────────────────────────────────────────────────────────────┐
  340.         │ Document  Filename                                           │
  341.         │ ____________________________________________________________ │
  342.         │                                                              │
  343.         │                                                              │
  344.         │                                                              │
  345.         │                                                              │
  346.         │                                                              │
  347.         │                                                              │
  348.         └──────────────────────────────────────────────────────────────┘
  349.  
  350.         The underscore characters represent a bar highlighting a
  351.         currently empty entry.  To edit this entry, press ENTER.  You
  352.         will be asked for two fields, as follows.
  353.  
  354.  
  355.  
  356.  
  357.  
  358.  
  359.  
  360. Setting up InfoMail                                                    6
  361. Centurion InfoMail 1.00
  362.  
  363.         Document: This is a document name by which InfoMail users will
  364.         know each information pack you offer.  It will be used on the
  365.         subject line of their messages to identify the information pack
  366.         they wish to receive.  As with everything in InfoMail, this is
  367.         case insensitive, so you can use mixed case without
  368.         inconveniencing the users.
  369.  
  370.         Filename: This is the text file which InfoMail is to send on
  371.         receipt of a request for this information pack.  This entry will
  372.         be capitalised for you if necessary.  You may use Unix-style
  373.         slashes ("/") instead of backslashes ("\") in the pathname if
  374.         you prefer.
  375.  
  376.         InfoMail will not check at this time whether a given file exists
  377.         on the disk; it was thought to be more convenient this way, as
  378.         you can then be allowed to create the documents themselves
  379.         afterwards without having to respond to irritating error
  380.         messages.  Should you forget to create a text file, and it is
  381.         requested, the user will be sent a message explaining the
  382.         problem, along with a request to let you know of your oversight.
  383.  
  384.         To remove an entry from the list, highlight its entry and press
  385.         DEL.  An asterisk will appear in the entry, next to the name.
  386.         Pressing DEL again at this point will remove the asterisk, in
  387.         effect 'undoing' the delete.  All entries thus marked will be
  388.         removed from the file once you exit the utility.
  389.  
  390.         The text files can be produced with any normal text editor, or
  391.         any program which generates standard ASCII text files.  You can
  392.         use InfoMail in conjunction with other programs to create
  393.         regularly updated requestable bulletins.
  394.  
  395.         However, one point to note is that InfoMail limits documents to
  396.         just under 8k (7.75k to be exact), and will truncate any longer
  397.         document when it is requested.  This refers to the posted
  398.         document, not the text file on your system.  This limit is
  399.         imposed to discourage the sending of large volumes of text via
  400.         routed netmail, which could place an unnecessary burden on your
  401.         uplinks' systems.
  402.  
  403.  
  404.  
  405.  
  406.  
  407.  
  408.  
  409.  
  410.  
  411.  
  412.  
  413.  
  414.  
  415.  
  416.  
  417.  
  418.  
  419.  
  420. Setting up InfoMail                                                    7
  421. Centurion InfoMail 1.00
  422.  
  423. 3. USING INFOMAIL
  424.  
  425. 3.1. Running InfoMail on your Mailer
  426.  
  427.         InfoMail is simple to run on points, mailer nodes and BBS's, by
  428.         simply calling it in one of your normal batch files.  No command
  429.         line parameters are necessary if you call InfoMail from within
  430.         its own directory.  You can call InfoMail from outside its own
  431.         directory using the -P (for Path) switch, as in the following
  432.         example:
  433.  
  434.                 C:\TOOLS\INFOMAIL -PC:\TOOLS
  435.  
  436.         which would run InfoMail from any directory or drive, and still
  437.         allow InfoMail to find its data files.  You can add a trailing
  438.         backslash to the path on the -P switch if you wish, and, as with
  439.         other options, Unix-style slashes are supported.
  440.  
  441.         It is recommended that you run InfoMail after each mail call.
  442.         If your netmail arrives in compressed form, then you must run
  443.         InfoMail after an unpacking utility (InfoMail cannot access
  444.         ARCmail files!)
  445.  
  446.         If you import your netmail to your message base then you must
  447.         run InfoMail _before_ the software which does the importing;
  448.         InfoMail cannot access a message base, only an inbound-outbound
  449.         netmail directory.
  450.  
  451.         If you receive netmail in compressed form *and* you import it to
  452.         your message base, then you may have a problem, especially if
  453.         your mail processor unpacks compressed netmail and imports it
  454.         with a single command.  You may have to investigate your mail
  455.         processor to see if you can restrict netmail importing to users
  456.         listed in your user database; this way InfoMail netmails would
  457.         remain in the netmail directory where InfoMail can find them.
  458.  
  459.         Another way of getting around this problem is to create a point
  460.         address for InfoMail.  This is especially useful if you only
  461.         want to run InfoMail in your nightly maintenance.  Another
  462.         positive side effect in such cases is that FrontDoor will not
  463.         flash the 'Mail' indicator when incoming InfoMail netmails are
  464.         waiting in your netmail directory to be processed.
  465.  
  466. 3.2. Addressing InfoMail
  467.  
  468.         Addressing messages to InfoMail is an easy matter.  All netmails
  469.         to InfoMail must be in the following format:
  470.  
  471.         ================================================================
  472.         By: <username>, <useraddress>
  473.         To: InfoMail, <youraddress>
  474.         Re: <document>
  475.         ----------------------------------------------------------------
  476.         <message body ignored>
  477.         ================================================================
  478.  
  479.  
  480. Using InfoMail                                                         8
  481. Centurion InfoMail 1.00
  482.  
  483.         <username> and <useraddress> are the user's name and network
  484.         address as present in all netmails.  If you have substituted
  485.         another name for InfoMail in the setup utility, then this must
  486.         be used in place of InfoMail in the message To: field.
  487.         <youraddress> is the netmail address you have defined for
  488.         InfoMail.  <document> is the name of a document as set up in the
  489.         information pack list utility.
  490.  
  491.         InfoMail will respond with one of three things.  If <document>
  492.         is a valid document name, and the corresponding file exists, the
  493.         file will be sent as the body of a netmail to <username> at
  494.         <useraddress>.
  495.  
  496.         If <document> is a valid document name and the corresponding
  497.         file does not exist, a message will be sent to the user
  498.         explaining this fact, and also requesting that they get in touch
  499.         with you (as discussed in an earlier section).
  500.  
  501.         If <document> is not present in your information pack list, the
  502.         user will be sent a message explaining this, and the user will
  503.         also be provided with a list of documents which are available.
  504.         This is useful in the event of a typo, spelling error or other
  505.         mistake, as the user may verify that the document they want is,
  506.         or is not, present.
  507.  
  508.  
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515.  
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  
  535.  
  536.  
  537.  
  538.  
  539.  
  540. Using InfoMail                                                         9
  541. Centurion InfoMail 1.00
  542.  
  543. 4. REFERENCE
  544.  
  545. 4.1. Command Line Switches
  546.  
  547.         The following command line switches are available in the current
  548.         version of InfoMail:
  549.  
  550.         -L      Loads the information pack list utility, allowing
  551.                 information packs (or documents) to be defined.  The
  552.                 text files are created elsewhere using a standard text
  553.                 editor, or any program which generates an ASCII file of
  554.                 suitable size.
  555.  
  556.         -P      Specifies an alternative path for InfoMail's data files.
  557.                 This allows InfoMail to be run from outside its own
  558.                 directory.  The pathname must follow the -P, without an
  559.                 intervening space.  Unix-style "/" characters may be
  560.                 used in place of their DOS counterparts.  The -P switch
  561.                 can be combined with other switches, namely -S and -L.
  562.  
  563.         -S      Loads the setup utility, allowing changes to be made to
  564.                 InfoMail's global parameters.  The first time this is
  565.                 run, a file will be created with some default settings.
  566.  
  567.         -?      Requests a concise help screen reminding you of these
  568.                 switches.
  569.  
  570.         The slash ("/") can be used for command line switches also,
  571.         meaning that the above switches can be specified as /L, /P, /S
  572.         and /?.  If these characters are used, you need not use a space
  573.         after the /L or /S switches.  However, due to the fact that
  574.         Unix-style pathnames are supported, you will need a space after
  575.         the pathname in a /P or -P switch.
  576.  
  577. 4.2. Version History
  578.  
  579.         Version 0.00/1.00
  580.  
  581.         This is the initial version.  During development, the following
  582.         bugs and oversights were spotted by the beta testers:
  583.  
  584.         Lack of MSGID, substitution of -C for the -P switch in the help
  585.         screen and provisional documentation (thanks to Bill Birrell).
  586.         Truncation of messages when used with Terminate, and a nonsense
  587.         'Reading netmail #x' counter when the netmail directory was
  588.         empty (thanks to Peter Barley).
  589.  
  590.         The following improvements were made during development: "/"
  591.         character allowed for switches, support for the kill/sent flag
  592.         (both suggested by Bill Birrell), incoming messages deleted
  593.         (suggested by Steven Holme), and the addition of an assortment
  594.         of prompts and error messages.
  595.  
  596.  
  597.  
  598.  
  599.  
  600. Reference                                                             10
  601. Centurion InfoMail 1.00
  602.  
  603. DEVELOPER'S GUIDE
  604.  
  605.         It may seem a little over-the-top to include a developer's guide
  606.         for such a simple utility, as it is unlikely that anyone will
  607.         want to write any add-on utilities to service InfoMail and its
  608.         data files.  However, it was decided to include such a section
  609.         in any case, for the sake of completeness.
  610.  
  611. File Included in the Archive
  612.  
  613.         The INFOMAIL.H file has been included for C programmers, so that
  614.         the setup file and data files may be examined and modified by
  615.         third-party programs without having to resort to such methods as
  616.         reverse-engineering. Feel free to include this header file in
  617.         your own programs.
  618.  
  619. The Setup File
  620.  
  621.         The file INFOMAIL.CFG contains the global setup information, and
  622.         is modified by the setup utility called using INFOMAIL -S.  The
  623.         fields it includes are explained below.
  624.  
  625.         Netmail Directory: A 64-byte null-terminated character string.
  626.         This corresponds to the Netmail field in the setup utility.
  627.         This field as stored should *always* have a trailing slash or
  628.         backslash, unless it consists of only a drive letter.
  629.  
  630.         InfoMail Name: A 36-character null-terminated character string,
  631.         corresponding to the Name field in the setup utility.
  632.  
  633.         Zone, Net, Node and Point: These are 16-bit integers forming
  634.         various parts of the netmail address corresponding to the
  635.         'Address' field in the setup utility.
  636.  
  637.         Kill: A 16-bit integer corresponding to the Kill field in the
  638.         setup utility.  A non-zero value corresponds to a 'Yes,' while a
  639.         zero value corresponds to 'No.'
  640.  
  641. The Information List File
  642.  
  643.         The file INFOMAIL.DAT contains zero or more records, each
  644.         containing a single entry in the information list editor,
  645.         usually accessed using INFOMAIL -L.  There are two fields, and
  646.         these are discussed below.
  647.  
  648.         Deleted: This is a 16-bit integer, whose value should always be
  649.         zero, the reason being that 'deleted' records are removed from
  650.         the info list file on leaving the info list editor.  A non-zero
  651.         value in this field in any record is probably the result of a
  652.         machine crash or reset after records have been marked for
  653.         deletion, but before the info list editor was exited properly.
  654.  
  655.         Name: The name of the document is a 9-byte null-terminated
  656.         character string; thus the maximum length of a document name is
  657.         8 characters.
  658.  
  659.  
  660. Developer's Guide                                                     11
  661. Centurion InfoMail 1.00
  662.  
  663.         File: A 64-character null-terminated character string,
  664.         containing the full path and file name of the information pack
  665.         referred to by this record.
  666.  
  667. Messages Generated by InfoMail
  668.  
  669.         Netmails generated by InfoMail will contain the following kludge
  670.         lines.
  671.  
  672.         ^AINTL: The ^AINTL kludge will always be present.
  673.  
  674.         ^AFMPT: Present when the origating address contains a point
  675.         number other than 0.
  676.  
  677.         ^ATOPT: Present when the destination address contains a point
  678.         number other than 0.
  679.  
  680.         ^APID: The program ID.  The exact text of the line should be
  681.         similar to the following:
  682.  
  683.             ^APID: InfoMail x.xx
  684.  
  685.         where x.xx refers to the version number of the program in use.
  686.  
  687.         ^AMSGID: Always present.
  688.  
  689.  
  690.  
  691.  
  692.  
  693.  
  694.  
  695.  
  696.  
  697.  
  698.  
  699.  
  700.  
  701.  
  702.  
  703.  
  704.  
  705.  
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720. Developer's Guide                                                     12
  721.