On Aug 18, 2004, at 04:33, Salim Fadhley wrote:
I'm trying to build an application for work for which I hope to use mailman as a component; Here is what I am trying to do, do please let me know if you think this is sensible and if GNU Mailman is likely to be of use. If you take the time to read this, I would like to say thanks in advance.
I need a simple mailing list manager to help organize our time-sheeting system. I already have a working Zope base application for doing time-sheets. One of the things this application is capable of doing is producing for any employee, on any given day a form to fill in so that the employee can record their hours. It's a simple form made with formulator that allows each employee to log the time they spent on a particular job.
Unfortunately employees often forget to fill in their timesheets which mean the accountants forget to invoice and everybody looses out. So to combat this, we came up with a simple idea; What if every employee listed on the company Zope-based intranet were to receive an email at 4pm on any working day containing the form they need to fill in.
Each form is unique to a user as not all users work on the same projects or work the same hours. We cannot send the same form to everybody, we need to: a) Calculate a URL for each employee's form which will include the employee's ID number from the intranet. b) Fetch that URL and convert it into an email c) Send that email to the employee and detect if there is a bounce. d) If a bounce occurs then we need to add a flag to that user's record; This will show up in the zope based intranet.
The idea is that since most employees use our Squirrelmail based webmail, they can fill in the form through their webmail interface and submit their timesheets back.
Requirements: * The zope based intranet currently runs on Zope, MS-SQL server with the commercial mxodbc drivers. * If nececary, mailman can run on a Windows server - we have Gentoo and Mandrake boxes that can accommodate this job. * Wherever possible Python is the preferred programming language. * Where possible I would like to avoid having to generate new code. * The code will be released as per the terms of the GNU.
Notes: * CPU power is not a problem; If this thing works then the accountants will be happy to buy another Xeon (or two!).
Question: * Can GNU Mailman help me with this project? * Does GNU Mailman have the ability to fetch web-pages on a per individual basis (rather than sending the same thing to each user).
Honestly (and I could be corrected on this, of course) mailman is overkill for what you want to do. mailman's strength is managing the mailing list as automatically as possible (ie, people can sign up, remove themselves, get passwords and archives, all without bothering the administrator). That doesn't sound like what you want to do. For starters, the recipients for all the mail are controlled by some kind of database criteria. For example: "extract all the names and email-addresses for all employees that have not submitted their time sheet this period". This is not something that mailman can do. Furthermore, mailman can't give you the message customisability that you want. INstead, I'd simply recommend building your messages, recipient by recipient, and using Python's 'smtplib' module to send the mail. About the only thing mailman MIGHT be useful for is its bounce-message handling, but I suspect you wont get enough bounces to warrant the time required to hack around with Mailman to extract that part.
For the record, I consider any email sent to me to be my own property, regardless of any request or disclaimer saying otherwise.
That's nice :) Given I haven't signed anything to the effect..... *grinwink* -- ("`-/")_.-'"``-._ Chris Cogdon <chris@cogdon.org> . . `; -._ )-;-,_`) (v_,)' _ )`-.\ ``-' _.- _..-_/ / ((.' ((,.-' ((,/ fL