Уведомления
Способы формирования уведомлений

Способы формирования уведомлений

Формирование уведомления на отправку одинаково как для событийного взаимодействия, так и для вызова Rest API. Ниже приведено описание для события.

Отправка уведомления, контракт события qun-notification-create

ПараметрНазваниеТип
NotificationRecipientПолучатель уведомленияNotificationRecipient
channelProtocolLinkListСписок каналов рассылкиArray of ChannelProtocolLinkList
createdByАвтор уведомленияstring
idID записи уведомленияinteger($int64)
messageТекст сообщенияstring
notificationAttributesАтрибуты сообщенияstring
recipientGroupIdID группы рассылкиinteger($int64)
templateIdID шаблона уведомленияinteger($int64)
typeТип уведомленияinteger($int64)

Отправка уведомления на список email`ов, контракт события qun-notification-command

ПараметрНазваниеТип
NotificationRecipientПолучатель уведомленияArray of NotificationRecipient
channelProtocolLinkListСписок каналов рассылкиArray of ChannelProtocolLinkList
createdByАвтор уведомленияstring
idID записи уведомленияinteger($int64)
messageТекст сообщенияstring
notificationAttributesАтрибуты сообщенияstring
recipientGroupIdID группы рассылкиinteger($int64)
templateIdID шаблона уведомленияinteger($int64)
typeТип уведомленияinteger($int64)

Схемы объектов

NotificationRecipient

Получатель уведомления

ПараметрНазваниеТип
emailЭл. почта получателя (для получателя "Сотрудник")string
idID записи получателяinteger($int64)
nameНаименование получателяstring
recipientIdID получателя (йд роли, ID сотрудника, ID департамента)integer($int64)
systemNameСистемное имя получателя (сис имя роли/логин сотрудника/сис имя департамента)string
typeТип получателя:

• 1 - Сотрудник (employee);
• 2 - Департамент (department);
• 3 - Роль пользователя (role);
• 4 - Группа получателей (group).
integer($int64)

ChannelProtocolLinkList

Список каналов рассылки

ПараметрНазваниеТип
channelSysNameСистемное имя канала рассылкиstring
messageШаблон текста сообщения для каналаstring
messageHTMLШаблон текста сообщения для канала в формате HTMLstring
messageTypeТип сообщенияinteger
subjectТема письмаstring

Варианты формирования события для отправки уведомления

Уведомление можно сформировать:

  1. Самостоятельно сформировать уведомление, не используя шаблона. В таком случае необходимо указать следующие параметры:
  • channelProtocolLinkList - список каналов для отправки;
  • notificationRecipient / recipientGroupId - получатель уведомелния или ID группы рассылки (в которую входит список получателей);
  • type - тип уведомления;
  • message - шаблон текста уведомления (статичный текст);
  • notificationAttributes - атрибуты сообщения, если в message был указан параметризированный шаблон текста.
  1. Сформировать уведомление по шаблону. В таком случае необходимо указать следующие параметры:
  • templateId - ID шаблона уведомления;
  • notificationAttributes - атрибуты сообщения, если в шаблоне был указан параметризированный текст.

Ниже будут представлены примеры формирования уведомлений в редакторе дизайнера процессов.

Отправка статического текста

ПеременнаяТипПример
channelProtocolLinkListскрипт Groovy[["channelSysName": "email", "message": "Test1"]]
messageСтрока или выражение"Уведомление о созданной задаче"
typeСтрока или выражение1
notificationRecipientКарта
КлючЗначение
recipientId${execution.getVariable('employeeId')}
type1

empty

Отправка шаблонного текста уведомления и параметризированный

При заполнении значения переменной notificationAttributes можно делать перенос строк. Перенос осуществляется после знака "+".

ПеременнаяТипПример
notificationAttributesскрипт Groovydef text = "{\"taskId\": \"" + response.content.stream().findFirst().get().id.toString() + "\", \"startDate\": \"" + startDate + "\", \"endDate\": \"" + endDate + "\", \"statusName\": \"" + statusName + "\", \"fullName\": \"" + responseEmployee.fullName + "\", \"url\": \"" + url + "\"}"; text
channelProtocolLinkListскрипт Groovy[["channelSysName": "email"]]
messageскрипт Groovy"Подчинённый создал заявку на отпуск. Необходимо ее подтвердить через пользовательскую задачу №${taskId}"
typeСтрока или выражение1
notificationRecipientКарта
КлючЗначение
recipientId${execution.getVariable('employeeId')}
type1

empty

Отправка уведомления с параметрами по шаблону

ПеременнаяТипПример
notificationAttributesскрипт Groovydef text = "{\"taskId\": \"" + response.content.stream().findFirst().get().id.toString() + "\", \"startDate\": \"" + startDate + "\", \"endDate\": \"" + endDate + "\", \"statusName\": \"" + statusName + "\", \"fullName\": \"" + responseEmployee.fullName + "\", \"url\": \"" + url + "\"}"; text
templateIdСтрока или выражение1

empty

Отправка уведомления на email

ПеременнаяТипПример
channelProtocolLinkListскрипт Groovy[["channelSysName": "email"]]
messageСтрока или выражение"Уведомление о созданной задаче"
typeСтрока или выражение1
notificationRecipientКарта
КлючЗначение
recipientId${execution.getVariable('employeeId')}
type1

empty