Локальный экспорт архива запускает экспорт архива и сохраняет полученный файл в папку, предназначенную для сохранения скриншотов. Поддерживаются несколько методов локального экспорта архива:
-
Методы выполняемые при помощи объекта интерфейс оператора.
Примеры запросов без возможности гибкой настройки параметров экспорта:
https://192.168.1.200:8080/objects/operatorgui_jmxwAqxm/archive_export?channel_name_or_guid=HsnnGa9B&start_time_YYYYMMDD_HHMMSS=2014-11-26 17:34:00&end_time_YYYYMMDD_HHMMSS=2014-11-26 17:35:00&filename=export.avi&archive_on_device=0&sid=e03qD0eg https://192.168.1.200:8080/objects/operatorgui_jmxwAqxm/archive_export_ss?channel_name_or_guid=HsnnGa9B&start_time_YYYYMMDD_HHMMSS=2014-11-26 17:34:00&end_time_YYYYMMDD_HHMMSS=2014-11-26 17:35:00&filename=export.avi&archive_on_device=0&sid=e03qD0egПример запроса с возможностью гибкой настройки параметров экспорта:
https://192.168.1.200:8080/objects/operatorgui_jmxwAqxm/archive_export_ex?channel_name_or_guid=HsnnGa9B&start_time_YYYYMMDD_HHMMSS=2014-11-26 17:34:00&end_time_YYYYMMDD_HHMMSS=2014-11-26 17:35:00&filename=export.avi&sid=e03qD0eg&options={"is_hardware": 0, "video_codec": "MPEG4", "video_bitrate":3000}Важно
Методы локального экспорта архива выполненные при помощи объекта интерфейс оператора не работают при следующих условиях:
- метод запускается на "слепом" сервере с TRASSIR OS (с неактивным интерфейсом оператора);
- метод запускается на сервере с Windows, где серверное приложение запущено в виде службы.
-
Метод выполняемый при помощи объекта канал. Данный метод не зависит от доступности интерфейса оператора и может быть запущен на любом сервере.
Примеры запроса:
https://192.168.1.200:8080/objects/CKq5LLiO/export_archive?start_time_YYYYMMDD_HHMMSS=2014-11-26 17:34:00&end_time_YYYYMMDD_HHMMSS=2014-11-26 17:35:00&filename=export.avi&sid=e03qD0eg&options={"is_hardware": 1}
Ключевые элементы запросов:
- archive_export, archive_export_ss - команды вызова экспорта архива основного или дополнительного потока;
- archive_export_ex, [GUID_канала]/export_archive - команды вызова настраиваемого экспорта архива любого потока;
- operatorgui_[GUID_интерфейса] - идентификатор интерфейса оператора;
- channel_name_or_guid=[GUID_канала] - идентификатор канала, с которого производится экспорт;
- start_time_YYYYMMDD_HHMMSS=2014-11-26 17:34:00 - дата и время начала экспорта;
- end_time_YYYYMMDD_HHMMSS=2014-11-26 17:35:00 - дата и время конца экспорта;
- filename=[имя_файла.avi] - имя файла;
-
archive_on_device=0 - выбор источника архива:
- 0 - архив на сервере;
- 1 - архив на устройстве.
-
options={[параметры]} - набор параметров экспорта в формате JSON:
"is_hardware" - выбор источника архива:
- 0 - архив на сервере (значение по умолчанию);
- 1 - архив на устройстве.
"want_ss" - выбор потока:
- 0 - основной поток (значение по умолчанию);
- 1 - дополнительный поток.
"video_codec" - выбор видеокодека, в который будет закодирован файл экспорта:
- "" - без перекодирования (значение по умолчанию);
- "MPEG4" - перекодировать в MPEG4;
- "WMV" - перекодировать в WMV (в TRASSIR OS не поддерживается).
"video_resolution" - выбор разрешения видеопотока (если используется перекодирование):
- "" - исходное разрешение видеопотока (значение по умолчанию);
- "2560x1920", "1920x1080", "1600x1200", "1280x1024", "1280x960", "1280x720", "1024x768", "800x600", "720x576", "704x576", "640x480", "352x288", "320x240", "176x144" - варианты разрешений.
"video_bitrate" - выбор битрейта экспортируемого файла (если используется перекодирование):
- 200, 400, 600, 800, 1000, 2000, 2500, 3000, 5000, 7500, 10000, 16000 - варианты битрейта.
"audio_codec" - выбор аудиокодека, в который будет закодирован звук в файле экспорта:
- "" - без перекодирования (значение по умолчанию);
- "No audio" - без звука;
- "PCM" - перекодировать в PCM;
- "WMA" - перекодировать в WMA (в TRASSIR OS не поддерживается).
"audio_bitrate" - выбор битрейта аудиопотока экспортируемого файла (если используется перекодирование в WMA):
- 64, 128 - варианты битрейта.
"need_channel_name_watermark" - впечатать имя канала на видео:
- 0 - не впечатывать (значение по умолчанию);
- 1 - впечатать.
"need_timestamp_watermark" - впечатать дату и время на видео:
- 0 - не впечатывать (значение по умолчанию);
- 1 - впечатать.
"watermark_align" - положение текста на видео:
- 1 - верхний левый угол (значение по умолчанию);
- 2 - верхний правый угол;
- 3 - нижний левый угол;
- 4 - нижний правый угол.
"need_fliprotate" - поворот и отражение видео:
- 0 - не использовать (значение по умолчанию);
- 1 - использовать.
"watermark_need_figures" - впечатать фигуры или субтитры на видео:
- 0 - не впечатывать (значение по умолчанию);
- 1 - впечатать.
- sid=[id_сессии] - id сессии, в которой выполняется запрос (см. пример Получение id сессии).
Подсказка
Время указывается с учетом часового пояса, настроенного на сервере.
Пример ответа сервера:
{
"success" : "1",
}
Команды управления задачами локального экспорта
Запрос текущих задач локального экспорта
Пример запроса:
https://192.168.1.200:8080/export_tasks?sid=e03qD0eg
Ключевые элементы запроса:
- sid=[id_сессии] - id сессии, в которой выполняется запрос (см. пример Получение id сессии).
Пример ответа сервера:
[{
"additional_data" : "{\n\t\"extras\" : \n\t{\n\t\t\"bluring\" : false,\n\t\t\"class_detection\" : \"head\",\n\t\t\"need_research_detectors\" : false\n\t}\n}\n",
"created_ts" : "1571922911615786",
"export_finish_ts" : "0",
"export_start_ts" : "1571922911615786",
"filename" : "C:/VMS/Screenshots/TR-D8121WDIR2v2 1_20191024-132119--20191024-132727.avi",
"fragments" :
[
{
"channel" : "qK30lb5k_OsnJuSGv",
"end_ts" : "1571911565998605",
"filename" : "",
"start_ts" : "1571911180998846"
},
{
"channel" : "qK30lb5k_OsnJuSGv",
"end_ts" : "1571912847980932",
"filename" : "",
"start_ts" : "1571912479981939"
}
],
"id" : "uzbijs1A",
"out_format" : 0,
"postponed_until_ts" : "1571922910083000",
"progress_percent" : "30",
"state" : 1,
"state_desc" : "in_progress"
}]
В данном примере ответ содержит:
- "additional_data" - набор параметров задачи локального экспорта;
- "created_ts" - время создания задачи локального экспорта;
- "export_start_ts" - время начала выполнения задачи локального экспорта;
- "export_finish_ts" - время завершения задачи локального экспорта;
- "filename" - путь и имя файла (если экспортируется несколько фрагментов);
-
"fragments" - список экспортируемых фрагментов:
- "channel" - уникальный идентификатор канала в формате [GUID_канала]_[GUID_сервера];
- "start_ts" - время начала экспортируемого фрагмента;
- "end_ts" - время конца экспортируемого фрагмента;
- "filename" - путь и имя файла фрагмента (если экспортируется один фрагмент);
- "id" - уникальный идентификатор задачи локального экспорта;
- "out_format" - формат файла экспорта (0 - AVI, 1 - TRAVI);
- "postponed_until_ts" - время запланированного запуска задачи (если используется отложенный экспорт);
- "progress_percent" - процент завершения задачи;
-
"state" - статус задачи:
- 0 - задача в ожидании;
- 1 - задача выполняется;
- 2 - задача завершена.
-
"state_desc" - описание статуса:
- "postponed" - задача в ожидании;
- "in_progress" - задача выполняется;
- "completed" - задача завершена.
Подсказка
Время указывается в микросекундах в формате UNIX-время с учетом часового пояса, настроенного на сервере.
Запрос на удаление задачи локального экспорта
Пример запроса:
https://192.168.1.200:8080/export_cancel?sid=e03qD0eg&task_id=uzbijs1A
Ключевые элементы запроса:
- sid=[id_сессии] - id сессии, в которой выполняется запрос (см. пример Получение id сессии);
- task_id=[id_задачи] - уникальный идентификатор задачи локального экспорта.
Пример ответа сервера:
{
"success" : "1"
}

