SES. Руководство пользователя
Материал из Флора AI
Общее описание
Сервис предназначен для создания сценарных машин и обеспечения их работы.
Термины и определения
Script engine service (SES) - сервис обеспечения работы и создания сценарных машин. Swagger UI – интерактивная веб-консоль с кратким описанием методов АPI и возможностью выполнять запросы к сервису SES в реальном времени
Описание методов API
Запросы осуществляются по протоколу HTTP 1.1 на адрес сервера с доступным сервисом SES. По умолчанию используется порт 6189/tcp.
Авторизация запросов не требуется. HTTP-запросы должны содержать заголовок "accept: application/json"
Ответ сервиса представляет собой JSON или текстовый документ в кодировке UTF-8, или двоичный файл.
Содержимое документа зависит от результата выполнения запроса. При наличии ошибки в качестве ответа вернется переменная error=1 и описание в переменной message. Для удобства проверки методов по ссылке http://АДРЕС:6190 будет отображен интерфейс swagger со всеми методами с возможностью их проверки.
| Группа методов ses | |||
|---|---|---|---|
| POST/ses/ask/{robot_id} | описание | ||
|
выходные параметры | ||
| POST/ses/log | описание | ||
|
выходные параметры | ||
| GET/ses/session/{robot_id}/{session_id} | Выдает параметры сессии. Для отображения на боковой панели тестирования в UPS. Пример ответа: | ||
|
{ "started": "2024-11-05 15:03:14",
"modified": "2024-11-05 15:03:14", "current": { "id": "789a2605-da27-4fb8-b9ea-9400b72d0caa", "qas": "", "answered": false, "category": null, "entry": [ "1f8d4086-d68f-4571-92cb-f96e1d5a4b4e" ], "nearest": null, "missingRunData": [ null ] }, "data": [ { "request": { "datetime": "2024-11-05T12:03:14.103304", "message": "как поставить окружение", "data": [ { "id": "1f8d4086-d68f-4571-92cb-f96e1d5a4b4e", "name": "pve", "model": "Рыжик", "type": "smc", "param": "PVE", "reply": { "class": "PVE", "confidence": 1 } } ] }, "reply": { "answers": [ { "messages": [ "скачать и поставить" ], "voice": "" } ], "datetime": "2024-11-05T12:03:14.127868" } } ], "variables": {}, "history": [ { "id": "2d5853d3-2d62-49f9-b2cd-329937c2985b", "session": "4fa212dd-645f-48b5-af90-6cab208de1d2", "robot": "9fd7f6f1-2cac-4f0f-a121-75c40f2b5e78", "channel": "default", "closed": false, "endpoint": null, "variables": {}, "request": { "datetime": "2024-11-05T12:03:14.103304", "message": "как поставить окружение", "data": [ { "id": "1f8d4086-d68f-4571-92cb-f96e1d5a4b4e", "name": "pve", "model": "Рыжик", "type": "smc", "param": "PVE", "reply": { "class": "PVE", "confidence": 1 } } ] }, "reply": { "answers": [ { "messages": [ "скачать и поставить" ], "voice": "" }, { "messages": [ "Фраза 2" ], "voice": "" } ], "datetime": "2024-11-05T12:03:14.127868" } } ]} | ||
| Группа методов ses/robot/ | |||
| POST/ses/robot/add | Создание нового робота. На выходе id созданного робота или сообщение об ошибке | ||
|
{ "error": 0,
"id": "2fd2f909-2069-4b20-a725-3a598c83f886"} | ||
| GET/ses/robot/apply/{id} | Применение робота. Переводит черновик робота в статус prod. Если до этого был prod вариант - становится backup. | ||
|
{ "error": 0,
"message": "success"} | ||
| GET/ses/robot/cleardraft/{id} | описание | ||
|
{ "error": 0,
"message": "success"} | ||
| GET/ses/robot/commit/{id} | Применение текущих изменений настроек робота в черновик. | ||
|
{ "error": 0,
"message": "success"} | ||
| DELETE/ses/robot/delete/{id} | Удаление всех версий робота | ||
|
{ "error": 0,
"message": "success"} | ||
| GET/ses/robot/export/{id} | Выгрузка робота в архив. | ||
|
zip файл с именем = идентификатор робота | ||
| GET/ses/robot/get/{id} | Выгрузка основных настроек робота | ||
|
{ "error": 0,
"data": { "id": "9fd7f6f1-2cac-4f0f-a121-75c40f2b5e78", "name": "test", "description": "", "voice": "", "session": { "lifetime": 600 }, "models": {}, "servicedata": {}, "exceptions": {}, "actions": {}, "holidays": [], "timeintervals": { "name": { "weekdays": [ 1, 2, 3, 4, 5, 6, 7 ], "dates": [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31], "months": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 ], "days": "all", "intervals": [ [ 0, 1440 ] ] }}}} | ||
| POST/ses/robot/import/{id} | Загрузка архива робота в черновик существующего робота | ||
|
{ "error": 0,
"message": "success"} | ||
| GET/ses/robot/list | Получение списка роботов | ||
| Входные параметры отсутствуют | [ { "id": "9fd7f6f1-2cac-4f0f-a121-75c40f2b5e78",
"name": "test", "hasProd": true, "hasBackup": true } ] | ||
| POST/ses/robot/modify/{id} | Изменение основных настроек робота. Формат data как в ответе метода GET/ses/robot/get/{id} | ||
|
{ "error": 0,
"message": "success"} | ||
| GET/ses/robot/restore/{id} | Откат рабочей версии из бэкапа. Бывшая рабочая версия становится черновиком | ||
|
{ "error": 0,
"message": "success"} | ||
| Группа методов ses/robot/data | |||
| POST/ses/robot/data/add/{robot} | Добавление элемента данных | ||
|
{ "error": 0,
"message": "success"} | ||
| DELETE/ses/robot/data/delete/{robot}/{id} | Удаление элемента данных | ||
|
{ "error": 0,
"message": "success"} | ||
| GET/ses/robot/data/get/{robot}/{id} | Получение настроек элемента данных | ||
|
{ "error": 0,
"data": { "id": "bc1cb1a1-c64e-46a1-b422-1a48de9ddacb", "name": "pve", "type": "smc", "model": "Рыжик", "param": "PVE", "weight": 0, "slaveData": [], "forEndpointRunOnly": true, "actions": {} } } | ||
| GET/ses/robot/data/list/{robot} | Получение списка элементов данных | ||
|
[ { "id": "bc1cb1a1-c64e-46a1-b422-1a48de9ddacb",
"name": "pve", "type": "smc" } ] | ||
| POST/ses/robot/data/modify/{robot}/{id} | Изменение элемента данных. Формат data как на выходе метода GET/ses/robot/data/get/{robot}/{id} | ||
|
{ "error": 0,
"message": "success"} | ||
| Группа методов ses/robot/endpoint | |||
| POST/ses/robot/endpoint/add/{robot} | Создание конечной точки. Формат data как на выходе метода GET/ses/robot/endpoint/get/{robot}/{id} | ||
|
{ "error": 0,
"id": "8576593b-b0d8-4b03-a623-74f3132356ea"} | ||
| DELETE/ses/robot/endpoint/delete/{robot}/{id} | описание | ||
| Входные параметры | выходные параметры | ||
| GET/ses/robot/endpoint/get/{robot}/{id} | описание | ||
| Входные параметры | выходные параметры | ||
| GET/ses/robot/endpoint/list/{robot} | описание | ||
| Входные параметры | выходные параметры | ||
| POST/ses/robot/endpoint/modify/{robot}/{id} | описание | ||
| Входные параметры | выходные параметры | ||
| Группа методов ses/robot/script | |||
| POST/ses/robot/script/add/{robot} | описание | ||
| Входные параметры | выходные параметры | ||
| DELETE/ses/robot/script/delete/{robot}/{id} | описание | ||
| Входные параметры | выходные параметры | ||
| GET/ses/robot/script/get/{robot}/{id} | описание | ||
| Входные параметры | выходные параметры | ||
| GET/ses/robot/script/list/{robot} | описание | ||
| Входные параметры | выходные параметры | ||
| POST/ses/robot/script/modify/{robot}/{id} | описание | ||
| Входные параметры | выходные параметры | ||
| Группа методов ses/testapi | |||
| GET/ses/testapi/list | описание | ||
| Входные параметры | выходные параметры | ||
| POST/ses/testapi/{request} | описание | ||
| Входные параметры | выходные параметры | ||
| GET/ses/testapi/{request} | описание | ||
| Входные параметры | выходные параметры | ||