2.10.3. Обробка електронної пошти
Функціонал Обробка електронної пошти доступний лише при встановленні додаткового пакета messaging-mail.
Було впроваджено групу ярликів Обробка пошти для інтеграції платформи з сервісами електронної пошти, для керування листами. Ця група містить наступні ярлики:
- Джерела електронної пошти — ярлик, за допомогою якого, ви можете додати вашу електронну скриньку у платформу, для подальшої роботи з її листами.
- Правила обробки електронної пошти — ярлик, за допомогою якого, ви можете автоматизувати процес сортування та обробки вхідних листів на основі заданих критеріїв.
- Отримані листи — ярлик для перегляду та керування всіма листами, які були отримані через налаштовані джерела електронної пошти.
- Журнал поштових операцій — ярлик для відстеження всіх операцій з електронною поштою, включаючи помилки та статуси обробки.
2.10.3.1. Додати джерело електронної пошти
-
У панелі навігації, виберіть робочий стіл Студія 1.
-
Виберіть групу ярликів Інтеграція 2, а потім виберіть групу ярликів Обробка пошти 3.
-
Виберіть ярлик Джерела електронної пошти 4.
-
У панелі інструментів, виберіть + 5.
-
Заповніть поля, використовуючи підказки в таблиці нижче.
| Поле | Опис |
|---|---|
| Протокол* | Виберіть протокол для отримання пошти:
|
| Сервер* | Введіть URL-адресу сервера вхідної пошти. Ось URL-адреси популярних поштових серверів:
|
| Порт* | Вкажіть порт підключення до сервера. Для протоколу IMAPS, наприклад, введіть номер порту 993. |
| Повний SSL | Активуйте цю опцію для захищеного з'єднання з поштовим сервером через SSL/TLS. Рекомендується для захисту облікових даних. |
| Логін* | Введіть електронну адресу або ім'я користувача для авторизації на поштовому сервері. ⚠️ Увага: gmail пошту можливо підключити лише якщо в ній налаштований доступ IMAP/POP3. Тоді в полі Логін мають бути введені дані саме від цього налаштованого доступу. Тобто, логін та пароль від самої скриньки не приймаються. |
| Пароль* | Введіть пароль доступу до поштової скриньки. ⚠️ Увага: gmail пошту можливо підключити лише якщо в ній налаштований доступ IMAP/POP3. Тоді в полі Пароль мають бути введені дані саме від цього налаштованого доступу. Тобто, логін та пароль від самої скриньки не приймаються. |
| Опис | Додайте короткий опис призначення цього поштового облікового запису для зручності адміністрування. |
Поля позначені символом "*" є обов'язковими до заповнення.
-
Виберіть кнопку Перевірити, щоб перевірити, чи ви ввели правильні дані вашої скриньки.
-
Виберіть кнопку Далі.
-
Заповніть поля, використовуючи підказки в таблиці нижче.
| Поле | Опис |
|---|---|
| Папка для моніторингу* | Виберіть папку у вашої електронної скриньки, в якій ви бажаєте відстежувати нові листи:
|
| Дія при отриманні повідомлення* | Виберіть дію, яка виконуватиметься з листами після їх обробки:
|
| Папка для переміщення поле доступно лише для дії Перемістити до папки | Виберіть зі списку папку, в яку бажаєте переміщати листи. ℹ️ Примітка: Значення папки для моніторингу не може збігатись зі значенням папки для переміщення. Для двох цих параметрів мають бути обрані дві різні папки. |
| Зберігати отримані листи, днів | Введіть число, яке означатиме кількість днів протягом яких листи зберігатимуться в системі. За замовчуванням, листи зберігатимуться в системі та не будуть видалятись. |
Поля позначені символом "*" є обов'язковими до заповнення.
-
Виберіть кнопку Далі.
-
Установіть прапорець Видаляти листи, що не відповідають жодному з правил 1, якщо бажаєте видаляти листи, які не відповідають жодному з правил фільтрування.
-
В полі Рівень журналювання 2 виберіть які саме типи даних ви бажаєте записувати в журнал поштових операцій:
- Відлагодження (рекомендований) — записувати в журнал всі типи сповіщень, включно з інформацією про встановлення з'єднання, вибір папки чи отримання листів. Додатково записуватимуться усі повідомлення, які ви додасте в серверному скрипті через
logger.debug(),logger.info(),logger.warn()таlogger.error(). - Інформація — записувати в журнал лише сповіщення про попередження, помилки та загальну інформацію про статуси обробки пошти. Додатково записуватимуться повідомлення які ви додасте в серверному скрипті через
logger.info(),logger.warn()таlogger.error(). - Попередження — записувати в журнал лише сповіщення про попередження та помилки обробки пошти. Додатково записуватимуться повідомлення які ви додасте в серверному скрипті через
logger.warn()таlogger.error(). - Помилка — записувати в журнал лише помилки отримання пошти. Додатково записуватимуться повідомлення які ви додасте в серверному скрипті через
logger.error().
Примітка:Додаткові повідомлення для журналювання можна налаштувати в серверному скрипті правил обробки електронної пошти.
- Відлагодження (рекомендований) — записувати в журнал всі типи сповіщень, включно з інформацією про встановлення з'єднання, вибір папки чи отримання листів. Додатково записуватимуться усі повідомлення, які ви додасте в серверному скрипті через
-
Виберіть кнопку Додати.
-
У верхній панелі виберіть Активувати, щоб перевести правило в статус Активне.
Після успішного додавання джерела електронної пошти, система почне автоматично моніторити вказану папку та обробляти нові листи згідно з налаштованими правилами обробки електронної пошти.
2.10.3.2. Створити правило обробки електронної пошти
Щоб створити правило електронної пошти ви можете заповнити всі або деякі вкладки:
-
Основне — загальні налаштування правила, такі як назва, опис та джерело електронної пошти, до якого буде застосовуватись це правило.
-
Фільтри — умови, за якими система визначатиме, які саме електронні листи потрібно обробляти. Якщо фільтри не задані, Scriptum опрацьовуватиме всі листи, що надходять до підключеної поштової скриньки.
-
Змінні з листа — налаштування змінних, які система автоматично витягуватиме з відфільтрованих (або всіх) електронних листів і зберігатиме для подальшого використання у вкладці Дії.
-
Дії — налаштування дій, які система виконуватиме з листами, що відповідають заданим умовам фільтрації. Ви можете вибрати одну або декілька дій для виконання з кожним листом, який відповідає умовам фільтрації.
2.10.3.2.1. Основне
-
У панелі навігації, виберіть робочий стіл Студія 1.
-
Виберіть групу ярликів Інтеграція 2, а потім виберіть групу ярликів Обробка пошти 3.
-
Виберіть ярлик Правила електронної пошти 4.
-
У панелі інструментів, виберіть + 5.
-
Заповніть поля, використовуючи підказки в таблиці нижче.
| Поле | Опис |
|---|---|
| Джерело електронної пошти* | Виберіть джерело електронної пошти (поштову скриньку) з листами якої бажаєте працювати. |
| Назва* | Введіть зрозумілу назву для правила. |
| Пріоритет* | Введіть будь-яке ціле число, щоб визначити послідовність виконання даного правила. Це поле є актуальним, якщо для одного джерела електронної пошти ви створили одразу декілька правил. Таким чином, за допомогою поля Пріоритет ви можете встановити послідовність, за якої ці правила застосовуватимуться. Правила з меншим числом виконуються раніше. |
| Опис | Додайте короткий опис правила. |
Поля позначені символом "*" є обов'язковими до заповнення.
2.10.3.2.2. Фільтри
-
Перейдіть у вкладку Фільтри 1, а потім заповніть поля 2, використовуючи підказки в таблиці нижче.
Використовуйте цю вкладку, щоб налаштувати умови, за якими система визначатиме, які саме електронні листи потрібно обробляти. Якщо фільтри не задані, Scriptum опрацьовуватиме всі листи, що надходять до підключеної поштової скриньки.
| Поле | Опис |
|---|---|
| Інтерпретувати як регулярні вирази | Якщо перемикач не активований, платформа сприйматиме введені в поля дані буквально. Якщо активований, можете використовувати формат регулярних виразів — спеціальний синтаксис JavaScript для компактного запису складних правил пошуку. Приклади: .*@example\.com (всі адреси домену), ^support@ (адреси, що починаються з "support@"), \d{4} (чотиризначні числа). |
| Відправник містить | Увімкніть перемикач Відправник містить, якщо бажаєте фільтрувати листи по цьому критерію. А потім, в полі нижче, введіть частину адреси або домену відправника (наприклад, "@company.com" або "support"). |
| Отримувач містить | Увімкніть перемикач Отримувач містить, якщо бажаєте фільтрувати листи по цьому критерію. А потім, в полі нижче, введіть частину адреси отримувача або ключові слова. |
| Копія містить | Увімкніть перемикач Копія містить, якщо бажаєте фільтрувати листи по цьому критерію. А потім, в полі нижче, введіть частину адреси з поля копії листа. |
| Тема містить | Увімкніть перемикач Тема містить, якщо бажаєте фільтрувати листи по цьому критерію. А потім, в полі нижче, введіть ключові слова або фрази, які повинні бути присутні в темі листа. |
| Тіло листа містить | Увімкніть перемикач Тіло листа містить, якщо бажаєте фільтрувати листи по цьому критерію. А потім, в полі нижче, введіть текстові фрагменти для пошуку в змісті повідомлення. |
| Використати скрипт для фільтрації | Увімкніть перемикач Використати скрипт для фільтрації, якщо бажаєте застосувати користувацький скрипт з більш складною логікою обробки. А потім, в полі нижче, введіть код скрипта. Скрипт має бути у форматі JavaScript, в скрипті доступні всі змінні (дані) листа:
|
- Якщо жодна умова фільтрації не увімкнена та не налаштована, то дії які ви задасте у наступній вкладці, будуть застосовуватись до усіх листів, які приходитимуть на вказане джерело електронної пошти.
- Якщо увімкнено декілька умов, то лист відфільтрується лише якщо відповідатиме усім активованим фільтрам. Тобто якщо у вас увімкнено декілька умов, а лист відповідає лише одній, правило не спрацює і лист буде проігноровано цим фільтром.
2.10.3.2.3. Змінні з листа
-
Перейдіть у вкладку Змінні з листа 1, якщо бажаєте витягнути з листа певний тип даних (наприклад, поштову адресу відправника листа).
-
Виберіть кнопку Додати змінну 2.
Де використовувати ці змінні?
Змінні з листа — це значення, які система автоматично витягує з відфільтрованих (або всіх) електронних листів і зберігає для подальшого використання. Наприклад, ви можете створити змінну
attachі зберігати в ній вкладені до листа файли.Надалі ці змінні можна використовувати у вкладці Дії, зокрема в дії Створити документ, щоб записати інформацію з листа в атрибут документа. Також змінні можна використовувати в дії Серверний скрипт — для передавання даних листа до інших частин платформи або реалізації складної логіки.

-
Заповніть поля 1, використовуючи підказки в таблиці нижче, а потім виберіть кнопку Додати 2.
| Поле | Опис |
|---|---|
| Назва* |
|
| Опис | Введіть короткий опис призначення змінної. |
| Тип даних* | Виберіть тип даних, який бажаєте витягувати з листа:
|
-
Заповніть решту налаштувань відповідно до типу даних:
Для типу даних: Вкладення
Поле Опис Стандартні атрибути* Залиште значення attachments (Обʼєкт) — це єдине можливе значення для цього типу даних. Метод* Виберіть спосіб пошуку даних: - Пошук вкладень — пошук здійснюватиметься на основі вказаних умов.
- Скрипт — пошук здійснюватиметься за допомогою вказаного вами скрипта.
Скрипт*
поле доступне лише для методу СкриптВведіть скрипт, за допомогою якого бажаєте шукати та витягувати потрібні вкладення листа. Типи файлів
поле доступно лише для методу Пошук вкладеньУ списку встановіть прапорці біля форматів файлів, які бажаєте витягувати з листа. Порядковий номер вкладення
поле доступно лише для методу Пошук вкладеньВведіть число, яке відповідатиме порядковому номеру вкладення. Наприклад, якщо бажаєте завжди витягувати лише перше вкладення, то введіть 1. Назва файлу
поле доступно лише для методу Пошук вкладеньЗі списку виберіть критерій фільтрування для назви файлу: - Відповідає регулярному виразу — назва відповідатиме умовам регулярного виразу, який ви зможете ввести в полі нижче.
- Містить — назва міститиме текст, який ви зможете ввести в полі нижче.
- Не містить — назва не міститиме текст, який ви зможете ввести в полі нижче.
Вимагати значення
поле доступно лише для методу Пошук вкладеньВстановіть цей прапорець, якщо витягування вкладення є обовʼязковим. У такому разі, якщо система не зможе витягнути вкладення, такий лист не буде оброблено. Може бути більше одного значення
поле доступно лише для методу Пошук вкладеньВстановіть цей прапорець, якщо допускаєте витягування більше одного вкладення, якщо вони підпадають під задані вище умови. Якщо система знайде декілька вкладень, вони будуть витягуватись як значення масиву. Якщо значення не знайдено, буде повернуто порожній масив. Для типу даних: Обʼєкт
Поле Опис Стандартні атрибути* Виберіть один з наступних джерел витягування даних: - attachments — в обʼєкті будуть записані усі вкладення листа.
- ccObj — в обʼєкті буде записано імʼя та електронну адресу користувача, який був вказаний в якості копії (cc).
- fromObj — в обʼєкті буде записано імʼя та електронну адресу користувача, який був вказаний в якості відправника (from).
- toObj — в обʼєкті буде записано імʼя та електронну адресу користувача, який був вказаний в якості отримувача (to).
Метод* Залиште значення Скрипт — це єдине можливе значення для цього типу даних. Скрипт*
поле доступне лише для методу СкриптВведіть скрипт, за допомогою якого бажаєте шукати та витягувати потрібні обʼєкти. Для типу даних: Дата
Поле Опис Стандартні атрибути* Виберіть один з наступних джерел витягування даних: - sentDate — дата, коли лист був надісланий.
- receivedDate — дата, коли лист був отриманий.
Метод* Виберіть спосіб пошуку даних: - Починаючи з ... до — пошук здійснюватиметься на основі вказаних умов. Нижче у полі Починаючи з ви зможете налаштувати з чого має починатись потрібна інформація: інформація розташована на початку тіла листа, або ж починається з будь-якого з вказаних символів, вказаного тексту чи просто з тексту, який задовільняє регулярний вираз. Таким самим чином, у полі До ви зможете вказати де чи як має завершуватись потрібна вам інформація.
- Регулярний вираз — дата відповідатиме умовам регулярного виразу, який ви зможете ввести в полі нижче.
- Скрипт — пошук здійснюватиметься за допомогою вказаного вами скрипта.
Вимагати значення
поле доступно лише для методів Починаючи з ... до та Регулярний виразВстановіть цей прапорець, якщо витягування значення є обовʼязковим. У разі, якщо система не зможе витягнути дані, такий лист не буде оброблено. Може бути більше одного значення
поле доступно лише для методів Починаючи з ... до та Регулярний виразВстановіть цей прапорець, якщо допускаєте витягування більше одного значення, якщо вони підпадають під задані вище умови. Якщо система знайде декілька значень, вони будуть витягуватись як значення масиву. Якщо значення не знайдено, буде повернуто порожній масив. Видалити пробіли на початку і в кінці
поле доступно лише для методів Починаючи з ... до та Регулярний виразУстановіть прапорець, якщо бажаєте щоб з витягнутого результату було очищено пробіли на початку та в кінці (якщо вони є). Ігнорувати регістр
поле доступно лише для методів Починаючи з ... до та Регулярний виразУстановіть прапорець, щоб під час пошуку не враховувалась різниця між великими та малими літерами. Це допоможе знаходити значення незалежно від їх написання у листі. Для типу даних: Текст
Поле Опис Стандартні атрибути* Виберіть один з наступних джерел витягування даних: - from — повний текст із поля Від кого: може містити як лише email-адресу, так і ім’я разом з email (наприклад,
John Doe <john@example.com>). - body — повний HTML-вміст листа (включає стилі, теги, форматування). Використовується, якщо потрібен саме HTML.
- bodyText — Чистий текст листа без HTML-тегів.
- cc — адреси одержувачів у полі Копія (CC). Може бути одна або кілька адрес у вигляді рядка.
- fromObj.email — email-адреса відправника.
- fromObj.name — ім’я відправника, якщо воно вказане у листі. Наприклад: "John Doe" з запису
"John Doe <john@example.com>" - rawContent — сирий вміст електронного листа у початковому вигляді, без попередньої обробки. Може включати заголовки, службову інформацію та тіло листа.
- subject — тема електронного листа, вказана відправником.
- to — адреси одержувачів у полі Кому (To). Може містити одну або кілька email-адрес у вигляді рядка.
Метод* Виберіть спосіб пошуку даних: - Починаючи з ... до — пошук здійснюватиметься на основі вказаних умов. Нижче у полі Починаючи з ви зможете налаштувати з чого має починатись потрібна інформація: інформація розташована на початку тіла листа, або ж починається з будь-якого з вказаних символів, вказаного тексту чи просто з тексту, який задовільняє регулярний вираз. Таким самим чином, у полі До ви зможете вказати де чи як має завершуватись потрібна вам інформація.
- Регулярний вираз — текст відповідатиме умовам регулярного виразу, який ви зможете ввести в полі нижче.
- Скрипт — пошук здійснюватиметься за допомогою вказаного вами скрипта.
Вимагати значення
поле доступно лише для методів Починаючи з ... до та Регулярний виразВстановіть цей прапорець, якщо витягування значення є обовʼязковим. У разі, якщо система не зможе витягнути дані, такий лист не буде оброблено. Може бути більше одного значення
поле доступно лише для методів Починаючи з ... до та Регулярний виразВстановіть цей прапорець, якщо допускаєте витягування більше одного значення, якщо вони підпадають під задані вище умови. Якщо система знайде декілька значень, вони будуть витягуватись як значення масиву. Якщо значення не знайдено, буде повернуто порожній масив. Видалити пробіли на початку і в кінці
поле доступно лише для методів Починаючи з ... до та Регулярний виразУстановіть прапорець, якщо бажаєте щоб з витягнутого результату було очищено пробіли на початку та в кінці (якщо вони є). Ігнорувати регістр
поле доступно лише для методів Починаючи з ... до та Регулярний виразУстановіть прапорець, щоб під час пошуку не враховувалась різниця між великими та малими літерами. Це допоможе знаходити значення незалежно від їх написання у листі. Для типу даних: Число
Поле Опис Стандартні атрибути* Виберіть один з наступних джерел витягування даних: - from (Текст) — числа із поля «Від кого», яке може містити як лише email-адресу, так і ім’я разом з email (наприклад,
John Doe <john@example.com>). - body (Текст) — числа з повного HTML-вмісту листа (включає стилі, теги, форматування). Використовується, якщо потрібен саме HTML.
- bodyText (Текст) — числа з чистого тексту листа без HTML-тегів.
- cc (Текст) — числа з адреси одержувачів у полі Копія (CC).
- ccObj (Обʼєкт) — числа з імені та електронної адреси користувача, який був вказаний в якості копії (cc).
- fromObj (Обʼєкт) — числа з імені та електронної адреси користувача, який був вказаний в якості відправника (from).
- fromObj.email (Текст) — числа з email-адреси відправника.
- fromObj.name (Текст) — числа з імені відправника, якщо воно вказане у листі. Наприклад: "John Doe" з запису
"John Doe <john@example.com>"
-
Якщо в полі Стандартні атрибути ви обрали атрибут типу Текст, то інструкції для решти полів можете переглянути в таблиці "для типу даних: Текст".
-
Якщо в полі Стандартні атрибути ви обрали атрибут типу Обʼєкт, то інструкції для решти полів можете переглянути в таблиці "для типу даних: Обʼєкт".
2.10.3.2.4. Дії
-
Перейдіть у вкладку Дії 1, а потім виберіть Додати дію 2.
-
Заповніть поля 1, використовуючи підказки в таблиці нижче, а потім виберіть кнопку Додати 2.
| Поле | Опис |
|---|---|
| Тип* | Виберіть один з наступних типів:
|
| Пріоритет* | Введіть будь-яке ціле число, щоб визначити послідовність виконання даної дії. Це поле є актуальним, якщо для одного правила ви створили одразу декілька дій. Таким чином, за допомогою поля Пріоритет ви можете встановити послідовність, за якої ці дії застосовуватимуться. Дії з меншим числом виконуються раніше. |
| Опис | Додайте короткий опис дії. |
Поля позначені символом "*" є обов'язковими до заповнення.
-
Виконайте наступні кроки відповідно до обраного типу дії:
Наступні кроки для типу Серверний скрипт
В полі Серверний скрипт, вставте потрібний серверний скрипт, відповідно до дії, яку ви бажаєте здійснити з відфільтрованими електронними листами. Див. Приклад серверного скрипта для додавання листів в таблицю.

Наступні кроки для типу Виконати дію з електронного листа
Щоб продовжити налаштовувати дії електронних листів див. розділ Налаштувати дії електронних листів.
Наступні кроки для типу Створити документ
Для використання цього обробника переконайтеся, що ви створили змінні з листа (у попередній вкладці налаштувань), за допомогою яких передаватимете дані до документа.
-
У полі Тип документа виберіть тип документа, який потрібно створити за допомогою цього обробника.
-
Щоб налаштувати стан нового документа, виберіть одну з таких опцій:
-
A Встановити початковий стан — тоді створений документ матиме той стан, який ви позначили як "Початковий" у вкладці Стани в типі документа. Якщо в типі документа буде змінено значення "початкового" стану, обробник автоматично врахує ці зміни.
Примітка:Якщо у вкладці Стани ви вимкнете «початковий стан», то буде встановлено стан як в значеннях за замовчуванням для обробника.
-
B Вказати стан — тоді зʼявиться поле, у якому ви зможете зі списку вибрати один із доступних станів, який ви увімкнули для даного документа у вкладці Стани. У цьому випадку зміна «початкового» стану в типі документа не впливатиме на стан створеного документа — він фіксується і залишається незмінним.
Примітка:Якщо вказаний стан буде видалено, то система автоматично замінить його на стан, який матиме статус "початкового".
-
-
Додайте прив’язку між змінними з листа (які ви створили у попередній вкладці) та атрибутами типу документа, у які передаватимуться значення цих змінних.
-
Виберіть Редагувати.
-
У панелі ліворуч відкрийте потрібну папку атрибутів 1, а потім перетягніть потрібний атрибут у секцію Налаштування атрибутів 2.
-
У доданому атрибуті в полі Змінна 1 виберіть із розкривного списку назву змінної, значення якої бажаєте записувати в цей атрибут.
Примітка:У розкривному списку відображаються лише змінні того самого типу, що й тип атрибута. Наприклад, в атрибуті типу Дата відображатимуться лише змінні типу Дата.
-
Додайте решту атрибутів, які бажаєте заповнити значеннями зі змінних листа.
-
Виберіть Застосувати 2.
Приклад налаштованого мапінгу:
Примітка:Платформа підсвітить червоним записи з помилками мапінгу. Такі помилки можуть виникнути в таких випадках:
- Якщо після налаштування мапінгу в полі Тип документа ви зміните тип документа, і його атрибути відрізнятимуться від атрибутів, що були замаплені раніше. У такому разі платформа підсвітить червоним ті атрибути, що більше не відповідають новому типу документа.
- Якщо після налаштування мапінгу ви зміните перелік атрибутів на формі вибраного типу документа.
- Якщо після налаштування мапінгу ви повернетеся у вкладку Змінні з листа та зміните назву або тип змінної.
Якщо помилка пов’язана з атрибутом документа, у колонці Код атрибуту A буде відображено піктограму . Якщо ж проблема стосується змінної, аналогічна піктограма з’явиться у колонці Змінна B.

Правило з такими помилками мапінгу можна зберегти, але його не можна буде активувати, доки невідповідність не буде усунено.
-
Наступні кроки для типу Розпізнати документ
-
У полі Шаблон розпізнавання 1 виберіть шаблон, який буде використано для розпізнавання документа. Для цієї дії не можна використовувати шаблони розпізнавання провайдера Tesseract.
-
Необовʼязково: Встановіть прапорець Автоматично створити документ 2, якщо потрібно, щоб після розпізнавання система автоматично створювала документ. Якщо прапорець не встановлено — розпізнавання виконується без створення документа (з попереднім переглядом), а ви згодом зможете підтвердити створення документа вручну.
-
Створіть змінну типу Вкладення у вкладці Змінні з листа та заповніть її відповідним чином, щоб вона містила вкладення, яке потрібно розпізнати.
-
У полі Джерело 1 виберіть змінну типу Вкладення, яку ви створили на попередньому кроці.
Примітка:Якщо змінна-джерело містить: 2 і більше вкладень — в журналі розпізнавання буде створено один запис розпізнавання, який міститиме одразу декілька документів.
-
Необовʼязково: У полі Автор документа 2 виберіть користувача, від імені якого буде виконано розпізнавання. Обраний користувач отримає сповіщення про результат розпізнавання. Якщо користувача не вказано — дія виконується від імені системного облікового запису без надсилання сповіщень.
Наступні кроки для типу Запустити процес
-
У полі Дефініція процесу 1 оберіть процес, який потрібно запускати.
-
У блоці Версія 2 оберіть спосіб визначення версії процесу:
- Використовувати останню версію — система завжди запускатиме найновішу версію процесу.
- Використовувати вказану версію — оберіть конкретну версію процесу в полі нижче.
-
Необовʼязково: У полі Бізнес ключ 1 оберіть змінну, значення якої буде використано як бізнес-ключ процесу.
-
Необовʼязково: Увімкніть перемикач Прив'язати примірник процесу до об'єкту 2, якщо потрібно пов’язати процес із конкретним об’єктом у системі.
-
Якщо перемикач увімкнено:
- У полі Назва сутності об’єкта 1 оберіть сутність, до якої потрібно прив’язати процес. Наприклад, якщо ви хочете, щоб процес був прив’язаний до конкретного документа, виберіть сутність Документи (dfx_Document).
- У полі Змінна 2 оберіть змінну, яка містить ID об’єкта. Це може бути змінна типу Число яку ви створили у вкладці Змінні з листа.
-
Необовʼязково: У блоці Змінні процесу налаштуйте передачу даних у процес. Наприклад: якщо у вас є процес, який автоматично створює заяву на відпустку, ви можете передавати в нього такі дані з листа, як імʼя співробітника, дати відпустки тощо. Для цього потрібно створити відповідні змінні з листа у вкладці Змінні з листа, а потім звʼязати їх із змінними процесу у цьому блоці.
-
Виберіть Редагувати.
-
Перетягніть змінні з листа у секцію Змінні процесу.
-
В доданій змінній в полі Змінна процесу 1 введіть назву змінної процесу, у яку потрібно передавати значення змінної з листа.
-
Повторіть ці кроки для всіх змінних, які потрібно передати в процес.
-
Виберіть Застосувати 2.
Приклад налаштованої передачі змінних у процес:
-
Наступні кроки для типу Передати повідомлення в процес
Примітки:-
Щоб використати дію Передати повідомлення в процес, необхідно попередньо створити бізнес-процес, який очікує на повідомлення. Для цього процес має містити один із наступних елементів:
- Початкова подія повідомлення (Message Start Event) — запускає новий процес при отриманні повідомлення.
- Проміжна подія повідомлення (Intermediate Message Event) — очікує повідомлення під час виконання процесу та продовжує його після отримання.
- Подієвий підпроцес (Event Subprocess) — який містить елементи, що можуть реагувати на повідомлення в будь-який момент виконання процесу (з можливістю переривання або без нього).
Також, у налаштуваннях цих елементів вкажіть назву повідомлення. Згодом цю назву потрібно буде ввести в налаштуваннях нижче.
- Деякі необовʼязкові кроки, такі як налаштування ключів кореляції та змінних процесу вимагають створення відповідних змінних з листа. В цих налаштуваннях ви зможете налаштувати звʼязок між змінними з листа та змінними процесу.
-
Виберіть один зі способів задання назви повідомлення 1:
- Витягнути назву повідомлення з електронного листа — оберіть змінну типу Текст, значення якої буде використано як назва повідомлення.
- Задати назву повідомлення вручну — введіть значення у полі Назва повідомлення.
-
Залежно від варіанту, вибраного в попередньому кроці, в полі Назва повідомлення 2 введіть назву повідомлення або виберіть змінну типу Текст, яка містить назву повідомлення.
Примітка:Якщо ви обрали варіант Задати назву повідомлення вручну, введене значення має точно збігатися з тим, що вказано у полі Назва секції Повідомлення у відповідному елементі BPMN-процесу, який очікує на повідомлення (наприклад, у початковій події-повідомлення).

-
Необовʼязково: У полі Змінна ID примірника процесу 1 оберіть змінну типу Число, яка містить ID примірника процесу.
-
Необовʼязково: У полі Бізнес ключ 2 оберіть зі списку змінну типу Текст, яка буде використана як бізнес-ключ процесу.
-
Необовʼязково: У блоці Ключі кореляції налаштуйте додаткову ідентифікацію процесу, у який потрібно передати повідомлення. Наприклад: якщо кілька процесів очікують одне й те саме повідомлення, ви можете використати ключі кореляції, щоб визначити, до якого саме процесу відноситься лист.
- Виберіть Редагувати.
- Перетягніть змінні з листа у секцію Ключі кореляції.
- В доданій змінній в полі Ключ 1 введіть назву змінної процесу, за якою буде виконуватись кореляція.
- Повторіть ці кроки для всіх необхідних ключів.
- Виберіть Застосувати 2.
- Виберіть Редагувати.
-
Необовʼязково: У блоці Локальні ключі кореляції налаштуйте кореляцію для локального контексту процесу. Наприклад: це може бути корисно, якщо процес містить вкладені підпроцеси і потрібно знайти конкретний контекст виконання.
- Виберіть Редагувати.
- Перетягніть змінні з листа у секцію Локальні ключі кореляції.
- В доданій змінній в полі Ключ 1 введіть назву локальної змінної процесу.
- Повторіть ці кроки для всіх необхідних ключів.
- Виберіть Застосувати 2.
- Виберіть Редагувати.
-
У блоці Змінні процесу налаштуйте передачу даних у процес. Наприклад: якщо у вас є процес, який автоматично створює заяву на відпустку, ви можете передавати в нього такі дані з листа, як імʼя співробітника, дати відпустки тощо.
- Виберіть Редагувати.
- Перетягніть змінні з листа у секцію Змінні процесу.
- В доданій змінній в полі Змінна процесу 1 введіть назву змінної процесу, у яку потрібно передати значення.
Примітка:
Якщо ви вкажете назву змінної, яка вже існує в процесі, її поточне значення буде замінено значенням, переданим з електронного листа. Тобто старе значення змінної буде перезаписано новим.
- Повторіть ці кроки для всіх змінних, які потрібно передати в процес.
- Виберіть Застосувати 2.
- Виберіть Редагувати.
-
Необовʼязково: У блоці Локальні змінні процесу налаштуйте передачу даних у локальний контекст процесу. Наприклад: це може бути корисно, якщо значення потрібно використовувати лише в межах окремого підпроцесу.
- Виберіть Редагувати.
- Перетягніть змінні з листа у секцію Локальні змінні процесу.
- В доданому атрибуті в полі Змінна процесу 1 введіть назву локальної змінної процесу.
- Повторіть ці кроки для всіх змінних, які потрібно передати.
- Виберіть Застосувати 2.
- Виберіть Редагувати.
-
-
У панелі інструментів виберіть піктограму Зберегти або Зберегти та закрити.
-
У верхній панелі виберіть Активувати, щоб перевести правило в статус Активне.
Перед обробкою електронного листа система автоматично перевіряє та очищує HTML-вміст тіла листа від потенційно небезпечних фрагментів.
-
Під час очищення з тіла листа видаляються елементи, які можуть містити або виконувати шкідливий код (наприклад:
<script>,<iframe>,<form>,<input>,<button>,<video>,<audio>,<canvas>,<option>,<select>), а також забороняються інлайнові стилі (<style>) та небезпечні атрибути (<border>,<cellpadding>,<cellspacing>,<align>,<valign>). -
Водночас система зберігає безпечне форматування — текст, заголовки, списки, таблиці, посилання та зображення — використовуючи лише дозволений набір HTML-тегів і атрибутів.
Приклад серверного скрипта для додавання листів в таблицю
const {App,Repository,DataStore} = require('@unitybase/ub')
module.exports = {
/**
* @param {object} params
* @param {EmailMessage} params.message
* @param {Logger} params.logger
*/
run({message, logger}) {
const messageID = extractMessageId(message.rawContent)
logger.debug('messageID: ' + messageID)
const documentID = extractDocumentId(message.body)
logger.debug('documentID: ' + documentID)
if (!documentID) {
return
}
const tableAttrID= UB.Repository('frm_Attribute')
.attrs('ID')
.where('code', '=', 'email_table') //set table attribute code
.selectScalar()
const collectionAttrID= UB.Repository('frm_Attribute')
.attrs('ID')
.where('code', '=', 'emailAttachments') //set collection attribute code
.selectScalar()
const FileAttrID= UB.Repository('frm_Attribute')
.attrs('ID')
.where('code', '=', 'emailRawFile') //set file attribute code
.selectScalar()
const now = new Date();
const isoString = now.toISOString();
const ds = DataStore('dfx_DocumentItem')
const newItemID = ds.generateID()
const fieldList = ['ID']
const execParams = {
ID: newItemID,
documentID: documentID,
attrID: tableAttrID,
attrValues : JSON.stringify({
"emailSubject": message.subject, //subject -text
"emailFrom": message.from, //from - text
"receivedAt": isoString //date and time
})
}
const ubq = {
entity: 'dfx_DocumentItem',
fieldList,
execParams,
__skipRls: true,
}
ds.run('insert', ubq)
DataStore('dfx_Document').runWithResult('setRichText', {
execParams: {
documentID: documentID,
documentItemID: newItemID,
attrCode: 'emailBodyHtml', //rich text attribute code
value: message.body
},
__skipRls: true,
__skipOptimisticLock: true
})
const attachments= message.attachments
if (attachments.length > 0) {
for (const attach of attachments) {
const ds1 = DataStore('dfx_DocumentAttachment')
const attachmentID = ds1.generateID()
ds1.insert({
execParams: {
ID: attachmentID,
documentID: documentID,
attrID: collectionAttrID,
documentItemID: newItemID,
original: JSON.stringify(
App.blobStores.putContent({
entity: 'dfx_DocumentAttachment',
attribute: 'original',
ID: attachmentID,
fileName: attach.name
}, attach.data)
)
}
})
} //end for
} //end if
const ds3 = DataStore('dfx_DocumentAttachment')
const attachmentID = ds3.generateID()
ds3.insert({
execParams: {
ID: attachmentID,
documentID: documentID,
attrID: FileAttrID,
documentItemID: newItemID,
attachment: JSON.stringify(
App.blobStores.putContent({
entity: 'dfx_DocumentAttachment',
attribute: 'attachment',
ID: attachmentID,
fileName: `${messageID}.eml`
}, message.rawContent)
)
}
})
/**
* ВАЖЛИВО: Наступна функція витягує ID документа лише з HTML-тіла листа,
* якщо воно містить <span style="color:#ffffff">12345</span>.
* Це залежить від наявності саме такого елемента і стилю (#ffffff).
* Якщо лист не містить такого <span> або поштовий клієнт змінив/прибрав стилі,
* функція поверне null і обробка буде пропущена.
*/
function extractDocumentId(htmlContent) {
const match =
htmlContent.match(/<span[^>]*color:\s*#ffffff;?[^>]*>(\d+)<\/span>/i);
return match ? parseInt(match[1]) : null;
}
function extractMessageId(emailContent) {
const match = emailContent.match(/Message-ID:\s*<([^>]+)>/i);
return match ? match[1] : null;
}
}
}
2.10.3.3. Переглянути отримані листи
В ярлику Отримані листи ви можете переглядати оригінальний вміст листа, його статус, а також повʼязані з ним поштові операції.
Щоб переглянути отримані листи:
-
У панелі навігації, виберіть робочий стіл Студія 1.
-
Виберіть групу ярликів Інтеграція 2, а потім виберіть групу ярликів Обробка пошти 3.
-
Виберіть ярлик Отримані листи 4.
В даному ярлику ви побачите список всіх листів, а також їх статуси:
-
Оброблений — лист який був успішно оброблений згідно з налаштованими правилами обробки
-
Відфільтрований — лист який був відфільтрований за допомогою встановлених фільтрів, але жодної дії до нього не було застосовано.
-
Помилка — лист, під час обробки якого виникла помилка. Це може бути пов'язано з неправильними налаштуваннями правил, проблемами з форматом листа або технічними збоями.
-
Очікує — лист знаходиться в черзі на обробку. Статус з'являється для листів, які були отримані, але ще не пройшли через всі етапи обробки.
-
Скасований — обробка листа була скасована вручну.
- Виберіть потрібний лист, щоб переглянути його оригінальний вміст чи повʼязані з ним поштові операції.
2.10.3.4. Переглянути статус поштових операцій
-
У панелі навігації, виберіть робочий стіл Студія 1.
-
Виберіть групу ярликів Інтеграція 2, а потім виберіть групу ярликів Обробка пошти 3.
-
Виберіть ярлик Журнал поштових операцій 4.
У журналі поштових операцій відображається вся інформація про роботу системи обробки електронної пошти, включаючи успішні операції, попередження та помилки.
2.10.3.5. Дії електронних листів
За допомогою дій електронних листів ви можете налаштувати виконання завдання користувача за допомогою кнопок дій які ви зможете інтегрувати в електронний лист.
2.10.3.5.1. Налаштувати дії електронних листів
Щоб налаштувати дії електронних листів, виконайте наступні кроки:
-
Додайте джерело електронної пошти. Після створення, виконайте наступні дії:
- У панелі інструментів виберіть кнопку Активувати 1.
- Виберіть кнопку Зробити джерелом обробки дій 2.
Примітка:Лише одне джерело електронної пошти може бути джерелом обробки дій. Щоб перевірити яке саме джерело є джерелом обробки у вашій системі: Робочий стіл Адміністрування 1 > Група ярликів Налаштування 2 > ярлик Налаштування системи 3 > ключ msg.execAction.replyToAdress 4

Перевірте поле Значення.

-
Створіть правило обробки електронної пошти. Під час створення правила, виконайте наступні умови:
-
В полі Джерело електронної пошти вкажіть те саме джерело, яке ви створили в кроці 1.
-
Перейдіть у вкладку Дії 1, а потім виберіть Додати дію 2.
-
В полі Тип 1 виберіть Виконати дію з електронного листа, а потім виберіть Додати 2.
-
У панелі інструментів виберіть піктограму Зберегти.
-
-
Створіть дії для виконання завдання — створіть дії, які бажаєте відображати на кнопках листа. Наприклад: "Погодити" та "Відхилити".
-
Створіть форму завдання. Під час створення шаблона, виконайте наступні умови:
-
У вкладці Дії 1 увімкніть ті самі дії, що ви створили у кроці 3 2.
-
У панелі інструментів виберіть піктограму Зберегти 3.
-
-
Створіть шаблон електронних листів. Під час створення шаблона, виконайте наступні умови:
-
В полі Тип виберіть Нотифікація завдання процесу.
-
Над полем Тіло листа виберіть + Дія.
-
Виберіть папку Дії для виконання завдання 1, щоб розгорнути її.
-
Зі списку виберіть ті дії, які ви увімкнули в кроці 4 2.
Увага:- Дії на тілі листа мають збігатись з діями, що ви увімкнули у формі завдання. Якщо на тілі листа буде додана кнопка, дія якої не була увімкнена на формі завдання — така кнопка не працюватиме.
- Для кожної мовної версії шаблону потрібно додати кнопки дій окремо. Якщо ви створили новий переклад, але не додали до нього кнопки дій — ця мовна версія листа не міститиме кнопок жодною мовою.
Примітка:Локалізація шаблону впливає на мову відображення кнопок дій в електронних листах. Якщо мовою за замовчуванням встановлено англійську, кнопки дій відображатимуться англійською мовою. Користувач отримає електронний лист тією мовою, яка встановлена в його профілі, або мовою за замовчуванням, якщо переклад для його мови недоступний.

-
-
Підключіть шаблон електронного листа до завдання користувача.
-
Виберіть завдання користувача за допомогою якого бажаєте надіслати електронний лист 1.
-
В налаштуваннях завдання виберіть + на секцій Сповіщення 2.
-
В полі Призначити з 1 виберіть Шаблон електронного листа.
-
В полі Шаблон електронного листа 2 виберіть зі списку шаблон, який ви створили в кроці 5.
-
У панелі інструментів виберіть піктограму Зберегти.
-
Підключіть форму завдання до завдання користувача.
-
Виберіть те саме завдання користувача 1.
-
В налаштуваннях завдання розгорніть секцію Форма 2.
-
Виберіть опцію Форма завдання 1.
-
В полі Форма завдання 2 виберіть зі списку форму, яку ви створили в кроці 4.
-
У панелі інструментів виберіть піктограму Зберегти.
-
Дія задана у кнопці буде успішно виконана за наступних умов:
- В системі є користувач з email-адресою як у відправника листа.
- Термін дії виконання завдання не минув.
- Користувач якому було відправлено лист з дією, має одну з наступних ролей в межах завдання: Потенційний виконавець, Виконавець, Супервізор. Дія виконана користувачем у ролі Спостерігач не буде обробленою.
- Завдання користувача має статус Відкрите.
2.10.3.5.2. Змінити термін виконання
Змінити термін для конкретної дії
Щоб налаштувати термін виконання дії, виконайте наступні дії:
-
Відкрийте шаблон електронного листа в якому налаштовували дії.
-
В полі Тіло листа виберіть кнопку дії, термін якої бажаєте змінити 1.
-
В правому верхньому куті над кнопкою, виберіть Дія: Назва дії 2.
-
В полі Термін дії (годин) 1 введіть потрібну кількість годин.
-
У панелі інструментів виберіть піктограму Зберегти 2.
Змінити термін "за замовчуванням" для всієї платформи
Щоб змінити термін на рівні всієї платформи:
-
У панелі навігації, виберіть робочий стіл Адміністрування 1.
-
Виберіть групу ярликів Налаштування 2, а потім виберіть ярлик Налаштування системи 3.
-
Виберіть ключ msg.execAction.defaultOTPExpireHours 4.
-
В полі Значення 1 введіть бажану кількість годин, а потім виберіть піктограму 2.
-
В полях мов введіть те саме значення для кожного поля 1, а потім виберіть кнопку Застосувати 2.
-
У панелі інструментів виберіть піктограму Зберегти.
2.10.3.5.3. Змінити дизайн кнопки
-
Відкрийте шаблон електронного листа в якому налаштовували дії.
-
В полі Тіло листа виберіть кнопку дії, дизайн якої бажаєте змінити.
-
Виберіть вкладку Вигляд 1, а потім виберіть Вихідний код 2.
-
В полі Вихідний код внесіть потрібні зміни в css стилях 1, а потім виберіть кнопку Гаразд 2.