Формирует тело ответа для отправки пользователю.
Возвращает платформо-специфичный ответ (например, JSON для Алисы).
Для платформ, которые отправляют ответ напрямую (например, Telegram через sendMessage),
метод может возвращать { ok: true } или аналог.
контроллер с готовым ответом
OptionalstateData: Record<string, unknown> | nullданные для локального хранилища
ответ в формате, понятном платформе
Получает данные из локального хранилища платформы.
контроллер приложения
данные, сохранённые ранее
Возвращает время обработки запроса в миллисекундах.
Основано на разнице между updateTimeStart и текущим временем.
контроллер приложения
время обработки в мс
Генерирует пример запроса для тестирования.
Используется в инструментах отладки и авто-тестах.
текст запроса
идентификатор пользователя
счётчик для уникальности
состояние сессии
объект, имитирующий входящий запрос платформы
Формирует контекст для отправки рейтинга (если поддерживается платформой).
Используется только на платформах с поддержкой рейтинга (например, Сбер SmartApp). Если рейтинг не поддерживается — метод может не реализовываться или возвращать пустой объект.
контроллер приложения
данные для отправки рейтинга
Метод инициализации плагина.
Вызывается один раз при подключении через bot.use().
Контекст приложения
Указывает, поддерживает ли платформа локальное хранилище.
контроллер приложения
true, если локальное хранилище доступно
Определяет, принадлежит ли входящий запрос данной платформе.
Метод проверяет заголовки или структуру тела запроса. Используется для маршрутизации входящих запросов между адаптерами.
Флаг, указывающий, что платформа голосовая (например, Алиса, Маруся).
Определят лимит платформы. В значение указывается количество запросов, которое можно отправить платформе за 1 секунду. В случае если у платформы нет ограничений, можно указать 0 или null. По умолчанию null
Уникальное имя платформы (например, 'telegram', 'alisa').
Сохраняет данные в локальное хранилище платформы.
данные для сохранения
контроллер приложения
Инициализирует данные запроса в контроллере приложения.
Парсит входящий запрос и заполняет controller.queryData, controller.user и другие поля.
Вызывается после подтверждения, что запрос принадлежит этой платформе.
входящий запрос
контроллер приложения для текущего запроса
false, если запрос повреждён или не может быть обработан; иначе true
Устанавливает время начала обработки запроса.
Используется для измерения времени отклика (processingTime).
контроллер приложения
Отправка текста пользователю Этот метод используется для активных рассылок — когда бот инициирует диалог первым (например, уведомление). В данном методе необходимо поддержать отправку результата пользователю. Это необходимо для того, чтобы само приложение смогло продолжить диалог.
Если ваша платформа не поддерживает отправку сообщений без входящего запроса (как Алиса), оставьте реализацию пустой или верните заглушку.
Ид пользователя, которому нужно отправить сообщение
Контроллер приложения или текст. Если необходимо отправить просто текст, можно передать строку, в случае, если необходимо передать картинку звук и тд, то необходимо корректно заполнить контроллер.
Адаптер платформы (Telegram, Алиса, VK и др.).
Обеспечивает унификацию обработки запросов от разных платформ. Реализуется как плагин (
IPlugin) и регистрируется в боте.