Со времён появления команд в iOS многие задумывались, как автоматизировать их запуск, а самые умные придумывали, как это сделать. В этой статье собраны все существующие способы.
Условные обозначения:
✴️ — Способ полностью надёжен и точно сработает.
✳️ — Способ автономен и не требует дополнительных действий от пользователя для запуска заданных команд
*️⃣, *️⃣*️⃣ — Уровни сложности, стоят рядом со способами, которые могут вызвать затруднения у обычных пользователей.
1. Автоматизации
✴️ │ iOS 13.0.0~beta 1 — 13.0.0~beta 5, io13.1.0+; iPadOS 13.0.0~beta 1 — 13.0.0~beta 5, 13.1.0+
Полный список тригерров с описанием
Описание
Автоматизации — встроенный в команды механизм. Apple добавила автоматизации в ios 13 beta 1, и удалила их в последующих бетах, вернув снова в ios 13.1 beta. Автоматизации просты в создании, надёжны и точно сработают, а также не повысят расход аккумулятора. В автоматизациях заявлено более сотни различных триггеров. Однако, при всех этих преимуществах, автоматизации имеют очень существенный минус: многие из них (в том числе по времени и геопозиции) перед срабатыванием запрашивают подтверждение в виде уведомления. Есть конечно и те, у которых подтверждение отключается, но они не так важны. Чтобы узнать, отключается ли подтверждение у автоматизации вам нужно нажать на неё, если она создана, а есди вы только создаёте её, посмотреть на последнем шаге создания, имеется ли соответствующий переключатель.
Но несмотря на то, что автоматизации в большинстве своём вовсе не автоматичны, есть два лайфхака как сделать реальную автоматизацию.
UPD: С выходом iOS 14 переключатель "Спрашивать до запуска" появился у автоматизации по времени, поэтому второй лайфхак больше не необходим, а первый вообще не нужен, поэтому актуален только, если у вас iOS 13.
Второй и самый лучший из них, позволяющий запускать любые команды по любым тригеррам будет рассмотрен в конце статьи, так как для него требуется ознакомление с другой информацией статьи. Первый же заключается в следующем: Перейдите в настройки и задайте время включения режима "не беспокоить" на то время, в которое вам нужно, чтобы автоматизация запускалась
затем создайте автоматизацию, запускающуюся, когда включается режим "не беспокоить", и отключите у неё запрос на подтверждение (у этого триггера запрос отключается).
Так как же создать автоматизацию? Это предельно просто, как и всё у Apple.
Создание автоматизации
Переходим через нижний тач бар в раздел "Автоматизация"
Здесь мы видим возможность создать автоматизацию для себя и для умного дома. Рассмотрим пример с "Создать автоматизацию для себя"
Нажав "Создать автоматизацию для себя" выбираем триггер — условие, при котором автоматизация сработает.
Далее настраиваем триггер
Затем нажимаем "далее" и выбираем действия, которые будут срабатывать при срабатывании тригерра. Например, можем поставить запуск команды.
Теперь отключаем подтверждение, если это возможно.
Автоматизация готова.
Дополнительно
Если на вашем устройстве установлен джейлбрейк, вы можете прокачать автоматизаци при помощи некоторых твиков:
Truecuts — добавляет переключатели "спрашивать до запуска" всем автоматизациям
StopShortcutsNotifications — Отключает уведомления от команд, чтобы они не приходили при срабатывании автоматизаций.
TruestCuts — объединяет два предыдущих твика.
Если у вас нет джейлбрейка, вы можете отключить уведомления от команд другим способом.
Перейдите в раздел Время экрана → просмотреть все действия.
Прокрутите вниз, пока не найдете "уведомления" и нажмите "команды"
Выключите уведомления на экране блокировки и баннерами. Это позволит командам с уведомлениями работать, но вы больше не будете видеть уведомления от автоматизаций (На ios 13 баннеры выключить нельзя, придётся отключать полностью).
2. Cronios
✳️*️⃣ │ iOS 9.0.0 (?) — 12.4.9
Полная документация о работе Cronios
Описание
Cronios, гибрид названий "cron" и "ios" является командой, способной держать приложение "команды" в фоне и запускать заданные команды раз в заданный промежуток времени. Автоматизация в cronios называется "крон-задание". В отличии от автоматизаций cronios не запрашивает подтверждение на выполнение крон-заданий, однако он нестабилен: у некоторых останавливается через час, а у других держится день или дольше. Также из минусов можно отметить повышенное энергопотребление. В целом крониус больше подходит не для постоянной работы, а для временной, например, если вы не имеете доступ к телефону в течении нескольких часов, но вам нужно, чтобы отправилось смс и т.п.
Пример команд, интегрированных с крониосом:
Если же у вас нет времени на чтении полной документации, прочтите инструкцию по созданию крон-задания.
Создание крон-задания
Запустите cronios и нажимаем на New Cron Job...
Затем, в появившееся окно введите название команды, запуск по времени для которой вы хотите задать, или оставьте поле пустым, чтобы вручную выбрать команду из списка. Выберите нужную команду.
Нажмите "Use the schedule assistant...", Чтобы настроить время запуска команды в определённое время, или "Evaluate Every Minute", если в вашей команде встроен триггер (например, команда проверяет уровень заряда, и, если он меньше 20% посылает уведомление).
Выберите, раз в какое время cronios может запускать команду; рекомендуется "Run Every Time".
Далее выберите "Use Default Options".
В следующем окне введите число от одного 1 до 100. Это степень важности команды. Если у вас несколько команд, запуск которых назначен на одно время, раньше запустится та, у которой число меньше.
В этом окне введите любые символы, это — тэг крон-задания, по которому его будет проще найти.
Последний штрих — введите название крон-задания.
Крон-задание создано!
Чтобы запустить крониос, нажмите "Run Continuously" и "Start and Don't Show Again".
Чтобы запускать cronios одним нажатием, установите "Install Cronios Daemon Shortcut" . Установитсся команда Cronios Daemon. При нажатии на неё cronios запускается в режиме "run continuesly".
3. NoteCuts
✳️*️⃣*️⃣ │ iOS 9.0.0 (?) — 12.4.9
Команда для запуска NoteCuts одним кликом
Данная команда от создателя Cronios, посему похожа на Cronios интерфейсом и принципом работы, однако имеет от Cronios серьёзные отличия. В отличии от Cronios, она проверяет не время и дату, а наличие указания на выполнение определённой команды в фкоторый предварительно сохраняется в Dropbox/Заметки/Evernote. То есть, к примеру, вы можете настроить IFTTT чтобы оно, при срабатывании триггера, добавляло в файл указание на выполнение определённой команды на вашем устройстве, Notecuts проверит файл, найдёт указание и выполнит команду. Всё это произойдёт в фоне. Главные минусы этого способа, как и у Крониоса, повышенное энергопотребление, а также ограниченное время работы.
Полную инструкцию можно найти в самой команде.
Создание notecut
Рассмотрим создание notecut в Dropbox
Нажмите "New Notecut".
Выберите "Local NoteCut".
Введите название (любые символы) для вашего notecut.
Выберите хранилище для сохрание файла, необходимого для работы NoteCuts. Мы рассмотрим способ с Dropbox, однако, если не хотите, чтобы NoteCuts расходовало трафик, можете выбрать Apple Notes (заметки) и отключить синхронизацию заметок в iCloud настройках.
Оставьте следущее поле пустым
Введите путь до папки Dropbox, в которую NoteCuts будет сохранять необходимый файл. Если папка находится в корне, а не в другой папке, пишите просто её название без дополнительных символов.
Notecut создано. Нажав "Back to home", вы увидете его в главном меню.
Запуск и работа NoteCuts
Запустите команду, нажмите "run continuesly" и "ок".
Теперь команда запущена. Давайте разберёмся, как заставить её запустить команду.
Откроем папку из Dropbox, к которой вы указали путь, в каком-нибудь файловом менеджере, позволяющем редактировать текстовые файлы.
Откроем текстовый файл NoteCuts. Чтобы запустить любую команды из вашей библеотеки, доптшите в конце этого файла "▶️ ⟨название команды⟩", где ⟨название команды⟩ — это название, которую вы хотите запустить. Скобки и кавычки писать не надо. Например на изображении снизу показано, как запустить команду с названием "Тест".
Примерно через 30 с после того, как вы прописали команду, она запустится.
Таким образом, прописывая задачу выполнить определённую команду, вы можете запускать любые команды из любой точки земли на устройствах с вашим аккаунтом Dropbox и запущенным NoteCuts. К примеру, на телефоне ребёнка, или на iPad, который лежит дома.
Однако это был лишь фундамент для основного функционала команды
NoteCuts позволяет запускать команды сторонними сервисами по типа Zapier и IFTTT. Главное, чтобы сервис мог добавлять текст в файл Dropbox. Рассмотрим интеграцию с IFTTT.
Создаём новый апплет в IFTTT.
Нажимаем "This" и выбираем любой доступный триггер.
Затем нажмите "that", найдите и выберите "Dropbox".
Нажмите "Append to a text file".
Напишите:
- Имя файла notecut в Dropbox
- Пропишите запуск нужной команды, как было объяснено выше.
- Путь до файла в Dropbox, как было объяснено выше.
Например на скриншоте показано, как настроить запуск команды с именем "Тест", прописав в файл "NoteCuts (Тест)", который находится в по пути "notecuts".
Нажмите "Create action".
Нажмите "Finish".
Интеграция с IFTTT завершена.
Таким образом, можно сделать автоматизацию по геолокации, времени и т.д., которые не будут просить подтверждения перед запуском.
4. Будильник + Siri
✳️*️⃣ | iOS 12.0.0+ ; iPadOS 13.0.0+
СПОСОБ НЕ ПРОВЕРЕН
Суть этого хитрого способа заключается в создании рингтона для будильника, содержащего обращение к Сири для запуска команды. Для реализации этого способа есть специальная команда — AlarmCuts, однако можно обойтись и без неё.
Следующие несколько шагов только для iOS 12
Сперва откройте команды.
Затем откройте внутренности команды, запуск которой хотите запланировать троеточием.
Перейдите в настройки команды, нажав на "переключателели" в iOS 12- или на троеточие в iOS 13+.
Нажмите "Добавить для Siri"
Следующие шаги и для iOS 12 и для iOS 13.0.0+.
Откройте диктофон и запишите фразу на подобии «Привет, сири! ⟨Название команды⟩». Затем поделитесь получившейся аудиозаписью и сохраните её в "файлы".
Скачайте приложение Garage band, если у вас его и нет, и откройте.
Листайте, пока не найдёте "Аудиорекордер". Нажмите на него.
Нажмите на синий треугольник, чтобы он стал серым.
Нажмите на кнопку с серыми полосками.
Нажмите "Просмотреть объекты из программы «Файлы»"
Выберите из файлов ту запись, которую сделали ранее.
Зажмите и тащите её.
По надобности обрежьте по длине. Нажмите на стрелку вниз. Затем, нажмите "Мои песни"
Рингтон выгрузился. Нажмите "Выбрать".
Выберите созданный рингтон и нажмите на кнопку "поделиться"
Выберите "Ригтон"
Введите название своего ригтона, нажмите "Экспортировать" и "ОК"
Рингтон экспортирован. Теперь перейдите в приложение "Часы"
Откройте раздел "Будильник" и нажмите "+"
Настройте будильник на то время, в которое ваша команда должна запускаться. Отключите "Повторение сигнала".
Выберите экспортированную ранее запись.
Нажмите "Сохранить".
Будильник создан.
5. Autocuts
✴️*️⃣ │ iOS 13.0.0~beta 1 — 13.0.0~beta 5, 13.1.0+ ; iPadOS 13.0.0~beta 1 — 13.0.0~beta 5, 13.1.0+
Autocuts — очередная команда от Adam Tow. Она повязана на автоматизации по открытию приложения: после создания такой автоматизации, команда запускается после открытия назначенного приложения. Можно настроить запуск команды на срабатывание веб-триггеров или через определённое время. Работает только при включенном экране и запуске назначенных приложений.
Создание Autocut
Запустите команду и нажмите "New Autocut Assistant...".
Выберите команды, которые хотите автоматизировать.
Если вы хотите, чтоб команды запускались только на вашем устройстве, нажмите "iCloud (⟨Ваше устройство⟩)". В противном случае, нажмите "iCloud (Shared)" (на другом устройстве должен быть запущен autocuts)
Выберите: запускать команды на этом устройстве "The Device (⟨Ваше устройство⟩)", на всех устройствах "Any Device" и на другом конкретном устройстве "A specific Device"
Введите название autocut.
Выберите, раз в какое время этот autocut будет запускать команды.
Нажмите "Run Any Time".
Нажмите "ок".
Нажмите «Run in Background"
Выберите "No Input", если хотите, чтоб autocut не передавал входных данных командам.
Запомните это, ведь AutoCuts пригодится позже для полной автоматизации.
6. RepeatCuts
✳️*️⃣ │ iOS 13.0.0~beta 1 — 13.0.0~beta 5, 13.1.0+ ; iPadOS 13.0.0~beta 1 — 13.0.0~beta 5, 13.1.0+
Эта команда для автоматизации процессов на iOS 13 уже поинтереснее, ведь она способна работать пока устройство выключено. По принципу действия она похожа на Cronios, т.к. циклично выполняет команду раз в какое-то время. Имеет те же недостатки: быстрый разряд аккумулятора и ненадёжность.
RepeatCuts можно использовать для команд, которые должны проверять какое-то состояние раз в определённое время или запускать определённые процессы в нужное время.
В команде присутствует платный функционал, однако его можно взломать при помощи RepeatCuts Patcher.
Создадим repeatcut
Нажмите "ок"
Нажмите "Seconds"
Введите время, раз в которое должна(ы) запускаться команда(ы) и нажмите "ОК"
Введите имя вашего repeatcut и нажмите "ОК"
RepeatCut готов.
Так же желательно выключить оповещение при запуске, чтобы избежать лишних уведомлений
7. AutoCuts helper
✳️✴️*️⃣ │ iOS 13.0.0~beta 1 — 13.0.0~beta 5, 13.1.0+ ; iPadOS 13.0.0~beta 1 — 13.0.0~beta 5, 13.1.0+
Что ж, статья близится к завершению и настало время для настоящей полноценной автоматизации...
Эта команда позволит циклично запускать AutoCuts и не давать командам уснуть. Чтобы настроить AutoCuts, смотрите его описание выше. Принцип работы этой команды таков. Как известно, без подтверждения могут запускаться лишь некоторые автоматизации, и в их число входит автоматизация по режиму "не беспокоить". Остаётся лишь каким-то образом заставить эту автоматизацию регулярно срабатывать. Что делает эта команда: раз в определённое время она включает режим "не беспокоить" с таймером отключения через 30 секунд, а сама останавливает работу. По прошествии 30 секунд режим "не беспокоить" выключается, срабатывает автоматизация и снова запускает AutoCuts helper, после чего цикл повторяется. В промежутках между пробуждениями он запускает AutoCuts Длина всех промежутков настраивается.
Что нужно сделать перед запуском AutoCuts:
* — по желанию
• — обязательно
* Перейдите в настройках режима не беспокоить и поставьте "тишина" на "когда айфон заблокирован"; "допуск вызовов" — "от всех"
Зайдите в раздел автоматизаций и создайте автоматизацию "когда режим не беспокоить включается или выключается"
Поставьте действие "отправить сообщение" и вставьте текст, который можете скопировать ниже
𝖠𝗎𝗍𝗈𝗆𝖺𝗍𝗂𝗈𝗇
Затем Поставьте действие "запустить команду", выберите команду "AutoCuts" и выключите "показать при запуске"
Выключите "спрашивать до запуска"
Готово. Теперь запустите AutoCuts helper и выполните его настройку.
- Нажав на "Интервал запуска AutoCuts", введите время, раз в которое AutoCuts helper будет запускать AutoCuts. Рекомендуемое время — 20 с.
- Нажав на "Интервал пробуждения", введите время, раз в которое приложение команд будет пробуждаться. Рекомендуемое время — 1 мин.
* "Уведомления".
Работая, пока экран выключен, команды то и дело засыпают на небольшие промежутки времени, от нескольких минут до двадцати. Это не страшно, если вы не делаете автоматизации, которые должны выполняться в точное до минут время. Однако, есть решение и для этого. Вам потребуется установить приложение Toolbox pro (как получить премиум функции бесплатно: инструкция, файл ), представляющее из себя расширение для команд, добавляющее новые действия. В числе прочих действий, это приложение добавляет отложенные уведомления. Таким образом, периодически, если экран выключен, команда будет ставить отложенное уведомление, которое должно прийти через минуту. Если через минуту команды заснут, то пришедшее уведомление включит экран, вследствие чего команды проснутся и отложат новое уведомление.
- Чтобы остановить работу команды нажмите "остановить"
- Что касается расхода заряда, по предварительным тестам он почти не увеличивается.
- Используя связку AutoCuts + AutoCuts helper вы можете создавать любые автоматизации: по времени, по геопозиции, по веб-триггерам, и т.д.
- Наша статья подходит к концу, а вы теперь знаете всё об автоматизациях команд!
Спасибо большое за статью автору Телеграмм канала https://t.me/iOSAppsCache. Подписывайтесь на его канал, там много лайфхаков и полезностей от практика. Никакой воды, только суть.