4409
Comment:
|
5224
Added note about bounce processing for regular_include_lists.
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
#pragma page-filename DOC/versions/7602290 | #pragma page-filename DOC/versions/10354693 |
Line 27: | Line 27: |
=== The work-around for this is to setup a script that builds a Mega-list out of other lists on your server. |
* The work-around for this is to setup a script that builds a Mega-list out of other lists on your server. |
Line 38: | Line 36: |
echo " " >/tmp/pasus_list | echo " " >/tmp/pasus_list |
Line 49: | Line 47: |
~mailman/bin/list_members $i >>/tmp/pasus_list | ~mailman/bin/list_members $i >>/tmp/pasus_list |
Line 53: | Line 51: |
cat /tmp/pasus_list |sort -u >/tmp/pasus_all_list | cat /tmp/pasus_list |sort -u >/tmp/pasus_all_list |
Line 59: | Line 57: |
~mailman/bin/sync_members -f /tmp/pasus_all_list pasus_all >/dev/null | ~mailman/bin/sync_members -f /tmp/pasus_all_list pasus_all >/dev/null |
Line 72: | Line 70: |
=== | |
Line 74: | Line 71: |
Thanks to Mark Merlins, Jon Carnes, and Shane Beasley for the above work around. |
* Thanks to Mark Merlins, Jon Carnes, and Shane Beasley for the above work around. |
Line 78: | Line 74: |
=== Errata: I just had our sysadmin setup this script for us and he said that to make it actually work he had to remove the quotes from |
* Errata: I just had our sysadmin setup this script for us and he said that to make it actually work he had to remove the quotes from |
Line 88: | Line 82: |
''Last changed on Mon Apr 18 22:25:12 2005 by'' Bill Leuze | Also, the preceding lines {{{ LISTS="`~mailman/bin/list_lists |grep -i pasus | \ grep -vi _all| awk '{ print $1 }'`" }}} can be simplified to {{{ LISTS=`~mailman/bin/list_lists --bare | grep -i pasus | grep -vi _all` }}} * With Mailman 2.1.10 or later, you can use the "sibling lists" feature as a better umbrella list as long as you are not concerned about digest members. Using the above example, create the list "Threesomes" with no members, and in Threesomes' Non-digest options -> regular_include_lists put {{{ ThreeBlindMice@mylists.com ThreeBears@mylists.com ThreeMenNaTub@mylists.com }}} Then, a post to "Threesomes" will be sent to the regular (nondigest) members of the above three lists without duplication. Note however, that currently (Mailman 2.1.12) bounce processing won't work in this case for messages sent to the Threesomes list. |
3.5. What is an Umbrella list - and why doesn't it do what I want?
An Umbrella List is a list of other lists.
For example, you have the following lists running in Mailman:
ThreeBlindMice: Minnie@farm.org, Mighty@cartoon.net, Mickey@disney.com ThreeBears: Smokey@usda.gov, Little@pbs.org, Momma@mgoose.net ThreeMenNaTub: Rub@tub.org, Dub@tub.org, Little@pbs.org
You can create an Umbrella List called, "Threesomes" and instead of people, it will contain the above list names. When you send email to Threesomes, the message goes to each of the individual lists...
Threesomes: ThreeBlindMice@mylists.com, ThreeBears@mylists.com, ThreeMenNaTub@mylists.com
When mailman sends out a monthly password reminder, it sends an email to every person in its lists. If it did that for the Umbrella List "Threesomes", then it would treat "ThreeBlindMice" as an ordinary user. Mailman would send an email to "ThreeBlindMice" that contained the password for subscribing or unsubscribing it to the list "ThreeSomes". Everyone on the "ThreeBlindMice" list would receive that message with the password. Now that is fine in the case of Minnie and Mighty, but Mickey has been known to do a few silly things in his time...
You can keep Mickey from getting the password by telling Mailman to send this type of information to "ThreeBlindMice-owner" instead of to "ThreeBlindMice".
By making "Threesomes" into an Umbrella List, you can tell Mailman to add "-owner" to any notices, confirmations and passwords that it sends out to list members.
I would like to see Umbrella Lists do more than just that. IMO, they should only send one message out to each actual user, regardless of how many lists that user is on. Currently, if a message is sent to an Umbrella list and a user is on multiple sub-lists under that Umbrella list, then they will receive multiple copies of the message - one for each of the sub-lists that they are on. In the example above, Little@pbs.org would receive two messages everytime someone sent an email to "Threesomes".
- The work-around for this is to setup a script that builds a Mega-list out of other lists on your server.
#!/bin/bash # Create and sync the Pasus_All@mydomain.com mailling list # The list includes everyone on a Pasus project mailling list. # All the Pasus mailing lists start with the word: pasus # # create an empty file echo " " >/tmp/pasus_list # # dump out all lists names that contain the word pasus, but # be sure to not include the "_all" list, since that is the list # that we are recreating with this script LISTS="`~mailman/bin/list_lists |grep -i pasus | \ grep -vi _all| awk '{ print $1 }'`" # for i in "$LISTS" do # dump all the user emails out to a file for all the pasus lists ~mailman/bin/list_members $i >>/tmp/pasus_list done # # this sorts the list and removes duplicate entries cat /tmp/pasus_list |sort -u >/tmp/pasus_all_list ### the above step is really unnecessary as "sync_members" already ### does this automatically - still I like a clean orderly list... # # feed the list of all pasus users into the "_all" list # Note: welcome messages are turned off for this list. ~mailman/bin/sync_members -f /tmp/pasus_all_list pasus_all >/dev/null # # Take only pictures, leave only foot prints... rm /tmp/pasus_list rm /tmp/pasus_all_list
# Have cron run this script hourly and the Pasus_all list will be # updated automatically every hour.
- Thanks to Mark Merlins, Jon Carnes, and Shane Beasley for the above work around.
Note this workaround does not take into account per-member options, especially digest and plain delivery options, and the nomail option. A comprehensive script that does it all can be found at http://www.loowit.net/~james/gen-combined-list
- Errata: I just had our sysadmin setup this script for us and he said that to make it actually work he had to remove the quotes from
for i in "$LISTS"
on line 15. Bill Leuze, systems(at)haven.ca
Also, the preceding lines
LISTS="`~mailman/bin/list_lists |grep -i pasus | \ grep -vi _all| awk '{ print $1 }'`"
can be simplified to
LISTS=`~mailman/bin/list_lists --bare | grep -i pasus | grep -vi _all`
- With Mailman 2.1.10 or later, you can use the "sibling lists" feature as a better umbrella list as long as you are not concerned about digest members.
Using the above example, create the list "Threesomes" with no members, and in Threesomes' Non-digest options -> regular_include_lists put
ThreeBlindMice@mylists.com ThreeBears@mylists.com ThreeMenNaTub@mylists.com
Then, a post to "Threesomes" will be sent to the regular (nondigest) members of the above three lists without duplication. Note however, that currently (Mailman 2.1.12) bounce processing won't work in this case for messages sent to the Threesomes list. Converted from the Mailman FAQ Wizard
This is one of many Frequently Asked Questions.