I had a similar need where someone should be able to subscribe or unsubscribe without having to do any sort of admin or user confirmation. I also had a need to make it easy for a user to subscribe to 25-100 lists without having to manually subscribe to 25-100 individual lists.

Note that there's a way to configure mailman so a user can subscribe without confirmation but that's not true on unsubscribe. Going on vacation and having to unsub from 100 lists and also confirm for 100 lists was too complicated and the mail admin (me) would be doing these by hand.

I also have a closed user community so don't need to worry about malicious sub or unsub requests.

So, here's what I did:

1) Wrote code to process all mail_list-requests. Basically, this code replaces the work mailman does on request processing. So in /etc/aliases, each group has an entry "maillist-request | /blah/request-processing.pl"

2) This code extracts who the mail is from, subject, and what list the mail was sent to and with this information calls remove_member or add_member directly.

3) I crafted a web page with all the groups listed as a unqiue url. If the user clicks on the link, it pre-opens a mail message with the right target address for that group and a subject of "subscribe" or "unsubscribe". All they need to do is hit send and the code gets delivered to the mailman server where the code sitting behind the "maillist-request" adds or removes the user. Folks could sub or unsub 10s of lists in a few seconds.

4) If they wanted on all lists, I created a fictitious group called "maillist-all" which was also a url on the web page. When mail to that alias hit the maillist-request code, it would detect the mail being sent to maillist "all" and then do the remove_member or add_member for this user from all individual mail lists.

I'd expect you could have the URL instead hit some cgi-bin code which would call the add or remove user directly, but the mail approach was fine for my needs.


Bill Honneus (honneus) wrote:
Hi Jeff,

The reason we want to do this is because we want to control the
subscriptions to our mailing list interface through our application.  We
disable subscriptions and unsubscriptions by email, so the only way that
users can join is through our application interface.  We would only
allow users who have signed on through the application to subscribe, so
they would have already verified themselves.

Hope this clarifies the reason.

Regards,

Bill

-----Original Message-----
From: Jeff Shepherd [mailto:[EMAIL PROTECTED] Sent: Friday, May 09, 2008 2:58 PM
To: Bill Honneus (honneus)
Cc: mailman-users@python.org
Subject: Re: [Mailman-Users] Programmatic Subscription

Hi Bill,
While I cannot provide insight on how to do this, I wonder why you would
want to bypass the confirmation in the first place.  The problem with
bypassing that is that I can then subscribe several people to your list
without confirming they are the ones who in-fact wanted to be subscribed. I could do this just to annoy people who I dislike.

The purpose of the confirmation is to ensure that this doesn't happen. I don't think bypassing it is a very good idea.

-Jeff


Bill Honneus (honneus) wrote:
Hi,
When a user subscribes or unsubscribes from a mailing list, they are sent an email confirmation and must click a link on the web interface or reply to the email to confirm their subscription/removal. One of our engineers is creating a portlet on a web application, and what he wants to do is allow the user to be immediately subscribed as soon as

they click a link.  Is there a way to configure Mailman so that a user

is immediately subscribed or removed without the confirmation process?
Alternatively, if we were to write some custom code on our application, could we simply call the subscribe cgi script, and then send the confirmation request from the application without asking the user for further input? Please let me know if this is a sound approach. Thanks, Bill
------------------------------------------------------
Mailman-Users mailing list
Mailman-Users@python.org
http://mail.python.org/mailman/listinfo/mailman-users
Mailman FAQ: http://www.python.org/cgi-bin/faqw-mm.py
Searchable Archives: http://www.mail-archive.com/mailman-users%40python.org/ Unsubscribe: http://mail.python.org/mailman/options/mailman-users/jeffs%40tolisgrou
p.com

Security Policy: http://www.python.org/cgi-bin/faqw-mm.py?req=show&file=faq01.027.h
tp
------------------------------------------------------
Mailman-Users mailing list
Mailman-Users@python.org
http://mail.python.org/mailman/listinfo/mailman-users
Mailman FAQ: http://www.python.org/cgi-bin/faqw-mm.py
Searchable Archives: http://www.mail-archive.com/mailman-users%40python.org/
Unsubscribe: 
http://mail.python.org/mailman/options/mailman-users/bergenpeak%40comcast.net

Security Policy: 
http://www.python.org/cgi-bin/faqw-mm.py?req=show&file=faq01.027.htp


------------------------------------------------------
Mailman-Users mailing list
Mailman-Users@python.org
http://mail.python.org/mailman/listinfo/mailman-users
Mailman FAQ: http://www.python.org/cgi-bin/faqw-mm.py
Searchable Archives: http://www.mail-archive.com/mailman-users%40python.org/
Unsubscribe: 
http://mail.python.org/mailman/options/mailman-users/archive%40jab.org

Security Policy: 
http://www.python.org/cgi-bin/faqw-mm.py?req=show&file=faq01.027.htp

Reply via email to