Шаблоны уведомлений

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

Раздел доступен пользователям с правами на управление конфигурацией системы.
image

В разделе Server конфигурационного файла сервера можно включить опцию буферизации notification_buffering_period, благодаря которой вместо отправки нескольких уведомлений сервер будет их накапливать и отправлять одно групповое уведомление.

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

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

Редактор шаблонов

В редакторе шаблонов настраивается вид уведомлений. Уведомления каждого типа настраиваются отдельно, тип выбирается в списке Шаблоны слева от редактора.

Слайдер Пакет уведомлений позволяет переключаться между шаблонами одиночных и групповых уведомлений:

  • Да - в редакторе шаблон группового уведомления;

  • Нет - в редакторе шаблон одиночного уведомления.

Кнопка image отменяет все внесённые изменения и возвращает шаблон по умолчанию.

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

Базовые переменные

Данные переменные можно использовать во всех типах уведомлений:

  • entityName - имя элемента;

  • entityId - ID элемента;

  • entityType - тип элемента (объект / связь);

  • entityUrl - URL элемента;

  • stateName - имя состояния;

  • stateData - информация о состоянии;

  • changedStateText - текст о переходе в состояние:

    • "перешёл в состояние" для объектов;

    • "перешла в состояние" для связей;

  • hasRootCause - указывает на смену состояния, вызванную дочерним элементом:

    • возвращает true, если новое состояние унаследовано от дочернего элемента;

    • возвращает false, если состояние изменилось по другой причине;

  • rootCauseEntityName - имя дочернего элемента-первопричины;

  • rootCauseEntityUrl - URL дочернего элемента-первопричины;

  • rootCauseEntityId - ID дочернего элемента-первопричины;

  • condition - информация о сработавшем условии перехода состояний;

  • conditionDescription - описание условия, вызвавшего переход;

  • eventTime - время возникновения события;

  • breadcrumbs - полный путь в иерархии к элементу, по которому поступает уведомление.

Внутри переменной breadcrumbs также можно использовать переменные:

Параметры переменной breadcrumbs (по умолчанию значения параметров равны 0):

  • multi-break - остановка на мультиродителе (0 - нет, 1 - да);

  • depth - количество отображаемых уровней (0 - нет ограничения);

  • length - максимальное суммарное количество символов (0 - нет ограничения).

Переменные группового уведомления

В групповых уведомлениях помимо базовых возможно использовать специальные переменные:

  • eventsCount - количество событий;

  • uniqueCount - количество уникальных событий;

  • fromTime - время возникновения первого события из списка;

  • toTime - время возникновения последнего события из списка.

Переменные email-уведомлений

Для email-уведомлений предусмотрены следующие дополнительные переменные:

  • stateLabel - цветная метка состояния;

  • entityLink - имя-ссылка на элемент;

  • rootCauseEntityLink - имя-ссылка на дочерний элемент-первопричину;

  • goToObjectButton - кнопка перехода к элементу.

Язык уведомлений

В шаблоны уведомлений, связанных с регистрацией/восстановлением доступа пользователей:

  • Forgot password,

  • Forgot password subject,

  • Registration,

  • Registration subject,

  • Registration with password,

  • Registration with password subject,

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

Для этого используется переменная lang.

Если шаблона на языке пользователя нет, используется шаблон на английском языке.

Примеры

Базовое использование

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

{{SomeVar}}

Оператор "if-else"

В шаблонах уведомлений возможно использование условного оператора if-else.

if:
{{#SomeVar}}
      ...
    {{/SomeVar}}
else:
{{^SomeVar}}
      ...
    {{/SomeVar}}

Цикл

Аналогичным образом задаются циклы:

for-loop:
{{#SomeVar}}
      ...
    {{/SomeVar}}

Lang

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

  • en - английский,

  • it - итальянский,

  • ru - русский.

{{#lang=ru}}
Создание учетной записи.
{{/lang=ru}}

{{#lang=en}}
Account creation
{{/lang=en}}

Breadcrumbs

html

{{#breadcrumbs multi-break=1 depth=3 length=30}}<a href='{{entityUrl}}'>/{{entityName}} (ID {{entityId}})</a>{{/breadcrumbs}}

markdown

{{#breadcrumbs multi-break=1 depth=3 length=20}}/[{{entityName}} {{entityId}}]({{entityUrl}}){{/breadcrumbs}}