Что понадобится до начала разработки
Создание бота начинается не с API, а с одного полезного сценария. Сначала определите, кто откроет бота, какие данные он должен передать и что произойдёт после завершения диалога.
- Цель
Например: принять заявку, записать клиента, ответить на типовые вопросы или отправить сотруднику уведомление.
- Основной путь
Опишите действия пользователя по порядку: старт, выбор кнопки, ввод данных, подтверждение и результат.
- Получатель данных
Решите, куда должна попасть заявка: менеджеру, в CRM, таблицу, базу данных или внутренний сервис.
- Критерий готовности
Составьте короткий проверяемый сценарий, который должен полностью пройти перед запуском.
1. Создайте бота и получите токен
Бота создают на платформе Max для партнёров или через мини-приложение «Max для бизнеса». После создания и необходимых проверок платформа выдаёт токен для обращения к API.
- Укажите понятное имя, описание и изображение бота.
- Получите токен в настройках созданного бота.
- Храните токен в переменной окружения, а не в исходном коде.
- Не публикуйте файл окружения и токен в открытом репозитории.
В актуальном API токен передаётся в заголовке Authorization. Передача токена в query-параметрах больше не поддерживается.
2. Подключите Max Bot API
Серверная часть отправляет HTTPS-запросы к API Max и получает события от пользователей. Перед разработкой проверьте токен запросом информации о текущем боте, затем вынесите работу с API в отдельный клиент.
- API-клиент
Отвечает за авторизацию, отправку сообщений, загрузку файлов и обработку HTTP-ошибок.
- Обработчики
Разбирают команды, сообщения, нажатия кнопок и переводят пользователя на следующий шаг.
- Бизнес-логика
Проверяет данные, создаёт заявку, меняет статус и вызывает внешние сервисы.
- Хранилище
Сохраняет пользователей, состояние диалога, заявки и историю важных операций.
3. Настройте получение событий
Бот должен получать сообщения и нажатия кнопок. Для тестов можно использовать Long Polling, но для рабочего запуска официальная документация рекомендует Webhook.
- Long Polling
Подходит для локальной разработки и короткой проверки, когда публичный HTTPS-адрес ещё не подготовлен.
- Webhook
Max отправляет события на ваш HTTPS-адрес. Сервер должен быстро проверить запрос и передать событие обработчику.
- Проверка источника
На webhook-сервере проверяйте секретный заголовок и отклоняйте запросы с неверным значением.
- Повторная обработка
Сохраняйте идентификатор события или операции, чтобы повторная доставка не создала вторую заявку.
4. Соберите сценарий и интеграции
После получения событий добавьте основной путь пользователя. Каждый шаг должен понимать ожидаемый ввод, ошибочный ввод, повторное нажатие и возврат пользователя после паузы.
- Покажите приветствие и одну понятную кнопку начала.
- Собирайте только те данные, которые нужны для следующего действия.
- Перед подтверждением покажите пользователю сводку заявки.
- Сохраняйте заявку до отправки в CRM или другой внешний сервис.
- При временной ошибке интеграции повторяйте передачу и сообщайте администратору.
Если бот должен только отправлять уведомления в Max, пользовательский диалог может быть минимальным. Основная работа тогда находится в интеграции с CRM, сайтом или внутренней системой.
5. Проверьте и запустите бота
Перед публикацией пройдите обычный сценарий и ошибки. Проверяйте не только ответ в чате, но и запись в базе, доставку заявки менеджеру и поведение после перезапуска сервера.
- Старт нового пользователя и повторный запуск существующего.
- Пустые, слишком длинные и неверные ответы.
- Повторное нажатие кнопки и повторная доставка события.
- Недоступность CRM, базы данных или внешнего API.
- Корректная работа webhook по HTTPS после перезапуска.
- Отсутствие токенов и других секретов в логах и репозитории.
Частые вопросы
Можно ли создать бота в Max без программирования?
Простой линейный сценарий можно собрать в конструкторе, если он поддерживает нужные возможности Max. Для собственной логики, хранения данных, CRM и обработки ошибок обычно нужна разработка.
Можно ли перенести Telegram-бота в Max?
Часто можно сохранить бизнес-логику, базу данных и интеграции. Обработку событий, кнопок, файлов и идентификаторов нужно адаптировать под Max Bot API.
Сколько времени занимает создание?
Срок зависит от сценариев, ролей, интеграций и требований к стабильности. Для оценки нужна хотя бы схема основного пути и список систем, куда передаются данные.
Что делать дальше
Если нужен учебный проект, начните с одного сообщения и одной кнопки, затем добавьте хранение состояния. Если бот нужен бизнесу, сначала подготовьте сценарий заявки и правила передачи данных.
Разработка Max-ботов
Состав услуги, этапы, интеграции, ограничения и формат оценки.
Перенос Telegram-бота в Max
Что можно сохранить и какие части придётся адаптировать.
Кейс Max Request Bot
Открытый демонстрационный проект с модульной архитектурой.
CRM и API-интеграции
Передача заявок из бота в CRM, таблицу или внутренний сервис.