Hi Michael,
--On Tuesday, March 16, 2004 2:22 PM +0100 Michael Haardt
<michael(_at_)freenet-ag(_dot_)de> wrote:
| Some mail systems allow the concept of "rolling/automatically expiring"
| mailboxes/folders which automatically remove old mail, which is useful
| for mailing lists and junk mail folders. It is important that this
| function is not performed by the client, because clients usually don't
| clean up during vacation.
|
| For that reason, I suggest a Sieve extension, which allows the mail
| system to remove mail. There are several ways to address the problem:
I'm afraid I still think expiration like this belongs in the mailstore not
the delivery agent. There are other ways for messages to be delivered into
mailboxes other than sieve and expiration policy for those is just as
relevant as it is for mailboxes with sieve delivery occurring. e.g.
Mailboxes that are targets of IMAP COPY and APPEND commands should be able
to have expiration behaviour as you describe.
So I think the right approach is to define an IMAP extension for setting
expiration policies on mailboxes, utilizing ANNOTEMORE for controlling the
per-mailbox settings. The expiration test/action would be triggered by any
action that could change the mailbox (COPY, APPEND, SELECT and external
delivery) or, if a server chooses to implement it, an automated timed
expiry check at an interval specified by the user or dictated by the system.
Note that one could be quite sophisticated about the expiry checks - e.g.
IMAP SEARCH criteria could be used in the annotation to specify which
messages are to be expired - so I could setup criteria to exclude messages
that have the important (\Flagged) flag set etc.
--
Cyrus Daboo