[Dovecot] Sieve as mail client?

Stephan Bosch stephan at rename-it.nl
Sun Sep 23 20:43:41 EEST 2012


On 9/23/2012 7:31 PM, Stephan Bosch wrote:
> On 9/20/2012 2:11 PM, Tom Horsley wrote:
>> I want a program that operates entirely on the client side of
>> an IMAP server, and implements the sieve filtering language
>> by doing the necessary client side operations to move mail
>> on the IMAP server, expunge mail, etc.
>>
> Interesting idea. I've been experimenting a bit with the sieve-filter 
> command line tool and the Dovecot imapc mail storage backend. This 
> does not entirely match your proposed solution, since it'll have to 
> operate as a cron job, but at least it is a start.
[...]
> In the process a few problems were encountered and solved. This means 
> that this little experiment will only work with the latest revisions 
> of Dovecot v2.1/v2.2 and a matching Pigeonhole from their respective 
> Mercurial repositories.
>
> The conclusion so far is that, in essence, what you'd like to do is 
> possible. However, to make Sieve filtering look like it is being run 
> at delivery rather than at regular intervals in the background, we 
> will need to build some sort of IMAP plugin that monitors INBOX for 
> new messages and passes them through a Sieve filter before the user's 
> proxied IMAP client can see them. I'll have to investigate how much 
> work implementing this would be.

I should explain explain in a little more detail how this works.

Basically, I use the sieve-filter tool to filter mail that is already in 
a mailbox. Only, the mailbox is a bit special: it is an imapc (IMAP 
Client) mailbox that proxies to a remote mailbox. So, on our local 
machine the INBOX actually maps to INBOX on the remote server, rather 
than some local store. For the sieve-filter tool this makes no 
difference. This way, the sieve-filter can also be used to filter mail 
on a remote server.

Regards,

Stephan.



More information about the dovecot mailing list