Отслеживание изменений

Описание настройки

Перед настройкой действия по событию в системе необходимо настроить WebSocket канал (nginx и artemis), см. Настройка WebSocket. При отсутствии настройки или некорректной настройке запуск отслеживания изменений может привести к проблемам производительности.

Цели

Видеть в режиме реального времени:

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

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

Для отправки сообщений о событиях с объектом в WebSocket-канал предназначено действие по событию типа "Отслеживание изменений".

Алгоритм выполнения действия по событию

Подключение системы к WebSocket-каналу → Наступление инициирующего события → Проверка выполнения условий действия по событию → Вычисление значение параметра "Кому" → Выполнение скрипта кастомизации → Выполнение скрипта, определяющего действие по событию. Действие по событию выполняется один раз → Отправка сообщения в WebSocket-канал.

Место настройки в интерфейсе

Добавление действия по событию выполняется в разделе "Настройка системы" → "Действия по событиям".

Включение или выключение действия по событию, редактирование параметров действия по событию и удаление действия по событию выполняется в списке действий по событию и в карточке действия по событию

Выполнение настройки

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

Поля с общими параметрами действия по событию:

  • Название — название действия по событию, используемое в системе.
  • Код — уникальный код действия по событию. Значение заполняется автоматически (транслитерация названия действия по событию при переводе фокуса с поля "Название"), код можно изменить.
  • Описание — дополнительная информация о действии и его назначении.
  • Объекты — классы/типы объектов, относительно которых совершается событие.

    При установке флажка у класса или типа флажки проставляются у всех вложенных типов. Флажки вложенных типов доступны для редактирования.

    При снятии флажка у класса или типа флажки снимаются у всех вложенных типов. Если снять флажок хотя бы у одного вложенного типа, то снимается флажок у класса, флажок у родительского типа сохраняется.

  • Метки — одна или несколько меток, определяющих процессы, в которых используется данное действие по событию.

  • Событие — событие, при наступлении которого будет выполняться действие.

    Перечень доступных событий зависит от выбранного класса/типа объектов:

    • Изменение объекта;
    • Смена статуса;
    • Смена ответственного;
    • Прикрепление файла к объекту;
    • Добавление комментария к объекту;
    • Редактирование комментария.

    Для определенных событий на форме добавления и редактирования могут отображаться дополнительные поля.

    В поле "Выполнять действие при изменении атрибутов" указываются атрибуты, при изменении значения которых (хотя бы одного) выполняется действие по событию.

    Подробное описание инициирующих событий и дополнительных полей приводится в разделе Инициирующие события для выполнения действия по событию

  • Действие — действие: "Отслеживание изменений", на форме отобразятся поля "Скрипт" и "Выполнять синхронно".
  • Атрибуты, передаваемые в контекст — укажите атрибуты, которые будут использоваться при выполнении действия по событию.

    В поле рекомендуется указывать:

    • адрес электронной почты (email) или атрибуты, используемые для вычисления ролей, указанных в параметре "Кому" для действия по событию;
    • все атрибуты, указанные в поле "Выполнять действие при изменении атрибута", чтобы они попадали в список измененных атрибутов в сообщение для пользователя по умолчанию.

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

    Если поле не заполнено, то в очередь выполнения действия по событию передается весь объект.

    Поле доступно для всех событий, кроме событий "Редактирование комментария" и "Упоминание в рамках выбранных объектов".

    Параметры действия по событию: Объект: Задача, Событие: Изменение объекта, Выполнять действие при изменении атрибутов: Название, Описание, Срок,
    Ожидаемый результат настройки: Если пользователь Иванов отредактирует атрибуты задачи Описание, Срок, Примечание, Связанные задачи, пользователь получит сообщение об изменении такого вида: "Иванов Алексей изменил(а): Описание, Срок."

Поля с параметрами действия типа "Отслеживание изменений":

  • Кому: Сотрудники — выберите уведомляемых сотрудников.

    Сотрудники выбираются из разделов дерева:

    • "Компания" — иерархический список отделов и вложенных сотрудников.

      Если выбран отдел, то в список получателей будут добавлены все неархивные сотрудники отдела на момент выполнения действия по событию.

    • "Команды" — список команд и вложенных сотрудников.

      Если выбрана команда, то в список получателей будут добавлены все неархивные участники команды на момент выполнения действия по событию.

    • "Роли" — список абсолютных и относительных ролей, сгруппированных по классам, которые указаны в параметре "Объекты". В списке отображаются системные роли и пользовательские роли, предназначенные для определения списка пользователей, см. Роли пользователей.

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

    Если сотрудник оказывается в списке получателей несколько раз (например, является участником разных команд/отдела и команды/ролей), то дубли из общего списка получателей исключаются.

  • Исключить автора действия из списка получателей:

    • Флажок установлен (по умолчанию) — автор действия не информируется о событии с объектом.
    • Флажок снят — автор действия информируется о событии с объектом.
  • Использовать текст сообщения по умолчанию:

    • Флажок установлен (по умолчанию) — отображается пример текста сообщения по умолчанию, например, "Петров Иван Сергеевич изменил(а) параметры: Приоритет, Срочность, Статус, Услуга."

    • Флажок снят — отображается дополнительный параметр:

      • Текст уведомления — поле для ввода теста информационного сообщения.

        Если в системе включена локализация, то выводится поле "Текст сообщения ({локаль})" для каждой доступной в системе локали.

  • Действие в веб-интерфейсе — действие в интерфейсе оператора при наступлении события.

    • "Сообщение";

    • "Сообщение об изменении с кнопкой Обновить" (по умолчанию);

    Для события "Открытие формы редактирования" доступно только действие "Сообщение".

  • Область обновления — область обновления при нажатии на кнопку "Обновить".

    • "Контенты с изменениями" (по умолчанию);
    • "Страница";

  • Скрипт — скрипт кастомизации для получения значений атрибутов для подстановки в текст сообщения и кастомизации текста сообщения.

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

Результат настройки

На экране отобразится карточка действия по событию. Действие по событию также отобразится в списке на странице "Действия по событиям".

Последующие настройки

Включение действия по событию

Действие по событию создается в состоянии "выключено". Для использования действия по событию его необходимо включить. Затем действие по событию можно исключить из работы путем отключения и снова включить при необходимости его дальнейшего использования. Текущее состояние действия по событию отображается в параметре "Включено", означает включено.

Чтобы включить (выключить) действие по событию, выполните одно их следующих действий:

  • В карточке действия по событию нажмите кнопку Включить или Выключить.
  • В списке действий по событиям нажмите иконку в строке действия по событию.

    В списке действий по событиям можно изменить состояние "выключено" или "включено" одновременно для одного или нескольких действий по событиям, см. Массовые операции с объектами списка.

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

Условия выполнения действия по событию

Для действия по событию можно настроить условия выполнения.

Общая настройка "Отслеживание изменений в режиме реального времени"

Для отображения контекстных информационных сообщений в системе необходимо включить настройку "Отслеживать редактирование и изменение текущего объекта".

Настройка может выполняться через облегченный интерфейс настройки.

Персональная настройка "Отслеживание изменений в режиме реального времени"

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

Связанные настройки