Вики IT-KB

Пошаговые руководства, шпаргалки, полезные ссылки...

Инструменты пользователя

Инструменты сайта


apple-mac-os:macos-mojave:calendar-app-as-a-task-scheduler-in-macos-mojave

Приложение "Календарь" в качестве планировщика задач в macOS

Приложение «Календарь» в macOS может выступать в качестве планировщика задач. Чтобы задание работало, необходимо создать событие локальном календаре, а в качестве «напоминания» настроить открытие файла.

В данном примере 30 сентября в 09:00 будет открыт калькулятор.

В качестве открываемого файла можно выбрать любое другое приложение, процесс Automator или текстовый документ, что угодно.

Понятно, что просто открывать файлы или программы по расписанию мало кому интересно, поэтому рассмотрим пару задач, которые могут быть действительно полезны.


Планируем автоматическое переключение в тёмное и светлое оформление

Как известно в macOS 10.14 Mojave появилась, так называемая, тёмная тема. Многим она пришлась по вкусу, но мне неудобно использовать её утром и днём. Почему инженеры Apple не предусмотрели автоматическое переключение как в tvOS?

Для самостоятельной настройки автоматического переключения воспользуемся «Уведомлением» календаря в Automator.app.

Добавим единственный шаг — Запустить AppleScript, и вставим тело скрипта:

tell application "System Events"
	try
		tell appearance preferences
			set dark mode to not dark mode
		end tell
	end try
end tell

На месте можем проверить работу, выполнив скрипт:

Сохраняем задачу ⌘+S, присваиваем имя, например, Switch dark mode. После сохранения в приложении Календарь появится новый локальный календарь с именем Automator, в котором будет наша задача. Система сделает попытку выполнить задание и ОС спросит на это разрешение.

Нам необходимо двойное переключение, так как утром необходимо светлое оформление, а вечером тёмное. Продублируем задачу в календаре. Первую настроим на запуск каждый день, например, в 09:00, а вторую, например, на 16:00. С этого момента, каждый день оформление ОС будет автоматически переключаться.


Планируем автоматическую отправку SMS для запрета мобильных подписок

Так сложилось, что мобильные операторы нашей страны грешат тем, что разрешают себе любимым и всяким мошенникам автоматически подключать различный «премиум контент» за невменяемые деньги. При этом пользователь мобильного интернета может и не подозревать об этом до тех пор, пока счёт не будет на нуле. А с учётом авто-пополнений баланса мобильного ситуация может стать печальнее.

У любого мобильного оператора есть возможность отключить разрешение подписок, но проблема в том, что отключение временное и действует только 3 месяца.

Оператор связи, которым я пользуюсь, предлагает отключать возможность платных подписок следующим образом: необходимо отправить два SMS на номер 5151 с текстом УСТЗАПРЕТ1 и УСТЗАПРЕТСП.

Так как номер мобильного телефона связан с iMessage, и каждый пользователь связки Mac+iPhone может отправлять SMS-сообщение с компьютера, у нас появляется возможность автоматизировать процесс отправки SMS с помощью Automator.

Аналогично первому примеру, создадим «Уведомление» календаря и добавим единственный шаг - Запустить AppleScript и вставим тело скрипта:

tell application "Messages"
	set Text1 to "УСТЗАПРЕТ1"
	set Text2 to "УСТЗАПРЕТСП"
	set Recipient to "5151"
	try
		send Text1 to buddy Recipient of service "SMS"
		send Text2 to buddy Recipient of service "SMS"
	end try
end tell

Сохраняем и настраиваем выполнение задачи раз в 3 месяца.

Все созданные уведомления календаря располагаются в ~/Library/Workflows/Applications/Calendar

Так же macOS имеет стандартные для Linux консольные планировщики: cron, at.


Проверено на следующих конфигурациях:

Версия ОС
Apple macOS Mojave (10.14)

Автор первичной редакции:
Виталий Якоб
Время публикации: 13.10.2018 16:49

Обсуждение

Ваш комментарий:
 

apple-mac-os/macos-mojave/calendar-app-as-a-task-scheduler-in-macos-mojave.txt · Последние изменения: 13.10.2018 17:17 — Алексей Максимов