К содержанию
BotLab

Интеграции

Интеграция Telegram-бота с Google Calendar

Опубликовано

Задача

Бот показывает свободные окна и записывает клиента в Google Calendar. Слот занят, если на это время уже есть событие.

Проблема

Два человека открывают одно окно. Оба получают «вы записаны», а в календаре остаётся одна встреча или две на одно время.

Реальный сценарий

Клиент выбирает услугу и день. Бот читает занятые интервалы и предлагает свободные. После подтверждения создаётся событие. Если между чтением и записью окно забрал другой человек, второй получает отказ и новый список, а не тихое двойное бронирование.

Как устроен обмен

Календарь — источник занятости. Бот не держит отдельную таблицу слотов, которая расходится с событиями. Событие пишут в согласованный календарь сотрудника или услуги. Фраза «я вас записал» без события в календаре не считается записью. Сам сценарий визита разобран в боте для записи.

Что можно и чего нельзя

Можно показать свободные окна и создать событие. Нельзя гарантировать слот, если его не проверили в момент записи. Бот не наводит порядок в календаре, куда личные дела ставят без правила.

Польза

Администратор не сверяет чат с календарём вечером. Второй клиент не оказывается в том же окне без явного отказа.

Шаги внедрения

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

Вопросы

Два клиента выбрали одно окно. Что увидит второй?

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

Слоты хранятся в боте?

Нет. Занятость читают из календаря при показе окон и ещё раз в момент записи.

Личная встреча сотрудника занимает слот?

Да, если она стоит событием в том же календаре. Бот увидит это время как занятое.