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
anyw wyskakującym okienku: „Jeśli każdy z następujących warunków: „Co jest nie tak z użyciem dwóch warunków?