Событие при вызове команды чат-бота ONIMCOMMANDADD

Scope: imbot

Кто может подписаться: пользователь приложения, которое зарегистрировало чат-бота

DEPRECATED

Развитие события остановлено. Используйте ONIMBOTV2COMMANDADD.

Событие ONIMCOMMANDADD срабатывает, когда пользователь вызывает команду бота в чате.

События не будут отправляться в приложение, пока установка не завершена. Проверьте установку приложения

Что получает обработчик

Данные передаются в виде POST-запроса

{
            "event": "ONIMCOMMANDADD",
            "event_handler_id": "1045",
            "data": {
                "COMMAND": {
                    "103": {
                        "access_token": "be4ca0690000071b006e2cf200050b0077317605eb83b25d2bd6",
                        "expires": "1772113086",
                        "expires_in": "3600",
                        "scope": "imbot",
                        "domain": "some-domain.bitrix24.ru",
                        "server_endpoint": "https://oauth.bitrix24.tech/rest/",
                        "status": "F",
                        "client_endpoint": "https://some-domain.bitrix24.ru/rest/",
                        "member_id": "d897063e1ce7c5eb9f04b9751eef5915",
                        "refresh_token": "aecbc7690000071b006e2cf200050b007f827f47e120e49da",
                        "user_id": "1291",
                        "client_id": "a7eff906dd1d950269258a599214f69e",
                        "application_token": "8e3ab48a764a9b02700e759d59e91125",
                        "AUTH": {
                            "access_token": "be4ca0690000071b006e2cf200050b0077317605eb83b25d2bd6",
                            "expires": "1772113086",
                            "expires_in": "3600",
                            "scope": "imbot",
                            "domain": "some-domain.bitrix24.ru",
                            "server_endpoint": "https://oauth.bitrix24.tech/rest/",
                            "status": "F",
                            "client_endpoint": "https://some-domain.bitrix24.ru/rest/",
                            "member_id": "d897063e1ce7c5eb9f04b9751eef5915",
                            "refresh_token": "aecbc7690000071b006e2cf200050b007f827f47e120e49da",
                            "user_id": "1291",
                            "client_id": "a7eff906dd1d950269258a599214f69e",
                            "application_token": "8e3ab48a764a9b02700e759d59e91125"
                        },
                        "BOT_ID": "1291",
                        "BOT_CODE": "BOT_GM",
                        "COMMAND": "echo",
                        "COMMAND_ID": "103",
                        "COMMAND_PARAMS": "test",
                        "COMMAND_CONTEXT": "TEXTAREA",
                        "MESSAGE_ID": "33899"
                    }
                },
                "PARAMS": {
                    "MESSAGE": "/echo test",
                    "TEMPLATE_ID": "acae8d22-4536-4f47-a276-2e3bdf866475",
                    "MESSAGE_TYPE": "P",
                    "FROM_USER_ID": "1269",
                    "DIALOG_ID": "1269",
                    "TO_CHAT_ID": "2737",
                    "AUTHOR_ID": "1269",
                    "SYSTEM": "N",
                    "TO_USER_ID": "1291",
                    "SKIP_USER_CHECK": "Y",
                    "PUSH": "Y",
                    "PUSH_IMPORTANT": "N",
                    "RECENT_ADD": "Y",
                    "RECENT_SKIP_AUTHOR": "N",
                    "CONVERT": "N",
                    "SKIP_COMMAND": "N",
                    "SKIP_COUNTER_INCREMENTS": "N",
                    "SILENT_CONNECTOR": "N",
                    "SKIP_CONNECTOR": "N",
                    "IMPORTANT_CONNECTOR": "N",
                    "NO_SESSION_OL": "N",
                    "FAKE_RELATION": "0",
                    "SKIP_URL_INDEX": "N",
                    "MESSAGE_ID": "33899",
                    "CHAT_TYPE": "P",
                    "LANGUAGE": "ru"
                },
                "USER": {
                    "ID": "1269",
                    "NAME": "Иван Смирнов",
                    "FIRST_NAME": "Иван",
                    "LAST_NAME": "Смирнов",
                    "GENDER": "M"
                }
            },
            "ts": "1772109486",
            "auth": {
                "access_token": "be4ca06900071b006e2cf200004f50005243fd374178cf59f7831",
                "expires": "1772113086",
                "expires_in": "3600",
                "scope": "imbot",
                "domain": "some-domain.bitrix24.ru",
                "server_endpoint": "https://oauth.bitrix24.tech/rest/",
                "status": "F",
                "client_endpoint": "https://some-domain.bitrix24.ru/rest/",
                "member_id": "d897063e1ce7c5eb9f04b9751eef5915",
                "user_id": "1269",
                "refresh_token": "aecbc76900071b006e2cf20004f50000f2e62ee8e8baa598968",
                "application_token": "8e3ab48a764a9b02700e759d59e91125"
            }
        }
        
{
            "event": "ONIMCOMMANDADD",
            "event_handler_id": "1035",
            "data": {
                "COMMAND": {
                    "99": {
                        "access_token": "f1ca0690000071b006e2cf20050b00074d9ed82e255b",
                        "expires": "1772100799",
                        "expires_in": "3600",
                        "scope": "imbot",
                        "domain": "some-domain.bitrix24.ru",
                        "server_endpoint": "https://oauth.bitrix24.tech/rest/",
                        "status": "F",
                        "client_endpoint": "https://some-domain.bitrix24.ru/rest/",
                        "member_id": "d897063e1ce7c5eb9f04b9751eef5915",
                        "refresh_token": "af9bc7690000071b006e2cf2050b00074d5d4c29337afbc6bb",
                        "user_id": "1291",
                        "client_id": "a7eff906dd1d950269258a599214f69e",
                        "application_token": "8e3ab48a764a9b02700e759d59e91125",
                        "AUTH": {
                            "access_token": "f1ca0690000071b006e2cf20050b00074d9ed82e255b",
                            "expires": "1772100799",
                            "expires_in": "3600",
                            "scope": "imbot",
                            "domain": "some-domain.bitrix24.ru",
                            "server_endpoint": "https://oauth.bitrix24.tech/rest/",
                            "status": "F",
                            "client_endpoint": "https://some-domain.bitrix24.ru/rest/",
                            "member_id": "d897063e1ce7c5eb9f04b9751eef5915",
                            "refresh_token": "af9bc7690000071b006e2cf2050b00074d5d4c29337afbc6bb",
                            "user_id": "1291",
                            "client_id": "a7eff906dd1d950269258a599214f69e",
                            "application_token": "8e3ab48a764a9b02700e759d59e91125"
                        },
                        "BOT_ID": "1291",
                        "BOT_CODE": "BOT_GM",
                        "COMMAND": "echo",
                        "COMMAND_ID": "99",
                        "COMMAND_PARAMS": "test",
                        "COMMAND_CONTEXT": "TEXTAREA",
                        "MESSAGE_ID": "33871"
                    }
                },
                "PARAMS": {
                    "MESSAGE": "/echo test",
                    "TEMPLATE_ID": "eb3d5b1c-0830-4728-a7a3-73e9745a90a1",
                    "MESSAGE_TYPE": "C",
                    "FROM_USER_ID": "1269",
                    "DIALOG_ID": "chat2725",
                    "TO_CHAT_ID": "2725",
                    "AUTHOR_ID": "1269",
                    "SYSTEM": "N",
                    "CHAT_ID": "2725",
                    "CHAT_PARENT_ID": "0",
                    "CHAT_PARENT_MID": "0",
                    "CHAT_TITLE": "Новое имя для чата",
                    "CHAT_AUTHOR_ID": "1291",
                    "CHAT_TYPE": "C",
                    "CHAT_AVATAR": "33079",
                    "CHAT_COLOR": "GREEN",
                    "CHAT_ENTITY_TYPE": "CHAT",
                    "CHAT_ENTITY_ID": "13",
                    "CHAT_ENTITY_DATA_1": "",
                    "CHAT_ENTITY_DATA_2": "",
                    "CHAT_ENTITY_DATA_3": "",
                    "CHAT_EXTRANET": "N",
                    "CHAT_PREV_MESSAGE_ID": "0",
                    "CHAT_CAN_POST": "MEMBER",
                    "RID": "1269",
                    "IS_MANAGER": "N",
                    "BOT_IN_CHAT": {
                        "1291": "1291"
                    },
                    "SKIP_USER_CHECK": "Y",
                    "PUSH": "Y",
                    "PUSH_IMPORTANT": "N",
                    "RECENT_ADD": "Y",
                    "RECENT_SKIP_AUTHOR": "N",
                    "CONVERT": "N",
                    "SKIP_COMMAND": "N",
                    "SKIP_COUNTER_INCREMENTS": "N",
                    "SILENT_CONNECTOR": "N",
                    "SKIP_CONNECTOR": "N",
                    "IMPORTANT_CONNECTOR": "N",
                    "NO_SESSION_OL": "N",
                    "FAKE_RELATION": "0",
                    "SKIP_URL_INDEX": "N",
                    "MESSAGE_ID": "33871",
                    "LANGUAGE": "ru"
                },
                "USER": {
                    "ID": "1269",
                    "NAME": "Иван Смирнов",
                    "FIRST_NAME": "Иван",
                    "LAST_NAME": "Смирнов",
                    "GENDER": "M"
                }
            },
            "ts": "1772097199",
            "auth": {
                "access_token": "bf1ca06900071b006e2cf200004f500031d5d527f58a97b0768",
                "expires": "1772100799",
                "expires_in": "3600",
                "scope": "imbot",
                "domain": "some-domain.bitrix24.ru",
                "server_endpoint": "https://oauth.bitrix24.tech/rest/",
                "status": "F",
                "client_endpoint": "https://some-domain.bitrix24.ru/rest/",
                "member_id": "d897063e1ce7c5eb9f04b9751eef5915",
                "user_id": "1269",
                "refresh_token": "af9bc76900071b006e2cf200004f50080d2934573350daabf8",
                "application_token": "8e3ab48a764a9b02700e759d59e91125"
            }
        }
        

Параметр
тип

Описание

event
string

Символьный код события.

В данном случае — ONIMCOMMANDADD

event_handler_id
integer

Идентификатор обработчика события

data
object

Объект с данными события.

Структура описана ниже

ts
timestamp

Дата и время отправки события из очереди событий

auth
object

Объект с параметрами авторизации пользователя, от имени которого сработало событие.

Структура описана ниже

Параметр data

Параметр
тип

Описание

COMMAND
object

Набор вызванных команд чат-бота.

Структура описана ниже

PARAMS
object

Параметры сообщения, в котором была вызвана команда.

Структура описана ниже

USER
object

Данные автора сообщения. Может быть пустым объектом, если FROM_USER_ID = 0.

Структура описана ниже

Параметр COMMAND

Параметр
тип

Описание

{COMMAND_ID}
object

Объект данных конкретной вызванной команды. Ключ соответствует идентификатору команды, например 103.

Структура описана ниже

Элемент /

Параметр
тип

Описание

access_token
string

OAuth-токен авторизации бота

expires
timestamp

Момент окончания действия токена

expires_in
integer

Время жизни токена в секундах

scope
string

Скоуп, в рамках которого произошло событие

domain
string

Адрес Битрикс24, на котором произошло событие

server_endpoint
string

Адрес OAuth-сервера для REST-запросов

status
string

Признак состояния приложения на портале

client_endpoint
string

Базовый путь для вызова REST API на текущем портале

member_id
string

Уникальный идентификатор Битрикс24

refresh_token
string

OAuth-токен продления авторизации бота

user_id
integer

Идентификатор пользователя-бота

client_id
string

Идентификатор приложения, выданный при регистрации

application_token
string

Токен приложения

AUTH
object

Параметры авторизации бота в формате auth.

Структура описана ниже

BOT_ID
integer

Идентификатор бота

BOT_CODE
string

Символьный код бота

COMMAND
string

Символьный код вызванной команды

COMMAND_ID
integer

Идентификатор вызванной команды

COMMAND_PARAMS
string

Параметры, с которыми вызвана команда

COMMAND_CONTEXT
string

Контекст вызова команды.

Возможные значения:

  • TEXTAREA — команда введена вручную
  • KEYBOARD — команда вызвана кнопкой клавиатуры

MESSAGE_ID
integer

Идентификатор сообщения, на которое нужно ответить

Параметр PARAMS

Параметр
тип

Описание

MESSAGE
string

Текст сообщения с командой

TEMPLATE_ID
string

Идентификатор шаблона сообщения

MESSAGE_TYPE
string

Тип сообщения.

Возможные значения:

  • P — private, личный чат
  • C — group chat, групповой чат
  • O — open chat, открытый чат
  • L — open line, чат открытой линии
  • S — system/notify, системное уведомление
  • N — channel, канал
  • J — open channel, открытый канал
  • T — comment thread, ветка комментариев
  • A — copilot chat, чат CoPilot
  • B — collab, коллаб
  • X — external, внешний чат

FROM_USER_ID
integer

Идентификатор отправителя сообщения

DIALOG_ID
string

Идентификатор диалога

TO_CHAT_ID
integer

Идентификатор чата

AUTHOR_ID
integer

Идентификатор автора сообщения

SYSTEM
string

Признак системного сообщения: Y или N

TO_USER_ID
integer

Идентификатор собеседника в личном чате. Параметр доступен только для личного чата

SKIP_USER_CHECK
string

Пропустить проверку пользователя: Y или N

PUSH
string

Признак отправки push-уведомления: Y или N

PUSH_IMPORTANT
string

Признак важного push-уведомления: Y или N

RECENT_ADD
string

Добавить сообщение в список Последние чаты: Y или N

RECENT_SKIP_AUTHOR
string

Исключить автора из обновления списка Последние чаты: Y или N

CONVERT
string

Признак конвертации форматирования сообщения: Y или N

SKIP_COMMAND
string

Пропустить обработку команд в сообщении: Y или N

SKIP_COUNTER_INCREMENTS
string

Не увеличивать счетчики непрочитанных сообщений: Y или N

SILENT_CONNECTOR
string

Отправить сообщение во внешний коннектор без уведомления: Y или N

SKIP_CONNECTOR
string

Не отправлять сообщение во внешние коннекторы: Y или N

IMPORTANT_CONNECTOR
string

Признак важного сообщения для коннектора: Y или N

NO_SESSION_OL
string

Не создавать сессию Открытой линии: Y или N

FAKE_RELATION
integer

Системное значение связи пользователя с чатом

SKIP_URL_INDEX
string

Не индексировать ссылки из сообщения: Y или N

MESSAGE_ID
integer

Идентификатор сообщения

CHAT_TYPE
string

Тип чата.

Возможные значения:

  • P — private, личный чат
  • C — group chat, групповой чат
  • O — open chat, открытый чат
  • L — open line, чат открытой линии
  • S — system/notify, системное уведомление
  • N — channel, канал
  • J — open channel, открытый канал
  • T — comment thread, ветка комментариев
  • A — copilot chat, чат CoPilot
  • B — collab, коллаб
  • X — external, внешний чат

LANGUAGE
string

Язык Битрикс24 по умолчанию

CHAT_ID
integer

Идентификатор чата. Параметр доступен только для группового чата

CHAT_PARENT_ID
integer

Идентификатор родительского чата. Параметр доступен только для группового чата

CHAT_PARENT_MID
integer

Идентификатор родительского сообщения. Параметр доступен только для группового чата

CHAT_TITLE
string

Название чата. Параметр доступен только для группового чата

CHAT_AUTHOR_ID
integer

Идентификатор владельца чата. Параметр доступен только для группового чата

CHAT_AVATAR
string

Идентификатор аватара чата. 0 — аватар не задан. Параметр зависит от типа чата, в личном диалоге отсутствует

CHAT_COLOR
string

Цветовая схема чата. Параметр зависит от типа чата, в личном диалоге отсутствует

CHAT_ENTITY_TYPE
string

Тип объекта, к которому привязан чат. Параметр зависит от типа чата, в личном диалоге отсутствует

CHAT_ENTITY_ID
string

Идентификатор объекта, к которому привязан чат. Параметр зависит от типа чата, в личном диалоге отсутствует

CHAT_ENTITY_DATA_1
string

Дополнительные данные объекта чата — поле 1. Параметр зависит от типа чата, в личном диалоге отсутствует

CHAT_ENTITY_DATA_2
string

Дополнительные данные объекта чата — поле 2. Параметр зависит от типа чата, в личном диалоге отсутствует

CHAT_ENTITY_DATA_3
string

Дополнительные данные объекта чата — поле 3. Параметр зависит от типа чата, в личном диалоге отсутствует

CHAT_EXTRANET
string

Признак экстранет-чата: Y или N. Параметр зависит от типа чата, в личном диалоге отсутствует

CHAT_PREV_MESSAGE_ID
integer

Идентификатор предыдущего сообщения в чате. Параметр зависит от типа чата, в личном диалоге отсутствует

CHAT_CAN_POST
string

Право текущего пользователя отправлять сообщения в чат. Параметр зависит от типа чата, в личном диалоге отсутствует

RID
integer

Идентификатор записи связи пользователя с чатом. Параметр зависит от типа чата, в личном диалоге отсутствует

IS_MANAGER
string

Признак роли менеджера: Y или N. Параметр доступен только для группового чата

BOT_IN_CHAT
object

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

Структура описана ниже

Параметр BOT_IN_CHAT

Параметр
тип

Описание

{BOT_ID}
integer

Идентификатор бота, состоящего в чате

Параметр USER

Параметр
тип

Описание

ID
integer

Идентификатор пользователя

NAME
string

Имя и фамилия пользователя

FIRST_NAME
string

Имя пользователя

LAST_NAME
string

Фамилия пользователя

GENDER
string

Пол пользователя: M или F

Параметр auth

Обязательные параметры отмечены *

Название
тип

Описание

access_token
string

Токен авторизации OAuth 2.0

expires_in
integer

Время в секундах до истечения срока действия токена

scope*
string

Скоуп, в рамках которого произошло событие

domain*
string

Адрес Битрикс24, на котором произошло событие

server_endpoint*
string

Адрес сервера авторизации Битрикс24, необходимый для обновления токенов OAuth 2.0

status*
string

Статус приложения, подписавшегося на это событие:

client_endpoint*
string

Общий путь для вызовов методов REST API для Битрикс24, на котором произошло событие

member_id*
string

Идентификатор Битрикс24, на котором произошло событие

refresh_token
string

Токен продления авторизации OAuth 2.0

application_token*
string

Токен для безопасной обработки событий

Токены авторизации не всегда передаются в обработчик события. Если хит, инициировавший событие, не удалось привязать к конкретному пользователю Битрикс24, токены не передаются. Обязательно проверяйте содержимое ключа auth в коде.

Рекомендуем хранить токены, полученные ранее при установке приложения. Используйте их при работе с интерфейсом приложения в виде встроек, виджетов и так далее.

Продолжите изучение

Предыдущая
Следующая