Jak filtrować zarówno z, jak i za pomocą jednego testu?


2

Wydaje mi się, że nie mogę znaleźć prostego sposobu filtrowania poczty na podany adres lub z niego. Wydaje się, że musisz powielić adres i użyć dwóch warunków, np.

From - contains - fred@nowehere.com
Any recipient - contains - fred@nowehere.com

Miałbym nadzieję, że „Każdy odbiorca” może zawierać „Od”, ale wydaje się, że zawiera tylko „Do”, „Cc”, „Bcc” itp.


1
Czy czegoś mi brakuje? Nie możesz po prostu ustawić reguły z dokładnie tymi dwoma warunkami i wybrać any w wyskakującym okienku: „Jeśli każdy z następujących warunków: „Co jest nie tak z użyciem dwóch warunków?
ghoppe

Problem polega na tym, że mam wiele filtrów, a niektóre z nich mają kilka adresów e-mail, więc musiałbym przejrzeć wszystkie te duplikaty każdego Od: test i uczynić go Dowolnym odbiorcą: test - utrzymujący ból głowy, jak również wszystkie początkowe ból. Czasami tęsknię za Eudorą ...
Paul R

Odpowiedzi:


2

Zasady są niestety dość ograniczone, ale czasami możesz użyć Smart Mailboxes, aby pomóc Ci obejść problem.

Na przykład, jeśli potrzebujesz reguły, która wykonuje akcję, gdy spełnione są warunki (A LUB B) I C, możesz skonfigurować Smart Mailbox o nazwie „X”, który zawiera wszystkie wiadomości e-mail, w których (A LUB B) jest prawdą, a następnie druga inteligentna skrzynka pocztowa o nazwie Y zawierająca wszystkie wiadomości e-mail, w których (C jest prawdziwe ORAZ skrzynka pocztowa to X).

W razie potrzeby można następnie skonfigurować regułę, która wykonuje dowolne przetwarzanie, które należy wykonać na zawartości skrzynki pocztowej Y, i uruchomić ją ręcznie zgodnie z wymaganiami (zaznacz wszystkie wiadomości w skrzynce pocztowej Y, a następnie Wiadomość- & gt; Zastosuj reguły).


Dziękuję za tę sugestię - zgrabny fragment myślenia lateralnego - nie jestem pewien, czy to pomoże w moim konkretnym problemie, ale widzę, że może to być przydatna sztuczka w innych przypadkach.
Paul R

2

To pytanie pojawiło się ponownie na moim radarze, ponieważ mój komentarz został przegłosowany, ale nadal nie ma dobrych odpowiedzi, więc pójdę o krok dalej. ;) To ciekawe ćwiczenie.

Mówisz, że ty „mam wiele filtrów, a niektóre z nich mają kilka adresów e-mail, więc musiałabym przejrzeć wszystkie te duplikaty każdego Od: test i uczynić z niego Dowolnego odbiorcę: test - utrzymujący się ból głowy, jak również cały początkowy ból”

Ten utrzymujący się ból głowy może zostać usunięty dzięki magii Jabłka. Poniższy skrypt pobiera wiadomości wybrane w Apple Mail, przechodzi przez wszystkie pola „nadawcy”, aby znaleźć nowych nadawców, którzy nie mają jeszcze jednej z tych reguł „z / dowolnego odbiorcy”, a jeśli nie, tworzy nową regułę z „od / dowolne warunki reguły odbiorcy.

Nie jestem pewien, co dokładnie robisz z regułami poczty, ale zakładam, że konfigurujesz foldery dla każdej „rozmowy” z każdą pocztą. Przeszukuję tylko nagłówek „z”, aby je skonfigurować, ponieważ e-mail może mieć wielu odbiorców. Jest szorstki i gotowy, a sam będziesz chciał go zmodyfikować. Na przykład, nie sprawdzam poprawności nazw skrzynek pocztowych, nazwa z ukośnikiem spowoduje utworzenie dodatkowych skrzynek pocztowych.

Oto jest!

tell application "Mail"
    set _sel to get selected messages of first message viewer
    repeat with _msg in _sel
        set _senderEmail to extract address from sender of _msg
        set _ruleName to "Conversations with <" & _senderEmail & ">"
        set _mailRules to rules
        set foundIt to false
        repeat with _rule in _mailRules
            if ((extract address from name of _rule) is _senderEmail) then
                set foundIt to true
                exit repeat
            end if
        end repeat
        if not foundIt then
            set _senderName to "Conversations/" & (extract name from sender of _msg)
            if not (mailbox _senderName exists) then
                make new mailbox at end of mailboxes with properties {name:_senderName}
            end if
            set _destination to (mailbox _senderName)
            set newRule to make new rule at end of rules with properties {name:_ruleName, enabled:true, should move message:true, all conditions must be met:false}
            tell newRule
                make new rule condition at end of rule conditions with properties {rule type:from header, expression:_senderEmail, qualifier:does contain value}
                make new rule condition at end of rule conditions with properties {rule type:any recipient, expression:_senderEmail, qualifier:does contain value}
                set move message to _destination
            end tell
        end if
    end repeat
end tell

Bardzo dziękuję za to - mogę być w stanie dostosować twój skrypt do moich potrzeb.
Paul R
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.