Перед запуском

В этом учебном руководстве Вы собираетесь изучить основные шаги для построения использования действия Automator AppleScript как язык разработки. В процессе изучения Вы создадите действие, которое можно продуктивно использовать в потоках операций. Но перед началом давайте займем одну минуту для рассмотрения то, что действие и смотреть на действие, которое Вы создадите.

Что такое действие Automator?

Большинство людей знакомо с понятием стандартных блоков. Путем размещения маленьких но четко определенных модулей в определенные отношения друг с другом можно составить комплекс и даже изящные структуры. Действие Automator является таким стандартным блоком. Действие является небольшим, дискретным функциональным блоком; это обычно выполняет четко определенную работу на данных определенного типа, такого как копирование файла или добавление фотографий к альбому iPhoto. Это часто предлагает пользователю простой пользовательский интерфейс для установки определенных параметров работы. Например, действие на рисунке 1-1 выбирает определенные Сообщения электронной почты на основе указанных критериев.

Рисунок 1-1  Находка обменивается сообщениями в Почтовом действии
The Find Messages in Mail action

Отдельно, действие не может сделать многого. С одной стороны, это требует, чтобы приложение Automator обеспечило контекст для своего выполнения. Но что еще более важно действие очень дискретность ограничивает свою полноценность; действие разработано для выполнения маленькой, четко определенной задачи и ничего больше. Чтобы быть эффективным, действие должно быть помещено в значимую последовательность других действий. Эту последовательность действий вызывают потоком операций. В потоке операций вывод одного действия обычно (но не всегда) передал следующему действию в потоке операций, как введено. Automator организует этот процесс путем запуска каждого действия поочередно и передачи его вывод предыдущего действия. Поток операций выражает работу, которая может быть произвольно сложной, и конечный продукт той работы обычно является выводом последнего действия. Например, поток операций на рисунке 1-2 получает непрочитанную почту пользователя и загружает сообщения на раздел Notes подключенного iPod.

Рисунок 1-2  Копия Непрочитанная Почта к потоку операций Примечаний iPod
The Copy Unread Mail to iPod Notes workflow

Поскольку поток операций Automator (такой как тот выше) иллюстрирует, действие обычно разрабатывается, чтобы принять ввод и произвести вывод определенных типов данных (несмотря на то, что некоторые действия возьмут и обеспечат любой тип данных). Таким образом некоторые действия могут быть несовместимыми с другими действиями; действие Сообщений электронной почты Объединения, например, не могло принять данные Адресной книги. Но может быть тем, что вызывают действиями преобразования для образования моста между действиями с несовместимыми типами данных.

От ракурса разработки действие является загружаемым пакетом, установленным в одном из четырех расположений:

Пакет действия может содержать исполняемый код, сценарии AppleScript, сценарии оболочки, и локализованные строки, файлы пера и другие ресурсы. Когда Automator запускается, приложение извлекает конфигурационную информацию из пакетов действия и выводит на экран часть этой информации в ее пользовательском интерфейсе. Это также загружает пакеты действий, помещенных в поток операций в некоторый момент перед выполнением потока операций (точный момент отличается для действий на основе Objective C и действий на основе AppleScript). Для полного описания архитектуры действий Automator и потоков операций, см. “Как Работы Automator” в Руководстве по программированию Automator.

Действие Вы создадите

В этом учебном руководстве Вы создадите действие под названием Передача Случайные Элементы. Действие принимает список элементов (любого типа) от предыдущего действия и передает случайное подмножество тех элементов к следующему действию. Пользователи могут указать число или процент элементов для передачи в пользовательском интерфейсе действия. Рисунок 1-3 показывает Передаче Случайное действие Элементов в потоке операций.

Рисунок 1-3  Передача Случайное действие Элементов в потоке операций
The Pass Random Items action in a workflow

В этом потоке операций фотографии Фильтра в действии iPhoto передают все выбранные фотографии, сделанные в течение прошлых двух месяцев для Передачи Случайных Элементов. Это действие, в свою очередь, передает 20 случайных фотографий от того начального выбора до действия, играющего их в показе слайдов.

После завершения этого учебного руководства и перед попыткой разработки любого действия самостоятельно необходимо занять время для рассмотрения проекта действия. Считайте “Руководство по проектированию для Действий” в Руководстве по программированию Automator для сводки подходящего руководства по проектированию.