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

Re: [lemonade] draft-ietf-lemonade-imap-sieve-00



Hi Barry,

--On December 21, 2005 11:05:52 AM -0500 Barry Leiba <leiba at watson.ibm.com> wrote:

Running a Sieve script explicitly over a set of messages would be nice,
 > and would allow for all sorts of useful behaviour, commonly handled by
 > clients locally:

That's a good idea, which might be good to add here: an IMAP RUNSIEVE
command, with a corresponding cause=RUNSIEVE.  I like it.  Do others?
Shall I add it?

Actually I have to say that despite my initial enthusiasm for the idea of incorporating sieve into IMAP, given the complexity we already have and all the arguments about simplifying things and not doing ACAP in IMAP etc, I am now leaning towards not using sieve.


Instead, what I would propose for clients being able to 'run scripts', is a combination of the following:

1) Enhance the SEARCH command with better comparators (globbing, regex etc)

2) Introduce a 'pipe' operation that will allow the result set of the last (or named) search command to be fed into a subsequent fetch/store. I think there was already a proposal for that.

3) Introduce a 'macro' facility that would allow clients to define commonly used commands via a keyword and store those on the server, and then execute the commands via the keyword. This would allow for 'saved searches' - frequently used search commands stored on the server that can be quickly executed without having to uplaod the search each time. Anyone who has written a client that attempts to do traditional mua filtering using IMAP search will appreciate the benefit of something like that. These 'macros' could execute more than one command at a time with some limitations. e.g. a UID SEARCH followed by a UID COPY, followed by a UID STORE, followed by a UID expunge would emulate an mua filter action that could move messages matching certain criteria to another mailbox.

These three things combined together can do the majority of what is needed, and won't require clients/servers to have sieve script handling capability - just a few (pretty basic) extensions to the IMAP protocol.

That then leaves the question of whether it makes sense to use sieve for notifications. I would argue not - if its just for notifications. Lets define another IMAP extension for setting notification information. Maybe it results in something that is 'script-like' and if so perhaps SIEVE syntax could be borrowed for that, or maybe we stick with parenthesised lists as being more IMAP-like.

--
Cyrus Daboo


_______________________________________________ lemonade mailing list lemonade at ietf.org https://www1.ietf.org/mailman/listinfo/lemonade