Обогащение сообщения

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

../_images/enrichment1.png

Предварительная настройка

Создайте следующие элементы:

Инициирующий запрос для сценария с обогащением

  • Внешний тип Инициирующий запрос для сценария с обогащением

    ../_images/enrichment2.png
  • Тип Ответ от системы источника в сценарии обогащения

    ../_images/enrichment3.png
  • Тип Обогащенное сообщение

    ../_images/enrichment4.png

Инициация процесса

Инициатором выступает Система-отправитель в сценарии с обогащением, на которую поступает сообщение, соответствующее внешнему типу Инициирующий запрос для сценария с обогащением для запуска процесса.

  • Тип: Расширенное Rest API

  • Порт для публикации API: указан порт, который будет использоваться данной системой (должен быть свободным).

    ../_images/enrichment5.png

Инициирующий запрос в сценарии с обогащением

К системе Система-отправитель в сценарии с обогащением привязан обработчик Инициирующий запрос в сценарии с обогащением.

  • Тип: Веб-обработчик

  • Шаблон пути: /СценарийОбогащениеИнициирующийЗапрос

  • Тип метода: Post

    ../_images/enrichment6.png

На вкладке В Platform добавлена переменная ИнициирующийЗапрос с типом - внешний тип Инициирующий запрос для сценария с обогащением

../_images/enrichment7.png

Процесс обогащения сообщения

Также добавлены переменные:

  • Ответ с типом Ответ от системы источника в сценарии обогащения

  • Обогащенное Сообщение с типом ОбогащенноеСообщение

    ../_images/enrichment9.png

На схему добавлены следующие шаги:

  1. Отправка

Система-источник в сценарии с обогащением

Системой-источником данных выступает внешняя система с типом Веб-сервис, настроенная на тестовый сервис https://reqres.in/. Этот сервис предоставляет ресурсы для тестирования REST API.

Запрос отправляется на https://reqres.in/api/users

  • Тип: Веб-сервисы

  • Протокол: Rest

  • Формат: JSON

  • Способ получения сообщений из Platform: Platform вызывает методы Внешнего сервиса

  • Базовый URL сервиса подключаемой системы: https://reqres.in/

    ../_images/enrichment12.png

Запрос в систему источник в сценарии с обогащением

К Системе-источнику в сценарии с обогащением привязан обработчик Запрос в систему источник в сценарии с обогащением.

  • Тип: Веб-клиент

  • Направление интеграции: Из Platform

  • Шаблон пути: api/users

  • Тип метода: Post

  • Ожидание ответа: включено

../_images/enrichment13.png

На вкладке Из Platform добавлена переменная Запрос с внешним типом Инициирующий запрос для сценария с обогащением.

../_images/enrichment14.png
  1. Установка переменных

    Из переменной ИнициирующийЗапрос смапплены поля name_(name), job и gender в поля ОбогащенногоСообщения Имя, Профессия и Пол соответственно.

    Из переменной Ответ смапплены поля id и createdAt в поля ОбогащенногоСообщения Идентификатор и ДатаРегистрации соответственно.

    ../_images/enrichment15.png
  2. Отправка

Система-получатель в сценарии с обогащением

  • Тип: Веб-сервисы

  • Протокол - Rest

  • Формат - JSON

  • Способ получения сообщений в Platform - Внешний сервис вызывает методы Platform

  • Порт: должен быть свободным

    ../_images/enrichment17.png

Демо-пример

Успешная обработка сообщения, получение обогащенного сообщения

Вариант 1: Отправка из Postman

  1. Создайте запрос в Postman и выполните отправку.

  2. Выберите метод Post.

  3. В поле URL введите адрес Системы-отправителя в сценарии с обогащением + шаблон пути обработчика Инициирующий запрос для сценария с обогащением

  • В тело введите следующий код:

    {
    
    "name":"Ivan",
    
    "job":"dentist",
    
    "gender":"male"
    
    }
    

Результат: ответ 200

../_images/enrichment18.png

В Центре Мониторинга в систему СистемаПолучательВСценарииСОбогащением» в очередь пришло обогащенное сообщение:

../_images/enrichment19.png
../_images/enrichment20.png

Вариант 2: Отправка из Swagger

  1. Откройте swagger системы Система-отправитель в сценарии с обогащением.

  2. Разверните метод с обработчиком Инициирующий запрос для сценария с обогащением.

    ../_images/enrichment21.png
    ../_images/enrichment22.png
  3. Добавьте следующий код в Request body:

    {
    
    "name":"Ivan",
    
    "job":"dentist",
    
    "gender":"male"
    
    }
    
  4. Нажмите на кнопку Excute

    ../_images/enrichment23.png

Результат: ответ 200

../_images/enrichment24.png

В Центре Мониторинга и администрирования в систему Система-получатель в сценарии с обогащением в очередь пришло обогащенное сообщение.

../_images/enrichment25.png
../_images/enrichment26.png