Перейти к содержимому

3. Узлы Google Calendar и Google Calendar Trigger

Важно

Видеоролики сейчас находятся в процессе обновления. Они могут частично не согласовываться с актуальным состоянием n8n.

В этом уроке вы научитесь управлять событиями Гугл-календаря и реагировать на их изменения

Практика

Сначала вы создадите событие в Гугл-календаре, используя форматирование дат. А потом с наступлением этого события вы “переместите” его на новое время

Это будут два workflow — один для создания события, второй — для манипуляций с ним. Откройте две вкладки с пустыми процессами n8n и назовите их, например, Google Calendar Task_1 и Google Calendar Task_2

Упражнения

  1. Определите временные рамки. В первом workflow заведите узел Set cо свойствами начала и окончания мероприятия start и end. Формат дат пусть будет DD-MM-YYYY HH:mm:ss. Например, 21-12-2021 17:00:00. Разницу между датами установите пару часов, чтобы оно было не слишком большим и не слишком коротким. И не очень далеко отстояло от сегодняшней даты.

    Пример. Сегодня 21 декабря 2022, я завел даты 22-12-2022 11:00:00 и 22-12-2022 13:30:00.
  2. Подготовка данных. Подготовьте начальную дату для Google Calendar, Подробности на странице в Notion.
  3. По примеру предыдущей задачи, добавьте еще один узел Date & Time, но уже для свойства с датой окончания, end.

    Запустите процесс, чтобы подготовить данные для следующего узла.
  4. Создание события в календаре. Наконец, подключите узел Google Calendar, выберите ему учетные данные. Пусть он создает событие с началом и концом в start и end. Дайте ему какой-нибудь заголовок, например, Важная встреча.

    Сохраните процесс, запустите и посмотрите на календарь.
  5. Отлавливаем событие. Теперь перейдем ко второму процессу. Добавьте триггер Google Calendar Trigger. Для начала пусть он реагирует на новые события — так процесс будет проще отлаживать. Потом вы можете поменять на другой режим — например, при наступлении события. Для подробностей можете раскрыть страницу в Notion.
  6. Новое начало события. Добавьте узел Date & Time в режиме Calculate a Date. Примите свойство start dateTime и добавьте к нему 1 или 2 дня. Назовите Property Name start. Назовите узел Прибавить 2 дня к началу.
  7. Новое окончание события. Продублируйте предыдущий узел, добавьте в цепочку. Здесь принимайте end dateTime и складывайте в свойство end. Назовите узел Прибавить 2 дня к окончанию.
  8. Создаём новое “перенесенное” событие. Добавьте Гугл-календарь в режиме “Создать событие”. В Start и End вставьте… конечно, start и end.

    Для напоминание, что это “перенесенное” событие, добавьте опцию Summary, в которую воткните название из триггера, но перед ним пропишите в скобках (перенесено). Например, должно получиться (копия) Совещание в волшебном лесу.

    Назовите этот узел Создать событие.
  9. Изменяем это событие. Добавьте еще один узел Гугл-календаря, на этот раз в режиме “Обновить событие”. ID возьмите как входящие данные из предыдущего узла. Добавьте пару параметров, которые хотите изменить:
    – Цвет (Color) — например, самый первый цвет
    – Описание (Description) — например, “Это обновлённое событие”

    Назовите этот узел Изменить событие.
  10. Удаляем первоначальное событие. Теперь, когда мы создали получили событие по триггеру, добавили его копию на 1-2 дня вперёд и отредактировали копию, нужно удалить оригинал.

    Добавьте узел календаря в режиме “Удалить событие”. В поле Event ID надо вставить id из узла триггера (а не использовать id из входящих данных — тогда вы удалите копию).

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

Отметьте все решенные задачи на странице шаблона упражнений Google Calendar и Date & Time.

Следующий урок → Узел Google Sheets
Предыдущий урок → Работа со временем и датами
К курсу → Автоматизация с n8n: теория и практика
Мои курсы выходят в открытый доступ!