При создании сессии открытой линии OnSessionStart

Выберите инструмент для разработки с AI-агентом:

  • используйте Битрикс24 Вайбкод, чтобы создать приложение для Битрикс24 по описанию задачи без знания языков программирования. Агент напишет код и разместит приложение на сервере без ручной настройки хостинга
  • используйте MCP-сервер, чтобы разрабатывать интеграцию через REST API в своем проекте. Агент будет обращаться к официальной REST-документации

Scope: imopenlines

Кто может подписаться: любой пользователь

Событие OnSessionStart срабатывает при создании сессии открытой линии.

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

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

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

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

{
            "event": "ONSESSIONSTART",
            "eventId": 1,
            "data": {
                "DATA": [
                    {
                        "connector": {
                            "connector_id": "livechat",
                            "line_id": 128,
                            "chat_id": 10585,
                            "user_id": 1984
                        },
                        "session": {
                            "id": 42,
                            "closed": "N",
                            "parent_id": 0,
                            "close_term": 60
                        },
                        "chat": {
                            "id": 10585
                        },
                        "user": {
                            "id": 1984
                        }
                    }
                ]
            },
            "ts": 1714649632,
            "auth": {
                "access_token": "s6p6eclrvim6da22ft9ch94ekreb52lv",
                "expires_in": 3600,
                "scope": "imopenlines",
                "domain": "some-domain.bitrix24.com",
                "server_endpoint": "https://oauth.bitrix24.tech/rest/",
                "status": "F",
                "client_endpoint": "https://some-domain.bitrix24.com/rest/",
                "member_id": "a223c6b3710f85df22e9377d6c4f7553",
                "refresh_token": "4s386p3q0tr8dy89xvmt96234v3dljg8",
                "application_token": "51856fefc120afa4b628cc82d3935cce"
            }
        }
        

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

Параметр
тип

Описание

event*
string

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

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

eventId*
integer

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

data*
object

Объект, содержащий данные события.

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

ts*
timestamp

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

auth*
object

Объект, содержащий параметры авторизации и данные о портале, на котором произошло событие.

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

Параметр data

Параметр
тип

Описание

DATA*
array

Массив объектов с данными сессии.

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

Элемент массива DATA

Каждый элемент массива DATA — объект со структурой:

Параметр
тип

Описание

connector*
object

Объект с информацией о коннекторе.

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

session*
object

Объект с информацией о сессии.

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

chat*
object

Объект с информацией о чате.

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

user*
object

Объект с информацией о пользователе.

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

Параметр connector

Параметр
тип

Описание

connector_id*
string

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

line_id*
integer

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

chat_id*
integer

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

user_id*
integer

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

Параметр session

Параметр
тип

Описание

id*
integer

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

closed*
string

Закрыта ли сессия: Y — да, N — нет

parent_id*
integer

Идентификатор предыдущей сессии

close_term*
integer

Время до автоматического закрытия сессии, в минутах

Параметр chat

Параметр
тип

Описание

id*
integer

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

Параметр user

Параметр
тип

Описание

id*
integer

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

Параметр 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 в коде.

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

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