On 2/11/2015 10:37 PM, Portase Florin wrote: > On 2/11/2015 8:41 PM, Stephan Bosch wrote: >> On 2/11/2015 7:34 PM, Florin Portase wrote: >>> Hello guys, >>> >>> I'm having troubles making "script_after" to exec sieve scripts:: >>> >> Keep in mind that the sieve_after script is only executed when the >> "keep" action [1] is executed or when the implicit "keep" [2] is still >> active, meaning that the user didn't give the mail an explicit destination. >> >> If the user does perform actions like fileinto or redirect without a >> `:copy' argument [3] and without performing an explicit "keep" [2] >> anywhere, the subsequent sieve_after scripts are not executed [4]. >> >> Therefore sieve_after is only useful to provide default behavior for >> when the user has no explicit rule for what should happen to the e-mail. >> >>> `/home/vpopmail/domains/medianetork.ro/portase.florin/Maildir/sieve/dovecot1.sieve;name=lters' >>> Feb 11 19:16:10 lda(portase.flo...@medianetork.ro): Info: sieve: >>> msgid=AAa=mneao6+wwlh3m8nz1z6mi2ae2admdrsakja_-pycwcv...@mail.gmail.com>: >>> stored mail into mailbox 'INBOX.Gmail' >> This was probably done using a `fileinto "INBOX.Gmail";' command. This >> cancels the implicit keep. >> >> To force executing sieve_after, the user needs to add a `:copy' argument >> to that fileinto command or a `keep;' action should be executed. >> >> Administrator policies that always need to be executed must be placed >> in a sieve_before script. >> >> For more information: >> >> [1]: https://tools.ietf.org/html/rfc5228#section-4.3 >> [2]: https://tools.ietf.org/html/rfc5228#section-2.10.2 >> [3]: https://tools.ietf.org/html/rfc3894 >> [4]: http://tools.ietf.org/html/draft-degener-sieve-multiscript-00 >> >> Regards, >> >> Stephan. >> > Thanks Stephan, > > However still have one small issue: > > fileter.sieve > ========== > > # rule:[amavis] > if anyof (address :contains "From" "amavis", > address :contains "Cc" "amavis-us...@amavis.org", > address :contains "To" "amavis-us...@amavis.org") > { > fileinto "INBOX.lists.amavisd-new"; > } > # rule:[xxx_gmail] > elsif anyof (header :contains "From" "xxx@gmail") > { > setflag "\\Flagged"; > fileinto "INBOX.Gmail"; > keep; > } > > In this case, both all 3 sieve are executed: global one + filters + > vacation. > But as side note: when mail come from gmail account, > - 1st message is sent to inbox.gmail > - 2nd vacation response is sent > -3rd message is copied once more directly into INBOX > > Now, if I modify: > fileinto :copy INBOX.Gmail; > > The message is sent to INBOX.Gmail and also copied to INBOX > > How can I avoid such behavior ?
Why do you have the vacation script in a sieve_after rule? Regards, Stephan.