Skip to content

Импорт камер по API

Импорт камер выполняется через POST запрос на URL http(s)://URL_ВАШЕГО_ВОТЧЕРА/watcher/client-api/v3/streams/import

Импорт через команду в консоли:

curl 'http://localhost/watcher/client-api/v3/streams/import' \
  -X POST \
  --data-binary @mydata.csv \
  -H 'Content-Type: text/csv' \
  -H 'Authorization: Bearer eyJ0eXAiOiJKV1'

Пример файла mydata.csv:

name,title,comment,static,disabled,inputs_0_url,inputs_1_url,dvr_expiration,dvr_episodes_expiration,dvr_storage_limit,dvr_redundancy_factor,vision_alg,vision_areas,organization_id,coordinates_latitude,coordinates_longitude,is_test,onvif_ptz
cam-e7fee73458,Primary camera title,,true,false,rtsp://127.0.0.1/stream/main,rtsp://127.0.0.1/stream/sub,86400,259200,32212254720,3,faces,x1 y1,1,55.71182944518981,37.7775426954031,false,false
,Secondary camera title,Camera comment,true,false,rtsp://127.0.0.1/stream2/main,rtsp://127.0.0.1/stream2/sub,172800,432000,,0,plates,x2 y2,1,51.711667039488155,35.77733281254769,true,true

Ответ:

{"created":2,"updated":0}

Пример одной строкой:

echo -e "name,title,comment,static,disabled,inputs_0_url,inputs_1_url,dvr_expiration,dvr_episodes_expiration,dvr_storage_limit,dvr_redundancy_factor,vision_alg,vision_areas,organization_id,coordinates_latitude,coordinates_longitude,is_test,onvif_ptz
cam-e7fee73458,Primary camera title,,true,false,rtsp://127.0.0.1/stream/main,rtsp://127.0.0.1/stream/sub,86400,259200,32212254720,3,faces,x1 y1,1,55.71182944518981,37.7775426954031,false,false
,Secondary camera title,Camera comment,true,false,rtsp://127.0.0.1/stream2/main,rtsp://127.0.0.1/stream2/sub,172800,432000,,0,plates,x2 y2,1,51.711667039488155,35.77733281254769,true,true" | curl 'http://localhost/watcher/client-api/v3/streams/import' -X POST --data-binary @mydata.csv -H 'Content-Type: text/csv' -H 'Authorization: Bearer eyJ0eXAiOiJKV'

Ответ:

{
{"created":2,"updated":0}
}

Надо передать CSV или список JSON-объектов со следующими полями:

  • title: название камеры.
  • name: название потока. По умолчанию — title плюс случайный суффикс.
  • static: 1 — постоянно работающий поток (static), 0 — поток по запросу (ondemand).
  • stream_url: RTSP URL основного потока.
  • substream_url: RTSP URL вторичного видеопотока (для мультибитрейта). По умолчанию нет.
  • thumbnails (строка): URL снепшотов с камеры. Отправив 0 вместо URL вы можете сбросить адрес thumbnails. Если вы не знаете URL снепшотов с камеры, передайте в строке значение 1 и их включит Watcher (в данном варианте будет 10% увеличение нагрузки на сервер, рекомендуем использовать URL, для общения с камерой напрямую).
  • onvif_url: URL по которому камера будет отвечать по onvif протоколу. По умолчанию нет.
  • onvif_profile: ONFIV profile
  • ptz: (0 или 1) — вкл/выкл PTZ (если камера поддерживает)
  • access: тип доступа к камере: (private/public/authorized) — видимость камеры, публичная она будет (для всех абонентов) или приватная (только для owner'а камеры). По умолчанию — private.
  • owner: (логин привязанного абонента / владельца камеры)
  • enabled: (0 или 1) — вкл/выкл камеры.
  • dvr_path: путь для сохранения архива. По умолчанию — архива нет.
  • dvr_depth: (целое число в днях) — количество дней записи архива для камеры. 0 — отключает архив.
  • coordinates: координаты.
  • postal_address: адрес.
  • comment: комментарий.
  • agent_model (строка): модель камеры.
  • agent_serial (строка): серийный номер камеры.
  • agent_id (строка): уникальный номер агента на камере.
  • agent_key (строка): специальное поле, используемое для авторизации камеры в Flussonic Watcher.
  • agent_pin (строка): специальное поле, используемое для авторизации камеры в Flussonic Watcher.