Оповещение по email

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

Оповещение по email (оповещение) является одним из вариантов действия по событию.

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

Оповещение, настроенное для класса объектов, наследуется в его типы. Оповещение, настроенное для типа, действует только для данного типа и не наследуется во вложенные типы.

Алгоритм выполнения оповещения

Наступление инициирующего события → Проверка выполнения условий действия по событию → Формирование списка получателей → Выполнение скрипта кастомизации → Создание оповещения → Отправка оповещения (выполняется один раз).

Правила отправки оповещений

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

На отправку оповещений влияет режим Silent Mode. При включенном SilentMode отправка оповещений не выполняется, см. Режим Silent Mode.

Количество получателей оповещения ограничивается в конфигурационном файле dbaccess.properties (параметр ru.naumen.mail.max_recipients, по умолчанию 90 получателей). Если количество получателей превышает указанный предел, то оповещение делится на отдельные письма таким образом, чтобы общее количество получателей каждого из писем не превышало установленного предела, см. Почта.

Ошибки отправки оповещений фиксируются в журнале истории событий, см. Журнал истории событий.

Автоматическая отправка почтовых оповещений может привести к зацикливанию писем, см. Предотвращение зацикливания писем.

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

Меню навигации "Настройка системы" → настройка "Действия по событиям".

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

Добавление оповещения

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

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

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

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

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

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

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

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

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

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

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

  • Действие — выберите действие "Оповещение", которое будет выполняться при наступлении события. После выбора значения в блоке "Параметры действия" отображаются параметры оповещения.
  • Атрибуты, передаваемые в контекст — укажите атрибуты, которые будут использоваться при выполнении действия по событию.

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

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

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

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

  • Очередь обработки действия — выберите очередь, в которой будет размещено оповещение.

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

Параметры оповещения:

  • От — информационное поле, в котором отображаются название системы и e–mail адрес системы, указанные в параметрах исходящей почты, см. Настройка исходящей почты.
  • Кому: Сотрудники — выберите оповещаемых сотрудников.

    Оповещение отправляется не архивному сотруднику по адресу, указанному в карточке сотрудника (атрибут "Адрес электронной почты (email)").

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

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

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

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

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

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

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

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

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

    • Флажок установлен (по умолчанию) — автор действия не получает оповещение.
    • Флажок снят — автор действия получает оповещение.
  • Кому: E-mail адреса — введите произвольные email-адреса, на которые будет отправлено оповещение. Email-адреса вводятся в строку через запятую.

    Если адрес электронной почты сотрудника или произвольный e-mail адрес используется для подключения к серверу входящей почты, то оповещение на данный адрес не отправляется.

    E-mail адрес должен содержать не более 63 символов: 63@63. Если в адресе получателя символов больше, то на этот адрес оповещение отправлено не будет.

  • Тема — введите тему почтового сообщения.

    В теме допустимо использование глобальных переменных, см. Переменные и ссылки в оповещениях, уведомлениях, шаблонах стилей.

  • Шаблон — выберите шаблон стилей для формирования оповещения, см. Шаблоны стилей.

    Если в шаблоне стилей используется переменная "$content", то вместо "$content" будет подставляться значение поля "Текст оповещения".

    Если в шаблоне стилей нет переменной "$content", то используется только текст, указанный в шаблоне стилей. Так как поле "Текст оповещения" является обязательным для заполнения, то необходимо указать в нем произвольный текст, который не будет отображаться в итоговом оповещении.

    Значение [без шаблона] — текст оповещения и его внешний вид полностью определяется в поле "Текст оповещения".

  • Текст оповещения — введите содержание почтового сообщения с помощью поля ввода текста в формате RTF, см. Поле ввода текста в формате RTF.

    В тексте оповещения допустимо:

    Если в теле письма будет необходимо отображать треугольные скобки, то в поле "Текст оповещения" необходимо заменить их на специальные символы: '<' и '>', иначе текст внутри треугольных скобок будет восприниматься почтовым клиентом как HTML тег и отображаться не будет.

    def replaceSymbols(def obj, def attrCode)
    {
    return obj[(attrCode)]?.replaceAll('<', '&lt;')?.replaceAll('>', '&gt;');
    }
    notification.scriptParams['problenCode'] = replaceSymbols(subject, 'problenCode')

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

  • В формате HTML:

    • Флажок установлен (по умолчанию) — оповещение отправляется в формате HTML.

      При отправке оповещения в формате HTML желательно все атрибуты типа "Строка" или "Текст" перед вставкой в текст оповещения явно преобразовать в "Текст в формате RTF" (через метод utils.asRTF).

    • Флажок снят — оповещение отправляется в виде простого текста (в формате text\plain).

      При отправке оповещения в формате text\plain желательно все атрибуты типа "Текст в формате RTF" перед вставкой в текст оповещения явно преобразовать в обычный текстовый формат (через метод utils.asText).

  • Скрипт — введите содержание скрипта кастомизации оповещения. Скрипт кастомизации предназначен для выполнения настроек, не вынесенных в отдельные параметры оповещения.

    С помощью скрипта кастомизации может быть изменен список адресатов в поле письма "Кому" (переменная notification) и заполнен список адресатов в полях письма "Копия" и "Скрытая копия" (переменные notification.cc и notification.ccEmployee)

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

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

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

Список адресатов в поле письма "Кому" будет заполняться значениям параметров "Кому(Сотрудники)" и "Кому (E-mail адреса)" и может быть изменен с помощью скрипта кастомизации оповещения. Список адресатов в полях письма "Копия" и "Скрытая копия" заполняется только с помощью скрипта кастомизации оповещения.

Включение оповещения

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

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

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

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

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

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

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

Связанные настройки. Настройка исходящей почты

Для отправки оповещений в системе должны быть настроены параметры отправки почты. Описание настройки параметров отправки почты, см. Настройка исходящей почты.

Если параметры отправки почты не настроены, а оповещения настроены и включены, процедура оповещения не срабатывает (сообщений об ошибке не выводится). Также отправка оповещений не производится в режиме Silent Mode, см. Режим Silent Mode.