Should the category be saved with the imap message?
This started as a question of mail rules but, as often found when describing the problem in more detail, an alternative possibility that explains more symptoms arose ...
With Thunderbird 38.5.0 (although it may be a mail provider issue).
I have a 301 rules. Predominantly, and critically for the one I investigated, these rules: - When run manually or getting mail before junk classification: - Match all of the following: is the message from/to/cc/bcc: [full email address] - When matched: Tag the message 'purple'; Copy message to another imap INBOX(B); move message to a Local Folder; Stop filter Execution
And a rule to run at the end: - When run manually or getting mail before junk classification: - If the message has no 'purple' category: Add a star; Tag the message 'blue'
And, for reasons that seemed logical at the time, that end rule is also done in INBOX(B) whereupon the message gets moved back to INBOX(A)... seems odd: explanation below.
I'm finding that messages are still being processed by the rule in INBOX(B), despite having been given the 'purple' category and moved back to INBOX(A).
I've switched off the rule in INBOX(B) for now.
Can anyone suggest why/if the category isn't saved, causing the filter to fire?
my odd rules explained (I think!)
My mail provider gives me unlimited accounts, so I use, eg "[email protected]" when I give my email address to Random, Inc. When I receive a message to "[email protected]" I know into which folder to file it. Largely, INBOX(B) contains mails I know about, INBOX(A) contains either mails I have yet no rule for or someone trying to spam me.
Advantages of this is that if I get a mail to "[email protected]", I can have some confidence - unless my bank's been hacked.
The end rule in INBOX(B) was to catch "[email protected]".
The end rule in INBOX(A) flags messages I know I should write a rule for or unsubscribe or ... actually, they're in INBOX(A) : that should do the trick!
Thanks for reading: thanks even more if you can offer an answer!
所有回复 (5)
Just noticed while writing a new rule - some rules copy to INBOX(B), then move to Local Folder and these are troubled. Some rules copy to Local Folder and then move to INBOX(B) and these seem to work OK...
once you move, there is no message to examine further. Simple as that. So any process in the filter that occurs after a move does not occur at all.
The only step in the filter processing after "move" is "stop filter execution". Then it finds " a new message " in INBOX(B) and runs that rule under the remit of "it's a new message". Problem is that the 'purple' category that should be assigned by then is not stopping this rule unless the filter copies the message to a local folder before moving it to INBOX(B).
I would hazard a guess that the filter update of colour to the server is not complete when the message is moved. IMAP changes take time to propagate. It might only be milliseconds, but it is still an overhead that local actions do not suffer. In might even be the move gets processed on the server first. but I think your dealing with a complex IMAP interaction
Mmmm - a race condition ?
Rules shuffled (now they each copy to local folder before moving to INBOX(B))
Seems to be working OK - but there's only been 2-3 mails. I'll keep an eye on it.