I'm working on implementing an email "Proxy" system and I seek guidance on which CPAN modules to reuse.

All incoming mail to the domain goes to a mailbox accessible to my code via POP.

The Proxy needs to access the POP mailbox and reject some of the messages based on the headers. (Is there a standard way of rejecting a message? Module?)

Then it needs to append something to the end of some of the messages. (with sensetivity to whether they are in plain text or HTML)

Then it needs to "move" the remaining messages to a bunch of different "mailboxes" for each user. I have MySQL setup, so I was thinking about storing them there.

The users login to the Proxy via POP on a custom port to download their messages.

The other way, I need a custom SMTP server for the users to send their outgoing mail through. The proxy needs to make some changes to the headers and then resend them through the real SMTP server.

So I think basically I need modules for a POP server, a POP client, an SMTP server, an SMTP client and modules for reading and altering email messages.

Any ideas about which CPAN modules I will need to glue together to make this work?

-Andrew.


Andrew Tomazos  |  andrew@tomazos.com  |  www.tomazos.com

In reply to Email Proxy System by tomazos

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.