Skip to main content

Бот Секретарь - базовая логика работы

В этом руководстве мы расскажем о том как создать БАЗОВУЮ ЛОГИКУ своего Бота Секретаря при помощи конструктора @MenuBuilderBot.

ДЛЯ СВЕДЕНИЯ: функционал Ботов Секретарей (ранее Бизнес-ботов) был добавлен конструктор практически сразу после его появления в Telegram. На тот момент мы не знали насколько вам будет интересна данная опция. Поэтому реализуется она самым простым способом - практически средствами самого конструктора. Если Боты Секретари будут вызывать интерес - мы продолжим развивать эту ветку функционала.

Особенности работы

Боты Секретари созданные при помощи конструктора @MenuBuilderBot - в своем базовом виде - реализованы посредством создания простого и понятного функционала Нижнего Меню. Вы создаёте кнопки нижнего меню и сообщения, а юзер, не видя их, взаимодействует с ними опосредовано - через инструкции которые вы можете давать им в сообщениях - указывая команды или ключевые слова.

При этом взаимодействие с нижним меню в режиме Бота Секретаря имеет свои особенности и ограничения:
● Кнопки в режиме «Только Админ» доступны юзерам только по командам.
● «Невидимые» кнопки доступны юзерам по имени.
● Названия кнопок меню рекомендовано писать в НИЖНЕМ регистре (пояснение см. ниже).
● Команды в сообщениях личных чатов НЕ отображаются - их желательно делать копируемыми внутри сообщения.
● Сообщение об ошибке (Неизвестная команда) - не показывается.
● Пересланные сообщения (Forward) - не показываются (техническое ограничение самого Telegram).
● Никакой функционал кроме сообщений не работает.
● Инлайн кнопки и нижнее меню не показывается.
● Формы (вопросы) не работают.
● Закрытые Условием кнопки и кнопки с функционалом (Action-ы, Бонусы и прочее) игнорируются.
● В режиме «Обслуживание» - бот НЕ отвечает в личке и сообщение самого Обслуживания - не показывается.
● В режиме «Быстроклик» - бот игнорирует множественные сообщения и само сообщение предупреждения - не показывается.

ВАЖНО: Все отправляемые юзером сообщения принудительно приводится к нижнему регистру. Поэтому, названия кнопок меню Бота Секретаря тоже необходимо писать в нижнем регистре. В этом случае будет не важно как юзер написал то или иное слово - бот его сможет правильно обработать.

Создание логики бота секретаря

Подключите ваш бот к конструктору ботов MenuBuilderBot

Для того чтобы создать логику Бота Секретаря на конструкторе @MenuBuilderBot, ваш бот должен быть добавлен в качестве Меню-бота.

О том как подготовить бот к работе (создать новый бот, активировать режим Секретаря, подключить его к аккаунту Telegram и добавить в конструктор) смотри в предыдущем руководстве: «Бот Секретарь - общие сведения».

Создание ответов бота

В конструкторе @MenuBuilderBot создание БАЗОВОЙ ЛОГИКИ Бота Секретаря аналогично созданию Меню-бота. Отличаются они лишь тем что «Секретарь» работает опосредованно через личные чаты, без показа нижнего меню, однако в сущности обращение происходит к тем же самым командам и кнопкам меню как и в обычном Меню-боте. Таким образом если вы освоили базовые механики работы с Меню-ботом, у вас не будет сложностей для создания «Секретаря».

При написании данного руководства мы исходим из того что вы имеете представление о создании меню ботов.
Если это не так, то для начала ознакомьтесь с базовыми возможностями:
Создание кнопок
Добавление сообщений
Команды
Форматирование текста в Telegram

Подход 1

Бот Секретарь отвечает пользователю только на известные ему команды и слова.

Это самый простой вариант, как с точки зрения создания бота, так и его возможностей. Он больше всего подходит новичкам (в работе с конструктором), для создания ботов с простой логикой, а так же если вы скорее ожидаете информации от юзера, нежели предполагаете что бот будет вести юзера по жёсткому сценарию.

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

Например:
Кнопка «расписание» - может содержать сообщение с графиком вашей работы (название в нижнем регистре).

Таким образом если пользователь отправит в личный чат слово "Расписание" - бот ответит ему заданным в этой кнопке сообщением.

НАПОМИНАНИЕ: В режиме «Секретаря» все сообщения пользователя приводятся в НИЖНИЙ РЕГИСТР. То есть названия кнопок нижнего меню пишите в НИЖНЕМ РЕГИСТРЕ - тогда ваше ключевые слова не будут зависеть от того как фактически юзер написал его в сообщении. 

В БИЗНЕС БОТАХ (если используете Telegram-Premium) для того чтобы первоначально сообщить юзеру доступные ему Ключевые Слова или Команды можно использовать «Приветственное Сообщение». Чтобы задать приветственное сообщение:
1. Перейдите в Настройки вашего аккаунта
2. Нажмите «Telegram для бизнеса»
3. Выберите «Приветственное Сообщение»
4. Задайте само сообщение указав в нем нужные ключевые слова.
При создании Приветственного Сообщения также можно указать и частоту его показа.

Подход 2

Бот Секретарь, при помощи Ключевых Слов или Команд, ведёт пользователя по заданному сценарию, реагируя сообщением по умолчанию на ЛЮБОЕ неизвестное сообщение пользователя.

Используйте данный подход если вы хотите ПОСЛЕДОВАТЕЛЬНО сообщить пользователю нужную вам информацию, однако, при этом, не подразумевается что пользователь будет писать что-то от себя - потому как на любое неизвестное боту сообщение пользователя бот будет отвечать заданным сообщением "по умолчанию".

Создание ответов бота происходит аналогичным образом - как описано выше - при помощи кнопок и сообщений. Не будем отдельно на этом останавливаться.

Для того чтобы задать сообщение "по умолчанию" которое будет показано пользователю в ответ на неизвестную команду (и вернёт его в начало сценария), вам необходимо заменить стандартное сообщение об ошибке на своё собственное которое будет вызываться по команде из созданной вами кнопки.

ИНФО: в конструкторе есть системное сообщение которое показывается юзеру если он отправляет боту неизвестное сообщение (которое не описано в его логике) или команду (реакция на которую не задана). Сделано это для того чтобы юзер понимал что бот работает и отвечает, а не просто молчит. Механика создания сообщения "по умолчанию" для Бота Секретаря предполагает использовать эту особенность, подменив системное сообщение - своим собственным.

Для этого надо активировать расширение для кастомизации сообщений и, в частности, «Неизвестная команда» (Сообщения об Ошибке).

«33. Кастомные Сообщения»
Для подключения перейдите в вашем боте:
☞ 🔐Админ | 🧩Расширения | 📂Кастомизация

После чего настройте команду сообщения об ошибке:
☞ 🔐Админ | 🎚Кастомизация Бота | 🚯 Сообщение об Ошибке

1. Задайте своё сообщение об ошибке обычным способом (без него добавление команды не доступно).
2. НЕ ОБЯЗАТЕЛЬНО - нажмите «Не Показывать Сообщение» чтобы включить эту опцию (её включение запретит боту показ стандартного сообщения об ошибке при наличии команды).
3. Задайте саму команду (например /default).

ВАЖНО: в Боте Секретаре не работают Системные команды типа /start и /home.

Теперь если пользователь отправит боту неизвестную команду или сообщение на которое бот не имеет ответа - бот вызовет указанную здесь команду.

Чтобы команда отработала необходимо создать кнопку с этой командой (/default) и добавить в неё сообщение которое будет являться началом вашего сценария и содержать Ключевые Слова либо Команды необходимые пользователю для начала общения с ботом.

О том как добавить команду кнопке - смотри в «Руководстве по Командам».

Для создания последовательного сценария в каждом последующем сообщении должны содержаться Ключевые Слова или Команды которые позволят пользователю выбрать дальнейшее направление диалога с ботом.

❖ Дополнительная информация

Кнопки меню, при желании, можно скрывать двумя способами.

1. Перевести их в режим «Только Админ», при этом сообщение кнопки будет доступно только по команде если она задана для этой кнопки.
2. Режим «Невидимая Кнопка» - в этом случае сообщение кнопки будет доступно как по её имени так и по команде если она добавлена.

Функционал Невидимых кнопок доступен в Расширениях и приобретается отдельно.
«36. Невидимые Кнопки и Сообщения»
Для подключения, перейдите в вашем боте:
☞ 🔐Админ | 🧩Расширения | 📂Кнопки

Оформление Ключевых Слов и Команд

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

О форматировании текста в Telegram читай в «руководстве по markdown».