Skip to Content
Primo RPA Idea HubАдминистраторамВеб-формыНастройка почтовых уведомлений у веб-форм

Настройка почтовых уведомлений у веб-форм

Idea Hub предоставляет функциональность для создания email-уведомлений в формате HTML, которые будут включать данные созданных идей или заключений:

  • Уведомления о созданных идеях отправляются заинтересованным лицам, когда пользователь завершил создание идеи.
  • Уведомления для заключений отправляются заинтересованным лицам, когда сотрудник Центра RPA-компетенций отклоняет или одобряет заявку (идею).
⚠️

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

Настройка уведомлений для идей и заключений

Чтобы добавить к веб-форме обработчик почтового уведомления:

  1. В панели административного меню перейдите в раздел Структура > Веб-формы.

  2. В строке с нужной веб-формой (Идея или Заключение) в столбце Операции выберите пункт Настройки.

  3. В открывшейся форме перейдите на вкладку Email/Handlers и в верхнем правом углу нажмите + Add email. Сбоку откроется форма добавления электронной почты:

    Форма добавления электронной почты

Чтобы ваше уведомление отправлялось по почте, нужно обязательно настроить следующие параметры:

ПараметрОписаниеПример заполнения
НазваниеТехническое поле, которое будет отображаться только в настройках. Значение указывается в текстовом форматеЭлектронная почта
Send To > To emailАдрес получателя. Параметр имеет множество вариантов заполнения, которые можно увидеть в выпадающем списке. По умолчанию используется значение в виде токена [site:mail] ​— административный email, установленный в основных настройках сайта[site:mail]
Send From > From emailАдрес отправителя. Параметр имеет множество вариантов заполнения, которые можно увидеть в выпадающем списке[site:mail]
Сообщение > СодержимоеШаблон письма. Вы можете использовать шаблон по умолчанию или использовать пользовательский шаблон<p>Submitted on [webform_submission:created]</p><p>Submitted by: [webform_submission:user]</p><p>Submitted values are:</p>[webform_submission:values]

После заполнения параметров нажмите Сохранить.

Расширенная информация о настройках

Пользовательский адрес отправителя/получателя

В полях To email или From email можно выбрать значение Custom To/From email address ​— пользовательский адрес электронной почты. Пример:

alt

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

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

Список токенов можно посмотреть нажав на ссылку Доступные токены в соответствующем блоке настроек. Пример:

alt

Чаще всего в письме будут использоваться токены вида [webform_submission:values:?], где за ? отвечают значения элементов веб-формы.

Пример: в веб-форме Идея есть поле Краткое название, ключ (ID) которого это title. Конечным токеном для значения этого поля будет [webform_submission:values:title].

Токены могут отдавать не только значение но и, например, HTML-шаблон. Чтобы из текстового поля получить чистое значение, надо добавить суффикс :raw. В итоге, чтобы получить полное чистое значение данного поля, надо указать токен [webform_submission:values:title:raw].

Текстовые или числовые значения полей формы можно получить достаточно просто. Для получения данных пользователя, процесса, департамента, которые добавлены как поля на форму, нужен суффикс :entity, а далее суффиксы полей сущности.

Так, если у вас на форме есть поле Ключевой пользователь с ключом owner, то для получения имени нужно использовать токен [webform_submission:values:owner:entity:field_name].

Если поле owner принимает несколько значений, то перед :entity используйте индекс. Индексы стартуют от 0 и до максимального числа значений минус 1. То есть, если максимальное количество значений 3, то индексами будут: 0, 1, 2. Если у поля множественный выбор, но индекс не указан, то он будет равен 0.

Пример: поле Подразделения, с ключом areas, могут принимать несколько значений. Для получения кодов первых двух департаментов нужно использовать следующие два токена: [webform_submission:values:areas:0:entity:field_code], [webform_submission:values:areas:1:entity:field_code].

Итого значение для поля To email выбирается по необходимости:

  • либо конкретный электронный адрес пользователя;
  • либо токен вида [webform_submission:values:owner:entity:mail] ​— почта ключевого пользователя процесса;
  • либо токен вида [current-user:mail] ​— почта текущего пользователя, т.е. того, кто создает идею.

Опциональные поля типа CC email, BCC email, имеют те же опции, что и поля To/From email, поэтому описанные настройки подходят и для них.

Тема и содержимое письма

В блоке настроек Сообщение есть поля Тема и Содержимое:

alt

Тема, как и поле Send To, имеет список значений, которые можно автоматически подставить. При этом значение Custom subject принимает токен любого вида.

Содержимое имеет выбор между значениями элементов веб-формы:

  • Custom body ​— позволяет написать шаблон письма с помощью редактора текста CKEditor. Работают токены так же, как описано выше. Текст будет автоматически преобразован в HTML-формат.
  • Twig template ​— позволяет написать шаблон, используя HTML. Из-за того, что это чистый HTML, у вас будет больше возможностей, включая поддержку токенов. Но этот способ имеет свои особенности: для вызова токенов нужно использовать конструкцию: {{ webform_token('[webform_submission:values:?]', webform_submission, data, []) }}.

Примеры писем с обоими форматами

Custom body:

Уважаемый(ая) [webform_submission:values:owner:entity:field_name] [webform_submission:values:owner:entity:field_name_middle] [webform_submission:values:owner:entity:field_name_last], Вашему вниманию предлагается решение по идее роботизации, поданной через портал идей. Ниже представлена краткая информация по данной идее: Название идеи: [webform_submission:values:title] Описание: [webform_submission:values:process_description] Подразделение: [webform_submission:values:areas:entity:name] Ожидаемый эффект: [webform_submission:values:virtual_revenue_expected][webform_submission:values:revenue_expected][webform_submission:values:weekend_revenue_expected] Если у вас возникнут вопросы или потребуется дополнительная информация, пожалуйста, свяжитесь с нами. С уважением, [current-user:display-name] [current-user:field_department:entity:name] [current-user:mail]

Twig template:

<p>Уважаемый(ая) {{ webform_token('[webform_submission:values:owner:entity:field_name]', webform_submission, data, []) }} {{ webform_token('[webform_submission:values:owner:entity:field_name_middle]', webform_submission, data, []) }} {{ webform_token('[webform_submission:values:owner:entity:field_name_last]', webform_submission, data, []) }}, <br /> Вашему вниманию предлагается решение по идее роботизации, поданной через портал идей. Ниже представлена краткая информация по данной идее: <br /> <br /> Название идеи: {{ webform_token('[webform_submission:values:title]', webform_submission, [], options) }} <br /> Описание: {{ webform_token('[webform_submission:values:process_description]', webform_submission, [], options) }} <br /> Подразделение: {{ webform_token('[webform_submission:values:areas:entity:name]', webform_submission, [], options) }} <br /> Ожидаемый эффект: {{ webform_token('[webform_submission:values:virtual_revenue_expected]', webform_submission, [], options) }}{{ webform_token('[webform_submission:values:revenue_expected]', webform_submission, [], options) }}{{ webform_token('[webform_submission:values:weekend_revenue_expected]', webform_submission, [], options) }} <br /> Ссылка на портал: {{ webform_token('[webform_submission:url:canonical]', webform_submission, [], options) }} <br /> Если у вас возникнут вопросы или потребуется дополнительная информация, пожалуйста, свяжитесь с нами. <br /> <br /> С уважением, {{ webform_token('[current-user:display-name]', webform_submission, [], options) }} <br> {{ webform_token('[current-user:field_department:entity:name]', webform_submission, [], options) }} <br /> {{ webform_token('[current-user:mail]', webform_submission, [], options) }} </p>

Список использованных токенов и их значения

  1. [webform_submission:values:owner:entity:field_name] ​— имя пользователя из поля Ключевой пользователь.
  2. [webform_submission:values:owner:entity:field_name_middle] ​— отчество пользователя из поля Ключевой пользователь.
  3. [webform_submission:values:owner:entity:field_name_last] ​— фамилия пользователя из поля Ключевой пользователь. Эти поля можно заменить на одно короткое поле display-name, токен: [webform_submission:values:owner:entity:display-name].
  4. [webform_submission:values:title] ​— поле Заголовок.
  5. [webform_submission:values:process_description] ​— поле Описание.
  6. [webform_submission:values:areas:entity:name] ​— имя департамента из поля Подразделения.
  7. [current-user:display-name] ​— имя/фамилия пользователя, который создает идею.
  8. [current-user:field_department:entity:name] ​— название департамента пользователя, который создает идею.
  9. [current-user:mail] ​— почта пользователя, который создает идею.

Важное дополнение

На текущий момент веб-форма Идея имеет поле Ключевой пользователь с ключом owner_1 вместо owner, а также тип поля Select other. Этот тип не позволяет использовать у токена суффикс :entity, а значит у вас не будет доступа к полям данного пользователя.

Чтобы это исправить, необходимо:

  1. Перейти на страницу редактирования веб-формы Идея ​— /admin/structure/webform/manage/idea.

  2. Удалить поле owner_1:

    alt

  3. Нажать кнопку Add element у элемента [who_flexbox]:

    alt

  4. Выбрать Entity select, нажав Add element:

    alt

  5. В новом окне заполнить поля Заголовок и Ключ. В поле Тип элемента для ссылки выбрать опцию User.

  6. Внизу страницы нажать кнопку Сохранить.