                                  OTHER MAIL SERVERS
   
We covered some basic LISTSERV commands yesterday. Today's lesson is going to 
show you some more advanced LISTSERV commands, as well as some new commands for 
other mail list servers. These additional mail servers include Listproc, 
Mailbase, Mailserv, and Majordomo. 
Unlike LISTSERV, there is no set way to figure out if a mailing list is running 
on a Listproc, Mailbase, Mailserv, or Majordomo without someone telling you. So, 
today's lesson is really just a review of some of the LISTSERV commands we went 
over yesterday, an introduction to some new LISTSERV commands, and a reference 
sheet for other mail server commands that you can use later. 



DISCUSSION LISTS: MAIL SERVER COMMANDS
Version 1.21
James Milles
Saint Louis University Law Library
millesjg@sluvca.slu.edu

    E-mail discussion lists constitute one of the most popular methods of group 
    communication on the Internet. Discussion lists support group communication 
    by providing, at minimum, two basic functions: (1) the ability to distribute 
    a message to a group of people by sending it to a single, central address, 
    and (2) the ability to quietly join and leave the list at any time. 
        In order to provide these separate functions, an e-mail discussion list 
        typically has two addresses associated with it: (1) a "listname 
        address," the address to which you send any messages that you intend to 
        be read by the list subscribers; and (2) an "administrative address," 
        the address to which you send any commands or requests that affect your 
        subscription to the list. It's easy to remember this distinction by 
        thinking of your local newspaper: the first address is somewhat 
        analogous to sending a "letter to the editor," while the second is like 
        sending a letter to the newspaper's subscription office. 
        With most discussion lists, the "administrative address" is a computer 
        program that allows the subscriber to subscribe and unsubscribe 
        automatically, without external intervention. There are at least five 
        popular mail server programs used to manage Internet discussion lists: 
        REVISED LISTSERV (also called BITNET LISTSERV), Unix ListProcessor (or 
        Listproc), Mailbase, Mailserv, and Majordomo. The commands for 
        subscribing and unsubscribing under most of these programs are the same; 
        however, other useful commands differ greatly from one program to 
        another, and some programs support features that others do not. 
        This document does not describe all the features supported by any of 
        these programs, only those most commonly used. For more information on 
        any of these programs, send a message containing only the word "help" to 
        the appropriate mail server. Additional programs and commands will be 
        added in future revisions of this document. 
        This document also does not deal with discussion lists to which one 
        subscribes by sending a message to "listname-request." There are a great 
        many discussion lists of this type; some are distribution lists 
        maintained manually by the listowner, while others use some form of 
        mailer software ranging from a simple script to a fairly sophisticated 
        mailing list program. Some require that subscription requests be placed 
        in the message text; others require them to be included in the Subject: 
        line. Because of the variety of methods of maintaining these lists, it 
        is impossible to generalize about their command features. However, as a 
        rule, assume that any discussion list with an administrative address of 
        "listname-request" is maintained manually by a human being. Accordingly, 
        you should subscribe by sending a friendly message in plain English to 
        "listname-request." If a program responds with instructions for 
        subscribing, follow the instructions. 
        The latest version of this document is available by e-mail and by 
        anonymous ftp: 
        E-mail: Send a message containing only the line GET MAILSER CMD NETTRAIN 
        F=MAIL to LISTSERV@UBVM.cc.buffalo.edu. 
        FTP: Anonymous ftp to ubvm.cc.buffalo.edu, cd /nettrain, get mailser.cmd
        
        or
        
        anonymous ftp to sluaxa.slu.edu, cd /pub/millesjg, get mailser.cmd 
    When you subscribe to a list, you will typically receive a "welcome" 
    message, describing the purpose of the list and telling you how to 
    unsubscribe. Save this message! It tells you which program the discussion 
    list is run under, and how to get further help. 
        Mail servers can be confusing. Many people use the term "listserv" 
        generically, to refer to any list mail server program. To make things 
        worse, the Unix ListProcessor (listproc) program was originally called 
        "listserv," just like REVISED LISTSERV. Many listproc hosts are still 
        configured with the name "listserv," and will accept commands addressed 
        to "listserv@host" as well as to the correct name, "listproc@host." 
        Usually--but not always--you can find out which program a discussion 
        list is run under by examining the message headers. For instance, 
        listproc lists should include a line saying "Unix ListProcessor." 
        However, the best practice is to save any "welcome" message you receive 
        when you subscribe, and to note at that time which set of commands is 
        applicable. 
    Remember to send all commands to the "administrative 
    address"--mailserver@host--not to the "listname address". Mailserver is the 
    program that maintains the list (either listproc, LISTSERV, mailbase, 
    mailserv, or majordomo); host is the address of the host computer (for 
    example, ucdavis.edu or cleo.murdoch.edu.au). 
        Be sure to leave the Subject: line blank, and to delete any signature 
        file if your mailer allows you to do so. 
        Always include the name of the list in the message to mailserver@host. 
        Most mailserver sites maintain many different discussion lists, and it 
        is essential that you tell the mail server which list you are talking 
        about. 
        For instance, to join the discussion list law-lib@ucdavis.edu, send an 
        e-mail message containing only the command
        
        SUBSCRIBE LAW-LIB John Doe
        
        to listproc@ucdavis.edu.
        
        The other examples used below are: 
            INT-LAW@UMINN1.BITNET (REVISED LISTSERV), 
            law-europe@mailbase.ac.uk (Mailbase), 
            envirolaw@oregon.uoregon.edu (Mailserv),and 
            elaw-j@cleo.murdoch.edu.au (Majordomo). 
    Join a list: 
     Listproc:      SUBSCRIBE listname Firstname Lastname
                    (e.g., SUBSCRIBE LAW-LIB John Doe)
     LISTSERV:      SUBSCRIBE listname Firstname Lastname
                    (e.g., SUBSCRIBE INT-LAW John Doe)
     Mailbase:      JOIN listname Firstname Lastname
                    (e.g., JOIN LAW-EUROPE John Doe)
     Mailserv:      SUBSCRIBE listname Firstname Lastname
                    (e.g., SUBSCRIBE ENVIROLAW John Doe)
                    (Optionally, include the e-mail address at
                    which you wish to receive list mail:)
                    SUBSCRIBE listname Firstname Lastname address
     Majordomo:     SUBSCRIBE listname
                    (e.g., SUBSCRIBE ELAW-J)
                    (Optionally, include the e-mail address at
                    which you wish to receive list mail:)
                    SUBSCRIBE listname address

    Leave a list: 
     Listproc:      UNSUBSCRIBE listname
     LISTSERV:      UNSUBSCRIBE listname
     Mailbase:      LEAVE listname
     Mailserv:      UNSUBSCRIBE listname
                    (UNSUBSCRIBE listname address
                    if you subscribed under a different e-mail
                    address.)
     Majordomo:     UNSUBSCRIBE listname
                    (UNSUBSCRIBE listname address
                    if you subscribed under a different e-mail
                    address.)

    Receive the list in digest format (multiple messages compiled into a single 
    mailing, usually daily or weekly): 
     Listproc:      SET listname MAIL DIGEST
     LISTSERV:      SET listname DIGEST
     Mailbase:      Not supported.
     Mailserv:      Not supported.
     Majordomo:     SUBSCRIBE listname-DIGEST
                    (in the same message, unsubscribe from the
                    undigested version:)
                    UNSUBSCRIBE listname
    (Note: with those programs that support the digest option, whether or not to 
    offer the digest format is within the discretion of the listowner; 
    consequently not all lists offer digests.) 
    Cancel digest format; receive the list as separate mailings: 
     Listproc:      SET listname MAIL ACK
     LISTSERV:      SET listname MAIL
     Mailbase:      Not supported.
     Mailserv:      Not supported.
     Majordomo:     UNSUBSCRIBE listname-DIGEST
                    (in the same message, subscribe to the
                    undigested version:)
                    SUBSCRIBE listname
    Suspend mail temporarily (without unsubscribing): 
     Listproc:      SET listname MAIL POSTPONE
     LISTSERV:      SET listname NOMAIL
     Mailbase:      SUSPEND MAIL listname
     Mailserv:      Not supported.
     Majordomo:     Not supported.

    Resume receipt of messages: 
     Listproc:      SET listname MAIL ACK
                    -- or --
                    SET listname MAIL DIGEST
     LISTSERV:      SET listname MAIL
                    -- or --
                    SET listname DIGEST
     Mailbase:      RESUME MAIL listname
     Mailserv:      Not supported.
     Majordomo:     Not supported.

    Receive copies of your own messages: 
     Listproc:      SET listname MAIL ACK
     LISTSERV:      SET listname REPRO
                    (to simply receive an automatic
                    acknowledgement that your message has been
                    sent to the list, use:)
                    SET listname ACK
     Mailbase:      Standard feature; you always receive your own
                    messages.
     Mailserv:      Same as mailbase.
     Majordomo:     Same as mailbase.

    Do not receive copies of your own messages: 
     Listproc:      SET listname MAIL NOACK
     LISTSERV:      SET listname NOREPRO
     Mailbase:      Not supported.
     Mailserv:      Not supported.
     Majordomo:     Not supported.
    Obtain a list of subscribers: 
     Listproc:      RECIPIENTS listname
     LISTSERV:      REVIEW listname F=MAIL
                    (can also be sorted by name or by country:)
                    REVIEW listname BY NAME F=MAIL
                    -- or --
                    REVIEW listname BY COUNTRY F=MAIL
     Mailbase:      REVIEW listname
     Mailserv:      SEND/LIST listname
     Majordomo:     WHO listname

    Hide your address, so that it does not appear on the list of subscribers: 
     Listproc:      SET listname CONCEAL YES
                    (to reverse this command, use:)
                    SET listname CONCEAL NO
     LISTSERV:      SET listname CONCEAL
                    (to reverse this command, use:)
                    SET listname NOCONCEAL
     Mailbase:      Not supported.
     Mailserv:      Not supported.
     Majordomo:     Not supported.

    Obtain a list of lists maintained by this mail server: 
     Listproc:      LISTS
     LISTSERV:      LISTS
                    (to obtain a list of all known LISTSERV
                    lists, send the command
                    LISTS GLOBAL;
                    to search for LISTSERV lists with a given
                    keyword or character string in the
                    description, send the command
                    LISTS GLOBAL /keyword,
                    e.g., LISTS GLOBAL /LAW.)
     Mailbase:      LISTS
     Mailserv:      DIRECTORY/LIST
     Majordomo:     LISTS
    Obtain a listing of archive files for a particular list: 
     Listproc:      INDEX listname
     LISTSERV:      INDEX listname
     Mailbase:      INDEX listname
     Mailserv:      INDEX listname
     Majordomo:     INDEX listname
    Retrieve an archive file: 
     Listproc:      GET listname filename
                    (e.g., GET LAW-LIB feb94)
     LISTSERV:      GET filename filetype listname F=MAIL
                    (e.g., GET INT-LAW LOG9406 INT-LAW F=MAIL)
     Mailbase:      SEND listname filename
                    (e.g., SEND LAW-EUROPE 05-1994)
     Mailserv:      SEND filename
                    (e.g., GET ENVIROLAW smith.txt)
     Majordomo:     GET listname filename
                    (e.g., GET ELAW-J BOYLE.TXT)
    Search the archives for keywords (where available--some lists do not keep 
    archives): 
     Listproc:      SEARCH listname "keywords"
                    Boolean searches are possible using the
                    symbols "&" (and), "|" (or), and "~" (not).
                    For example, to search for "mead" or "mdc" in
                    law-lib, use the command
                    SEARCH LAW-LIB "mead | mdc"

     LISTSERV:      LISTSERV uses a sophisticated and powerful
                    search engine that does lots of neat things
                    like finding "sounds like" matches; however,
                    it uses a difficult, batch-coded search
                    language to construct queries.  I find it
                    useful to keep a "template" file in my
                    Internet account, and then edit the file as
                    appropriate when I need to do a search.
                    Here's the search file:

                    //  JOB  Echo=No
                    Database Search DD=Rules
                    //Rules DD   *
                    Search nafta in int-law since 93/6/1
                    Index
                    /*

                    To run a search, send this file in an e-mail
                    message to LISTSERV@[host].  The Search line
                    can be modified as needed.  The date is
                    optional; Boolean combinations, nesting with
                    parentheses, and a great number of other
                    capabilities are supported.  For a full
                    description of LISTSERV search functions,
                    send the command
                    GET LISTDB MEMO F=MAIL
                    to LISTSERV@UMINN1.BITNET.

                    Once you've received a list of messages
                    matching your query, send another message to
                    LISTSERV@[host] to retrieve the specific
                    messages you want:

                    //  JOB  Echo=No
                    Database Search DD=Rules
                    //Rules DD   *
                    Search nafta in int-law since 93/6/1
                    Print all of 636 637 640
                    /*

     Mailbase:      Archives of Mailbase lists are searchable
                    through the Mailbase Gopher (gopher
                    mailbase.ac.uk).  Mailbase does not support
                    batch searching by e-mail request.

     Mailserv:      Not supported.

     Majordomo:     Not supported.
James Milles                                          Voice: (314) 658-2759
Head of Computer Services                               FAX: (314) 658-2966
Saint Louis University Law Library                  millesjg@sluvca.slu.edu
3700 Lindell Blvd.
St. Louis, MO  63108

