При активной жизни в сети появляется много сайтов, присылающих вам сообщения по почте. Я буду рассматривать 2 типа сообщений, актуальных для меня.
Первый — это рассылки уведомлений от Facebook и ВКонтакте, отписаться от них не очень удобно потому что на эти сайты я захожу только если происходят определенные события типа новых сообщений или приглашений, о которых я и узнаю через рассылки. Такие сообщения нужны только чтобы узнать что произошло, а после прочтения их можно съесть удалить.
Второй — это рассылки рекламных акций и скидок действующих определенный промежуток времени (в приведенном скрипте это AirAsia).
Конечно, можно вообще не обращать внимания и такую «мертвую почту», потому что почтовики дают достаточно свободного места (на моем аккаунте в гугле за 4 года я занял только 2%). Но если Вы как и я уже обратили на нее внимание, то предлагаю вам следующий скрипт.
60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 | -- выставляем дату фильтрации почты старше 30 дней set filter_date to ((current date) - 30 * days) -- обращаемся к приложению Mail.app tell application "Mail" -- получаем список входящих сообщений для нужного аккаунта set message_list to messages of mailbox "INBOX" of account "12345@gmail.com" -- (account – это не адрес почты, а название аккаунта) -- … и их количество set message_count to number of items in message_list -- в цикле обрабатываем каждое сообщение в списке repeat with i from 1 to message_count -- получаем текущее обрабатываемое сообщение set message_item to item i of message_list -- … его отправителя set message_sender to sender of message_item -- проверяем выполнение условий -- если отправитель содержит строку "ВКонтакте" if message_sender contains "ВКонтакте" then -- и сообщение уже прочитано if (read status of message_item) = true then -- удаляем его (при удалении сообщение попадет в корзину) delete message_item end if -- если отправитель "AirAsia <donotreply_edm@airasia.com>" else if message_sender = "AirAsia <donotreply_edm@airasia.com>" then -- и дата отправки сообщения больше даты фильтрации (30 дней) if (date sent of message_item) < filter_date then -- тоже удаляем delete message_item end if end if end repeat end tell |
Все, можете редактировать этот скрипт под свои нужды, сохранить как приложение и пользоваться.