Re: sieve "vacation" and duplicated emails

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

 



On Wed, 22 Jul 2009, Bernd Petrovitsch wrote:

> If I have the following sieve script, everything works fine and each
> (non-Spam-)mail appears once in the INBOX (since we have the "keep"
> there)
> ----  snip  ----
> require [ "fileinto", "vacation" ];
> if header :contains [ "X-Spam-Flag" ] [ "YES" ] {
> fileinto "INBOX/Spam";
> } else {
> keep;
> }
> ----  snip  ----
> If I add a "vacation" statement (with a known working local email
> address) as in
> ----  snip  ----
> require [ "fileinto", "vacation" ];
> vacation :days 7 :addresses [ "user@xxxxxxxxxxx" ] "Bin im Urlaub ...";
> if header :contains [ "X-Spam-Flag" ] [ "YES" ] {
> fileinto "INBOX/Spam";
> } else {
> keep;
> }
> ----  snip  ----
> each (non-spam-)mail, which triggers a vacation response, is stored 2
> times in the INBOX (and not just once - from the "keep").

This does sound a bit like a bug, but I think your sieve rules are 
somewhat out-of-order as well.  Here is how I would write it:

require [ "fileinto", "vacation" ];
if header :contains "X-Spam-Flag" "YES" {
 	fileinto "INBOX/Spam";
 	stop;
}
vacation :days 7 :addresses [ "user@xxxxxxxxxxx" ] "Bin im Urlaub ...";


"stop" tells sieve to stop processing the message.  With "stop" in place, 
you don't need a clunky "else { keep; }" clause.  There is an implicit 
"keep" action if a message is not fileinto'd a different mailbox.

Also, you want the vacation responder to avoid processing spam emails.

 	Andy
----
Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html

[Index of Archives]     [Cyrus SASL]     [Squirrel Mail]     [Asterisk PBX]     [Video For Linux]     [Photo]     [Yosemite News]     [gtk]     [KDE]     [Gimp on Windows]     [Steve's Art]

  Powered by Linux