Оглавление
В приложении ОЛ Телеграм можно не только создавать простые кнопки, но и управлять поведением клавиатуры, показывать подсказки в поле ввода, добавлять ссылки, передавать callback-значения и запрашивать контактные данные пользователя.
В этой инструкции рассмотрим доступные конструкции и особенности их использования.
Обычные кнопки
Стандартная кнопка создается с помощью текста в двойных квадратных скобках: [[Название кнопки]]
Например: Выберите раздел: [[Цены]] [[Поддержка]]
После нажатия название кнопки отправляется в чат как обычное сообщение пользователя.
Стандартные кнопки создают одноразовую клавиатуру. После нажатия клавиатура исчезает, если ответ бота не вызывает новый набор кнопок.
Если в сообщении находится только код кнопок, бот может отправить вместе с ними пустое сообщение. Поэтому перед кнопками рекомендуется добавлять поясняющий текст.
Правильно: Выберите интересующий вас раздел: [[Цены]] [[Поддержка]]
|
Приложение Некорректная настройка |
Телеграм |
|
Приложение Правильная настройка |
Телеграм |
Постоянная клавиатура
Постоянная клавиатура не исчезает после того, как пользователь нажимает одну из кнопок.
Для её создания используйте модификатор: [#СохранятьКлавиатуру#]
Например: [#СохранятьКлавиатуру#]Выберите действие: [[Цены]] [[Поддержка]] [[Главное меню]]
| Приложение |
Телеграм |
Чтобы впоследствии убрать клавиатуру, используйте команду: [#УбратьКлавиатуру#]
Ее можно добавить в сообщение, которое бот отправляет после завершения сценария.
Например: [#УбратьКлавиатуру#]Спасибо! Если появятся новые вопросы, напишите нам
Ожидание ответа пользователя
Телеграм позволяет отвечать на конкретное сообщение — при этом пользователь видит, на какое сообщение бота он отвечает.
Чтобы включить такой режим, используйте конструкцию: [#ЖдатьОтвета#]
Например: [#ЖдатьОтвета#]Пожалуйста, уточните ваш вопрос.
В результате сообщение бота будет выделено как сообщение, на которое пользователь должен ответить.
Подсказка в поле ввода
Вместе с ожиданием ответа можно изменить текст подсказки внутри поля ввода Телеграм.
Используйте конструкцию: [#Подсказка|ВАШ ТЕКСТ#]
Например: [#ЖдатьОтвета#][#Подсказка|Цена, преимущества или другое#]Пожалуйста, уточните, что вас интересует.
Пользователь увидит подсказку непосредственно в поле ввода.
Такой сценарий можно использовать после выбора продукта. Например, пользователь нажимает кнопку «ОЛ Телеграм», после чего бот просит уточнить запрос и показывает варианты: Цена, преимущества или другое
Для каждого из этих вариантов необходимо создать отдельный ключ и ответ в настройках меню.
Полное совпадение с ключом
При настройке reply-сценариев сообщение пользователя должно полностью совпадать со значением в поле «Ключ».
Например, если указан ключ: ОЛ Телеграм - бот отреагирует на сообщение ОЛ Телеграм, но может не отреагировать на другие формы:
- ОЛ в Телеграме;
- расскажите про ОЛ Телеграм;
- сколько стоит ОЛ Телеграм?
Поэтому заранее продумайте возможные формулировки пользователя или предложите ему готовые варианты с помощью кнопок и подсказок.
Кнопки со ссылками
Чтобы создать кнопку, которая открывает ссылку, необходимо использовать встроенную клавиатуру: [#ВстроеннаяКлавиатура#]
Например: [#ВстроеннаяКлавиатура#][[Открыть сайт|url=https://example.com]]
В результате пользователь увидит inline-кнопку внутри сообщения. После нажатия Телеграм предложит перейти по указанной ссылке.
Указывайте полный адрес, включая https://
Callback-кнопки для автоматизации
Telegram поддерживает параметр callback_data. Он позволяет передать заданное значение после нажатия кнопки, не заставляя пользователя вручную вводить текст.
Для такой кнопки также применяется встроенная клавиатура: [#ВстроеннаяКлавиатура#][[ТЕКСТ КНОПКИ|callback_data=ЗНАЧЕНИЕ]]
Например: [#ВстроеннаяКлавиатура#][[Закрыть обращение|callback_data=close_request]]
После нажатия кнопки значение close_request будет записано в универсальный список «ОЛ Telegram- Сообщения».
Полученное значение можно использовать:
- как условие запуска бизнес-процесса;
- для изменения стадии обращения;
- для назначения ответственного;
- для закрытия заявки;
- для запуска другой автоматизации.
Значение callback_data должно быть длиной от 1 до 64 байт в кодировке UTF-8. Для служебных значений лучше использовать короткие латинские обозначения без пробелов.
Inline-кнопки, подставляющие текст
Можно создать inline-кнопку, после нажатия которой заданный текст появится в поле сообщения пользователя.
Используйте конструкцию: [#ВстроеннаяКлавиатура#][[ТЕКСТ КНОПКИ|inline_query=ПРЕФИКС]]
Например: [#ВстроеннаяКлавиатура#][[Задать вопрос|inline_query=Вопрос: ]]
После нажатия в поле ввода Телеграм будет добавлен указанный префикс. Пользователь сможет дополнить его и отправить сообщение.
Эта возможность удобна, когда нужно подсказать структуру обращения, но сохранить пользователю возможность отредактировать текст.
Запрос номера телефона
Бот может показать кнопку, с помощью которой пользователь передаст свои контактные данные.
Используйте конструкцию: [[Отправить контакт|request_contact]]
После нажатия Телеграм запросит у пользователя разрешение на передачу контакта. Данные будут отправлены только после подтверждения.
Запрос контакта работает только в личной переписке с ботом.
Запрос геолокации
Чтобы запросить местоположение пользователя, используйте конструкцию: [[Отправить местоположение|request_location]]
После нажатия Телеграм запросит разрешение на передачу геопозиции.
Обратите внимание:
- функция работает только в личной переписке с ботом;
- отправка геолокации доступна в мобильном приложении Telegram;
- в Desktop-версии Телеграм возможность отправки местоположения может быть недоступна.
Полученные сообщения с контактом или местоположением можно переслать из диалога с ботом в другой чат или группу.