home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 35 Internet / 35-Internet.zip / steward8.zip / Steward.txt < prev    next >
Text File  |  1996-06-03  |  10KB  |  225 lines

  1. Steward -- A Mailing List Server in Rexx by Paul Hethmon
  2.  
  3. Here's some basic info on how Steward works.
  4.  
  5. Steward is modeled after the Unix Majordomo mailing list
  6. software. It's not dependent on sendmail to do the bulk
  7. of its processing though. If you've used Majordomo before,
  8. then you'll find Steward very similar in configuration.
  9. The big difference is that the alias file changes are not
  10. necessary. The only thing you'll need to define are the mailing
  11. accounts you want Steward to receive mail at. These can be
  12. actual accounts or aliases as long as a couple of things
  13. hold true.
  14.  
  15. The first is that Steward expects two command line arguments
  16. passed to it. The first is the username the mail was delivered
  17. to. This could be a list name or the administration name (usually
  18. Steward). The second argument expected is a filename where the
  19. mail message can be found. This should be a temporary file. Steward
  20. will delete it when it's done.
  21.  
  22. Steward requires you to define one environment variable: STEWARD_CF.
  23. Steward looks for this environment variable to find out where its
  24. configuration file lives. The configuration file must be called
  25. "steward.cf". The example configuration file is fairly self
  26. explanatory. Each list also requires a configuration file called
  27. "listname.cf" where "listname" is the name of the list.
  28.  
  29. Please also note that Steward * REQUIRES * HPFS at present. It could
  30. be made to work with short filenames, but that is left to the individual
  31. user. I highly recommend HPFS.
  32.  
  33. The basic file tree necessary to run Steward was created when you
  34. unzipped the archive. The lists live in a subdirectory of the
  35. Steward home directory called "Lists". Inside this directory you must
  36. create a directory the same name as the list you're creating. Inside
  37. that directory, create the listname.cf configuration file. The location
  38. of the "Lists" directory may be specified in the steward.cf file.
  39.  
  40. You must also put four rexx scripts "lockopen.cmd", "lockclose.cmd",
  41. "lock.cmd", and "unlock.cmd" somewhere on your path. Steward needs 
  42. access to these scripts before it finds its home directory. You may 
  43. either put them in a directory already in your path statement or add
  44. the Steward directory to your path statement in the config.sys
  45. file (You must reboot if you do this for it to take effect).
  46.  
  47. In order to send mail, Steward needs a mailing program to send on
  48. its behalf. As configured, Steward will send mail by starting the
  49. program listed in the "mailer" variable. It will pass to it 3 arguments.
  50. The first is the name to be used as the FROM name during the SMTP
  51. connection. The second is a file containing a list of email addresses
  52. to send mail to, one per line. The third is the message file to send.
  53.  
  54. // ------------------------------------------------------------------
  55.  
  56. The Basic Configuration Steps
  57.  
  58. 1. Unzip the steward archive wherever you would like.
  59. 2. Add the statement:
  60.  
  61.      SET STEWARD_CF=c:\steward
  62.  
  63.    to your config.sys file. The directory "c:\steward" should
  64.    be replaced with the directory from step 1.
  65. 3. Modify the steward.cf file as necessary. It is self-explanatory.
  66. 4. Create two email accounts:
  67.  
  68.      Steward
  69.      Steward-owner
  70.  
  71.    Both should be set up to call the Steward.cmd file when
  72.    mail is received. Steward expects two arguments, the username 
  73.    the message is for and a temporary filename containing the 
  74.    message. Steward will always delete the temporary file after 
  75.    processing it.
  76. 5. Place the following programs and rexx scripts somewhere on your
  77.    path:
  78.  
  79.      HMailer.exe
  80.      lockopen.cmd
  81.      lockclose.cmd
  82.      lock.cmd
  83.      unlock.cmd
  84.  
  85.    Alternately, the steward directory may be placed on the path
  86.    statement in the config.sys file.
  87. 6. Reboot your machine to have the config.sys file changes take effect.
  88. 7. Create lists as needed.
  89.  
  90.  
  91. // ------------------------------------------------------------------
  92.  
  93. How to Set Up a List
  94.  
  95. To create a list, you need to do a few things. First, create 3 email
  96. accounts. They will be (substituting your listname for "list")
  97.  
  98.   list           For messages
  99.   list-request   Admin requests for this list
  100.   list-owner     For requests sent to the list owner (and error messages)
  101.  
  102. The list-request address is not required. If it is not present, then users
  103. will need to send all admin requests to the steward address.
  104.  
  105. Each of these accounts should have Steward listed as the local process
  106. delivery agent. Steward will figure out who the mail message is to. You
  107. should already have a "steward" email account configured to start Steward
  108. as the local process delivery.
  109.  
  110. Now, in the ListDir directory as specified in the steward.cf file, create
  111. a directory with the name "list" (substituting your listname). In it, create
  112. with a text editor a "list.cf" configuration file. Use the sample one included
  113. for a model. Most fields should be self-explanatory.
  114.  
  115. In order to archive a list, create a sub-directory off of the list directory
  116. called "Archives" and set the DoArchive flag to 1 in the "list.cf" file.
  117. Archives are stored on a monthly basis. Each month will have it's own file
  118. in the archives directory of the form "YY.MM" where YY is the 2 digit year
  119. and MM is the two digit month. New messages are appended to the end of the
  120. file with a separator line between.
  121.  
  122. You may also create a file in the list directory named "list.info" (again
  123. substituting your listname) which will be sent in response to a list command
  124. if the list is advertised.
  125.  
  126. Now you're ready. Steward will create the file with the list email addresses
  127. in it as necessary.
  128.  
  129. // ------------------------------------------------------------------
  130.  
  131. What About a Moderated List?
  132.  
  133. Steward supports a moderated list also. Just set the Moderated flag
  134. to 1 in the "list.cf" file for your list. Then set the ApprovePassword
  135. to whatever password you like.
  136.  
  137. When Steward receives a message for that list, it will forward it to
  138. the ListOwner address in the "list.cf" file. This address should be a
  139. standard Internet email address of the form "username@host.domain". There
  140. should be no quotes, parenthesis, or anything else on the line. Steward
  141. will pull the senders name, subject, and reply-to addresses out of
  142. the original message and put them at the top of the message to the ListOwner
  143. for reference. It will also add the "Approved:" heading as the first line
  144. for you to add your password to.
  145.  
  146. *** IMPORTANT ***
  147. The "Approved:" heading must be on the first non-blank line of
  148. the message body or the message will be forwarded again to the ListOwner.
  149.  
  150. When an approved message does come in, Steward will strip the approved
  151. password and header from the outgoing message.
  152.  
  153. // ------------------------------------------------------------------
  154.  
  155. What about Digests?
  156.  
  157. Digests are supported and simple to set up. In your list directory, just
  158. create a sub-directory called "Digests" and modify the "list.cf" file
  159. to have "DoDigest = 1". That's all there is to it.
  160.  
  161. Steward maintains a separate subscription list for the digest. It is 
  162. possible to subscribe to both the regular list and the digest. Any message
  163. sent to the list will be saved in the digest for the day.
  164.  
  165. In order to help support the digest function, it's recommended you create
  166. an additional email account called "list-digest". Messages to this account
  167. will be echoed to both the regular list and the digest list. The account
  168. is not necessary, but some folks expect digests to have an address of this
  169. sort. Remember to have Steward listed as the local process agent.
  170.  
  171. Digests are maintained on a daily basis. Each 24 hour period is saved to
  172. its own file. On a daily basis, the "digest.cmd" rexx script needs to be
  173. run to send out the digest. Whenever it is run, it will send the digest
  174. for the *previous* day. The usual way to do this is to have the digest sent
  175. out at 1:00 am or 2:00 am local time for the previous days messages. You can
  176. set the digest.cmd to be run as a result of a "cron" job or any other program
  177. that can schedule jobs to be run at arbritrary times. 
  178.  
  179. A simple rexx script called "SendDigest.cmd" is included to send out the 
  180. digest at 1:00 am each day. This script must be started in the Steward
  181. home directory and will continue to run until you kill it. Most of the time,
  182. it is in a sleeping state, so no cpu cycles are wasted. You may also want
  183. to put a program object pointing to this script in your startup folder in case
  184. your machine reboots.
  185.  
  186. When the "digest.cmd" script is run, it expects one command line
  187. argument, the name of the digest to send. The name should be of the
  188. form "list-digest". It must be run once for each digest you wish to
  189. send out.
  190.  
  191. Several configuration options pertaining to lists are supported and
  192. are documented in the per-list configuration file. They should be
  193. self-explanatory.
  194.  
  195. // ------------------------------------------------------------------
  196.  
  197. Working with NeoLogic Inet.Mail for OS/2
  198.  
  199. Steward comes configured to work with NeoLogic Inet.Mail for OS/2. Just
  200. create the appropriate accounts (Steward, etc) as users and then
  201. put the steward.cmd pathname as the local process delivery option.
  202. Maild will then start Steward with the correct arguments.
  203.  
  204. For Steward to deliver mail, NeoLogic Inet.Mail supplies a simple mail
  205. forwarding program called HMailer.exe. This program should be located
  206. in a directory on your PATH (as defined in the config.sys). Alternately,
  207. you can put the full pathname in the steward.cf file. Hmailer will forward
  208. the mail to the SMTP daemon on the machine it is running on. This means
  209. Inet.Mail must be running (which shouldn't be a problem, it has to be
  210. running to start Steward anyway).
  211.  
  212. // ------------------------------------------------------------------
  213.  
  214. Other Caveats
  215.  
  216. Steward is written in Rexx. Anything you want to change can be
  217. accomplished easily.
  218.  
  219. Steward requires HPFS.
  220.  
  221. Remote configuration is not yet supported.
  222.  
  223.  
  224.  
  225.