Логика (сценарии автоматизации)

Основные запросы

Получить список сценариев автоматизации

Запрос:

GET /api/v1/automatons 

Ответ: 

Массив всех сценариев автоматизации проекта, включающий в себя следующую информацию об автоматах:

  • идентификатор;
  • имя;
  • описание;
  • выбранные модели
Получить информацию об одном сценарии автоматизации

Запрос:

GET /api/v1/automatons/:id

Ответ: 

Представление сценария автоматизации в формате JSON, включающее в себя

  • идентификатор;
  • имя;
  • описание;
  • выбранные модели;
  • информацию о построенных состояниях и переходах
Создать новый сценарий автоматизации

В теле запроса на создание нового сценария автоматизации укажите его представление в формате JSON.

Обязательные поля:

  • model — идентификатор модели;
  • name — имя нового сценария автоматизации.

Запрос:

POST /api/v1/automatons

{

  "model": "<model-id>",

  "name": "test-automaton-01",

  "description": "Automaton for sensor"

}

Ответ:

Представление сценария автоматизации в формате JSON

Изменить сценарий автоматизации

В теле запроса на изменение существующего сценария автоматизации укажите поля, которые нужно обновить.

Запрос:

PATCH /api/v1/automatons/:id

{

  "name": "test-automaton-02"

}

Ответ:

Представление сценария автоматизации в формате JSON с учетом измененных полей

Удалить сценарий автоматизации

Запрос:

DELETE /api/v1/automatons/:id

Ответ: 

Представление удаленного сценария автоматизации в формате JSON

Выполнение сценариев автоматизации на объектах

Важно: В запросах :id — идентификатор объекта, на котором нужно запустить автомат, :automaton — идентификатор запускаемого автомата.

Запустить выполнение сценария автоматизации на объекте

Запрос:

POST /api/v1/objects/:id/automatons/:automaton/start

Ответ:

Информация о статусе и состоянии выполнения автомата на момент его запуска в формате JSON

Остановить выполнения сценария автоматизации на объекте

Запрос:

POST /api/v1/objects/:id/automatons/:automaton/stop

Ответ:

Информация о статусе и состоянии выполнения автомата на момент его остановки в формате JSON

Отправить событие в запущенный сценарий автоматизации

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

Обязательные поля:

  • event — идентификатор события.

Запрос:

POST /api/v1/objects/:id/automatons/:automaton/emit

{

  "event": "<event-id>"

}

Ответ:

Информация о статусе выполнения запроса

Подсказка: Данный запрос аналогичен нажатию кнопки Сгенерировать событие в автомате, запущенном на объекте.