Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change

Email Archiving

by Dru (Hermit)
on May 31, 2007 at 17:09 UTC ( #618542=perlquestion: print w/replies, xml ) Need Help??
Dru has asked for the wisdom of the Perl Monks concerning the following question:


I've been tasked to create a method to have all of my team's email archived to a website.

What I was planning on doing, is creating a new generic email address, ie, and adding that email address to our team's internal mail group. So anytime someone emails this internal group (ie. MyTeam), a copy of the message is sent to and then some super duper software/script retrieves that message from the inbox and post it to a webpage in a listserv type format with search capabilities.

The closes thing that I found is the following: (written in Perl and PHP), which sounds like exactly what I want, but the downside is it's written for a postgres db while I'm using mysql (I built Apache and PHP to support mysql, not postgres and I'm currently using mysql for a number of other web things and I would prefer not to run two separate databases), plus the code hasn't been updated since 2000!

I'm looking for suggestions before I dive into this code and convert it for mysql and any other Frankenstein modifications which it will undoubtfully need.

P.S. I know this isn't entirely Perl related, but I believe it's Perlish enough (not to get me flamed) and I trust the monks opinion more then anyone else's when it comes to TMTOWTDI type issues.

P.P.S. I did a super search and this Managing a Personal Email Archive is the closes thing I found, but this is more for personal archival and the post is also quite out of date.


Perl, the Leatherman of Programming languages. - qazwart

Replies are listed 'Best First'.
Re: Email Archiving
by moritz (Cardinal) on May 31, 2007 at 17:58 UTC
    If you already have a mailing list, the list managing program probably already has an archive, you just have to enable it.

      That's the option I'd go for.

      Barring that, as silly as it sounds -- gopherd can read mbox format. You just point the gopher server at the file, and it'll generate an index for it, and pull out individual messages on request.

      I always thought httpd was a bit of a step backwards in that regard.

Re: Email Archiving
by perlfan (Curate) on May 31, 2007 at 19:38 UTC
    I use mhonarc - it works great, and it is written in Perl!

    I run a cron against a mailbox file similar to:
    /usr/local/bin/mhonarc -add -nolock -treverse -reverse -multipg -idxsi +ze 500 -outdir /path/to/www/mail-archive -msgexcfilter "/regex-to-fil +ter-out/i" -tidxfname index.html /path/to/mbox
    I went back and forth between that and hypermail, and ultimately settled on mhonarc once I figured out how to use it.


    Update: added "-nolock" flag; I found that my command was failing for the last few days because something happened during an update; probably a server crash on my host's webserver.
Re: Email Archiving
by Dru (Hermit) on Jun 05, 2007 at 06:10 UTC
    Sorry for the late response monks, I had to go out of town and just now getting a chance to read the replies.


    Yes, this would be the ideal choice, but the list is a Lotus Notes group, which is not managed by me nor do I believe Notes has the capabilities to do what I want (maybe with Domino, but I prefer not to rely on asking my Notes IT team to set it up on their side, I want it completely independent from the Notes platform).


    Thanks for the suggestion on mhonarc, I'll have to check it out.


    Perl, the Leatherman of Programming languages. - qazwart

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://618542]
Approved by NovMonk
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (4)
As of 2018-07-21 02:33 GMT
Find Nodes?
    Voting Booth?
    It has been suggested to rename Perl 6 in order to boost its marketing potential. Which name would you prefer?

    Results (443 votes). Check out past polls.