ODM Rest API
Índice
OpenDroneMap despliega una api para poder hacer modificaciones, consultar, etc.
Tareas
task/new/init?token=
nos devuelve uuid Por defecto lleva en formdata: name, webhook, skipPostProcessing = true, options = []
task/new/upload/:uuid?token=
que hemos recibido antes para cada archivo. Podemos definir el uuid en vez de dejar que lo cree
task/new/commit/:uuid?token=
para lanzar el procesado
task/:uuid/info?token=
nos va dando el estado del procesado
task/:uuid/output?token=
nos va danto la salida del procesado y nos permite monitorear
task/:uuid/info?token=
para ver el estado del procesado. Respuesta:
{ "uuid":"1d8f55db-35cc-46a0-b12a-ef8e7bf77ee3", "name":"2fe410c4-fad9-4665-b667-c5ed7d6f81ad", "dateCreated":1692263527337, "processingTime":11018, "status": { "code":20 }, "options":[], "imagesCount":210, "progress":4.5 }
Donde el atributo progress
nos da el porcentage del procesado. En NodeODM hace peticiones aproximada cada 2 segundos.
task/:uuid/output?line=-9&token=
Aquí pedimos cuando se abre la consola, también cada 4 segundos aproximadamente, la salida Nos da con el line=-9 cuántas líneas queremos desde el final. Nos devuelve un array de 9 elementos en este caso, cada elemento un string con una línea de salida. En cuanto ocultamos deja de pedir, y si volvemos a abrir pide otras 9 lineas, por lo que nos dejamos lo que pueda haber entre media. De hecho ese número es demasiado arbitrario. Si no pasamos line, por defecto es 0 y nos devuelve todo.