Интеграция с веб-сервисом погоды
С помощью элемента процесса «Вызвать веб-сервис» можно осуществить интеграцию с пользовательскими веб-сервисами и использовать данные, полученные в параметрах отклика.
Пример. В бизнес-процессе необходимо настроить интеграцию с сервисом погоды для получения актуальных данных температуры воздуха в Москве. Один раз в час бизнес-процесс обновляет значение справочника температуры.
Рисунок 1 — Схема бизнес-процесса вызова веб-сервиса
Создание веб-сервиса
В данном примере будет использоваться сервис погоды openweathermap.org. Перед созданием бизнес-процесса в BPMSoft необходимо:
-
Создать REST веб-сервис для адреса https://api.openweathermap.org/data/2.5/weather и создать в нем метод:
Рисунок 2 — Настройки метода веб-сервиса
-
Добавить три параметра вызова с типом параметра «Параметр запроса»:
Рисунок 3 — Параметры вызова метода веб-сервиса
- «Q» — название города;
- «Appid» — Id сервиса (можно получить при бесплатной регистрации на сервисе);
- «Units» — единицы измерения. Для отображения данных в градусах Цельсия необходимо указать в качестве значения параметра константу «metric».
- В параметрах ответа создать параметр «Main Temp»:
Рисунок 4 — Параметры ответа веб-сервиса
- «Тип параметра» — «Параметр тела»;
- «Путь к элементу» — «$.main.temp»;
- «Путь к элементу» — «$.main.temp»;
- «Код в BPMSoft» — «MTemp» (значение может быть произвольным);
- «Тип данных» — «Дробное число».
Подготовка справочника
Для создания справочника, в котором будут храниться полученные от веб-сервиса данные, необходимо:
-
В разделе «Конфигурация» создать новый объект и в качестве родительского объекта для него выбрать «BaseLookup»:
Рисунок 5 — Страница параметров нового справочника
-
В объект добавить поле с типом данных «Дробное число (0,01)» для хранения данных температуры:
Рисунок 6 — Параметры нового поля в справочнике
-
Добавить созданный справочник в раздел «Справочники», открыть его наполнение и добавить запись с названием «Москва»:
Рисунок 7 — Наполнение справочника в разделе «Справочники»
После этого можно приступать к созданию бизнес-процесса.
Создание бизнес-процесса
-
Добавьте на схему стартовый сигнал с типом «Стартовый таймер»:
Рисунок 8 — Параметры стартового таймера
Стартовый сигнал будет запускать бизнес-процесс каждый час.
-
Добавьте на схему элемент «Вызвать веб-сервис». Назовите его «Получить данные с openweathermap.org». В настройках элемента укажите следующие значения:
Рисунок 9 — Параметры элемента «Вызвать веб-сервис»
При выполнении данного элемента будет происходить вызов веб-сервиса с заданными параметрами:
- «Какой сервис вызвать?» — выберите из списка созданный веб-сервис;
- «Какой метод вызвать?» — будет заполнено автоматически, если метод в веб-сервисе был один, если нет — выберите метод из списка;
- «Параметры вызова»:
- «Q» — «Moscow»;
- «Appid» — Id сервиса (можно получить при бесплатной регистрации на сервисе);
- «Units» — «metric».
-
Добавьте на схему элемент «Изменить данные». Назовите его «Записать ответ». В настройках элемента укажите следующие значения:
Рисунок 10 — Параметры элемента «Изменить данные»
При выполнении данного элемента происходит изменение значения колонки «Температура» справочника «Температура» для записи, у которой «Название» = «Москва».
В качестве значения колонки «Температура» необходимо использовать параметр «Main Temp» элемента процесса «Получить данные с openweathermap.org»:
Рисунок 11 — Выбор параметра для колонки «Температура»
В результате бизнес-процесс будет запускаться 1 раз в час и вызывать веб-сервис с параметрами вызова, указанными в настройках элемента, а значение, полученное из параметра отклика, будет записано в колонку «Температура» записи с названием «Москва» в справочнике «Температура».
Рисунок 12 — Итоговый результат после выполнения процесса
Рекомендуем изучить
Добавление бизнес-процесса
Отправка email в бизнес-процессе
Действия системы. Вызвать веб-сервис