Я вижу, что на этот вопрос уже был дан ответ, и ответ был принят. Я хотел бы добавить свои два цента на это.
Я столкнулся с тем же ограничением Outlook, как упомянуто в вопросе. Я создал бесплатную (как в открытом исходном коде) альтернативу для правил Outlook. Он написан на PowerShell, он небольшой и его легко настроить.
Код скрипта, а также подробное описание размещены на github и могут быть найдены здесь. Некоторая ранняя версия и более длинное описание также здесь.
По сути, вы определяете каждое правило как оператор IF
и выбираете, какое свойство Email вы хотите использовать для запуска определенного действия. Например:
IF ($Email.Subject -match "Alert" ) {
$Email.Move($DeletedItems) | out-null
continue
}
Вышеупомянутый фрагмент кода переместит любое письмо, содержащее слово "Предупреждение", в папку удаленных элементов.
Некоторые другие примеры правил:
# IF EMAILS ARE SENT TO MYSELF -> MOVE TO PERSONAL FOLDER UNDER PST FILE
# ! DESTINATION FOLDER SPECIFIED BEFOREHAND AS A VARIABLE
IF ($Email.To -eq "MySurname, MyName") {
$Email.Move($personal) | out-null
display ([string]$Email.Subject ) ([string]"Cyan")
continue
}
# MOVE EMAILS WITH SPECIFIC STRING IN TITLE TO THE SUBFOLDER /RANDOM/ UNDER PST FILE
# ! DESTINATION FOLDER SPECIFIED INLINE
IF ($Email.Subject -match "SPECIFIC STRING IN TITLE") {
$Email.Move($pstFolders.Item("Random")) | out-null
display ([string]$Email.Subject ) ([string]"Yellow")
continue
}
# MOVING NOT IMPORTANT MESSAGES TO DELETED ITEMS
# ! MARKING EACH MOVED ITEM AS UNREAD
IF ($Email.Subject -match "not important" -or $Email.Subject -match "not-important" ) {
$Email.UnRead = $True
$Email.Move($DeletedItems) | out-null
display ([string]$Email.Subject ) ([string]"Red")
continue
}
# MOVING MESSAGES FROM SPECIFIC AD OBJECT TO DELETED ITEMS
IF ($Email.SenderEmailAddress -match "/O=COMPANY/OU=AD GROUP/CN=RECIPIENTS/CN=SOME-NAME") {
$Email.Move($DeletedItems) | out-null
display ([string]$Email.Subject ) ([string]"Red")
continue
}
# MOVING MESSAGES FROM SPECIFIC EMAIL ADDRESS TO DELETED ITEMS
IF ($Email.SenderEmailAddress -match "email@gmail.com") {
$Email.Move($DeletedItems) | out-null
display ([string]$Email.Subject ) ([string]"Red")
continue
}
Вот как будет выглядеть вывод скрипта:
В сценарии я перемещаю электронные письма как в PST-файл, так и во вложенные папки «Входящие» - вы можете использовать их или их комбинацию. Также правила могут быть сложными. Просто используйте -and
и -or
чтобы связать условия.
Надеюсь, это кому-нибудь поможет.