В отличие от команды, описанной в разделе Локальный экспорт архива команда Удаленный экспорт архива позволяет запросить фрагмент архива с любого сервера и скачать его.
Важно
При использовании команды Удаленный экспорт архива следует учитывать следущее:
- Задачи удаленного экспорта архива не отображаются на главной панели.
- Одновременно выполняется только одна задача удаленного экспорта архива. При этом новая задача удаленного экспорта архива будет выполнена только после того, как завершатся уже имеющиеся задачи локального экспорта архива. А новые задачи локального экспорта архива не начнут выполняться пока не завершится выполнение текущей задачи удаленного экспорта архива.
- Интервал времени, за который производится экспорт архива не должен превышать 30 минут.
- Экспортируемый файл сохраняется с расширением .mp4.
Удаленный экспорт архива выполняется следующим образом:
-
Запрос на создание задачи удаленного экспорта архива
Пример запроса:
https://192.168.1.200:8080/jit-export-create-task?sid=MdFYYrjy
Запрос посылается методом POST, в теле которого в формате JSON должны содержаться следующие данные:
{ "resource_guid": "zwzmklKi", "start_ts": 1596552540000000, "end_ts": 1596552600000000, "is_hardware": 0, "prefer_substream": 0 }где:
- "resource_guid": "zwzmklKi" - GUID канала;
- "start_ts": 1596552540000000 - время начала экспортируемого фрагмента архива;
- "end_ts": 1596552600000000 - время конца экспортируемого фрагмента архива;
- "is_hardware": 0 - источник архива (0 - архив на сервере, 1 - архив на устройстве);
- "prefer_substream": 0 - поток архива (0 - основной поток, 1 - дополнительный поток).
Подсказка
Время указывается в микросекундах в формате UNIX-время с учетом часового пояса, настроенного на сервере.
Пример ответа сервера:
{ "success" : "1", "task_id" : "JgZN323E" }В данном примере ответ содержит:
- "success" : "1" - сообщение об успешности выполнения запроса;
- "task_id" : "JgZN323E" - уникальный id задачи.
Если в теле запроса указан интервал длительностью более 30 минут или в указанном интервале отсутствует архив, то сервер ответит сообщением об ошибке:
{ "success" : "0", "error_code": "bad interval" } -
Запрос для получения файла экспорта
Подсказка
Запрос на получение файла экспорта должен быть выполнен в течение 10 секунд после выполнения запроса на создание задачи. По истечении 10 секунд задача удаленного экспорта будет удалена.
Пример запроса:
https://192.168.1.200:8080/jit-export-download?sid=MdFYYrjy&task_id=JgZN323E
Запрос посылается методом GET, в параметрах которого указываются следующие данные:
- sid=MdFYYrjy - уникальный id сессии;
- task_id=JgZN323E - id задачи, созданной ранее.
В ответ сервер пришлет экспортируемый файл.
-
Запрос состояния задачи
Пример запроса:
https://192.168.1.200:8080/jit-export-task-status?sid=MdFYYrjy
Запрос посылается методом POST, в теле которого в формате JSON должны содержаться следующие данные:
{ "task_id": "JgZN323E" }где:
- "task_id": "JgZN323E" - id задачи, созданной ранее.
Пример ответа сервера:
{ "active" : true, "done" : false, "progress" : 3, "sended" : 30456, "success" : 1 }В данном примере ответ содержит:
- "active" : true - состояние задачи (true - задача обрабатывается, false - задача не обрабатывается);
- "done" : false - индикатор завершения задачи на сервере (true - задача успешно завершена, false - задача не завершена);
- "progress" : 3 - процент завершения задачи, от 0 до 100;
- "sended" : 30456 - количество байт видео, отосланных сервером;
- "success" : 1 - сообщение об успешности выполнения запроса.
-
Запрос на удаление задачи удаленного экспорта
Пример запроса:
https://192.168.1.200:8080/jit-export-cancel-task?sid=MdFYYrjy&task_id=JgZN323E
Запрос посылается методом GET, в параметрах которого указываются следующие данные:
- sid=MdFYYrjy - уникальный id сессии;
- task_id=JgZN323E - id удаляемой задачи.
Пример ответа сервера:
{ "success" : "1" }

