[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [OT] Maildrop-Rezepte?



Moin,

* Matthias Haegele wrote (2007-05-02 13:21):
>Hat da jemand vielleicht schon ein "Rezept" parat dass auf Mailinglisten 
>greift, das ich dann anpassen könnte?

Ich erstelle mit Ruby eine simple GDBM-Datenbank, die Maildrop dann
lesen kann. Die Datensätze enthalten eine Hashmap mit der ML-Adresse
als Key und der Mailbox als Value. Das Programm sieht so aus:

- - - Schnipp - - -
#!  /usr/bin/ruby -w

require 'gdbm'

GDBM.open("/path/to/lists.db") { |gdbm|
    gdbm['debian-user-german@lists.debian.org'] = 'Debian/debian-user-german'
    gdbm['suse-linux@suse.com'] = 'SuSE'
    (...)
}
- - - Schnapp - - -

In Maildrop reicht dann folgendes Fragment, um die Mails jeweils in
die gewünschte Mailbox zu sortieren:
- - - Schnipp - - -
gdbmopen("/path/to/lists.db")

foreach /^(To|Cc): .*/
{
    foreach (getaddr($MATCH)) =~ /.+/
    {
        listbox = gdbmfetch(tolower($MATCH))
        if ($listbox ne "")
        {
            #   Drop any unsubscribe mails
            if (/^Subject: unsub?scribe$/ && $SIZE < 5000)
            {
                log "Permission denied for unsubscribe mails"
                EXITCODE = 77
                exit
            }

            to $MAILDIR/ML/$listbox
        }
    }
}

gdbmclose
- - - Schnapp - - -

Das funktioniert gut und skaliert hervorragend.


Thorsten
-- 
Most people would sooner die than think; in fact, they do so.
    - Bertrand Russell

Attachment: pgpP_vwrVr_2_.pgp
Description: PGP signature


Reply to: