Подготовка и управление

Уровень сложности: продвинутый

С навыками разработки вы можете создавать чат-ботов с неограниченным потенциалом и возможностью размещать мини-приложения в MAX

В этом разделе разберём, с чего начать создание бота, как настроить его взаимодействие с API MAX, как управлять ботом из чата и подключить к нему готовое мини-приложение

Регистрируем бота в MAX

  1. Найдите в MAX @MasterBot — он отвечает за регистрацию новых ботов. Нажмите Начать и отправьте команду /create

  2. Придумайте ник для бота. Его невозможно изменить или отредактировать. Следуйте подсказкам и внимательно проверьте написание перед отправкой:

    • Начните ник с латинской буквы, дальше можно добавить цифры. Закончить ник нужно словом «bot» или «_bot». Минимум символов в нике с учетом окончания — 11. Готовый ник должен выглядеть примерно так: nicknamebot или nickname_bot

ПодойдётНе подойдёт
@nicknamebot@bot_nickname
@nickname_bot@nickname__bot
@nickname-bot
  1. Отправьте имя бота — до 16 символов, русскими или латинскими буквами. Имя можно менять

  2. Получите сообщение с токеном — уникальным идентификатором бота, с помощью которого он будет взаимодействовать с API MAX. Его надо сохранить, в том числе от глаз посторонних

  3. Вы зарегистрировали бота. Добавьте для него фото профиля через /set_picture и описание через /set_description — не более 512 символов

Профиль бота Профиль бота

ℹ️ Собрать сценарий для бота можно без кода, для этого есть конструкторы с набором готовых решений. Подробнее в разделе «Бот без программирования»

Отправляем API-запросы

API — это сервис, который позволяет взаимодействовать с платформой от имени бота. Бот  отправляет запросы с токеном к API MAX и получает обновления с сервера в формате JSON

Вот так выглядит базовый запрос к API MAX. Если добавить в него параметр access_token,  обратно вернётся информация о боте — его имя, токен или ник

https://botapi.max.ru/me?access_token=<API_Key>

Подробнее о работе с сервером, методах и параметрах запросов читайте в разделе «API»

Если вы пишете ботов на TypeScript или JavaScript, рекомендуем использовать нашу официальную библиотеку — она содержит разные стандартные методы и утилиты. Читайте подробнее в разделе «Библиотека MAX Bot API» здесь или на GitHub

Настраиваем уведомления

API MAX поддерживает 2 варианта уведомлений о действиях пользователей с ботом — через Webhook и Long Polling. Использовать одновременно можно только один из них. Технологии отличаются способом взаимодействия с сервером и продолжительностью отклика. Webhook после новых действий в чат-боте сам отправляет запрос на сервер, а Long Polling работает методом периодических запросов без триггера в боте

Webhook
Выберите любой из способов:

  • Выполните запрос к методу /subscriptions, чтобы отправить внешнюю ссылку.  На указанный URL будет приходить информация о новых событиях с ботом
  • Отправьте в чате с @MasterBot команду /set_webhook

Long Polling
Чтобы настроить уведомления, с сервера должны прийти запросы к методу /updates

Управляем ботом в MAX

Вызовите список команд в чате с @MasterBot через /list и выберите подходящую под ваш запрос

Права
Создатель бота — его единственный владелец. Он может передать права на бота любому пользователю MAX, который взаимодействовал с ним хотя бы 1 раз. С передачей прав владелец теряет доступ к управлению ботом навсегда

/transfer_bot — передать права на бота

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

/delete — удалить бота

Токен

/get_token — показать действующий токен для бота
/refresh_token — сгенерировать новый токен для бота

Команды бота

/get_commands — показать список команд бота
/set_commands — настроить команды для бота
/delete_commands — очистить список команд

Мини-приложение

Подключить к MAX мини-приложение или удалить его можно только с помощью бота. Отправьте в чат с @MasterBot подходящую команду и следуйте подсказкам

/set_app — добавить  или изменить мини-приложение
/delete_app — удалить мини-приложение

Читать документацию для мини-приложений

ℹ️ Если у вас возникли вопросы, посмотрите раздел с ответами