Импорт камер по 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.