Любые автоматические действия в Mac OS X выполняются с помощью двух основных инструментов: Automator и Редактора AppleScript. Второй из них нам сегодня пригодится для сортировки вложений Mail в одну папку.
Очень часто бывают случаи, когда пользователь периодически получает от конкретного клиента письма с вложениями, которые нужно хранить организованно и отдельно от остальных. Эту операцию лучше провести в 3 этапа: создание AppleScript, создания Фильтра в Mail и перенос папки с вложениями на один из "облачных" сервисов.
Создание AppleScript
Скопируйте и вставьте текст в Редактор AppleScript.
onperform_mail_action(ruleData)
-- The folder to save the attachments in (must already exist)setattachmentsFolderto ((path tohome folderastext) & "Documents:Attachments") astext-- Save in a sub-folder based on the name of the rule in MailsetsubFoldertonameof|Rule|ofruleDataastexttellapplication "Finder"
ifnot (existsfoldersubFolderoffolderattachmentsFolder) thenmakenewfolderatattachmentsFolderwith properties {name:subFolder}
endifendtell-- Get incoming messages that match the ruletellapplication "Mail"
setselectedMessagesto|SelectedMessages|ofruleDatarepeatwiththeMessageinselectedMessages-- Get the date the message was sentset {year:y, month:m, day:d, hours:h, minutes:min} totheMessage's date sentsettimeStampto ("" & y & "-" & mypad(masinteger) & "-" & mypad(d) & "-" & mypad(h) & "-" & mypad(min))
-- Save the attachmentrepeatwiththeAttachmentintheMessage's mail attachmentssetoriginalNametonameoftheAttachmentsetsavePathtoattachmentsFolder & ":" & subFolder & ":" & timeStamp & " " & originalNametrysavetheAttachmentinsavePathendtryendrepeatendrepeatendtellendperform_mail_action-- Adds leading zeros to date componentsonpad(n)
returntext -2 thru -1 of ("00" & n)
endpad
Чтобы убедиться в том, что все было сделано правильно, нажмите кнопку Компилировать.
Данный скрипт перемещает все вложения от конкретных пользователей в заданную папку и автоматически добавляет дату к сохраненным файлам.
Если после вставки кода никакого сообщения об ошибке не появлялось, значит все правильно и на этом этапе можно двигаться дальше. Хочу лишь заметить, что по своему усмотрению можно изменить путь к папке хранения вложений. Сделать это можно в 3 строке скрипта. Да, и не забудьте ее создать согласно заданного пути.
Сохраните скрипт в папку, где обычно у вас хранятся подобные скрипты.
Создание Фильтра в Mail
Запустите Mail и создайте фильтр. В параметрах укажите выполнение одного из следующих условий, укажите от кого будут приходить сообщения с вложениями и из следующих действий выберите выполнение AppleScript. Дальше все просто: выберите скрипт, который вы только что сохранили.
Опять же, никто не ограничивает в настройке этого фильтра. Добавьте тип файла, например, только презентации, удалите дубликаты вложений после перемещения, или задайте другие параметры, которые помогут вам убрать все лишнее из содержащей папки. Все зависит от того, что на самом деле устраивает пользователя в той или иной ситуации.
Хранение папки на "облачном" сервисе
Тут нет ничего нового. Все, что потребуется - это сделать папку, которая содержит все сохраненные вложения доступной из любой точки соединения. Переместите ее в Dropbox или iDisk и после синхронизации у вас будет возможность доступа к файлам ото всюду.