Обработка событий при изменении статуса оператора

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

Обработчик сработает, если статус оператора изменился:

  • вручную;
  • автоматически — оператору присваивается статус Офлайн в следующих случаях:

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

Пример обработчика с отслеживанием смены статуса оператора

Рассмотрим пример настройки обработчика событий, который запустит процесс при смене статуса оператора. В результате руководитель получит уведомление об этом изменении.

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

  1. Перейдите в раздел Администрирование > Модули и создайте пользовательский модуль.
  2. В настройках модуля перейдите на вкладку Процессы и добавьте бизнес‑процесс, который будет выполняться каждый раз при смене статуса оператора.

Для нашего примера добавим процесс Уведомление о смене статуса оператора и настроим его схему следующим образом:

operator-status-events-processing-1

  1. В дизайнере бизнес-процесса перейдите на вкладку Контекст и добавьте переменные. При их создании выберите код, тип и подтипы, приведённые ниже:
  • Оператор (operator) — свойство типа Пользователи (Один) для отображения имени сотрудника;
  • Статус (status) — свойство типа Строка (Строка) для передачи данных о статусе оператора;
  • Руководитель оператора (head_of_operator) — свойство типа Пользователи (Один) для определения руководителя.
  1. Перейдите на вкладку Схема. Поскольку участники процесса будут определяться в ходе его выполнения, на схеме процесса создайте динамические зоны ответственности:
  • для оператора;
  • для руководителя оператора.
  1. В зоне ответственности Оператор разместите блок Получить руководителя. Он нужен, чтобы определить руководителя в ходе процесса. В настройках блока выберите переменную Руководитель оператора, созданную на предыдущем шаге.
  2. Чтобы руководитель мог ознакомиться со сменой статуса оператора, в зоне его ответственности добавьте блок Оповещение.

В его настройках составьте текст уведомления, который увидит руководитель. На вкладке Получатели добавьте контекстную переменную Руководитель оператора.

  1. Сохраните и опубликуйте процесс.
  2. В настройках модуля перейдите на вкладку Обработка событий и нажмите + Обработчик. В открывшемся окне заполните следующие данные:
  • название обработчика, например, Информация об изменении статуса оператора;
  • тип обработчика — Запуск процесса;
  • домен события — Пользователи;
  • событие — Изменение статуса оператора.
  1. Сохраните данные.
  2. В открывшемся окне на вкладке Настройки выберите созданный ранее процесс Уведомление о смене статуса оператора.
  3. Перейдите на вкладку Входные переменные и сопоставьте переменные из контекста процесса со свойствами события следующим образом:
  • Оператор — Идентификатор пользователя;
  • Статус — Статус;
  • Руководитель оператора — оставьте пустое значение, поскольку руководитель будет определяться в ходе бизнес‑процесса.
  1. На верхней панели страницы нажмите Сохранить, а затем Опубликовать, чтобы активировать обработчик событий.
  2. Перейдите на страницу управления модулем и включите его.

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