159  /  166

Подписка на события

Просмотров: 24254
Дата последнего изменения: 12.07.2023
Александр Суворов
Сложность урока:
3 уровень - средняя сложность. Необходимо внимание и немного подумать.
1
2
3
4
5

Обработчик серверных событий

Интерфейс REST API позволяет устанавливать свои обработчики серверных событий.

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

Обработчик получает на вход следующие данные:

  • event – имя сработавшего события.
  • data – массив данных события.
  • auth – набор данных для авторизации.

Обработчик может:

  • Использовать полученные данные авторизации для выполнения запросов к REST API.
  • Быть установлен только пользователем с правами администрирования портала.

Внимание! Если обработчику требуется обращение к Rest API для работы с данными, то настоятельно рекомендуется использовать для этого данные авторизации сохраненные на стороне приложения, а не опираться на получение access_token, так как его может и не быть.


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

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

Список доступных событий можно получить при помощи REST-метода events.



Установка обработчика

Установка обработчика события производится:

  • при помощи REST-метода event.bind на основе restCommand:
    $handlerBackUrl  = 'http://www.my-domain.ru/handler/';
    $result = restCommand('event.bind', Array(
       'EVENT' => 'OnAppUpdate',
       'HANDLER' => $handlerBackUrl
    ), $_REQUEST["auth"]);
    
  • или при помощи функции BX24.callBind js-библиотеки:
    BX24.callBind('OnAppUpdate', 'http://www.my-domain.ru/handler/');
    

    Получение списка зарегистрированных обработчиков событий производится при помощи REST-метода events.get.

    Снятие зарегистрированного обработчика производится при помощи REST-метода event.unbind или при помощи функции BX24.callUnbind js-библиотеки.

    Для доступа к каждому событию при регистрации версии приложения должно быть запрошено соответствующее право доступа.

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

    Имена событий регистронезависимы.

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





3
Курсы разработаны в компании «1С-Битрикс»
Доступна новая документация по REST: понятнее описания, больше примеров, удобнее поиск
Перейти