Как сделать кнопки в чат-боте?
Михаил, Хабаровск 1,2 тыс. просм.
Здравствуйте, делаю бота для записи клиентов и хочу, чтобы вместо ввода текста человек просто нажимал кнопку с готовым вариантом, например выбирал день недели. Как добавить такие кнопки в чат-бота?
Марина Соколова аналитик по внедрению ИИ
ответил
Кнопки в чат-боте технически называются клавиатурой, и в большинстве платформ для мессенджеров они уже встроены как готовая функция, отдельно программировать интерфейс не нужно.
Бывает два типа кнопок:
- Reply-кнопки подставляют текст в поле ввода, как будто пользователь напечатал его сам. Подходят для простого выбора из списка, например дней недели.
- Inline-кнопки прикрепляются прямо под сообщением и при нажатии отправляют боту скрытую команду, а видимый текст сообщения не меняется. Удобны для меню и пошаговых сценариев записи.
Если бот в Telegram и пишется на Python, кнопки собираются через объекты ReplyKeyboardMarkup или InlineKeyboardMarkup из библиотеки бота: задается список кнопок построчно, и это же сообщение с клавиатурой отправляется пользователю. Похожий принцип в WhatsApp Business API и во ВКонтакте — там кнопки описываются в виде структуры JSON, которую бот прикладывает к сообщению.
Если бот собирается без кода, в конструкторах вроде BotHelp или SaleBot кнопки добавляются перетаскиванием: в сценарии выбирается блок сообщения с кнопками, вписывается текст каждой кнопки и указывается, какой шаг сценария она запускает при нажатии.
Для записи клиентов по дням недели проще всего сделать reply-клавиатуру с семью кнопками или с ближайшими доступными датами и в коде проверять, какой текст пришел в ответ — дальше бот просто сверяет его со свободными слотами.
Задать свой вопрос
Вопросы проходят модерацию. Ответ эксперта публикуется на сайте в течение пары дней.
Вопрос отправлен на модерацию. После проверки он появится на сайте вместе с ответом эксперта.