Выбор даты из календаря

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

6 минут чтения·Обновлено: 2026-10-04

01Что умеет календарь

Когда бот спрашивает дату, её обычно вводят текстом. Один пишет «в следующую пятницу», другой — «30/09», третий ошибается в цифрах.

С календарём бот показывает под вопросом небольшой календарь на месяц. Человек нажимает на день. Если нужно и время, он затем нажимает кнопку со временем. Вот и весь ответ.

Ввести дату текстом по-прежнему можно. Если человеку удобнее написать «завтра в 15:00», бот поймёт его так же, как раньше.

Где это пригодится:

  • запись на приём или визит
  • день доставки
  • время встречи или звонка
  • дата для напоминания

Для дат в прошлом, например дня рождения, календарь не подходит: прошедшие дни выбрать нельзя.

02Как включить

Календарь — это настройка вопроса, поэтому нужно сообщение, которое ждёт ответ. Если вы ещё не настраивали вопросы, начните со статьи Как задать вопрос и сохранить ответ.

  1. Нажмите на блок «Сообщение», чтобы открыть редактор.
  2. Включите Ожидать ответ.
  3. В поле Ожидаемый тип ответа выберите Дата или Дата и время.
  4. Включите Показать календарь для выбора.

Переключатель находится под типом ответа, над полем Сохранить ответ в переменную. Подсказка к нему: «Дату выбирают касанием, а не вводят вручную. Написать её текстом тоже можно».

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

Само сообщение с вопросом должно быть простым текстом: без кнопок и без медиа. Иначе календарь не появится — подробнее в разделе «Ограничения» ниже.

03Какие дни можно выбрать

Диапазон дат выглядит так: «От [0] до [90] дней вперёд». Числа — это дни от сегодняшнего, 0 означает «сегодня». По умолчанию человек может выбрать любой день от сегодня до 90 дней вперёд.

  • Не принимаете заказы на сегодня? Поставьте в поле От единицу.
  • Записываете только на две недели вперёд? Поставьте в поле до число 14.
  • Диапазон может быть до 730 дней — это около двух лет.

Дни недели, которые можно выбрать — по одной плашке на каждый день, от пн до вс. По умолчанию открыты все. Нажмите на плашку, чтобы закрыть день: например, закройте сб и вс, если не работаете по выходным. Хотя бы один день должен остаться открытым.

Первый день недели — понедельник или воскресенье, по умолчанию понедельник. Эта настройка меняет только вид календаря.

В чате дни вне диапазона и закрытые дни показаны точкой (·). Нажатие на точку ничего не делает.

04Кнопки времени (только «Дата и время»)

Если тип ответа — Дата и время, в настройках появляются Кнопки времени. Задайте три вещи:

  • первое время
  • последнее время
  • шаг: каждые 15, 30, 60, 90 или 120 минут

По умолчанию — с 09:00 до 18:00, каждые 60 минут. У каждого открытого дня одни и те же кнопки времени.

Под полями сразу видно, какие кнопки получит человек, например «10 кнопок: 09:00, 10:00, 11:00 …». Проверьте список перед сохранением.

Помещается не больше 48 кнопок времени. Если настройки дают больше, список обрывается, и редактор пишет, где именно: «Помещается не больше 48 кнопок, поэтому список заканчивается на …». Чтобы охватить длинный день, выберите шаг побольше.

05Часовой пояс бота

Даты и время в календаре считаются по часовому поясу бота, а не по поясу человека в чате. Под настройками об этом напоминает строка: «Даты и время считаются по часовому поясу бота (задаётся в настройках приложения)».

Как задать пояс:

  1. Откройте настройки приложения.
  2. Найдите раздел Часовой пояс — он под разделом Языки.
  3. Выберите пояс в поле Часовой пояс бота. Можно искать по городу. Если ваш бизнес там же, где вы, нажмите Взять мой пояс (…).

Если пояс не задан, бот считает по UTC — мировому эталонному времени. В настройках тогда написано: «Пояс не задан — бот понимает даты по UTC».

Почему это важно. Допустим, ваш бизнес в Москве, а пояс не задан. Человек нажимает 15:00 и имеет в виду московское время. Бот сохранит 15:00 по UTC — это 18:00 по Москве. Задайте пояс до запуска.

Этот же пояс бот использует для ответов текстом вроде «завтра в 15:00». Переход на летнее и зимнее время учитывается сам.

06Что сохраняется в переменную

Нажатие сохраняет ровно то же, что и ответ текстом. Остальному сценарию не важно, как человек ответил.

Тип ответаЧто сохраняетсяПример
ДатаДень в виде год-месяц-день2026-09-30
Дата и времяТочный момент, записанный по UTC2026-09-30T12:00:00.000Z

Пример для «Даты и времени» — это 15:00 по Москве. Значение записано по UTC, поэтому означает один и тот же момент в любой точке мира.

Переменную выбирают в поле Сохранить ответ в переменную, как у любого вопроса. Всё, что уже работает с датой, введённой текстом, работает и здесь: Задержка до этого момента, проверка даты в блоке «Условие» или дата в следующем сообщении через плашку переменной.

07Что видит человек в чате

Чат в Telegram: вопрос, под ним календарь — ◀ Ноябрь 2026 ▶, строка с днями недели, числа, а каждая суббота показана точкой, потому что закрыта

  1. Текст вопроса и под ним календарь на месяц: название месяца между стрелками ◀ и ▶, строка с днями недели, ниже числа.
  2. Прошедшие дни, закрытые дни и дни вне диапазона показаны точкой (·).
  3. Стрелки листают месяцы внутри того же сообщения. Чат не засыпает новыми календарями.
  4. Для Даты и времени нажатие на день заменяет календарь кнопками времени этого дня. Если это сегодня, уже прошедшее время скрыто.
  5. После выбора календарь сворачивается в одну строку с ответом, например «📅 ср, 30 сент. 2026 г. · 15:00». Затем сценарий идёт дальше.

Названия месяцев и дней недели показываются на языке человека.

Вместо нажатия в любой момент можно написать ответ текстом.

Если человек нажмёт на старый календарь, когда на вопрос уже ответили, бот напишет: «Этот календарь уже неактуален. Воспользуйтесь последним сообщением». Больше ничего не произойдёт.

08Ограничения

Только сообщения без кнопок и медиа. Календарь появляется, только если у вопроса нет кнопок и нет медиа. Если есть, редактор предупредит: «У сообщения есть кнопки или медиа — календарь не появится. Дату придётся ввести текстом». Нужны картинка или кнопки? Отправьте их отдельным сообщением перед вопросом.

Telegram и веб-чат. В других каналах, например в Instagram и почте, дату вводят текстом, как раньше.

Ответ текстом не ограничен. Диапазон и закрытые дни влияют только на то, что можно нажать. Если воскресенье закрыто, а человек напишет дату в воскресенье, ответ всё равно примут. Учтите это, если в закрытый день записывать нельзя ни в коем случае.

Календарь не знает вашего расписания. Все видят одни и те же дни и время. Календарь не проверяет, занят ли слот. Это выбор даты, а не система записи.

Без прошлых дат. Прошедшие дни выбрать нельзя, поэтому для дня рождения и других дат в прошлом календарь не подходит. Такие даты пусть вводят текстом.

09Что дальше

Как отправить человека по разным веткам в зависимости от выбранной даты: Блок «Условие»: основы

Попробуйте в своём боте

Соберите это на бесплатном тарифе, пока шаги свежи в памяти. Карта не нужна.

Создать бота бесплатно