Перейти к содержанию

Статья для предыдущей поддерживаемой версии ПО — 4.7!

Текущая рекомендованная версия — Comindware Platform 5.0. См. документацию к версии 5.0.

Отправка эл. почты из сценариев через SMTP и Exchange. Настройка подключения, пути передачи данных и сценария

Введение

В Comindware Business Application Platform можно настроить отправку эл. почты из сценариев. При этом письма могут содержать данные из шаблонов, в том числе вложенные файлы.

Для отправки эл. почты с помощью сценариев используются подключения типов «Отправка эл. почты через SMTP» и «Отправка эл. почты через Exchange». В процессах используются подключения типа «Отправка эл. почты из процесса».

Здесь представлены общие инструкции по настройке подключения к почтовому серверу по протоколу SMTP или Exchange, пути передачи данных и сценария для отправки эл. писем.

Порядок настройки отправки эл. писем из сценария

  1. Настройте подключение к почтовому серверу типа «Отправка почты через SMTP» или «Отправка эл. почты через Exchange».
  2. Настройте путь передачи данных типа «Отправка эл. почты через SMTP» или «Отправка эл. почты через Exchange», использующий созданное подключение.
  3. Настройте шаблон с данными для эл. писем.
  4. Настройте сценарий, который будет отправлять письма с данными из шаблона записи посредством настроенных подключения и пути передачи данных.

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

  1. Откройте страницу «Администрирование» — «Подключения».
  2. Откройте двойным нажатием в списке или создайте создайте подключение к электронной почте типа «Отправка почты через SMTP» или «Отправка эл. почты через Exchange».
  3. Настройте свойства подключения:

    • Системное имя — введите уникальное имя подключения. Рекомендуется использовать буквы латинского алфавита, цифры и символ «_».
    • Отключить — установите этот флажок, если требуется временно деактивировать данное подключение.
    • Описание — введите наглядное описание подключения, например «Подключение для отправки писем из сценариев».
    • Запись в файловые журналы — выберите, какие события следует записывать в журналы:
      • Полные сведения об обработке сообщения;
      • Только ошибки;
      • Отключить — не регистрировать в журнале события отправки писем.
    • Для SMTP-сервера
      • Адрес почтового сервера — введите адрес SMTP-сервера без указания протокола (SMTPHTTPSHTTP).
      • Порт — введите номер порта SMTP-сервера.
      • Шифрование — выберите протокол шифрования, который поддерживает SMTP-сервер:
        • Отсутствует — не использовать шифрование;
        • SSL;
        • TLS.
      • Проверять соединение без отправки сообщения — установите этот флажок, чтобы проверить соединение без указания получателей тестового письма.
      • Адреса получателей для проверки работоспособности подключения — укажите один или несколько (через запятую) адресов эл. почты для проверки соединения.
    • Для сервера Exchange
      • URL веб-сервера Exchange — введите адрес почтового сервера с указанием протокола (HTTPSHTTP).
      • Версия Exchange — выберите версию сервера Exchange.
    • Тип аутентификации — выберите способ проверки подлинности, используемый сервером:
      • Отсутствует;
      • Базовая;
      • Аутентификация Windows.
    • Имя пользователя — укажите учетную запись для подключения к почтовому серверу.
    • Пароль — введите пароль для подключения к почтовому серверу.
    • Домен — укажите домен пользователя почтового сервера.
    • Имя отправителя — укажите имя, которое будет указано в отправляемых письмах.
    • Адрес эл. почты отправителя — укажите адрес эл. почты, который будет указан в отправляемых письмах. Почтовый сервер может проверять соответствие адреса отправителя и имени пользователя, отправляющего почту.

      Примечание

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

  4. Нажмите кнопку «Проверить соединение».

  5. Если используется SMTP-сервер, удостоверьтесь, что получателям пришло тестовое письмо от настроенного отправителя.
  6. Чтобы просмотреть журнал событий отправки писем, нажмите кнопку «Скачать журнал».
  7. Сохраните подключение.

Настройка пути передачи данных для отправки эл. почты из сценария

Путь передачи данных для отправки эл. почты служит для преобразования и передачи данных из Comindware Business Application Platform в эл. письмо.

  1. Откройте страницу «Администрирование» — «Архитектура» или страницу «Администрирование» приложения.
  2. Выберите пункт «Пути передачи данных» .
  3. Откройте двойным нажатием в списке или создайте создайте подключение к электронной почте типа «Отправка почты через SMTP» или «Отправка эл. почты через Exchange».
  4. Настройте свойства пути передачи данных на следующих вкладках:

  5. Сохраните путь передачи данных.

Основные свойства

На вкладке «Основные свойства» настройте параметры использования пути передачи данных.

  • Подключение — выберите подключение для отправки эл. почты из сценариев через SMTP или Exchange.
  • Системное имя — введите уникальное имя пути передачи данных. Рекомендуются буквы латинского алфавита, цифры и символ «_».
  • Отключить — установите этот флажок, если требуется временно деактивировать путь передачи данных.
  • Описание — введите наглядное описание пути передачи данных, например «Путь для отправки писем из сценариев».
  • Номер шины данных — выберите номер от 0 до 3, если требуется распределить потоки данных нескольких путей для повышения производительности.

Атрибуты сообщения

На вкладке «Атрибуты сообщения» настройте атрибуты, значения которых будут подставляться в содержимое в эл. письма с помощью вкладки «Интеграция».

Значения атрибутам сообщения необходимо присвоить в сценарии с помощью действия «Изменить значения переменных». Затем в сценарии следует выполнить действие «Отправить сообщение».

  1. В таблице «Запрос» настройте готовые атрибуты сообщения:
  • To — получатели письма (массив объектов).
    • Name — имя получателя (строка).
    • Address — адрес эл. почты (строка).
  • Attachments — прикреплённые файлы (массив объектов).
    • Name — название файла (строка).
    • Extension — расширение файла (строка).
    • Content — содержимое файла (строка).
  • Cc — копии (массив объектов).
    • Name — имя получателя (строка).
    • Address — адрес эл. почты (строка).
  • Bcc — скрытые копии (массив объектов).
    • Name — имя получателя (строка).
    • Address — адрес эл. почты (строка).
  • CustomHeaders — дополнительные заголовки (массив объектов).
    • Name — имя заголовка (строка).
    • Value — значение заголовка (строка).
    • ListValues — массив неименованных значений.
  1. При необходимости в таблицах «Ответ» и «Ответ» настройте атрибуты, в которые будет помещаться отклик SMTP-сервера после отправки письма.

Создание собственного атрибута сообщения

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

  • FullName типа «Строка» для Ф. И. О. получателя;
  • Filename типа «Строка» для имени прикрепляемого файла;
  • RecepientEmail типа «Строка» для эл. почты получателя;
  • Subject типа «Строка» для темы письма;
  • Body типа «Строка» для темы письма;
  • ReplyAddress типа «Строка» для выбора электронной почты, на которую должны приходить ответные письма.

Чтобы создать атрибут сообщения, нажмите кнопку «Добавить» над таблицей с атрибутами и заполните свойства атрибута:

  • Системное имя — введите уникальное имя атрибута, по которому вы будете обращаться к нему в сценарии.
  • Тип — выберите тип атрибута:
    • Строка
    • Число
    • Длительность
    • Дата и время
    • Временной период
    • Логический
    • Объект
    • Ключ-значение
  • Описание — введите наглядное название атрибута.
  • Обязательный, Не пустой, Массив — установите флажки согласно назначению атрибута.

Интеграция

На вкладке «Интеграция» настройте дополнительные свойства эл. письма, заполнив их статическими значениями или заполнителями атрибутов сообщения.

Внимание!

Прежде чем подставлять в письмо заполнители атрибутов сообщения, их необходимо добавить в таблицу «Запрос» на вкладке «Атрибуты сообщения». В противном случае путь передачи данных будет автоматически отключён.

Подстановка значений атрибутов сообщения в эл. письмо

  • Чтобы поместить значение атрибута сообщения в эл. письмо, введите его системное имя в фигурных скобках { }заполнитель — в соответствующее поле письма на вкладке «Интеграция».
  • В текстовые поля (шаблон темы, шаблон текста сообщения, получатели, копия, скрытая копия) можно вводить произвольный текст и подставлять заполнители атрибутов сообщения.
  • Например, в поле «Шаблон темы» можно ввести строку:

    Уведомление «{Title}» от {Date} 

    Здесь: {Title} и {Date} — заполнители атрибутов сообщения, содержащее название и дату уведомления.

Примечание

Атрибуты сообщения типа «Объект» нельзя подставить в письмо посредством заполнителей.

  • Шаблон темы — введите заголовок письма, например:

    Документ {Filename} к рассмотрению.
  • Шаблон текста сообщения — введите текст письма, например:

    Здравствуйте, {FullName}!

    Рассмотрите документ {Filename}.
  • Дополнительные заголовки — введите служебные заголовки письма с помощью строковых литералов или заполнителей:

    • Имя заголовка — строка (заполнители не поддерживаются), например:

      # Заголовок адреса для ответа
      Reply-To
    • Значение заголовка — строка или заполнитель, например:

      # Адрес для ответа на письмо
      {ReplyAddress}
  • Получатели, Копия, Скрытая копия — укажите адресатов письма с помощью строковых литералов или заполнителей, например:

    • Ф. И. О.:

      {FullName}
    • Адрес:

      {RecepientEmail}
  • Прикреплённые файлы

    • Название документа — введите строковый литерал с именем файла, включая расширение (заполнители не поддерживаются). Например:
    example.txt
    • Содержимое документа — введите строку с содержимым файла в формате Base64 (заполнители не поддерживаются). Например:
    0K3RgtC+INC/0YDQuNC80LXRgCDRgdGC0YDQvtC60Lgg0LIg0LrQvtC00LjRgNC+0LLQutC1IEJhc2U2NC4=

    Формат Base64

    Base64 — это формат кодирования двоичных данных при помощи 64 символов ASCII. Он широко используется для представления файлов в содержимом письма.

    Например, строка:

    Это пример строки в кодировке Base64.

    в формате Base64 будет выглядеть следующим образом:

    0K3RgtC+INC/0YDQuNC80LXRgCDRgdGC0YDQvtC60Lgg0LIg0LrQvtC00LjRgNC+0LLQutC1IEJhc2U2NC4=

Настройка шаблона записи и сценария для отправки эл. почты

В качестве примера настроим шаблон и сценарий для отправки эл. писем получателю из атрибута типа «Аккаунт» с вложенными файлами из атрибута типа «Документ».

Аналогичным образом вы можете настроить формирование эл. писем из любых данных согласно требуемой бизнес-логике.

Настройка шаблона записи

  1. Создайте шаблон записи «Эл. письма».
  2. Создайте следующие атрибуты:

    • Получатель типа «Аккаунт»;
    • Вложение типа «Документ».
  3. Создайте кнопку «Отправить письмо» со следующими свойствами:

    • Контекст операции: запись
    • Операция: вызвать событие «Нажата кнопка»
    • Результат выполнения: обновить данные
  4. Поместите атрибуты «Получатель» и «Вложение» на форму.

  5. Поместите кнопку «Отправить письмо» на форму.

Настройка сценария

Сценарий для отправки почты

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

  • нажатие кнопки;
  • создание записи;
  • изменение записи;
  • запуск процесса;
  • получение сообщения;
  • вход токена в элемент диаграммы;
  • выход токена из элемента диаграммы.
  1. Создайте сценарий «Отправка писем».
  2. В свойствах события «Нажатие кнопки» выберите контекстный шаблон «Эл. письма» и кнопку «Отправить письмо».
  3. Создайте действие «Изменить значения переменных» со следующими свойствами:

    • Операция со значениями переменных: заменить
    • Набор переменных: mail
  4. В свойствах действия «Изменить значения переменных» настройте перечисленные ниже переменные.

    Сопоставление переменных-объектов с атрибутами сообщения

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

    Для передачи значения переменной в атрибут сообщения типа «Объект», необходимо создать переменную с такой же структурой, как у атрибута сообщения, создав дочерние переменные:

    • Создайте переменную, оставив её значение пустым.
    • Установите флажок у имени родительской переменной в списке и нажмите кнопку «Создать».
    • Дважды нажмите значок рядом с родительской переменной.
    • В таблице отобразится дочерняя переменная.
    • To — с дочерними переменными:

      • Addressзначение: формула
      $Poluchatel->mbox
      • Nameзначение: формула
      $Poluchatel->fullName
    • FullNameзначение: формула

      $Poluchatel->fullName
    • Filenameзначение: N3

      # Импортируем функции для работы с записями и документами
      @prefix object: <http://comindware.com/ontology/object#>.
      @prefix document: <http://comindware.com/ontology/document#>.

      {
      # Находим атрибут Vlozhenie (Вложение) в шаблоне Elpisma (Эл. письма).
      ("Elpisma" "Vlozhenie") object:findProperty ?VlozhenieAttribute.
      # Присваиваем переменной ?Vlozhenie объект из атрибута «Вложение».
      ?item ?VlozhenieAttribute ?Vlozhenie.
      # В переменную ?currentDocument помещаем
      # последнюю добавленную версию документа.
      ?Vlozhenie document:currentRevision ?currentDocument.
      # Возвращаем имя текущего файла.
      ?currentDocument document:name ?value.
      }
    • Attachments — с дочерними переменными:

      • Nameзначение: N3
      # Импортируем функции для работы с записями и документами
      @prefix object: <http://comindware.com/ontology/object#>.
      @prefix document: <http://comindware.com/ontology/document#>.

      {
      # Находим атрибут Vlozhenie (Вложение) в шаблоне Elpisma (Эл. письма).
      ("Elpisma" "Vlozhenie") object:findProperty ?VlozhenieAttribute.
      # Присваиваем переменной ?Vlozhenie объект из атрибута «Вложение».
      ?item ?VlozhenieAttribute ?Vlozhenie.
      # В переменную ?currentDocument помещаем
      # последнюю добавленную версию документа.
      ?Vlozhenie document:currentRevision ?currentDocument.
      # Возвращаем имя текущего файла.
      ?currentDocument document:name ?value.
      }
      • Extensionзначение: N3
      # Импортируем функции для работы с записями и документами
      @prefix object: <http://comindware.com/ontology/object#>.
      @prefix document: <http://comindware.com/ontology/document#>.

      {
      # Находим атрибут Vlozhenie (Вложение) в шаблоне Elpisma (Эл. письма).
      ("Elpisma" "Vlozhenie") object:findProperty ?VlozhenieAttribute.
      # Присваиваем переменной ?Vlozhenie объект из атрибута «Вложение».
      ?item ?VlozhenieAttribute ?Vlozhenie.
      # В переменную ?currentDocument помещаем
      # последнюю добавленную версию документа.
      ?Vlozhenie document:currentRevision ?currentDocument.
      # Возвращаем расширение текущего файла.
      ?currentDocument document:revisionExtension ?value.
      }
      • Contentзначение: N3
      # Импортируем функции для работы с записями и документами
      @prefix object: <http://comindware.com/ontology/object#>.
      @prefix document: <http://comindware.com/ontology/document#>.

      {
      # Находим атрибут Vlozhenie (Вложение) в шаблоне Elpisma (Эл. письма).
      ("Elpisma" "Vlozhenie") object:findProperty ?VlozhenieAttribute.
      # Присваиваем переменной ?Vlozhenie объект из атрибута «Вложение».
      ?item ?VlozhenieAttribute ?Vlozhenie.
      # В переменную ?currentDocument помещаем
      # последнюю добавленную версию документа.
      ?Vlozhenie document:currentRevision ?currentDocument.
      # Возвращаем содержимое текущего документа.
      ?currentDocument document:content ?value.
      }
  5. Создайте действие «Отправить сообщение» со следующими свойствами:

Тестирование

  1. Создайте запись в шаблоне «Эл. письма».
  2. Выберите аккаунт, на эл. почту которого требуется отправить письмо.
  3. Загрузите файл в поле «Вложение».
  4. Сохраните запись.
  5. Нажмите кнопку «Отправить письмо».
  6. На эл. почту, выбранного аккаунта, придёт письмо с прикреплённым вложением.

Связанные статьи

Получение эл. почты с помощью сценариев через IMAP и Exchange. Настройка подключения, пути передачи данных и сценария

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

Подключения. Типы, создание, настройка, удаление

Пути передачи данных. Типы, создание, настройка, удаление

К началу