home *** CD-ROM | disk | FTP | other *** search
/ ftp.wwiv.com / ftp.wwiv.com.zip / ftp.wwiv.com / pub / BBS / LIST211.ZIP / LISTSERV.DOC < prev    next >
Text File  |  1995-01-09  |  15KB  |  338 lines

  1.  
  2. Listserv v2.11 - Pete Nelson  (01/09/95)
  3. Terminal One BBS (510) 673-9217
  4. Author: pete@terminal-one.com
  5.  
  6.  
  7. Listserv is a wcCODE application that will let you run Internet mailing
  8. lists from your Wildcat BBS.  Subscription and unsubscription requests are
  9. handled automatically, either via the list address or a listserv@ address.
  10.  
  11.  
  12.  
  13.  
  14. WHAT IS A LISTSERV?
  15.  
  16. A listserv is a program that runs mailing lists on Internet.  People send
  17. e-mail to the listserv address, and the listserv program sends that e-mail
  18. out to the other subscribers.  The Listserv .WCX works in the same manner.
  19. People send e-mail to the address you set up, and when you run the Listserv
  20. program, it sends out the messages to the subscribers.  Listserv will only 
  21. send and receive messages in the conference you specify in the configuration
  22. file, which should be your conference for Internet e-mail.  Do not set up
  23. a conference in wcGATE as a mailing list.  From what I can tell, it won't
  24. work.  wcGATE was only written to handle incoming messages from a mailing
  25. list, and wasn't designed to host one.  If MSI is smart, they'll add this
  26. feature to wcGATE so I won't have to work on Listserv anymore, although 
  27. it is kinda fun!  :)
  28.  
  29.  
  30.  
  31.  
  32. INSTALLATION:
  33.  
  34.  
  35. Listserv can be run as an event, but can also be set up as a menu choice for
  36. the sysop to run at his/her discretion.  You need to copy the following files
  37. into your main Wildcat directory:
  38.  
  39.  
  40. LISTSERV.WCX - Compiled Listserv program.  Set this up as a menu option for 
  41. the sysop or as an event.
  42.  
  43.  
  44. LISTUTIL.WCX - Utility to let to add/view/remove mailing lists, and to
  45. add/drop/view subscribers to those lists.  Run this only as a menu option.
  46.  
  47.  
  48. LISTSERV.CFG - Contains the number for your Internet E-Mail conference.
  49. Put the conference number on the first line.
  50.  
  51.  
  52. LISTSERV.PTR - Stores the high message pointer for your Internet E-Mail
  53. conference, default is 0.  Be SURE to change this number when you first
  54. install or when you renumber your Internet e-mail database, as it could
  55. drastically affect your mailing list.
  56.  
  57.  
  58. LISTSERV.DAT - Stores info on all the mailing lists you host.  
  59.  
  60.  
  61. LISTSERV.FLT - Filter file:  This file, if it exists, can be used to filter
  62. out certain lines on outgoing messages.  It should contain the exact text of 
  63. the line you want filtered out.  Be SURE you have NO EXTRA CARRIAGE RETURNS
  64. or your outgoing messages will be very compact, since Listserv will filter 
  65. out the carriage returns on the messages.  Here's an example of what might
  66. be in the file, with the (Line x) not actually being in the file:
  67.  
  68. (Line 1)  To: wildcat-l@terminal-one.com
  69. (Line 2)  To: aliens-l@terminal-one.com
  70. (Line 3 is the EOF marker)
  71.  
  72. Again, having no extra carriage returns is VERY IMPORTANT!  I have done some
  73. testing and the filters seem to work.
  74.  
  75.  
  76.  
  77. * Listutil *
  78.  
  79.  
  80. The first thing you should do is run Listutil and create your first mailing
  81. list.  Choose the option to Create a new Mailing List.  
  82.  
  83. It will then ask you for the file name to use.  Let me explain how the
  84. file naming works.  Supposed you ran a mailing list called WILDCAT-L, and 
  85. the file name was WILDLIST.  Your file names for that mailing list 
  86. would be:
  87.  
  88. WILDLIST.DAT - Subscriber list
  89. WILDLIST.ADD - Message sent to new subscribers
  90. WILDLIST.DRP - Message sent to people that unsubscribe
  91. WILDLIST.SIG - Signature added to outgoing messages on the mailing list
  92. WILDLIST.NOT - Message sent to people that try to post on the mailing list
  93.                when they're not a subscriber
  94.  
  95.  
  96. Every file for that mailing list is based on the main file name.  Listserv
  97. will automatically create the .DAT file for you when someone subscribes or
  98. you add a subscriber.  The other files are standard text files you can
  99. create.  If the .ADD, .DRP, .NOT  or .SIG files are not present, then that
  100. message or .SIG will not be sent.
  101.  
  102.  
  103. *NOTE* When you Remove a Mailing List via Listutil, it does not delete the
  104. data files the list was using.  You need to delete the files manually if you
  105. remove a mailing list, otherwise the files remain in case you removed a list
  106. accidentally.
  107.  
  108.  
  109.  
  110. Users who wish to sign up to the mailing list should send e-mail to the
  111. list (ex: wildcat-l@terminal-one.com) and use for the subject either
  112. the word 'subscribe' or 'unsubscribe'. 
  113.  
  114. *NEW*  Users may also send e-mail to listserv@domain.name.com 
  115. (ex: listserv@terminal-one.com).  In the body of the message, they can put
  116. their subscription requests in as 'subscribe listname' or 
  117. 'unsubscribe listname'.  This is the recommended way of subscribing to 
  118. the mailing lists.
  119.  
  120.  
  121.  
  122. You will also need to make a user account for each mailing list so incoming
  123. messages don't get bounced back.  Make sure this account has full access to
  124. your Internet e-mail conference.  Give the account name the same name as your
  125. mailing list, minus your domain name.  Example:  If the mailing list address
  126. is WILDCAT-L@TERMINAL-ONE.COM, make a user called WILDCAT-L
  127.  
  128. Also, be sure to create an account for the LISTSERV@ address.
  129.  
  130.  
  131. Right now, Listserv uses the number stored in the pointer file to file to find
  132. the next message to check, but wcPACK can cause this to become incorrect.  I
  133. will have to add support so it checks the high message number for the current
  134. conference for the mailing list account (WILDCAT-L, for example).  That way
  135. the high message number will get updated when wcPACK does its high message
  136. number update.  I also need to find out how to access the high message numbers
  137. in a user account through wcCODE.  MSI Support will have to help me with this
  138. one, cause I can't find anything in the docs that say how.  So for now, if
  139. you want your mailing list to work correctly, don't use wcPACK on your 
  140. Internet e-mail conference.  You may also want to check the high message
  141. pointers before you run Listserv.  I currently run it as an option on my
  142. sysop menu, and I always check things before I run it.
  143.  
  144. Author's Note:  I've found that using wcPACK on the Internet e-mail 
  145. conference generally does not cause problems when running with Listserv.
  146. However, I would do some testing to be sure, and I always run wcPACK on
  147. my Internet e-mail conference manually.
  148.  
  149.  
  150. One of the problems with running a mailing list is what to do with the 
  151. bounced or rejected messages.  I had been adding support to have Listserv
  152. look for certain subjects (HOST UNKNOWN, WARNING FROM UUCP, UNDELIVERABLE).
  153. With the release of v2.03, Listserv skips messages sent by non-subscribers.
  154. None of the Postmaster, UUCP, or other automatic mail handlers on different
  155. hosts are usually signed up to a mailing list, therefore any returned 
  156. messages from them are skipped!  I will keep support for the above mentioned
  157. subjects, and I should not need to add support for any other subjects.
  158.  
  159.  
  160. Also, it just occurred to me that I should post the records for the data
  161. strutcures so other coders out there can write utilities for Listserv if 
  162. they needed to.  Here they are, including remark lines so you may cut
  163. and paste:
  164.  
  165.  
  166. // This is the data type for the list of subscribers of each list
  167. // The 'name' would be the e-mail addresses of the subscriber
  168.  
  169. type sublist_rec
  170.      name as string*70
  171. end type
  172.  
  173. // This is the data type for the master list of mailing lists
  174. // found in LISTSERV.DAT.  The 'name' would be the name of the mailing
  175. // list address (ex: wildcat-l).  The 'subfile' would be the set of
  176. // data files used by that mailing list (ex: WILDLIST.DAT, WILDLIST.SIG,
  177. // WILDLIST.ADD, etc)
  178.  
  179. type list_record
  180.      name as string*70
  181.      subfile as string*8
  182. end type
  183.  
  184.  
  185.  
  186.  
  187. * I am currently hosting/testing a Wildcat mailing list.  Please send e-mail *
  188. * to 'listserv@terminal-one.com' with the words 'subscribe wildcat-l' in the *
  189. * body of the message.                                                       *
  190.  
  191.  
  192. REGISTRATION:  
  193.  
  194. This wcCODE program is free, and does not require registration, although I 
  195. would like you to send me an e-mail to tell me that you are using it.  
  196.  
  197.   Send e-mail to: pete@terminal-one.com
  198.  
  199. If you really feel like paying me, I'll be more than happy to accept your 
  200. donations!  Please mail them to:
  201.  
  202.  
  203.                          Pete Nelson
  204.                          640 Bailey Rd. #109
  205.                          Pittsburg, CA 94565
  206.  
  207.  
  208. NetCash will also be readily accepted via my e-mail address.  :)
  209.  
  210.  
  211.  
  212. Revision History:
  213.  
  214. v2.11 - (01/09/95) The first revision for the new year!
  215.         Added support for a custom message (LISTSERV.NOT) that is sent out
  216.         to people that try to send a message out on the mailing list when
  217.         they are not a subscriber.
  218.       - Fixed some spelling errors in the docs.  :)
  219.  
  220. v2.10 - (12/22/94) Modified the way Listserv does its displays so it runs 
  221.         smoother rather than "blocky", although it now runs slightly slower.
  222.         If this is a major problem I will change it back to its original
  223.         display method.
  224.       - LISTUTIL: A few minor bug fixes
  225.  
  226. v2.09 - (12/19/94) Fixed a bug where Listserv would send a blank message 
  227.         if no filter file existed.  This has been fixed, and why I didn't
  228.         catch this when I released v2.08 is beyond me!  Guess it was just
  229.         one of those days.  :)
  230.       - Released the data structures in the docs.
  231.       - LISTUTIL.WCX: Added an option to reset the high message pointer       
  232.  
  233. v2.08 - (12/12/94) Added a feature to let the sysop filter out certain text
  234.         on outgoing messages.  The optional file LISTSERV.FLT should contain 
  235.         the lines you want filtered out of outgoing messages.  See the
  236.         documentation in the above text on how it should be formatted.
  237.  
  238. v2.07 - (12/01/94) The feature to skip deleted messages added in v2.06 was
  239.         causing Listserv to skip all new imported messages.  This should now
  240.         be fixed.
  241.  
  242. v2.06 - (11/29/94) Listserv will now skips messages flagged as deleted.  This
  243.         way you can add some sort of basic moderation to your mailing list.
  244.       - Fixed a bug that would cause Listserv to start at the first message
  245.         if the last message pointer (in the LISTSERV.PTR file) was pointing
  246.         to a non-existent message.  Example: Say the last message was 870, 
  247.         and that message had been marked as deleted and wcPACK was run to 
  248.         remove it.  Message 870 no longer exists, so Listserv can't find it
  249.         and starts at the beginning of the list. 
  250.  
  251. v2.05 - (11/16/94) Listserv now supports a LISTSER@ address.  Users can now
  252.         send a message to listserv@domain.name.com, and put the 
  253.         'subscribe listname' and 'unsubscribe listname' in the body of the
  254.         message.
  255.       - Fixed a bug that occasionally happened when Listserv reached the last
  256.         record in it's subscriber list and would hang if the last record was
  257.         blank.
  258.  
  259. v2.04 - (11/15/94) Not released due to a bug
  260.  
  261. v2.03 - (11/10/94) Messages sent by a non-subscriber are skipped and not
  262.         sent out on the mailing list.
  263.       - Fixed a bug where Listserv would send/process one message and then
  264.         exit.  
  265.  
  266. v2.02 - (10/31/94) Recompiled to work with Wildcat v4.01
  267.       - Messages with a subject of HOST UNKNOWN are now skipped
  268.       - Fixed a bug where Listserv was sending out messages with blank
  269.         subjects.  Listserv now skips such messages.
  270.  
  271. v2.01 - (10/7/94) Turned off the Pause prompt
  272.       - Messages with a subject of EXECUTION FAILED or a blank subject are
  273.         now skipped and not sent out on the mailing list
  274.  
  275. v2.00 - (10/6/94) Support for multiple mailing lists added!  Yeah!
  276.       - Custom messages for each mailing list
  277.       - Listutil now handles the support for adding/removing mailing lists
  278.       - When using Listutil, you can type in a full or partial name, and
  279.         it will come of with a match.  IE: WILD would find WILDCAT if it
  280.         existed.  This works in both the mailing list and subscriber areas.
  281.       - Messages with a subject of SUB or UNSUB are now treated as 
  282.         subscription/unsubscription requests.
  283.       - Listserv will change back to the original conference it was launched
  284.         from
  285.  
  286. v1.06 - (9-29-94) Messages that contain a subject of WARNING FROM UUCP, 
  287.         UNDELIVERABLE or UNKNOWN ADDRESS are skipped.  This way bounced
  288.         messages are not sent back out on the mailing list.
  289.       - Fixed a bug that would give a "file already open" error when 
  290.         an unsubscription request was immediately followed by a subscription
  291.         request.
  292.  
  293. v1.05 - (9-22-94) Messages with the a subject of SUB, UNSUB or blank are 
  294.         now considered invalid subscription requests.  A custom message is 
  295.         sent out (INVALSUB.MSG) when Listserv gets one of these messages.
  296.         (Thanks to steve.henry@ambassador.com for the suggestion)
  297.       - All messages sent out on the list now show the From name as the
  298.         mailing list name.  This makes it easier to send replies back to
  299.         the mailing list rather than the original sender.
  300.         (Thanks to sysop@guildnet.org for the suggestion)
  301.  
  302. v1.04 - (9-12-94) Fixed a bug that was causing wcGATE not to export 
  303.         the outgoing messages.  Here's what was happening: 
  304.         There is a field in the Message Header record called Network Name.
  305.         My Internet provider is Holonet, and I wrote a small WCX to have
  306.         it display all the Network Names in the messages in my Internet 
  307.         E-mail conf.  Well, all the ones that were imported said HOLONET, 
  308.         and all the local ones added by the system, straight Wildcat and not the wcCODE program, were blank.  When 
  309.         Listserv got a message from Internet, the Network Name was already
  310.         set to HOLONET, and when it saved an outgoing message, the Network
  311.         Name was still set to HOLONET, hence wcGATE thinks that the message
  312.         had already been imported so it didn't export it again.  All I did
  313.         was reset the Network Name to blank before the message was saved so
  314.         wcGATE will export the message.  
  315.  
  316. v1.03 - Fixed a bug that was causing messages to be saved as public rather
  317.         than private.  All outgoing messages created are now private.  
  318.         (Thanks to Steve at MSI for sending me the message flags info!)
  319.       - Added support for custom messages that are sent when people subscribe
  320.         and unsubscribe from the list
  321.       - Added a utility that lets you add/drop/list subscribers in the 
  322.         mailing list.
  323.  
  324. v1.02 - Added support so users already signed up for the list cannot get 
  325.         signed up again
  326.       - Added/changed come of the colors
  327.       - Added support for a customizable tagline (.sig) for each message.
  328.       - Fixed a bug where it put the mailing list name as the "From" name
  329.       - Turned off the "More" prompt.
  330.  
  331. v1.01 - Sends a reply when you subscribe or unsubscribe from the list.
  332.       - Included in docs how to actually subscribe/unsubscribe to the 
  333.         mailing list!  Ooops, slight oversight.
  334.  
  335. v1.0 - Initial Release.
  336.  
  337.  
  338.