🎬Видео скоро появится
Нажми, когда разберёшься с уроком. Галочка появится в меню слева.

Урок 27. Google Sheets и Google Calendar

Подключаем Google безопасно, без паролей и без сложного OAuth. Ты просто даёшь боту доступ к конкретной таблице или календарю.

Цель урока

После урока ты умеешь безопасно подключить Google через служебный email (без пароля и OAuth), понимаешь разницу «Редактор / Просмотр», и знаешь два инструмента бота: Google Sheets (бот пишет заявки строкой в твой лист) и Google Calendar (бот сам ставит записи, зная твой график, длительность слота и сколько клиентов помещается на одно время).

Простыми словами

Помнишь, в Уроке 18 бот записал Айгерим на пробный урок? А в Уроке 23 отправил ей подтверждение на почту. Теперь, куда именно падает эта запись: в твою Google Таблицу (лист «Пробные уроки») или в твой Google Календарь. Подключается через сервисный аккаунт это служебный email платформы, которому ты расшариваешь нужный файл. Твой пароль при этом никто не видит.

📍 Где: меню проекта → «Интеграции» (там служебный email) и «Функции» (там подключаешь Sheets/Calendar боту).

Слайды урока

Урок 27 · интеграции
Google Sheets и Calendar
Подключаем Google безопасно, без паролей и сложного OAuth. Просто даёшь боту доступ к нужному файлу.
1 / 8

Непонятные слова: на пальцах

  • Интеграция: связь бота с другой программой (Google, CRM), чтобы они работали вместе. Как соединить два лего-блока: щёлкнул, и они действуют заодно.
  • Google Таблицы (Sheets): обычная онлайн-таблица, как Excel в браузере. Бот может писать в неё заявки и читать оттуда прайс/график. Пример: лист «Пробные уроки», куда падает запись Айгерим.
  • Лист: вкладка внутри таблицы (снизу). Ты указываешь боту точный лист, например «Пробные уроки», чтобы он писал именно туда.
  • Google Календарь: онлайн-ежедневник, куда бот ставит записи и где смотрит свободное время по твоему графику.
  • Слот: одно свободное «окошко» для записи. Его длительность (например, 1 час) ты задаёшь сам.
  • «Записей на одно время» (кресла): сколько клиентов бот запишет на один и тот же слот. Пример: 3 = «три кресла» (три преподавателя ведут параллельно). 1 = строго по одному.
  • Сервисный аккаунт: служебный email платформы, которому ты даёшь доступ к своему файлу. Как выдать помощнику ключ только от одной комнаты. Твой личный пароль при этом не нужен.
  • Расшарить (дать доступ): открыть конкретный файл этому служебному email. Пример: в таблице → «Настройки доступа» → вставил email → «Редактор». Как впустить одного гостя в один кабинет.
  • Редактор / Просмотр: уровень доступа. «Просмотр» = только читать; «Редактор» = читать и писать. Боту для записи заявок нужен Редактор.

Зачем это нужно

  • Таблица, универсальный «журнал»: все заявки автоматически падают в привычный Google Sheets, а бот читает оттуда прайс/расписание.
  • Календарь: бот сам ведёт запись в твоём Google Календаре, который ты и так смотришь с телефона, и уважает твой график, длительность приёма и число «кресел».

Как подключить (по шагам)

  1. В разделе «Интеграции» скопируй служебный email платформы.
  2. Открой свою Google Таблицу или Календарь → «Настройки доступа» → добавь этот email как редактора.
  3. В «Функциях» подключи Google Sheets или Google Calendar боту, укажи ссылку на таблицу (и лист) или ID календаря (не «primary»).
  4. Готово: бот получил доступ только к тому, что ты расшарил, и ни к чему больше.

Что умеет бот

  • Google Sheets: записать новую строку (лид), найти/прочитать данные (прайс, график), обновить/удалить строку.
  • Google Calendar: проверить свободные слоты по твоему графику, создать/перенести/отменить событие (запись), напомнить клиенту.

Настройки календаря (глубже)

  • ID календаря: укажи адрес своего календаря (вида ...@group.calendar.google.com); служебный primary не подойдёт.
  • График работы: рабочие дни и часы; из них бот сам считает свободные окна.
  • Длительность слота и на сколько дней вперёд открыта запись (по умолчанию 7, максимум 14).
  • «Записей на одно время»: сколько клиентов на слот (1 = по одному, 3 = «три кресла»).
  • Напоминание клиенту: бот сам напишет клиенту перед визитом (по умолчанию выключено).

Пример (образовательный центр «Профи»)

«Профи» расшарил боту Google Таблицу с листом «Пробные уроки». Айгерим записалась на пробный (Урок 18), и её запись автоматически появилась строкой в таблице (имя, телефон, предмет, время). Администратор работает в привычном Google Sheets. А кто ведёт запись в календаре: у того бот сразу проверяет свободные окна и ставит событие, зная, что на одно время помещается, скажем, 3 ученика (три преподавателя).

Когда нужно / когда нет

  • Ведёшь учёт в Google Таблицах, запись в Google Календаре.
  • Всё уже есть во внешней CRM: тогда подключай её, а не таблицы.

Частые ошибки

  • Расшарили как «Просмотр», а не «Редактор» → бот не может писать. Дай доступ редактора.
  • Расшарили не тот файл → бот пишет не туда. Проверь, что доступ дан именно нужной таблице/календарю.
  • Указали «primary» как календарь → это технический календарь бота, тебе не видимый. Укажи ID своего календаря.

Вопросы новичка

  • Это безопасно? Я не хочу давать пароль. Пароль и не нужен. Ты даёшь доступ только к одному файлу служебному email, как ключ от одной комнаты. Остальное Google-аккаунта бот не видит.
  • Бот не пишет в таблицу: почему? Чаще всего доступ дан как «Просмотр». Поменяй на «Редактор», и бот сможет писать.
  • Расшарил, но бот пишет не туда. Проверь, что доступ дан именно нужной таблице/календарю и что указан правильный лист (например, «Пробные уроки»).
  • Сколько клиентов бот запишет на одно время? Сколько задашь в «Записей на одно время»: 1, строго по одному, 3, «три кресла» параллельно.
  • У меня уже есть Bitrix/amoCRM, Google-таблицы нужны? Не обязательно. Если учёт ведётся во внешней CRM, подключай её. Таблицы, для тех, кто ведёт учёт в Google.

Проверь себя

  • Почему для записи заявок нужен доступ «Редактор», а не «Просмотр»?
  • Что задаёт «Записей на одно время» и чем 1 отличается от 3?
  • Почему нельзя указать «primary» как календарь бота?

Что дальше

Для отправки писем от твоего Gmail есть Gmail. А если у тебя уже есть своя CRM, бот заведёт лид Айгерим прямо в неё: Урок 28: внешние CRM.

Подробнее (техническая документация)