, "init", { clickmap:true, trackLinks:true, accurateTrackBounce:true, webvisor:true });
API приближённо соответствует документам:
Параметры запросов:
action=setConfig
Пример GET-запроса:
http://admin:123456@192.168.0.141:85/cgi-bin/configManager.cgi?action=setConfig&Encode[0].MainFormat[0].AudioEnable=true
Поддерживаемые параметры:
true - включить Agentfalse - отключить AgentАдрес сервера для подключения агента. По умолчанию camagent.ufanet.ru
true - включить автообновлениеfalse - отключить автообновлениеАдрес сервера автообновлений
Имя пользователя FTP
Пароль
true - аудио вкл.false - аудио выкл.Аудиокодек:
mp3opusaacpcmalawulawЧастота дискретизации аудио в [Гц]
true - динамик вкл.false - динамик выкл.Громкость динамика от 0 до 100 в [%]
true - основной поток (/stream=0) видео вкл.false - видео выкл.Видео битрейт в [kbps]
Режим работы RC (Rate Control):
avbr (Adaptive Variable BitRate)cbr (Constant BitRate)vbr (Variable BitRate)Видеокодек:
h264h265Частота кадров
Количество опорных кадров в 1 секунде (от 0.1 до 20)
Режим работы GOP:
normaldualsmartПрофиль:
BaselineMainHighРазрешение, например, 1920x1080 (допускаются только четные значения; количество пикселей должно быть кратным 256, например, 1920*1080=2073600 кратно 256)
Аналогичные параметры видео для дополнительного потока (/stream=1):
Аудио параметры для потоков общие (для Encode[0].ExtraFormat[0].Video.BitRateControl допустим только avbr)
true - детектор движения вкл.false - детектор движения выкл.Минимальное время в секундах между срабатываниями детектора движения в диапазоне 0 — 30
URL, на который отправляется сообщение о срабатывании детектора движения. Пример:
http://10.0.8.196/admin/api/v0/event/rvi/json/{stream_number}
Область отслеживания. Формат: XxYxWxH, например, 0x0x500x500. По умолчанию — весь кадр. Для сброса в значение по умолчанию достаточно указать пустое значение: MotionDetect[0].MotionDetectWindow[0].ROI=''
X - x-координата левого верхнего углаY - y-координата левого верхнего углаW - ширинаH - высотаЧувствительность детектора движения в диапазоне 1 — 50
true - визуализация детектора движения вкл.false - визуализация детектора движения выкл.Шлюз по умолчанию
true - DHCP вкл.false - DHCP выкл.IP-адрес
Маска подсети
Имя хоста операционной системы
Адрес NTP-сервера
Шлюз по умолчанию
true - DHCP вкл.false - DHCP выкл.IP-адрес
Маска подсети
Имя хоста операционной системы
Имя часового пояса из tz database, например, Asia/Yekaterinburg
true - включить ONVIFfalse - отключить ONVIFИмя для пользователя ONVIF
Пароль для пользователя ONVIF
true - вкл. приватную маскуfalse - выкл.Примечание:
PrivacyMasking[0].Enable также управляет включением и выключением OSD
Координаты прямоугольника PrivacyMasking[0].Rect=100x110x500x1000. Формат координат: x, y верхней левой точки, ширина и высота в пикселях. Есть возможность через запятую указывать координаты до 5 прямоугольников: 1854x1304x216x606,1586x1540x482x622. Для сброса маски достаточно указать пустое значение: PrivacyMasking[0].Rect=''
false - разблокировать 554 портtrue - заблокировать 554 портfalse - выключить авторизацию RTSPtrue - включить авторизацию RTSPСервер регистрации
Логин
Пароль
Адрес сервера для отправки логов в соответствии со стандартом syslog по протоколу UDP. Значение в формате адрес[:порт]. Если порт не указан, то используется порт по умолчанию 514. Пустая строка - логи ведутся только локально
Уровень логирования 1 — 8. В syslog попадают только логи с уровнем меньше, чем значение этого параметра
Яркость изображения в диапазоне 1 — 100
Контрастность изображения в диапазоне 1 — 100
Цветовой тон изображения в диапазоне 1 — 100
Насыщенность изображения в диапазоне 1 — 100
true - включить функцию переворота видео вертикальноfalse - отключить функцию переворота видео вертикальноtrue - включить функцию отражения видео горизонтальноfalse - отключить функцию отражения видео горизонтальноВращение видео:
0 - без вращения1 - по часовой стрелке повернуть на 90°2 - против часовой стрелки повернуть на 90°0 - Обработка изображения выкл.1 - HLC вкл.2 - BLC вкл.Color - всегда дневной режимBrightness - день/ночь автоBlackWhite - всегда ч/бSchedule - день/ночь по расписаниюВремя включения ночного режима, например, 21:00
Время включения дневного режима, например, 9:00
Задержка переключения дня и ночи от 3 сек до 10 сек
IR - адаптивная (умная) ИК-подсветка выкл.SmartIR - адаптивная (умная) ИК-подсветка вкл.Яркость подсветки или мощность фонарика. Диапазон от 0 до 100, где 0 - подсветка отключена, 100 - яркость на максимум. Соотвественно при значении 50 подсветка будет включаться в половину мощности от максимальной яркости
IR - ИК-подсветкаLED - LED-подсветкаЧувствительность переключения для автоматического переключения дня и ночи от 1 до 8 птенчиков
0 - DNR выкл.1 - слабый 2DNR вкл.2 - 2DNR вкл.3 - слабый 3DNR вкл.4 - 3DNR вкл.0 - WDR выкл.1 - WDR вкл.2 - WDR cлабый.3 - WDR средний.4 - WDR cильный.0 - WDR выкл.1 - WDR вкл.0 - 2DNR выкл.1 - 2DNR вкл.0 - 3DNR выкл.1 - 3DNR вкл.0 - временно дневной режим1 - временно ночной режимдругие значения - сброс на авто (перезапустить поток)0 - OSD выкл.1..255 - OSD вкл.Положение OSD (X-координата). Отрицательное значение означает смещение относительно правого края
Положение OSD (Y-координата). Отрицательное значение означает смещение относительно нижнего края
Размер OSD
Сообщение OSD, например, "%F %T". Поддерживается форматирование strftime
true - включить режим MQTT для изначально API панелейfalse - API панели работают как APItrue - включить запланированную перезагрузкуfalse - отключить запланированную перезагрузкуУстановить время для запланированной перезагрузки. Используется 24-часовой формат (00:00-23:59)
Установка дней недели для запланированной перезагрузки
"*" или "" - при отправке символа "*" или пустого значения перезагрузка будет выполняться каждый, в заданное время"3" - для того чтобы задать определенный день недели для выполнения перезагрузки, необходимо задать численное значение от 1 до 7, где 1-Пн, 2-Вт, 3-Ср и т.д."1,3,7" - список дней, для запланированной перезагрузкиСписок IP адресов с портами, для которых в iptables будет разрешение на входящий UDP трафик
action=getConfig
Пример GET-запроса:
http://admin:123456@192.168.0.141:85/cgi-bin/configManager.cgi?action=getConfig&name=Encode
Вывод:
table.Encode[0].MainFormat[0].AudioEnable=false
table.Encode[0].MainFormat[0].Video.BitRateControl=vbr
table.Encode[0].MainFormat[0].Video.BitRate=2048
table.Encode[0].MainFormat[0].Video.Compression=h264
table.Encode[0].MainFormat[0].Audio.Frequency=8000
table.Encode[0].MainFormat[0].VideoEnable=true
Поддерживаемые параметры:
Список IP адресов с портами, для которых в iptables будет разрешение на входящий UDP трафик
action=getDate
Пример GET-запроса:
http://admin:123456@192.168.0.141:85/cgi-bin/magicBox.cgi?action=getDate
Пример ответа:
date=22-02-2022
action=getMachineName
Пример ответа:
name=BMSCGL500
action=getSerialNo
Пример ответа:
sn=6801780337772
action=getSoftwareVersion
Пример ответа:
version=2.3.02.10
kernel=2023060714
action=getDeviceVariant
Пример ответа:
device_variant=T4P-37M Silver (MB_V0.0.17_A1 KB_V0.0.10_A1 Antena_SMALL_v0.0.5)
action=getStreamerState
Пример ответа:
streamerState=up
action=getTime
Пример ответа:
time=15:55:15
action=getUptime
Пример ответа:
uptime=90047.46
action=reboot
Пример GET-запроса:
http://admin:123456@192.168.0.141:85/cgi-bin/magicBox.cgi?action=reboot
action=resetSystemEx
Выполнение сброса занимает 1-2 минуты. После сброса камера автоматически перезагружается
Пример GET-запроса:
http://admin:123456@192.168.0.141:85/cgi-bin/magicBox.cgi?action=resetSystemEx
action=start
Пример запроса:
http://admin:123456@192.168.0.141:85/cgi-bin/ptz.cgi?action=start&code=Up&arg1=0&arg2=8&arg3=0
Параметры:
| code | arg1 | arg2 | arg3 |
|---|---|---|---|
| Up | 0 | скорость (от 1 до 8) | 0 |
| Down | 0 | скорость (от 1 до 8) | 0 |
| Left | 0 | скорость (от 1 до 8) | 0 |
| Right | 0 | скорость (от 1 до 8) | 0 |
| GotoPreset | 0 | номер пресета | 0 |
| SetPreset | 0 | номер пресета | 0 |
| ClearPreset | 0 | номер пресета | 0 |
| StepUp | 0 | скорость (от 1 до 8) | 0 |
| StepDown | 0 | скорость (от 1 до 8) | 0 |
| StepLeft | 0 | скорость (от 1 до 8) | 0 |
| StepRight | 0 | скорость (от 1 до 8) | 0 |
action=stop
Пример запроса:
http://admin:123456@192.168.0.141:85/cgi-bin/ptz.cgi?action=stop
action=reset
Пример запроса:
http://admin:123456@192.168.0.141:85/cgi-bin/ptz.cgi?action=reset
action=setConfig
Пример GET-запроса:
http://admin:123456@192.168.0.141:85/cgi-bin/osd.cgi?action=setConfig&OSD[0].Enable=true
Поддерживаемые параметры:
Сообщение дополнительного OSD номер 0.
Сообщение дополнительного OSD номер 0.
Положение дополнительного OSD номер 0 (X-координата).
Положение дополнительного OSD номер 0 (Y-координата).
Размер сообщения дополнительного OSD номер 0.
Пример команды, отправляющей файл изображения logo.bmp:
curl -u admin:123456 -F img=@logo.bmp http://192.168.0.141:85/cgi-bin/osd.cgi?action=setConfig&OSD[0].Img
action=getConfig
Пример GET-запроса:
http://admin:123456@192.168.0.141:85/cgi-bin/osd.cgi?action=getConfig&OSD[0]
Вывод:
.table.OSD[0].Enable=true
.table.OSD[0].Text=Hello world!
.table.OSD[0].PosX=500
.table.OSD[0].PosY=500
.table.OSD[0].Size=50
Примечание: всего доступно 8 дополнительных OSD (от 0 до 7). Номер OSD указывается в OSD[<номер OSD>]
Отправка данных методом POST, тип содержимого multipart/form-data
Выполнение обновления занимает 1-2 минуты. После обновления камера автоматически перезагружается
Пример команды, отправляющей файл ядра uImage:
curl -u admin:123456 -F kernel=@uImage http://192.168.0.141:85/cgi-bin/upgrader.cgi
Пример команды, отправляющей файл образа файловой системы rootfs.squashfs:
curl -u admin:123456 -F rootfs=@rootfs.squashfs http://192.168.0.141:85/cgi-bin/upgrader.cgi
Работает только на устройствах, у которых объём встроенной флеш‑памяти 32 МБ.
Пример команды, отправляющей файл прошивки firmware.tar.gz:
curl -u admin:123456 -F firmware=@firmware.tar.gz http://192.168.0.141:85/cgi-bin/upgrader.cgi
Скрины доступны на 85 порту по адресу:
http://192.168.0.188:85/image.jpg
или с указанием размеров:
http://192.168.0.188:85/image.jpg?width=640&height=360
action=modifyPassword
Необходимо указать в запросе имя пользователя admin, новый и старый пароль
Пример GET-запроса:
http://admin:123456@192.168.0.141:85/cgi-bin/userManager.cgi?action=modifyPassword&name=admin&pwd=67890&pwdOld=12345
action=maindoor
Пример GET-запроса:
http://admin:123456@192.168.0.141:85/cgi-bin/intercom.cgi?action=maindoor
action=connect
Пример запроса:
http://admin:123456@192.168.0.141:85/cgi-bin/wifi.cgi?action=connect&network=wlanssid&password=wlanpass
action=getCaps
Пример GET-запроса:
http://admin:123456@192.168.0.141:85/cgi-bin/encode.cgi?action=getCaps
Пример ответа:
caps.VideoEncodeDevices[0].MaxExtraStream=1
caps.VideoEncodeDevices[0].TitleCount=1
action=getConfigCaps
Пример GET-запроса:
http://admin:123456@192.168.0.141:85/cgi-bin/encode.cgi?action=getConfigCaps
Пример ответа:
caps[0].MainFormat[0].Video.CompressionTypes=h264,h265
caps[0].MainFormat[0].Video.AddOns=WDR,2DNR,3DNR,BLC,HLC
caps[0].MainFormat[0].Audio.CompressionTypes=mp3,opus,aac,pcm,alaw,ulaw
caps[0].MainFormat[0].Video.FPSMax=25
caps[0].MainFormat[0].Video.ResolutionTypes=1920x1080,1600x900,1440x1080,1280x1024,1280x768,1280x720,1152x864,1024x768,1024x600,960x540,800x600,800x480,640x480,640x360,320x240,256x244,192x144
caps[0].ExtraFormat[0].Video.CompressionTypes=h264,h265
caps[0].ExtraFormat[0].Video.AddOns=WDR,2DNR,3DNR,BLC,HLC
caps[0].ExtraFormat[0].Audio.CompressionTypes=mp3,opus,aac,pcm,alaw,ulaw
caps[0].ExtraFormat[0].Video.FPSMax=16
caps[0].ExtraFormat[0].Video.ResolutionTypes=1920x1080,1600x900,1440x1080,1280x1024,1280x768,1280x720,1152x864,1024x768,1024x600,960x540,800x600,800x480,640x480,640x360,320x240,256x244,192x144
action=set
Пример GET-запроса:
http://192.168.0.167:85/cgi-bin/zabbix-setting.cgi?action=set&Server=192.168.0.153
Параметры:
| parametr | arg |
|---|---|
| Server | 192.168.0.153 |
| ServerActive | 192.168.0.153 |
| Hostname | MyName |
action=getConfig
Пример GET-запроса:
http://192.168.0.167:85/cgi-bin/zabbix-setting.cgi?action=getConfig
Вывод:
zabbix.Server=192.168.0.153
zabbix.ServerActive=192.168.0.153
zabbix.Hostname=MyHost