Closed AlexeyGirin closed 3 years ago
backend ver. 2021-09-05-13.13.00
Добавлены методы:
Создает задачу на расчет xpath и возвращает id задачи по которому можно обращаться в следующих методах.
Доступен через POST запрос, принимает json вида:
{
"document": "...",
"id": "8520359515737429141026100694",
"config": {
"allow_indexes_at_the_beginning": true,
"allow_indexes_in_the_middle": true,
"allow_indexes_at_the_end": true
}
}
Возвращает:
{"task_id": "c2577de5-e154-4a14-a897-1bb48d608fa0"}
Возвращает статус задачи генерации.
Доступен через GET запрос, принимает json вида:
{"id": "c2577de5-e154-4a14-a897-1bb48d608fa0"}
Возвращает:
{"status": "PENDING"}
Возможные статусы: FAILURE - Task failed PENDING - Task state is unknown (assumed pending since you know the id). RECEIVED - Task was received by a worker (only used in events). RETRY - Task is waiting for retry. REVOKED - Task was revoked. STARTED - Task was started by a worker. SUCCESS - Task succeeded
Отменяет задачу с переданным id, если она уже была начата. Если задача стоит в очереди, то она будет отменена тогда, когда воркер дойдет до её обработки
Доступен через POST запрос, принимает json вида:
{"id": "4f26183b-3e0e-4526-a419-157d453ec35d"}
Возвращает:
{"result": "Task successfully revoked."}
Возвращает результат генерации для задачи с переданным id.
Доступен через GET запрос, принимает json вида:
{"id": "c2577de5-e154-4a14-a897-1bb48d608fa0"}
Возвращает:
{"result": "c2577de5-e154-4a14-a897-1bb48d608fa0"}
В случае, если в результате работы любого из этих методов возникла ошибка, то вернется json с полем exc. Например:
{"exc": "Generation still in progress."}
Ожидаем поддержку в UI
Done.
В данный момент, полученные в результате распознования элементов локаторы сразу начинают обрабатываться алгоритмом на сервере автоматически. Мы собираемся изменить это - запуск на расчёт и управление очередью будут осуществляться с клиента. Необходимо подготовить API для засылки локатора на сервер, получение им уникального ID по которому потом можно будет отслеживать его состояния (Queued, In Progress, Done) получить результат в случае если калькуляция завершена. Учесть, что мы планируем останавливать расчёт локатора, а так же - перезапускать его заново (с новыми индивидуальными настройками)