MAP05: LISTSERVS "I have made this letter longer than usual, only because I have not had the time to make it shorter." -- Blaise Pascal, Provincial Letters Last Friday, I showed you how to use the LISTSERV file server to retrieve archived files. Today, I am going to some new things about LISTSERV, including what LISTSERV was originally designed for -- mailing lists (like the one that distributed this letter to you). Remember, though, that today's lesson only covers LISTSERV lists. In fact, this lesson is an elementary lesson for ordinary LISTSERV users like you and me. Tomorrow's lesson will be a highly technical lesson for LISTSERV (and other mailing list servers) gurus-to-be. What is a LISTSERV mailing list? Quite simply, it is a list maintained by a LISTSERV program of a whole bunch of people who share similar interests. Anyone can subscribe to a list by sending a SUBSCRIBE command (remember those?) to the LISTSERV address. Any e-mail letter sent to the list's address is copied and mass-mailed to the e-mail box of every person subscribed to the list. Everyone else on the list can then reply to that letter, and then ... well, you get the picture. LISTSERV lists give you a way to have open discussions with dozens (or even hundreds) of people on a myriad of topics. Best of all, it is all done through e-mail! I want to say something about the difference between list addresses and LISTSERV addresses. Let's pretend that I create a list here at the University of Alabama for the open discussion of power line-chomping squirrels. I'll even call the list "SQUIRREL". The address for our pretend squirrel discussion list would be SQUIRREL@UA1VM.UA.EDU (or SQUIRREL@UA1VM.BITNET). Any e-mail letter sent to the SQUIRREL@UA1VM.UA.EDU address would be copied and mass-mailed to every single person subscribed to the squirrel list. That's simple enough. But how are people going to subscribe to my squirrel list? We need a second address just to handle all of the commands for the list! That second address is the LISTSERV address (which, in this case, is LISTSERV@UA1VM.UA.EDU). Are you starting to see the picture? The list address is the address you send something to if you want it to be distributed to everyone else subscribed to the list. The LISTSERV address is the address you send all of your commands to. What would happen if you sent a command (like SUBSCRIBE or GET) to the discussion list's address instead of to the LISTSERV's address? Simple -- your command would be treated like a letter and would be sent to everyone on the list (how embarrassing!). Remember this (and you will see this on a pop quiz sometime): - Send your LETTERS to the list address! - Send your COMMANDS to the LISTSERV address! Now, life would be a whole bunch easier if the only LISTSERV in the world was at the University of Alabama. But, it isn't. There are thousands of different LISTSERVs around the world, and there are literally tens of thousands of different LISTSERV lists. How are you ever going to find out what different discussion lists are out there, and what these lists' addresses are? Well, there are a couple of ways to do this: 1. Word of mouth -- someone tells you about a hot new list you need to check out. 2. Internet Yellow Pages -- there are some GREAT books you can buy in most bookstores that tell you where all of the neat stuff is on the Internet (as a matter of fact, Osborne/McGraw-Hill has given me permission to quote from their "Internet Yellow Pages" later on in this workshop!!). 3. The LIST GLOBAL or LIST GLOBAL / STRING command -- we'll talk about this tomorrow. 4. Announcements on other lists. How are you ever going to figure out which LISTSERV address goes with which discussion list? EASY! This trick only works with LISTSERV discussion lists, but if you take the full address of a discussion list (like SQUIRREL@UA1VM.UA.EDU) and replace the discussion list's name with the word "LISTSERV", you'll end up with the correct LISTSERV address for that particular list (in this case, the correct LISTSERV address for the squirrel list would be LISTSERV@UA1VM.UA.EDU). A few more examples: List address: LISTSERV address: CHAUCER@UICVM.BITNET LISTSERV@UICVM.BITNET ROADMAP@UA1VM.UA.EDU LISTSERV@UA1VM.UA.EDU PPD-L@HUMBER.BITNET LISTSERV@HUMBER.BITNET VEGLIFE@VTVM1.BITNET LISTSERV@VTVM1.BITNET Why is this important to know? Well, let's say that I tell you that there is a LISTSERV list called VEGLIFE@VTVM1.BITNET that you really need to subscribe to. All I have given you is the list's address. Remember, you can only send LETTERS to the list address You need the LISTSERV address in order to subscribe! With this trick, you automatically know that the LISTSERV address for VEGLIFE@VTVM1.BITNET is LISTSERV@VTVM1.BITNET and you can subscribe to the list without any problem! You may notice that some list addresses look something like this: CRUISE-L@UNLVM MAPTEST@UA1VM NAVIGATE@UBVM Those are BITNET addresses. To turn these addresses into something that you can use, you'll have to add .BITNET to the end of the addresses: CRUISE-L@UNLVM.BITNET MAPTEST@UA1VM.BITNET NAVIGATE@UBVM.BITNET and the LISTSERV addresses would be: LISTSERV@UNLVM.BITNET LISTSERV@UA1VM.BITNET LISTSERV@UBVM.BITNET One nice thing about this is that you can almost always tell that a list is a LISTSERV list by looking at the list's address. If the address is LIST@NODE or LIST@NODE.BITNET, you can all but bet that the list is a LISTSERV list. Some of you may be at sites that do not allow mail to Bitnet addresses. You can bypass this restriction by taking the address LIST@NODE.BITNET dropping the .BITNET, so the address becomes LIST@NODE changing the @ to a %, so the address becomes LIST%NODE and then adding @CUNYVM.CUNY.EDU to the end, so that the final address becomes LIST%NODE@CUNYVM.CUNY.EDU Now let's talk about some new LISTSERV commands. You already know the SUBSCRIBE command SUBSCRIBE listname and the GET command GET filename filetype F=MAIL I want to show you a couple of other commands that will make your life a whole lot easier (remember, all commands must be sent to a LISTSERV address). If you ever need to unsubscribe from a list, the UNSUBSCRIBE command will take care of everything. There are three different UNSUBSCRIBE commands that you can use: UNSUBSCRIBE listname -- to unsubscribe from a particular list (you need to replace the word "listname" with the name of a the list you are dropping) UNSUBSCRIBE * -- to unsubscribe from every list at a particular Listserv address UNSUBSCRIBE GLOBAL -- to unsubscribe from every LISTSERV list on the planet Have you ever accidentally thrown away an e-mail letter? Well, if that letter was from a LISTSERV list and if that list keeps an archive, you can retrieve that letter from the LISTSERV! Here is how to do it: 1. Send an INDEX listname F=MAIL command to the LISTSERV address (for example, to get the index for the squirrel list, your command would say INDEX SQUIRREL F=MAIL). 2. Look through the index to find the file or notebook that you want to retrieve (the index will even tell you the filename and filetypes for each of the files!!). 3. Use the GET filename filetype F=MAIL command to get the file or notebook that you want. Remember: you send LETTERS to the list address; you send COMMANDS to the LISTSERV address. Etch this into your brain :) There are a couple more things I want to talk about, but I'll save them until tomorrow :) REVIEW: - LISTSERV lists are (usually) discussion lists that are (usually) open to any who wants to subscribe - You subscribe to a LISTSERV list using the SUBSCRIBE LISTNAME command - Letters are sent to the list address, commands to the LISTSERV address. - You find new lists through word of mouth, Internet Yellow Pages (and other books), the LIST GLOBAL and LIST GLOBAL / STRING command, and announcements on other lists. - The LISTSERV address can be found by replacing the listname in the address with the word LISTSERV (listname@address ---> LISTSERV@address). This only works with LISTSERV addresses, though. - You need to change addresses like list@node to list@node.bitnet before you can use the address. - Bitnet addresses can be converted to Internet addresses by changing the LIST@NODE.BITNET address to LIST%NODE@CUNYVM.CUNY.EDU - To unsubscribe from a list, use the UNSUBSCRIBE, UNSUBSCRIBE *, or UNSUBSCRIBE GLOBAL command (remember that all commands must be sent to the LISTSERV address). - To receive a list of all of the files that you can get from a particular LISTSERV list, use the INDEX LISTNAME command. You can then use the GET FILENAME FILETYPE F=MAIL command to get the files that you want. - You send letters to the list address, commands to the LISTSERV address. HOMEWORK: This homework assignment is completely optional. Also, you are reminded to contact your local Internet service provider if you have questions about, or difficulties with, any part of the Roadmap workshop (please do not write me -- my mailer can't handle the volume). Finally, please remember that replying to this letter with your GET commands will *NOT* work. You *MUST* write a new letter to the LISTSERV address for your GET commands to work. 1) If you would like an in-depth guide to LISTSERV, GET the file LSVGUIDE MEMO from the LISTSERV file server at LISTSERV@EARNCC.BITNET (note that this is *NOT* on the University of Alabama's LISTSERV file server). 2) If you would like a very brief guide to LISTSERV, GET the file LISTSERV REFCARD from the LISTSERV file server at the University of Alabama. This is a list of a whole bunch of LISTSERV commands, along with a brief explanation of what each command does. FOR MORE INFORMATION: The November/December issue of Internet World magazine has a wonderful article on LISTSERV by Karl Signell. The magazine is available at most newsstands. PATRICK DOUGLAS CRISPEN THE VIEWS EXPRESSED IN THIS LETTER DO NOT PCRISPE1@UA1VM.UA.EDU NECESSARILY REPRESENT THE VIEWS OF THE THE UNIVERSITY OF ALABAMA UNIVERSITY OF ALABAMA - TUSCALOOSA ROADMAP: COPYRIGHT PATRICK CRISPEN 1994. ALL RIGHTS RESERVED.