命令文档

概述

定义

N 表示当前字段为数字
S 表示当前字段为字符串
FI 表示支持Foscam IPC
FN 表示支持Foscam NVR
FB 表示支持Foscam BPI
IN 表示支持使用嵌入式SDK NVR
II 表示支持使用嵌入式SDK IPC
A 表示安霸平台
H 表示海思平台

说明

对于(channel)通道号参数,如果是IPC设备可以忽略,如果是NVR或者BPI(如果不填channel表示请求对象是基站或者NVR,如果带了channle,表示请求对象是基站或者NVR通道上的某个设备),根据需要填写。所有透传命令输入输出采用JSON格式数据,输入/输出最左侧一列是key值,中间一列是说明,倒数第二列是值类型说明,最后一列是设备支持情况,如果没有使用FI FN FB特殊表明支持某一类设备,表示设备都支持。

注意

对于FoscamNVR,channel参数都没有实际意义,可以填写任意值,或者不包含该字段,因为暂时无法获取到通道上的设备相关信息。

对于IVYNVR,channel有实际意义,因为设备端SDK部分命令可能已经实现了相关功能。

命令返回Json数据中ret定义

success 0
exec fail -1
args error -2
channel overstep -3
unsupport this cmd -9
unsupport this format -15
exec fail because smart ai enable 1

1. 设备基本信息

1.1 获取设备能力集合

IVY_CTRL_MSG_GET_DEVABILITY = 22029

  • 支持设备
FI II
  • 输入
standardization 1:表示SDK转统一输出FoscamIPC和IVY设备能力集 其他值(或者此字段不存在):不转化 N

1.1.1 (standardization=0输出)获取设备能力集合

  • 输出 (当standardization不为1)
ret 返回值 N
cnt val个数,一个32位整 N
val0 见 val0能力集,按位表示能力集 N
val1 val(1-cnt) bit定义见 IPC功能配置指导书.doc 3配置文件个条目说明种的reserve1 - reserve4 reserveFlag1 - reserveFlag4 (此8个int不会改动,因为是为了兼容以前的能力集) N

1. IVY设备的val0能力集和此定义完全一样,SDK会将Foscam设备部分能力转换并对应到IVY设备val0能力集
2. val1-val8 主要是Foscam的能力集,可能也适用于IVY
3. val9-val12 主要是foscam设备的能力集合,可能也适用于IVY
4. IVY设备增加新的能力集应该在val0上添加,或者val13开始添加;因此可能会出现IVY能力集val1-val12是空的不能使用,只是因为SDK做了兼容导致的
5. 如果Foscam能力集中已经有了IVY所需的能力集,再意义相同的情况下,尽量使用使用已经存在的能力集位
6. 在Foscam不存在此能力集的前提下,最保险的操作就是IVY从val13开始增加新能力集。

  • 将Foscam 0表示支持 1标志不支持进行转换的标志位,转换后0表示不支持,1表示支持:
val3 Bit[5] 夜视红外灯
  • val0能力集
bit0 sd
bit1 outdoor
bit2 pt
bit3 zoom
bit4 rs485
bit5 ioAlarm
bit6 onvif
bit7 p2p
bit8 wps
bit9 audio
bit10 talk
bit11 duplexVoice
bit12 network adpater (是否支持网络自适应)
bit13 streamMode 1:只支持切换码流,0:切换分辨率
bit14 motionArea 1:支持区域选择:0:不支持区域选择
bit15 one key to call
bit16 night vision schedule
bit17 保留
bit18 LED灯(Foscam IPC尾部的状态灯)
bit19 增强夜视效果
bit20 隐私区域遮挡
bit21 支持图片下载功能
bit22 Download firmware by HTTP/HTTPS 0-https 1-http
  • val4能力集
bit8 WDR
bit9 语音提示开关
  • val6能力集
bit2 支持SD卡格式化
bit4 图片搜索下载支持方向和重量字段
  • val9能力集(OSD显示相关能力集位)

看到红色部分不要奇怪,这是为了兼容以前的设备,以前设备9-12的值都是0,红色部分以前都是支持的,所以用0表示支持

bit0 显示设备名,0:显示,1:不显示
bit1 显示时间戳名,0:显示,1:不显示
bit2 设备是否支持H264和H265切换
bit5 是否支持对讲音量调节,1:支持 0:不支持
  • val10能力集(图像相关能力集位)
bit0 图像镜像,0:支持,1:不支持
bit1 图像翻转,0:支持,1:不支持
bit1 欧姆龙人脸检测算法,1:支持,0:不支持
bit1 神马全双工算法,1:支持,0:不支持
  • val11能力集(报警功能相关能力集位)
bit0 隐私遮挡。1:支持,0:不支持
bit1 镜头遮挡。1:支持,0:不支持
  • val12能力集(外设控制相关能力集位)
bit0 响铃标志位。1:支持,0:不支持
bit1 录像时长标志位。1:支持,0:不支持
bit2 1:支持1V1 PIR灵敏度调节,0:不支持
bit3 1:支持1V3 PIR灵敏度调节,0:不支持
bit4 1:支持白光灯亮度调节,0:不支持
  • 备注

目前使用嵌入式SDK的设备会一次返回9个值,请按实际支持的选择对应值。没有使用嵌入式SDK的IPC,也会一次返回9个值,这个是为了兼容旧设备。无论是设备的能力集还是设备通道上的设备的能力集,都按照此定义

如果是NVR设备,只能获取NVR的能力,不能获取通道上的设备能力集。

  • 示例

  • input

none
  • output
{
    "ret":0,
    "cnt":13,
    "val0":351951,
    "val1":1532,
    "val2":1090,
    "val3":40,
    "val4":852,
    "val5":0,
    "val6":29,
    "val7":0,
    "val8":0,
    "val9":0,
    "val10":0,
    "val11":0,
    "val12":0
}

1.1.2 (standardization=1输出)获取设备能力集合 (推荐使用)

如果带有(Foscam)表示明确只有Foscam设备有此能力集,IVY设备没有。

没有特殊说明的 1 为支持 0 为不支持。

预值点 / 巡航 / 预值点巡航 是三种能力,请注意

  • 输出 (当standardization等于1)
ret 返回值 N
ability Json数组 32位无符号整形 N
  • ability[0] 能力集
bit0 sd
bit1 outdoor
bit2 pt
bit3 zoom
bit4 rs485
bit5 ioAlarm
bit6 onvif
bit7 p2p
bit8 wps
bit9 audio
bit10 talk
bit11 duplexVoice
bit12 network adpater (是否支持网络自适应)
bit13 streamMode 1:只支持切换码流(设备只有主码流和子码流,APP显示两档),0:切换分辨率(APP显示3档,高清流畅均衡)
bit14 motionArea 1:支持区域选择:0:不支持区域选择 (废弃)
bit15 one key to call
bit16 是否只支持AUTO IR(如果只支持AUTO IR,就不支持手动设置和计划设置;如果不是,支持手动设置/计划设置/自动) 当只支持AUTO IR的时候,如果v3 bit14支持夜视计划手动,那么支持自动/手动设置
bit17 保留
bit18 LED开关
bit19 增强夜视效果
bit20 隐私区域遮挡
bit21 支持图片下载功能
bit22 none
bit23 WDR
bit24 语音提示开关
bit25 OSD显示设备名
bit26 OSD显示时间戳名
bit27 是否音量调节
bit28 图像镜像
bit29 图像翻转
bit30 欧姆龙人脸检测算法
bit31 神马全双工算法
  • ability[1] 能力集
bit0 None
bit1 是否支持遮挡镜头报警
bit2 响铃标志位
bit3 1:支持1V1 PIR灵敏度调节,0:不支持
bit4 1:支持1V3 PIR灵敏度调节,0:不支持
bit5 1:支持白光灯亮度调节,0:不支持
bit6 云存储
bit7 百度云推送
bit8 Foscam云推送
bit9 Foscam云存储
bit10 Foscam富媒体推送
bit11 alexa
bit12 7x24小时云录像
bit13 None
bit14 预置点巡航
bit15 框外侦测
bit16 声音侦测
bit17 温度侦测
bit18 湿度侦测
bit19 PIR侦测 (如果是IVY设备并且支持该能力可以使用 5.26/5.27 命令)
bit20 IV侦测
bit21 爱华盈通行人检测(Foscam)
bit22 童谣播放
bit23 是否有加密芯片
bit24 softap功能
bit25 EZLink功能
bit26 PPPOE功能
bit27 夜视红外功能(Foscam设备SDK代码固定为支持,IVY会根据能力集赋值,但是应用端都没有使用这个能力集,所以这个能力集可以暂时忽略)
bit28 白光灯功能
bit29 None
bit30 SD录像功能
bit31 定时重启
  • ability[2] 能力集
bit0 布防撤防
bit1 None
bit2 小夜灯
bit3 None
bit4 HDR
bit5 是否支持自动对焦功能
bit6 是否支持SD卡格式化
bit7 是否支持重对焦
bit8 是否支持H264/H265切换
bit9 是否支持休眠功能
bit10 是否支持小语种功能
bit11 是否支持对讲音量调节
bit12 报警档位。0表示支持5档或默认,1表示支持3个档位
bit13 侦测区域个数。0表示支持其他机型默认侦测个数,1表示支持2个侦测区域个数
bit14 None
bit15 SD卡录像时间轴
bit16 看守位
bit17 智能家居CGI
bit18 珊口人形检测
bit19 欧姆龙人形算法
bit20 智能家居
bit21 镜头畸变
bit22 是否支持语音留言
bit23 是否支持设备报警录像时长设置, 并且不区分报警类型(移动/PIR/人形等等,目前Foscam不区分,但是IVY设备区分,IVY设备R5V2支持这种报警录像时长设置)
bit24 是否支持自定义报警声音
bit25 是否支持搜索下载图片使用扩展信息(重量,方向)
bit26 None
bit27 是否支持SIREN联动
bit28 是否支持人形跟踪,如果支持可以使用 5.38/5.39
bit29 是否支持预置点(同时也可以用来判断巡航(Foscam设备可以这样判断),注意:预值点巡航时另外一个能力集(ability_1 bit14))
bit30 是否支持双光源功能(Foscam)
bit31 是否支持巡航
  • ability[3] 能力集
bit0 不支持SD卡计划录像(1:不支持 0:支持,目前只有IVY设备支持)
bit1 设备支持休眠功能并且可以设置获取计划时间/模式/状态(目前只有Foscam设备支持)若支持可使用命令4.56/4.57
bit2 云平台和SD卡报警录像是否录制音频(1:录制音频,0:不录制 目前只有IVY设备支持)
bit3 支持白光灯计划设置(1:支持 0:不支持,目前只有FOSCAM设备支持)
bit4 支持移动侦测(1:支持 0:不支持)
bit5 支持SD卡录像下载(1:支持 0:不支持)
bit6 报警声音音量调节(1:支持 0:不支持 目前只支持IVY设备。报警是单独的,和对讲的声音不一样)若支持可以使用命令5.24/5.25
bit7 None
bit8 支持 自动/全彩/黑白 夜视模式(注意与bit29的区别),若支持可以使用命令4.62/4.63
bit9 支持夏令时
bit10 支持时间NTP服务器
bit11 是否支持PTZ恢复原始位置
bit12 声音侦测是否支持白光灯联动(目前只有Foscam支持)
bit13 支持电源频率(Foscam都支持电源频率)
bit14 支持手动打开关闭夜视(Foscam设备没有用,IVY设备当 v0 bit16为1时,该位会起作用)
bit15 None
bit16 PIR侦测中不支持计划时间设置 (1:不支持 0:支持)(Foscam设备目前一定支持)
bit17 PIR侦测中不支持区域设置 (1:不支持 0:支持)(Foscam设备目前一定支持)
bit18 PIR侦测中不支持时间间隔设置 (1:不支持 0:支持)(Foscam设备目前一定支持)
bit19 支持推送间隔设置(IVY设备目前不支持)若支持可以使用命令 7.21 / 7.22
bit20 支持设备设置PTZ速度
bit21 支持当启用ALEAX功能,设备自动切换到H264,关闭切换到H265(FOSCAM设备目前不支持)若支持可以使用命令 7.9.8 / 7.9.9
bit22 支持查询某月中有SD卡录像的日期 若支持,IVY设备可以使用命令 6.15,Foscam设备不用命令,使用CGI,文档中没有
bit23 是否支持机动车检测 如果支持,可以使用 5.32 / 5.33 只有此位为1的时候 IVY_CTRL_MSG_GET_MOTION_DETECT_CONFIG 返回json中的 carAlarmEnable 才有意义
bit24 是否支持非机动检测 FOSCAM暂时不支持,如果支持,IVY设备可以使用 5.34 / 5.35
bit25 是否支持人脸检测 FOSCAM暂时不支持,如果支持,IVY设备可以使用 5.36 / 5.37
bit26 是否支持 KVS 云存储服务
bit27 PIR侦测中支持设置录像报警时长(低功耗IVY设备只支持这个类型的报警录像时长) 如果是IVY设备,当该位为1,仅仅在PIR侦测中展示可以设置报警录像时长设置
bit28 支持连续报警录像到一个文件,目前只有IVY设备支持,若支持 6.8 中的recordSeconds支持设置为0
bit29 支持 自动/全彩/黑白/关闭所有 夜视模式(注意与bit8的区别) APP UI 需要隐藏报警触发是否打开白光灯的功能 若支持可以使用命令4.62/4.63。目前只有Foscam设备支持(Foscam产品需求,硬件需要支持白光灯,但是APP上不给用户手动操作白光灯,因为Foscam设备的本身能力集不能关闭,关闭后能力也会消失
bit30 是否不支持夜视计划(1:表示不支持 0:表示支持)。如果不支持,不要显示夜视计划(目前只有Foscam有用,IVY不要使用)
bit31 PTZ云台是否支持8个方向控制(1:支持 0:不支持)。如果不支持,则表示PTZ云台只支持4个方向控制(目前只有Foscam有用,IVY不要使用)
  • ability[4] 能力集
bit0 是否支持人型检测(目前只支持Foscam设备)只有此位为1的时候 IVY_CTRL_MSG_GET_MOTION_DETECT_CONFIG 返回json中的 humanAlarmEnable 才有意义
bit1 是否支持开关白关灯,使用前请判断 V1 BIT28,这样才有意义
bit2 移动侦测中是否支持白光灯联动(这里只是指app里不展示可以开关白光灯联动的按钮,但是设备可能还支持),请保留APP之前的判断,目前这个能力判断主要还是靠APP原有判断。 这个能力集可以和APP原有判断一起使用,是和关系,满足APP原有判断再加上这一位能力集表示支持,就可以判断支持白光灯联动;
bit3 SD卡状态中是否支持SD卡是否可用,APP用来显示SD卡是否可用,目前只有IVY设备支持
bit4 是否可以获取NVR上IPC的能力集,目前只有IVY设备支持
bit5 去掉“自动对焦开关”,“变焦速度”的选项,目前只针对Foscam设备,只有VMS使用这个能力集,1:去掉,0:保持不变 (该能力集是为兼容旧设备显示,设备可能有这个能力,但是UI不能显示出来,因此有这个能力集)
bit6 去掉启动选项中的“禁用启动”,目前只针对Foscam设备,只有VMS使用这个能力集 1:去掉,0:保持不变 (该能力集是为兼容旧设备显示,设备可能有这个能力,但是UI不能显示出来,因此有这个能力集)
bit7 去掉“巡航圈数”设置,目前只针对Foscam设备,只有VMS使用这个能力集 1:去掉,0:保持不变 (该能力集是为兼容旧设备显示,设备可能有这个能力,但是UI不能显示出来,因此有这个能力集)
bit8 是否支持移动追踪。目前只有 IVY设备支持(对于IVY设备,从功能逻辑上来说,如果 V2 BIT28(人形追踪开启了,就是只追踪人形,其他不追踪))。如果支持,可以使用 5.40/5.41
bit9 是否支持视频源切换。目前只有 IVY设备支持。如果支持,可以使用 2.17/2.18
bit10 打开回放第一帧有 S_FRAME 标志。目前只有 IVY设备支持。有这个标志的回放可以防止播放上一个视频数据
bit11 是否支持设备智能检测。目前只有 IVY设备支持。(IVY设备自己智能检测,和云端智能检测类似) 如果支持,可以使用 5.42/5.43/5.44/5.45
bit12 是否支持镜像和翻转同时设置。目前只有 IVY设备支持。
bit13 是否支持宠物侦测。目前只有 Foscam设备 支持。只有此位为1的时候 IVY_CTRL_MSG_GET_MOTION_DETECT_CONFIG 返回json中的 petAlarmEnable 才有意义
bit14 只是表示APP如何展示直播右上角 自动/全彩/开关/手动/… 这个UI。实现方式按原有全彩模式。如果为1,UI 只展示 自动/手动开/手动关。还要隐藏对应设置界面。目前只有 IVY 设备支持
bit15 是否支持新版本 NVR 硬盘录像设置, 目前支持 IVY NVR,如果支持可以使用 10.5/10.6
bit16 是否支持自动添加 NVR 套装内的IPC,如果支持 IVY NVR 可以使用 11.3/11.4
bit17 是否支持SD卡录像可以切换主码流子码流,如果支持可以使用 6.17/6.18 目前只有IVY支持
  • 示例

  • input

{
    "standardization":1
}
  • output
{
   "ability" : [ 3072153219, 3668000616, 48400 ],
   "ret" : 0
}

1.1.3 获取NVR上Foscam设备能力集合

IVY_CTRL_MSG_GET_FOSCAM_DEVICE_ABILITY_ON_THE_NVR = 26187

V4 BIT4 支持,并且设备是IVY NVR,且通道上设备为 FoscamIPC 可以使用; 通道上设备类型可通过事件 IVY_CTRL_MSG_IPCLIST_CHG的devType判断

  • 支持设备
IN
  • 输入
standardization 1:表示SDK转统一输出FoscamIPC设备能力集 其他值(或者此字段不存在):不转化 N
channel 通道号 N
  • 输出

如果 standardization = 1,返回json和1.1.2一致,另外多个了model字段,表示Foscam设备的model号(推荐使用)

如果 没有 standardization,返回 json 为

nna N
sdFlag N
outdoorFlag N
ptFlag N
zoomFlag N
rs485Flag N
ioAlarmFlag N
onvifFlag N
p2pFlag N
wpsFlag N
audioFlag N
talkFlag N
ambaflag N
reserve1 N
reserve2 N
reserve3 N
reserve4 N
reserveFlag1 N
reserveFlag2 N
reserveFlag3 N
reserveFlag4 N
capability1 N
capability2 N
capability3 N
capability4 N

1.2 获取设备信息

IVY_CTRL_MSG_GET_DEVINFO = 22025

  • 输入

  • 输出
ret 返回值 N
devType 设备类型 N
platType 平台类型 N
sensorType sensor类型 N
wifiType wifi类型 N
language 语言 N
productName 产品名字 S
devName 设备名,使用BASE64编码 S
firmwareVersion 应用固件版本号 S
hardwareVersion 系统固件版本号 S
serialNo 序列号 S
uid 设备UID S
mac NAC地址 S
oemCode OEM码 N
channels 设备通道数 N
gsm4gVersion 4G模块版本号(有4G模块才会返回) N
  • 设备类型定义
IPC 0
BATTERY_CAMERA 1
NVR 2
BASE_STATION 3
OTHER 100
Foscam IPC 1000
Foscam NVR 1001
Foscam BPI 1002
  • wifi类型
WIFI_NONE 0
WIFI_RT3070 1
WIFI_MT7601 2
WIFI_BROADCOM 3
WIFI_AP6256 4
WIFI_RTL8188FU 5
WIFI_BUTT 6
  • 语言
LANGUAGE_CN 0
LANGUAGE_CNEN 1
LANGUAGE_FOREIGN 2
LANGUAGE_BUTT 3
  • 引用

// C/C++
typedef enum { 
    IVYIO_DEV_IPC = 0, 
    IVYIO_DEV_BATTERY_CAMERA = 1, 
    IVYIO_DEV_NVR            = 2, 
    IVYIO_DEV_BASE_STATION   = 3, 
    IVYIO_DEV_OTHER          = 100,

    // for compatible with old fos dev
    IVYIO_DEV_FOS_IPC = 1000,
    IVYIO_DEV_FOS_NVR,
    IVYIO_DEV_FOS_BPI
}IVYIO_DEV_TYPE;

typedef enum 
{ 
    PLATFORM_HISI      = 0, 
    PLATFORM_AMBA      = 1, 
    PLATFORM_MSTAR      = 2, 
    PLATFORM_INGENIC   = 3,
    PLATFORM_JZ   = 4,
    PLATFORM_OTHER      = 100 
}IVYIO_PLATFORM_TYPE;


// Java
package com.ivyio.sdk;

public class DevType {
    public static final int IVY_IPC = 0;
    public static final int IVY_BATTERY_CAMERA = 1; 
    public static final int IVY_NVR = 2;
    public static final int IVY_BASE_STATION = 3; 
    public static final int IVY_OTHER = 100;

    // for compatible with old fos dev
    public static final int FOS_IPC = 1000;
    public static final int FOS_NVR = 1001;
    public static final int FOS_BPI = 1002;
}


public class PlatformType {
    public static final int HISI = 0;  
    public static final int AMBA = 1; 
    public static final int MSTAR = 2; 
    public static final int INGENIC = 3; 
    public static final int JZ = 4;
    public static final int OTHER = 100; 
}

  • 备注

如果是NVR设备,只能获取NVR的设备信息,不能获取通道上的设备信息。

  • 示例

  • input

none
  • output
{
   "devName" : "Rm9zY2FtX2NhbWVyYQ==",
   "devType" : 1000,
   "firmwareVersion" : "2.121.2.39",
   "hardwareVersion" : "1.16.1.3",
   "language" : 2,
   "mac" : "A0E73066C9FD",
   "model" : 7206,
   "oemCode" : 3000,
   "platType" : 2,
   "productName" : "MDS2060",
   "ret" : 0,
   "sensorType" : 24,
   "serialNo" : "0000000000000001",
   "uid" : "J8SOJU8QSY8ST79LZZZZFY8Z",
   "wifiType" : 6
}

1.3 设置设备信息

  • 支持设备
FI II FN

IVY_CTRL_MSG_SET_DEVINFO = 22027

  • 输入
devName 设备名,使用BASE64编码 S
  • 输出
ret 返回值 N
  • 示例

  • input

{
   "devName" : "Rm9zY2FtX2NhbWVyYQ=="
}
  • output
{
   "ret" : 0
}

2. 直播设置

2.1 设置镜像翻转

IVY_CTRL_MSG_SET_VIDEO_MIRROR_FLIP = 24035

  • 输入
channel 通道号 N
mirror 0:正常 1:镜像 N
flip 0:正常 1:翻转 N
  • 输出
ret 返回值 N
  • 备注

对于FoscamNVR,如果要设置mirror,Json里不要有flip,如果要设置flip,Json里不要有mirror.

  • 示例

  • input

// Foscam NVR
// Set mirror
{
   "channel":0,
   "mirror" : 1
}
// Set flip
{
    "channel":0,
   "flip" : 1
}

// Foscam IPC / IVY IPC
{
    "mirror":0,
    "flip" : 1
}

// IVY NVR
{
    "channel":0,
    "mirror":0,
    "flip" : 1
}
  • output
{
   "ret" : 0,
}

2.2 获取镜像翻转

IVY_CTRL_MSG_GET_VIDEO_MIRROR_FLIP = 24037

  • 输入
channel 通道号 N
  • 输出
ret 返回值 N
mirror 0:正常 1:镜像 N
flip 0:正常 1:翻转 N
  • 示例

  • input

// Foscam NVR / IVY NVR
{
   "channel":0,
}

// Foscam IPC / IVY IPC

None
  • output

// Foscam IPC / IVY IPC

{
   "flip" : 0,
   "mirror" : 0,
   "ret" : 0
}

// Foscam NVR / IVY NVR
{
   "channel":0,
   "flip" : 0,
   "mirror" : 0,
   "ret" : 0
}

2.3 设置白天夜晚模式

IVY_CTRL_MSG_SET_DAY_NIGHT_MODE = 24053

  • 支持设备
FI FN II IN
  • 输入
channel 通道号 N
mode 0:自动 1: 手动 2: 计划 N
onoff 0:关 1: 开 N
  • 输出
ret 返回值 N
  • 示例

  • input


// Foscam NVR / IVY NVR 
{
    "channel":0,
    "mode":1,
    "onoff":0
}

  • output

{
    "ret":0
}

2.4 获取白天夜晚模式

IVY_CTRL_MSG_GET_DAY_NIGHT_MODE = 24055

  • 输入
channel 通道号 N
  • 输出
ret 返回值 N
mode 0:自动 1: 手动 2: 计划 N
onoff 0:关 1: 开 N
  • 示例

  • input


// Foscam NVR / IVY NVR 
{
    "channel":0,
}

// Foscam IPC / IVY IPC

None
  • output

// Foscam IPC / IVY IPC
{
    "ret":0,
    "mode":0,
    "onoff":0
}

// Foscam NVR / IVY NVR
{
    "ret":0,
    "channel":0,
    "mode":0,
    "onoff":0
}

2.5 设置视频模式(高清,标准,流畅)

IVY_CTRL_MSG_SET_VIDEOSTREAM_MODE = 24023

  • 支持设备
FI
  • 输入
channel 通道号 N
streamMode 0:高清 1:标准 2:流畅 N
  • 输出
ret 返回值 N
  • 示例

  • input

{
    "streamMode":1
}
  • output

{
    "ret":0
}

2.6 获取视频模式(高清,标准,流畅)

IVY_CTRL_MSG_GET_VIDEOSTREAM_MODE = 24025

  • 支持设备
FI
  • 输入
channel 通道号 N
resolution 分辨率 N
bitRate 码率 N
  • 输出
ret 返回值 N
streamMode 0:高清 1:标准 2:流畅 N
  • 备注

resolution / bitRate 两个字段只有在FOSCAM BPI设备时才使用,其他设备不使用,
这个值来事件:

IVY_CTRL_MSG_STREAM_PARAM_CHG
IVY_CTRL_MSG_STREAM_TYPE_CHG
IVY_CTRL_MSG_SUB_STREAM_PARAM_CHG
IVY_CTRL_MSG_SUB_STREAM_TYPE_CHG
  • 示例

  • input

None
  • output
{
    "ret":0,
    "streamMode":0
}

2.7 设置OSD

IVY_CTRL_MSG_SET_OSD_PARAM = 24043

  • 支持设备
II FB IN FI
  • 输入
channel 通道号 N II / IN / FB / FN
osdType 类型 N II / IN / FI
dispPos 位置 N II / IN / FI
name 名称(BASE64编码) S FB / FN / IN
enableName 0:不显示 1:显示 N FN / IN
enableTime 0:不显示 1:显示 N FN / IN
  • 输出
ret 返回值 N
  • osdType
bit0 time
bit1 devName
bit2 Temp and humid
bit3 Osd mark
  • dispPos
0 topleft
1 bottomleft
2 topright
3 bottomright
  • 备注

对于IVY NVR, osdType值可以忽略,但是一定要有这个字段。

  • 示例

  • input

{
    "channel":0,
    "osdType":1,
    "dispPos":1,
}
  • output
{
    "ret":0
}

2.7.1 设置OSD (推荐使用)

IVY_CTRL_MSG_SET_OSD_PARAM = 24043

  • 支持设备
FB IN FI
  • 输入
字段名 含义 字段类型 FI FN FB IN
standardization 0: 不转换 1:SDK转换统一输出 N × × ×
channel 通道号 N ×
osdType 类型 N × ×
dispPos 位置 N × ×
name 名称(BASE64编码) S ×
enableName 0:不显示 1:显示 N × × ×
enableTime 0:不显示 1:显示 N × × ×
  • 输出
ret 返回值 N
  • osdType
bit0 time
bit1 devName
bit2 Temp and humid
bit3 Osd mark
  • dispPos 定义

从最低位开始,每2个bit位表示一种OSD类型位置

bit位 对应OSD类型
bit0-1 time
bit2-3 devName
bit3-4 Temp and humid
bit5-6 Osd mark
  • 位置类型
0 topleft
1 bottomleft
2 topright
3 bottomright
  • 示例

  • input

{
    "osdType":1,
    "dispPos":1,
}
  • output
{
    "ret":0
}

2.8 获取OSD

IVY_CTRL_MSG_GET_OSD_PARAM = 24045

  • 输入
channel 通道号 N II / IN / FB / FN
  • 输出
ret 返回值 N
osdType 类型 同设置 N II / IN
dispPos 位置 同设置 N II / IN
name 名称(BASE64编码) N FB / FN / IN
enableName 0:不显示 1:显示 N FN / IN
enableTime 0:不显示 1:显示 N FN / IN
  • 示例

  • input

{
    "channel":0
}
  • output
{
    "ret":0,
    "osdType":1,
    "dispPos":1
}

2.8.1 获取OSD (推荐使用)

IVY_CTRL_MSG_GET_OSD_PARAM = 24045

  • 输入
字段名 含义 字段类型 FI FN FB IN
channel 通道号 N ×
standardization 0: 不转换 1:SDK转换统一输出 N × × ×
  • 输出
字段名 含义 字段类型 FI FN FB IN
osdType 类型 N × ×
dispPos 位置 N × ×
name 名称(BASE64编码) S ×
enableName 0:不显示 1:显示 N × × ×
enableTime 0:不显示 1:显示 N × × ×
  • 示例

  • input

None
  • output
{
    "ret":0,
    "osdType":1,
    "dispPos":1
}

2.9 图像色彩调节

IVY_CTRL_MSG_SET_IMAGE_COLOR = 26077

  • 支持设备
FI
  • 输入
colorBit 需要调的色彩项,按位表示,每次只能将一个bit置为1,如果每一位都为0,表示恢复默认状态 N FI
value 0-100 N FI
  • 输出
ret 返回值 N FI
  • colorBit
bit0 hue
bit1 brightness
bit2 contrast
bit3 saturation
bit4 sharpness
  • 示例

  • input

{
    "colorBit":1,
    "value":90
}
  • output
{
    "ret":0
}

2.10 设置WDR模式

IVY_CTRL_MSG_SET_WDR = 26079

  • 支持设备
FI
  • 输入
mode 0:关闭 1:开启 N FI
  • 输出
ret 返回值 N FI
  • 示例

  • input

{
    "mode":1
}
  • output
{
    "ret":0
}

2.11 隐私遮挡

2.11.1 获取隐私遮挡是否开启

IVY_CTRL_MSG_GET_PRIVACY_ZONE_ENABLE = 24087

  • 支持设备
FI
  • 输出
ret 返回值 N FI
isEnable 0:关闭 1:开启 N FI
  • 示例

  • input


None
  • output
{
    "isEnable":0,
    "ret":0
}

2.11.2 获取隐私遮挡区域

IVY_CTRL_MSG_GET_PRIVACY_ZONE = 24089

  • 支持设备
FI
  • 输出
ret 返回值 N FI
area Json数组 S FI
  • area json结构
x1 起始坐标 x
y1 起始坐标 y
x2 结束坐标 x
y2 结束坐标 y
  • 示例

  • input


None
  • output
{
    "area": {
        "x1": 10,
        "y1": 20,
        "x2": 10,
        "y2": 20
    },
    "ret": 0
}

2.11.3 设置隐私遮挡区域开启或者关闭

IVY_CTRL_MSG_SET_PRIVACY_ZONE_ENABLE = 24091

  • 支持设备
FI
  • 输入
isEnable 0:关闭 1:开启 N FI
  • 输出
ret 返回值 N FI
  • 示例

  • input


{
    "isEnable": 0
}
  • output
{
    "ret": 0
}

2.11.4 设置隐私遮挡区域

IVY_CTRL_MSG_SET_PRIVACY_ZONE = 24093

  • 支持设备
FI
  • 输入
isEnable 0:关闭 1:开启 N FI
area Json数组 S FI
  • area json结构
x1 起始坐标 x
y1 起始坐标 y
x2 结束坐标 x
y2 结束坐标 y
  • 输出
ret 返回值 N FI
  • 示例

  • input


{
    "isEnable": 0,
    "area": {
        "x1": 10,
        "y1": 20,
        "x2": 60,
        "y2": 40
    }
}
  • output
{
    "ret": 0
}

2.12 获取WDR模式

IVY_CTRL_MSG_GET_WDR = 26133

  • 支持设备
FI
  • 输出
ret 返回值 N
mode 0:关闭 1:开启 N
  • 示例

  • input


None
  • output
{
    "ret": 0,
    "mode": 0
}

2.13 获取图像色彩

IVY_CTRL_MSG_GET_IMAGE_COLOR = 26135

  • 支持设备
FI
  • 输出
ret 返回值 N
hue 0-100 N
brightness 0-100 N
contrast 0-100 N
saturation 0-100 N
sharpness 0-100 N
  • 示例

  • input


None
  • output
{
    "ret": 0,
    "hue": 10,
    "brightness": 30,
    "contrast": 40,
    "saturation": 90,
    "sharpness": 99
}

2.14 获取启用视频遮挡

IVY_CTRL_MSG_GET_EANBLE_VIDEO_MASK = 36065

  • 支持设备
FN
  • 输入
channel 通道 N
  • 输出
ret 返回值 N
enable 0:关闭 1:开启 N
pos 位置信息,JSON数组 N
  • pos Json结构
x1 x坐标 N
y1 y坐标 N
x2 x坐标 N
y2 x坐标 N
  • 示例

  • input


{
    "channel": 1
}
  • output
{
    "ret": 0,
    "enable": 10,
    "pos": 
    [{
        "x1":10,
        "y1":10,
        "x2":20,
        "y2":20
    },
    {
        "x1":30,
        "y1":30,
        "x2":60,
        "y2":60
    }]
}

2.15 设置启用视频遮挡

IVY_CTRL_MSG_SET_EANBLE_VIDEO_MASK = 36063

  • 支持设备
FN
  • 输入
enable 0:关闭 1:开启 N
pos 位置信息,JSON数组, 可设置4组 N
channel 通道 N
  • 输出
ret 返回值 N
  • pos Json结构
x1 x坐标 N
y1 y坐标 N
x2 x坐标 N
y2 x坐标 N
  • 示例

  • input


{
    "channel": 1,
    "enable": 10,
    "pos": 
    [{
        "x1":10,
        "y1":10,
        "x2":20,
        "y2":20
    },
    {
        "x1":30,
        "y1":30,
        "x2":60,
        "y2":60
    }]
}
  • output
{
    "ret": 0
}

2.16 设置设备休眠计时器状态(重置/不重置),主要用于IVY低功耗设备

IVY_CTRL_MSG_SET_SLEEP_TIMER = 34073

  • 支持设备
II
  • 输入
state 0:不重置 1:重置,重置表示设备休眠计时器重新计时,不会休眠 N
channel 通道,如果是IPC,可以不带此参数 N
  • 输出
ret 返回值 N
  • 备注

可通过UID判断为低功耗设备,并且设备是IVY设备,满足这两个条件可以判断为支持此命令

  • 示例

  • input


{
    "state": 1
}
  • output
{
    "ret": 0
}

2.17 设置视频源索引(V4 BIT9)

IVY_CTRL_MSG_SET_VIDEO_STREAM_SOURCE = 24116

  • 支持设备
II
  • 输入
src 数字表示的视频来源索引 N
channel 通道,如果是IPC,可以不带此参数 N
  • 输出
ret 返回值 N
  • 备注

如果设置成功,会收到事件 IVY_CTRL_MSG_VIDEO_STREAM_SOURCE_CHG 42061

  • 示例

  • input


{
    "src": 0
}
  • output
{
    "ret": 0
}

2.18 获取当前视频源索引 (V4 BIT9)

IVY_CTRL_MSG_GET_VIDEO_STREAM_SOURCE = 24118

  • 支持设备
II
  • 输入
channel 通道,如果是IPC,可以不带此参数 N
  • 输出
ret 返回值 N
src 数字表示的视频来源索引 N
  • 示例

  • input


{
    "channel": 0
}
  • output
{
    "ret": 0,
    "src": 1
}

2.19 设置带屏摄像机屏幕显示时长

IVY_CTRL_MSG_SET_SCREEN_DISPLAY_TIME = 26195

  • 支持设备
II
  • 输入
channel 通道,如果是IPC,可以不带此参数 N
time 0:永不息屏 ,1:30秒 , 2:1分钟 ,3:5分钟 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "channel": 0,
    "time": 0
}
  • output
{
    "ret": 0,
}

2.20 获取带屏摄像机屏幕显示时长

IVY_CTRL_MSG_GET_SCREEN_DISPLAY_TIME = 26197

  • 支持设备
II
  • 输入
channel 通道,如果是IPC,可以不带此参数 N
  • 输出
ret 返回值 N
time 0:永不息屏 ,1:30秒 , 2:1分钟 ,3:5分钟 N
  • 示例

  • input


{
    "channel": 0
}
  • output
{
    "ret": 0,
    "time": 0
}

3. 网络

3.1 获取WIFI列表

IVY_CTRL_MSG_GET_WIFI_AP_LIST = 30029

Foscam设备直接调用这个接口即可,因为当startNo为0的时候,SDK内部会自动调用一次刷新命令。

  • 输入
startNo 开始索引 N
cnt 数量,每次最多5个 N
  • 输出
ret 返回值 N
totalCnt WIFI总体数量 N
curCnt 当前返回数量 N
apInfo WIFI信息Json数组 S
  • apInfo Json结构
ssid SSID(BASE64编码) S
mac mac地址 S
encryption 是否加密 N
quality 信号质量 (0-100) N
encryType 加密类型 N
  • encryType 类型
0 INVALID
1 NONE
2 WEP
3 WPA TKIP
4 WPA AES
5 WPA2 TKIP
6 WPA2 AES
7 WPA PSK TKIP
8 WPA PSK AES
9 WPA2 PSK TKIP
10 WPA2 PSK AES
  • 示例

  • input


None
  • output

{
    "totalCnt":46,
    "curCnt":5,
    "APInfo":[{
        "ssid":"eGlhb21peXk=",
        "mac":"50:64:2B:E2:E7:95",
        "mode":1,
        "encryption":1,
        "quality":117,
        "encryptType":4
        },{
        "ssid":"UGV0TG9vXzE=",
        "mac":"A0:04:60:DC:04:1A",
        "mode":1,
        "encryption":1,
        "quality":107,
        "encryptType":3
        },{
        "ssid":"TUVSQ1VSWV9ERTNGQltdJiBUZXN0",
        "mac":"20:DC:E6:DE:3F:B8",
        "mode":1,
        "encryption":1,
        "quality":97,
        "encryptType":4
        },{
        "ssid":"TkVUR0VBUjUxLTVH",
        "mac":"A0:04:60:DC:04:19",
        "mode":1,
        "encryption":1
        ,"quality":95,
        "encryptType":3
        },{
        "ssid":"VFAtTElOS184ODg=",
        "mac":"BC:46:99:A2:43:CA",
        "mode":1,
        "encryption":1,
        "quality":93,
        "encryptType":4}],
        "ret":0}

3.2 设置WIFI参数

IVY_CTRL_MSG_SET_WIFI_PARAM = 30023

  • 支持设备
FI II
  • 输入
channel 通道号 N
ssid SSID(BASE64编码) S
password 密码(BASE64编码) S
mode 模式 0:INFRA 1:ADHOC N
encType 加密类型 N
authMode 认证模式 0:Open 1:Shared 2:Wep auto N
  • 输出
ret 返回值 N
  • encType加密类型
0 INVALID
1 NONE
2 WEP
3 WPA TKIP
4 WPA AES
5 WPA2 TKIP
6 WPA2 AES
7 WPA PSK TKIP
8 WPA PSK AES
9 WPA2 PSK TKIP
10 WPA2 PSK AES
  • 备注

对于FI设备mode没有任何作用,可以忽略

  • 示例

  • input


{
    "ssid":"VFAtTElOS184ODg=",
    "password":"YWJjMTIzNDU2YWJj",
    "mode":1,
    "encType":4
}
  • output

{
    "ret":0
}

3.3 测试WIFI

IVY_CTRL_MSG_TEST_WIFI = 30031

  • 支持设备
II FI
  • 输入
ssid ssid(BASE64编码) S FI / II
password 密码(BASE64编码) S FI / II
mode 模式 N II
encType 加密类型 N II / FI
authMode 认证模式 N II
  • 输出
ret 返回值 N
errno 错误码 N
  • errno 错误码
0 成功
1 密码错误
2 失败
  • 示例

  • input


{
    "channel":0,
    "ssid":"bXlzc2lk",
    "password":"YWJjMTIzNDU2YWJj",
    "mode":1, 
    "encType":0, 
    "authMode":1
}
  • output

{
    "ret":0,
}

3.4. 设置网络自适应

IVY_CTRL_MSG_SET_NETWORK_ADAPTATION = 30041

FI II
  • 输入
channel 通道号 N
enable 0:关闭 1:开启 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "enable":0
}
  • output

{
    "ret":0
}

3.5 获取网络自适应

IVY_CTRL_MSG_GET_NETWORK_ADAPTATION = 30043

  • 输入
channel 通道号 N
  • 输出
ret 返回值 N
enable 0:关闭 1:开启 N
  • 示例

  • input


none
  • output

{
    "ret":0,
    "enable":1
}

3.6 获取网络参数

IVY_CTRL_MSG_GET_NET_PARAM = 30021

  • 支持设备
II / FN / FI
  • 输入

忽略此参数,不用传,目前没有获取通道上设备的功能。

channel 通道号 N
  • 输出
ret 返回值 N II / FN / FI
dhcp 0:不自动获取IP 1:自动获取IP N II / FN / FI
ip S II / FN / FI
mask S II / FN / FI
gate S II / FN / FI
dns1 S II / FN / FI
dns2 S II / FN / FI
netType 0:有线 1:无线 N II
httpPort HTTP端口 N FN
httpsPort HTTPS端口 N FN
upnp 是否使用UPNP N FN
  • 示例

  • input


none
  • output

{
    "dhcp": 1,
    "dns1": "192.168.1.1",
    "dns2": "8.8.8.8",
    "gate": "192.168.1.1",
    "ip": "192.168.1.41",
    "mask": "255.255.255.0",
    "netType": 0,
    "ret": 0
}

3.7 设置网络参数

IVY_CTRL_MSG_SET_NET_PARAM = 30019

  • 支持设备
II / FN / FI
  • 输入
dhcp 0:不自动获取IP 1:自动获取IP N II / FI / FN
ip S II / FI / FN
mask S II / FI / FN
gate S II / FI / FN
dns1 S II / FI / FN
dns2 S II / FI / FN
httpPort HTTP端口 N FN
httpsPort HTTPS端口 N FN
upnp 是否使用UPNP N FN
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "dhcp": 1,
    "dns1": "192.168.1.1",
    "dns2": "8.8.8.8",
    "gate": "192.168.1.1",
    "ip": "192.168.1.41",
    "mask": "255.255.255.0",
    "netType": 0,
    "ret": 0
}
  • output

{
    "ret": 0
}

3.8 获取DDNS

IVY_CTRL_MSG_GET_DDNS_CONFIG = 30035

  • 支持设备
FI / FN
  • 输出
ret 返回值 N FI / FN
isEnable 0:关闭 1:开启 N FI / FN
ddnsServer N FI / FN
port N FI
hostName S FI / FN
user S FI / FN
password S FI / FN
factoryDDNS S FI / FN
  • 示例

  • input


None
  • output

{
    "ret": 0,
    "isEnable": 1,
    "ddnsServer": "192.168.1.1",
    "port": "8.8.8.8",
    "hostName": "192.168.1.1",
    "password": "192.168.1.41",
    "factoryDDNS": "255.255.255.0"
}

3.9 设置DDNS

IVY_CTRL_MSG_SET_DDNS_CONFIG = 30033

  • 支持设备
FI
  • 输入
isEnable 0:关闭 1:开启 N FI
ddnsServer N FI
port N FI
hostName (base64编码) S FI
user (base64编码) S FI
password (base64编码) S FI
factoryDDNS (base64编码) S FI
  • 输出
ret 返回值 N FI
  • 示例

  • input


{
    "isEnable": 1,
    "ddnsServer": "192.168.1.1",
    "port": "8.8.8.8",
    "hostName": "192.168.1.1",
    "password": "192.168.1.41",
    "factoryDDNS": "255.255.255.0"
}
  • output

{
    "ret": 0
}

3.10 获取WIFI参数

IVY_CTRL_MSG_GET_WIFI_PARAM = 30025

  • 支持设备
FI II
  • 输出
ret 返回值 N
ssid SSID(BASE64编码) S
mode 模式 0:INFRA 1:ADHOC N
encType 加密类型 N
authMode 认证模式 0:Open 1:Shared 2:Wep auto N
password 密码(BASE64编码) S
  • encType加密类型
0 INVALID
1 NONE
2 WEP
3 WPA TKIP
4 WPA AES
5 WPA2 TKIP
6 WPA2 AES
7 WPA PSK TKIP
8 WPA PSK AES
9 WPA2 PSK TKIP
10 WPA2 PSK AES
  • 备注

对于FI设备,mode没有任何意义,可以忽略

  • 示例

  • input


None
  • output

{
    "ret": 0,
    "ssid": "TVlTU0lE",
    "mode": 0,
    "encType": 2,
    "authMode": 0,
    "password": "U1NJRFBBU1NXT1JE"
}

3.11 获取网络连接模式

IVY_CTRL_MSG_GET_NET_MODE = 30060

  • 支持设备
FI
  • 输出
ret 返回值 N
netMode 0:wired 1:wireless N
  • 示例

  • input


None
  • output

{
    "ret": 0,
    "netMode": "0"
}

3.12 设置热点

IVY_CTRL_MSG_SET_WIFI_AP_INFO = 30068

  • 支持设备
II
  • 输入
channel 通道号 N
ssid 热点名称 S
psk 热点密码 S
authMode 认证模式 0:OPEN 1:WPAPSK 2:WPA2PSK N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "channel": 0,
    "ssid": "MY_SSID",
    "psk": "MY_PASSWORD",
    "authMode": 2
}
  • output

{
    "ret": 0
}

3.13 获取热点信息

IVY_CTRL_MSG_GET_WIFI_AP_INFO = 30070

  • 支持设备
II
  • 输入
channel 通道号 N
  • 输出
ret 返回值 N
ssid 热点名称 S
psk 热点密码 S
authMode 认证模式 0:OPEN 1:WPAPSK 2:WPA2PSK N
  • 示例

  • input


{
    "channel": 0
}
  • output

{
    "ret": 0"ssid": "MY_SSID",
    "psk": "MY_PASSWORD",
    "authMode": 2
}

4 系统

4.1 升级/补丁/导入配置

4.1.1 在线升级

IVY_CTRL_MSG_SET_ONLINE_UPGRADE = 26035

  • 支持设备
FI / FN / II / IN
  • 输入
bitCh 通道号 N IN FN
url 升级URL地址 S FI FN II IN
type 升级类型 1:立即升级 N II IN
  • 输出
ret 返回值 N
  • type定义
1 立即升级
3 第三方升级
  • 备注

Foscam IPC升级,可以忽略bitCh
IVY IPC升级,可以忽略bitCh
IVY NVR,按位表示要升级的通道,bit0-bit31,如果要升级NVR,channel要填0.

  • 示例

  • input


// Foscam IPC / Foscam IPC
{
    "url":"aHR0cDovL3Rlc3QuZG93bi5jb20vdXBncmFkZS5iaW4="
}

// device On Foscam NVR
{
    "channel":1,
    "url":"aHR0cDovL3Rlc3QuZG93bi5jb20vdXBncmFkZS5iaW4="
}

// IVY IPC
{
    "url":"aHR0cDovL3Rlc3QuZG93bi5jb20vdXBncmFkZS5iaW4=""type":1
}

// IVY NVR
{
    "channel":0,
    "url":"aHR0cDovL3Rlc3QuZG93bi5jb20vdXBncmFkZS5iaW4=""type":1
}

// device On IVY NVR
{
    "channel":1,
    "url":"aHR0cDovL3Rlc3QuZG93bi5jb20vdXBncmFkZS5iaW4=",
    "type":1
}

  • output

{
    "ret":0
}

4.1.2 导入配置文件

IVY_CTRL_MSG_IMPORT_CONFIG_FILE = 26103

  • 支持设备
FI / FN
  • 输入
url 文件路径 (BASE64编码) S FI FN
  • 输出
ret 返回值 N FI FN
  • 备注

ret结果只是表示设备收到了配置文件,但是是否真正导入了这个文件,要通过事件IVY_CTRL_MSG_IMPORT_CFG_RESULT_CHG来查看

  • 示例

  • input


{
    "url":"YzpcXGNvbmZpZy5iaW4="
}

  • output

{
    "ret":0
}

4.1.3 获取配置文件名称

IVY_CTRL_MSG_GET_CONFIG_FILE_NAME = 26105

  • 支持设备
FI
  • 输出
ret 返回值 N FI
fileName 文件名称(base64编码) S FI
  • 示例

  • input


None
  • output

{
    "fileName":"Y29uZmlnLmJpbg==",
    "ret":0
}

4.1.4 通过本地文件升级/打补丁

IVY_CTRL_MSG_UPGRADE_BY_FILE = 26107

  • 支持设备
FI FN
  • 输入
fileName 文件名称(base64编码) S FI FN
type 升级类型 0 或者不填 :升级 1:补丁 I FN
  • 输出
ret 返回值 N FI FN
  • 备注

type只针对FosNvr

  • 示例

  • input


{
    "fileName":"YzpcXHBhdGNoLmJpbg=="
}
  • output

{
    "ret":0
}

4.1.5 移除补丁

IVY_CTRL_MSG_REMOVE_PATCH = 26109

  • 支持设备
FI FN
  • 输出
ret 返回值 N FI/FN
  • 示例

  • input


None
  • output

{
    "ret":0
}

4.1.6 通过文件升级NVR通道上的IPC

IVY_CTRL_MSG_UPGRADE_IPC_BY_FILE = 26129

  • 支持设备
FN
  • 输入
fileName 文件完整路径(需要BASE64编码) S
channels 通道号按位表示 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "fileName":"YzpcXG15ZmlsZS5iaW4=",
    "channels":1
}
  • output

{
    "ret":0
}

4.1.7 通过URL升级NVR通道上的IPC

IVY_CTRL_MSG_UPGRADE_IPC_ONLINE = 26131

  • 支持设备
FN
  • 输入
url 升级URL(需要BASE64编码) S
channels 通道号按位表示 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "fileName":"aHR0cDovL3d3dy5teS5jb20vdXBncmFkZS5iaW4=",
    "channels":1
}
  • output

{
    "ret":0
}

4.2 获取电源频率

IVY_CTRL_MSG_GET_ENVIRONMENT = 24041

  • 支持设备
FI FN
  • 输入
channel 通道号 N FN
  • 输出
ret 返回值 N
mode 模式 0:50Hz 1: 60Hz 2: 户外 3: 夜晚 N
  • 示例

  • input


// Foscam IPC
None


// Foscam NVR
{
    "channel":0
}
  • output

{
    "ret":0,
    "mode":2
}

4.3 设置电源频率

IVY_CTRL_MSG_SET_ENVIRONMENT = 24039

  • 支持设备
FI FN
  • 输入
channel 通道号 N
mode 模式 0:50Hz 1: 60Hz 2: 户外 3: 夜晚 N
  • 输出
ret 返回值 N
  • 示例

  • input


// Foscam IPC
None


// Foscam NVR
{
    "channel":0,
    "mode":2
}

// Foscam IPC
{
    "mode":2
}
  • output

{
    "ret":0
}

4.4 恢复出厂设置

IVY_CTRL_MSG_FACTORY_RESET = 26027

  • 支持设备
FI FN II IN
  • 输出
ret 返回值 N
  • 示例

  • input


None

  • output

{
    "ret":0
}

4.5 修改用户信息

IVY_CTRL_MSG_CHANGE_USER_INFO = 22023

  • 支持设备
FI FN II IN
  • 输入
usr 用户名 S
pwd 密码 S
newUsr 新用户名 S
newPwd 新密码 S
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "usr":"admin",
    "pwd":"",
    "newUsr":"1",
    "newPwd":"foscam1"
}

  • output

{
    "ret":0
}

4.6 设置语音提示

IVY_CTRL_MSG_SET_VOICE_STATE = 26065

  • 支持设备
FI FB II
  • 输入
channel 通道号 N FI / FB / II
isEnable 0:关闭 1:开启 N FI / FB / II
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "channel": 0,
    "isEnable":1
}

  • output

{
    "ret":0
}

4.7 获取语音提示

IVY_CTRL_MSG_GET_VOICE_STATE = 26067

  • 支持设备
FI FB II
  • 输入
channel 通道号 N FI / FB / II
  • 输出
ret 返回值 N
isEnable 0:关闭 1:开启 N
  • 示例

  • input


{
    "channel": 0
}

  • output

{
    "ret":0,
    "isEnable":1
}

4.8 设置LED灯状态

IVY_CTRL_MSG_SET_LED_STATE = 26061

  • 支持设备
FI FN FB
  • 输入
channel 通道号 N FB
isEnable 0:关闭 1:开启 N FB
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "channel": 0"isEnable": 0
}

  • output

{
    "ret":0
}

4.9 获取LED灯状态

IVY_CTRL_MSG_GET_LED_STATE = 26063

  • 支持设备
FI FN FB
  • 输入
channel 通道号 N FB
  • 输出
ret 返回值 N
isEnable 0:关闭 1:开启 N
  • 示例

  • input


{
    "channel": 0
}

  • output

{
    "ret":0,
    "isEnable": 0
}

4.10 设置维护模式

IVY_CTRL_MSG_SET_MAINTAIN_CONFIG = 26049

  • 支持设备
FN FB
  • 输入
date 日期 N FB / FN
hour 0 - 24 N FB / FN
minute 0 - 60 N FB / FN
second 0 - 60 N FB / FN
  • 输出
ret 返回值 N
  • date
0 从不
1 每天
2 星期日
3 星期一
4 星期二
5 星期三
6 星期四
7 星期五
8 星期六
  • 示例

  • input


{
    "date": 1,
    "hour": 23,
    "minute": 23,
    "second": 10
}

  • output

{
    "ret":0
}

4.11 获取维护模式

IVY_CTRL_MSG_GET_MAINTAIN_CONFIG = 26051

  • 支持设备
FN FB
  • 输出
ret 返回值 N
date 同设置 N
hour 0 - 24 N
minute 0 - 60 N
second 0 - 60 N
  • 示例

  • input


None
  • output

{
    "ret":0,
    "date": 1,
    "hour": 23,
    "minute": 23,
    "second": 10
}

4.12 设置静默升级

IVY_CTRL_MSG_SET_SILENT_UPGRADE_CONFIG = 26053

  • 支持设备
FB
  • 输入
date 同维护模式 N FB
hour 0 - 24 N FB
minute 0 - 60 N FB
second 0 - 60 N FB
enable 0:关闭 1:开启 N FB
userId S FB
portal S FB
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "date": 1,
    "hour": 23,
    "minute": 23,
    "second": 10,
    "enable": 1,
    "userId": "1LKFLDKS",
    "portal": "www.test.com"
}
  • output

{
    "ret":0
}

4.13 获取静默升级

IVY_CTRL_MSG_GET_SILENT_UPGRADE_CONFIG = 26055

  • 输出
ret 返回值 N
date 同维护模式 N FB
hour 0 - 24 N FB
minute 0 - 60 N FB
second 0 - 60 N FB
enable 0:关闭 1:开启 N FB
userId S FB
portal S FB
  • 示例

  • input


None
  • output

{
    "ret":0,
    "date": 1,
    "hour": 23,
    "minute": 23,
    "second": 10,
    "enable": 1,
    "userId": "1LKFLDKS",
    "portal": "www.test.com"
}

4.14 时间设置

4.14.1 设置系统时间 (废弃)

IVY_CTRL_MSG_SET_SYSTEM_TIME = 26019

  • 输入

  • IVY NVR 输入参数

aheadOfTime 夏令时提前时间 (0/30/60/90/120 min) N II IN
isDst 夏令时 0:不支持 1:支持 N II IN
ntpServer NTP地址 S II IN
year N II IN
month N II IN
day N II IN
hour N II IN
min N II IN
sec N II IN
timeZone 时区 N II IN
timeSource 0:NTP 1:手动同步 N II IN
dateFormat 0:YYYY-MM-DD 1:DD/MM/YYYY N II IN
timeFormat 0:24小时 1:12小时 N II IN
syncIPCTime 0:不同步时间到IPC 1:同步时间到IPC N IN
  • 输出
ret 返回值 N
  • 备注

如果是Foscam IPC时间需要根据当前时区转换成UTC时间,比如:+08:00,想要设置IPC时间为2019/1/18 9:00:00,正确的UTC时间是2019/1/18 1:00:00;
如果isDst为1并且是Foscam IPC, aheadOfTime才起作用

  • Foscam IPC / NVR 输入参数
syncIPCTime 同步IPC时间 0:同步 1:不同步 N FN
isDst 夏令时 0:不支持 1:支持 N FI FN
ntpServer NTP地址 S FI FN
year N FI FN
month N FI FN
day N FI FN
hour N FI FN
min N FI FN
sec N FI FN
timeZone 时区 N FI FN
timeSource 0:NTP 1:手动同步 N FI FN
dateFormat 0:YYYY-MM-DD 1:DD/MM/YYYY N FI FN
timeFormat 0:24小时 1:12小时 N FI FN
aheadOfTime 夏令时提前时间 (0/30/60/90/120 min) N
dst_month 提前月 J FN
dst_week 提前周 J FN
dst_day 提前天 J FN
dst_hour 提前小时 J FN
  • dst_month / dst_week / dst_day / dst_hour Json格式
s 开始 N
e 结束 N
  • 示例

  • input


{
    "isDst": 0, 
    "aheadOfTime": 0, 
    "year": 2021, 
    "month": 5, 
    "day": 18, 
    "hour": 1, 
    "min": 27, 
    "sec": 1, 
    "timeZone": 0, 
    "timeSource": 0, 
    "dateFormat": 0, 
    "timeFormat": 1, 
    "ntpServer": ""
}
  • output

{
    "ret":0
}

4.14.2 获取系统时间 (废弃)

IVY_CTRL_MSG_GET_SYSTEM_TIME = 26021

  • 输入
channel 通道号 N
  • 输出
ret 返回值 N
isDst 夏令时 0:不支持 1:支持 N
aheadOfTime 夏令时提前时间 (0/30/60/90/120 min) N
ntpServer NTP地址 S
year N
month N
day N
hour N
min N
sec N
timeZone 时区 N
timeSource 0:NTP 1:手动同步 N
dateFormat 0:YYYY-MM-DD 1:DD/MM/YYYY N
timeFormat 0:24小时 1:12小时 N
  • Foscam IPC / NVR 输出参数
syncIPCTime 同步IPC时间 1:同步 0:不同步 N FN
isDst 夏令时 0:不支持 1:支持 N FI FN
ntpServer NTP地址 S FI FN
year N FI FN
month N FI FN
day N FI FN
hour N FI FN
min N FI FN
sec N FI FN
timeZone 时区 N FI FN
timeSource 0:NTP 1:手动同步 N FI FN
date 0:YYYY-MM-DD 1:DD/MM/YYYY 2:MM/DD/YYYY N FI FN
timeFormat 0:24小时 1:12小时 N FI FN
aheadOfTime 夏令时提前时间 (0/30/60/90/120 min) N FI FN
dst_month 提前月 J FN
dst_week 提前周 J FN
dst_day 提前天 J FN
dst_hour 提前小时 J FN
  • dst_month / dst_week / dst_day / dst_hour Json格式
s 开始 N
e 结束 N
  • 示例

  • input


None
  • output

{
    "ret":0,
    "isDst": 0, 
    "aheadOfTime": 0, 
    "year": 2021, 
    "month": 5, 
    "day": 18, 
    "hour": 1, 
    "min": 27, 
    "sec": 1, 
    "timeZone": 0, 
    "timeSource": 0, 
    "dateFormat": 0, 
    "timeFormat": 1, 
    "ntpServer": ""    
}

4.14.3 设置夏令时 (废弃)

IVY_CTRL_MSG_SET_DST = 26125

  • 支持设备
FI
  • 输入
month 开始结束月份(1-12) Json FI
week 开始结束周(1-5) Json FI
day 开始结束日 (1-7) Json FI
hour 开始结束时 (0-23) Json FI
  • 输出
ret 返回值 N FI
  • Json结构
s 开始 N
e 结束 N
  • 备注
    {
      "month":{"s":1, "e":2}, // 从1月到2月
      "week":{"s":1, "e":2},  // 从第一周到第二周
      "day":{"s":1, "e":2},   // 从星期1到星期二
      "hour":{"s":1, "e":23}, // 从1点到23点
    }
  • 示例

  • input


{
    "day": {
        "e": 7,
        "s": 7
    },
    "hasAheadOfTime": 0,
    "hour": {
        "e": 2,
        "s": 2
    },
    "month": {
        "e": 10,
        "s": 4
    },
    "ret": 0,
    "week": {
        "e": 5,
        "s": 1
    }
}
  • output

{
    "ret":0
}

4.14.4 获取夏令时 (废弃)

IVY_CTRL_MSG_GET_DST = 26127

  • 支持设备
FI
  • 输出
ret 返回值 N FI
month 开始结束月份(1-12) Json FI
week 开始结束周(1-5) Json FI
day 开始结束日 (1-7) Json FI
hour 开始结束时 (0-23) Json FI
hasAheadOfTime 0:不提前 1:提前 N FI
  • 备注

每一项值的含义同设置,提前时间指的是 IVY_CTRL_MSG_SET_SYSTEM_TIME 命令中
的aheadOfTime

  • 示例

  • input


None
  • output

{
    "ret":0,
    "day": {
        "e": 7,
        "s": 7
    },
    "hasAheadOfTime": 0,
    "hour": {
        "e": 2,
        "s": 2
    },
    "month": {
        "e": 10,
        "s": 4
    },
    "ret": 0,
    "week": {
        "e": 5,
        "s": 1
    }
}

4.14.5 设置系统时间 (推荐使用)

IVY_CTRL_MSG_SET_SYSTEM_TIME = 26019

设置系统时间同时可以设置夏令时
  • 输入
字段名 含义 字段类型 FI FN FB IN
standardization 1:表示使用SDK定义的参数值,SDK内部针对不同类型设备进行转化 0:不转化(如果没有standardization字段或者此字段值为0,输入参数应按照4.14.1填写) N
aheadOfTime 夏令时提前时间 (0/30/60/90/120 min) N ×
isDst 夏令时 0:不支持 1:支持 N ×
ntpServer NTP地址 S
year N
month N
day N
hour N
min N
sec N
timeZone 时区 N
timeSource 0:NTP 1:手动同步 N
dateFormat 0:YYYY-MM-DD 1:DD/MM/YYYY N
timeFormat 0:24小时 1:12小时 N
syncIPCTime 0:不同步时间到IPC 1:同步时间到IPC N × ×
dst_month 提前月 J ×
dst_week 提前周 J ×
dst_day 提前天 J ×
dst_hour 提前小时 J ×
  • dst_month / dst_week / dst_day / dst_hour Json格式
s 开始 N
e 结束 N
  • 输出
ret 返回值 N
  • 备注

如果是Foscam IPC时间需要根据当前时区转换成UTC时间,比如:+08:00,想要设置IPC时间为2019/1/18 9:00:00,正确的UTC时间是2019/1/18 1:00:00;
如果isDst为1并且是Foscam IPC, aheadOfTime才起作用

  • 示例

  • input


{
    "isDst": 0, 
    "aheadOfTime": 0, 
    "year": 2021, 
    "month": 5, 
    "day": 18, 
    "hour": 1, 
    "min": 27, 
    "sec": 1, 
    "timeZone": 0, 
    "timeSource": 0, 
    "dateFormat": 0, 
    "timeFormat": 1, 
    "ntpServer": ""
}
  • output

{
    "ret":0
}

4.14.6 获取系统时间 (推荐使用)

IVY_CTRL_MSG_GET_SYSTEM_TIME = 26021

  • 输入
字段名 含义 字段类型 FI FN FB IN
standardization 1:表示使用SDK定义的参数值,SDK内部针对不同类型设备进行转化 0:不转化(如果没有standardization字段或者此字段值为0,输出参数参照 4.14.2) N
  • 输出
字段名 含义 字段类型 FI FN FB IN
ret 返回值 N
aheadOfTime 夏令时提前时间 (0/30/60/90/120 min) N ×
isDst 夏令时 0:不支持 1:支持 N ×
ntpServer NTP地址 S
year N
month N
day N
hour N
min N
sec N
timeZone 时区 N
timeSource 0:NTP 1:手动同步 N
dateFormat 0:YYYY-MM-DD 1:DD/MM/YYYY N
timeFormat 0:24小时 1:12小时 N
syncIPCTime 0:不同步时间到IPC 1:同步时间到IPC N × ×
dst_month 提前月 J ×
dst_week 提前周 J ×
dst_day 提前天 J ×
dst_hour 提前小时 J ×
dstCanWork 夏令时是否生效 0:不生效 1:生效 (如果不开启夏令时,不生效,如果开启夏令时,夏令时参数合法生效,夏令时参数不合法,不生效) N × × ×
  • 示例

  • input


None
  • output

{
    "ret":0,
    "isDst": 0, 
    "aheadOfTime": 0, 
    "year": 2021, 
    "month": 5, 
    "day": 18, 
    "hour": 1, 
    "min": 27, 
    "sec": 1, 
    "timeZone": 0, 
    "timeSource": 0, 
    "dateFormat": 0, 
    "timeFormat": 1, 
    "ntpServer": ""    
    "dstCanWork":0
}

4.16 重启系统

  • 支持设备
FI FN FB II IN

IVY_CTRL_MSG_REBOOT_SYSTEM = 26023

  • 输入
channel 通道号 N
  • 输出
ret 返回值 N
  • 示例

  • input

{
    "channel":0
}
  • output

{
    "ret":0
}

4.17 设置设备音量

IVY_CTRL_MSG_SET_AUDIO_VOLUME = 24047

  • 支持设备
FB
  • 输入
channel 通道号 N
volume 0 - 100 N
  • 输出
ret 返回值 N
  • 示例

  • input

{
    "channel":0,
    "volume":98
}

  • output

{
    "ret":0
}

4.18 获取设备音量

IVY_CTRL_MSG_GET_AUDIO_VOLUME = 24049

  • 支持设备
FB
  • 输入
channel 通道号 N
  • 输出
ret 返回值 N
volume 0 - 100 N
  • 示例

  • input

{
    "channel":0
}

  • output

{
    "ret":0,
    "volume":99
}

4.19 开关蜂鸣器

IVY_CTRL_MSG_SWITCH_BUZZER = 26057

  • 支持设备
FB
  • 输入
switch 0:关 1:开 N FB
  • 输出
ret 返回值 N
  • 示例

  • input

{
    "switch":0
}

  • output

{
    "ret":0
}

4.20 获取电池电量

IVY_CTRL_MSG_SWITCH_BUZZER = 26059

  • 支持设备
FB
  • 输入
channel 通道号 N
  • 输出
ret 返回值 N
level 0:低电量 1:需要充电 2:一半电量 3:正常 4:满电 N FB
status 0:断电 1:充电中 2:充电已满 3:只接电源,没电池 N FB
temperature 0:低温警告 1:低温 2:正常温度 3:高温 4:高温警告 N FB
wifiLevel 0 - 4 N FB
  • 示例

  • input

{
    "channel":0
}

  • output

{
    "ret":0,
    "level":4,
    "status":2,
    "temperature":2,
    "wifiLevel":4
}

4.21 获取夜灯

  • 支持设备
FI II

IVY_CTRL_MSG_GET_NIGHT_LIGHT = 24071

  • 输出
ret 返回值 N
onoff 0:关 1:开 N
  • 示例

  • input


None
  • output

{
    "ret":0,
    "onoff":1
}

4.22 设置夜灯

IVY_CTRL_MSG_SET_NIGHT_LIGHT = 24069

  • 支持设备
FI II
onoff 0:关 1:开 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "onoff":1
}
  • output

{
    "ret":0
}

4.23 设置音频状态

IVY_CTRL_MSG_SET_AUDIO_ENABLE_STATE = 26073

  • 支持设备
FB
  • 输入
channel 通道号 N FB
isEnable 0:关 1:开 N FB
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "channel":1,
    "isEnable":1
}
  • output

{
    "ret":0
}

4.24 获取音频状态

IVY_CTRL_MSG_GET_AUDIO_ENABLE_STATE = 26075

  • 支持设备
FB
  • 输入
channel 通道号 N FB
  • 输出
ret 返回值 N
isEnable 0:关 1:开 N FB
  • 示例

  • input


{
    "channel":1
}
  • output

{
    "ret":0,
    "isEnable":1
}

4.25 获取session列表

IVY_CTRL_MSG_GET_SESSION_LIST = 26081

  • 支持设备
FI
  • 输出
ret 返回值 N FI
ip 登陆到IPC上的IP, Json字符串表示 S FI
  • 示例

  • input


None
  • output

{
    "ret":0,
    "ip":["192.168.1.10", "192.168.1.20"]
}

4.26 获取log信息

IVY_CTRL_MSG_GET_LOG = 26083

  • 支持设备
FI / FN
start 请求起始索引 N FI
count 请求个数 N FI
page 请求第几个page, 每10条记录为1个page N FN
logType 日志类型 0:Alarm Log;1-System Log;2-Operate Log;-1:All Log N FN
channel 通道,按位表示bit0-n N FN
startTime 开始时间, UTC时间 N FN
endTime 结束时间,UTC时间 N FN
  • 输出
ret 返回值 N FI / FN
totalCount 总数量 N FI / FN
log log信息,使用Json字符串数组表示 (log需URL解码) S FI / FN
  • 备注

如果是FoscamIPC, 只需要用 start / count
如果是FoscamNVR,需要参数 page / logType / channel / startTime / endTime,并且log的格式为 chn+starttime+endtime+user+ip+type+ida+ido

FoscamNVR type值定义:

1 IO报警
2 移动侦测
4 视频丢失
8 硬盘出错
16 硬盘丢失
32 硬盘饱和
64 格式化操作
128 用户登陆
256 参数设置
512 进程重启
1024 系统重启
2048 备份
4096 录像操作
  • 示例

  • input


// 1622131200 , 2021-05-28 00:00:00 beijing
// 1622217599 , 2021-05-28 23:59:59 beijing
{
    "page":0,
    "logType":0,
    "channel":1,
    "startTime":1622131200,
    "endTime":1622217599
}
  • output

{
    "ret":0,
    "totalCount":100,
    "log":["log1_context", "log2_context", "log3_context"]
}

4.27 获取用户列表

IVY_CTRL_MSG_GET_USER_LIST = 26085

  • 支持设备
FI
  • 输出
ret 返回值 N FI
user 账户信息,使用Json字符串数组表示 (需BASE64解码) S FI
  • 备注

user数据格式为“+”分割的字符串,前边是用户名,后边是权限,0-2,
0:Visitor 1:Operator 2:Administrator

  • 示例

  • input


None
  • output

{
    "ret":0,
    "user":["user1", "user12", "user13"]
}

4.27 端口信息

4.27.1 获取端口信息

IVY_CTRL_MSG_GET_PORT_INFO = 26087

  • 支持设备
FI FN
  • 输出
ret 返回值 N FI FN
webPort web 端口 N FI FN
httpsPort https端口 N FI FN
mediaPort 媒体端口 N FI
onvifPort onvif端口 N FI
rtspPort rtsp端口 N FI
  • 示例

  • input


None
  • output

{
    "ret":0,
    "webPort":88,
    "httpsPort":443,
    "mediaPort":88,
    "onvifPort":90,
    "rtspPort": 100
}

4.27.2 设置端口信息

IVY_CTRL_MSG_SET_PORT_INFO = 26089

  • 支持设备
FI
  • 输入
webPort web 端口 N FI
httpsPort https端口 N FI
mediaPort 媒体端口 N FI
onvifPort onvif端口 N FI
rtspPort rtsp端口 N FI
  • 输出
ret 返回值 N FI
  • 示例

  • input


{
    "webPort":88,
    "httpsPort":443,
    "mediaPort":88,
    "onvifPort":90,
    "rtspPort": 100
}
  • output

{
    "ret":0
}

4.27.3 设置P2P端口

IVY_CTRL_MSG_SET_P2P_PORT = 26091

  • 支持设备
FI
  • 输入
port 端口 N FI
  • 输出
ret 返回值 N FI
  • 示例

  • input


{
    "port": 100
}
  • output

{
    "ret":0
}

4.27.4 获取P2P端口

IVY_CTRL_MSG_GET_P2P_PORT = 26093

  • 支持设备
FI
  • 输出
ret 返回值 N FI
port 端口 N FI
  • 示例

  • input


None
  • output

{
    "ret":0,
    "port":100
}

4.28 onvif

4.28.1 获取onvif状态

  • 支持设备
FI

IVY_CTRL_MSG_GET_ONVIF_AGENT_STATE = 26095

  • 输出
ret 返回值 N FI
isEnable 0:开启 1:关闭 N FI
  • 支持机型 model
(3000 - 4000)
(6000 - 7000)
  • 示例

  • input


None
  • output

{
    "ret":0,
    "isEnable":1
}

4.28.2 获取onvif是否需要认证

IVY_CTRL_MSG_GET_ONVIF_AUTH_REQUIRED = 26097

  • 支持设备
FI
  • 输出
ret 返回值 N FI
require 0:不要认证 1:必须认证 N FI
  • 支持机型 model
(0 - 3000)
(5000 - 6000)
(7000 - 8000)
(8000 - 9000)
  • 示例

  • input


None
  • output

{
    "ret":0,
    "require":1
}

4.28.3 设置ONVIF开启或者关闭

IVY_CTRL_MSG_SET_ONVIF_ENABLE = 26099

  • 支持设备
FI
  • 输入
isEnable 0: 关闭 1: 开启 N FI
  • 输出
ret 返回值 N FI
  • 支持机型 model
(3000 - 4000)
(6000 - 7000)
  • 示例

  • input


{
    "isEnable":0
}
  • output

{
    "ret":0
}

4.28.4 设置ONVIF认证开启或者关闭

IVY_CTRL_MSG_SET_ONVIF_AUTH_ENABLE = 26101

  • 支持设备
FI
  • 输入
isEnable 0: 关闭 1: 开启 N FI
  • 输出
ret 返回值 N FI
  • 支持机型 model
(0 - 3000)
(5000 - 6000)
(7000 - 8000)
(8000 - 9000)
  • 示例

  • input


{
    "isEnable":0
}
  • output

{
    "ret":0
}

4.29 视频参数相关

4.29.1 获取设备支持的视频参数

对于Foscam设备,之前的输入输出没变,因此standardization对于Foscam设备来说无关紧要

IVY_CTRL_MSG_GET_VIDEO_STREAM_PARAM = 24075

  • 支持设备
FI / FN / IN
  • 输入
字段名 含义 字段类型 FI FN IN
channel 通道 N ×
stream 0: 主码流 1: 子码流 N × ×
standardization 1 必须为1 N × ×
  • 输出
字段名 含义 字段类型 FI FN IN
ret 返回值 N
param json数组 J × ×
curParam json数组 J ×
resolutions json数组 J ×
  • param json结构
resolution 分辨率
bitRate 码率
frameRate 帧率
gop
isVBR
lbrRatio
  • curParam json结构
字段名 含义 字段类型 FN IN
w 分辨率宽 N
h 分辨率高 N
frameRate 帧率 N
bitRate 码率 N
gop N
isVBR N
streamType N × ×
resolution N × ×
  • resolutions json结构
w 分辨率宽
h 分辨率高
  • 示例

  • input


{
    "stream":1
}
  • output

{
    "param": [{
            "bitRate": 524288,
            "frameRate": 11,
            "gop": 30,
            "isVBR": 0,
            "lbrRatio": 0,
            "resolution": 0
        },
        {
            "bitRate": 262144,
            "frameRate": 15,
            "gop": 30,
            "isVBR": 0,
            "lbrRatio": 0,
            "resolution": 1
        },
        {
            "bitRate": 262144,
            "frameRate": 15,
            "gop": 30,
            "isVBR": 0,
            "lbrRatio": 0,
            "resolution": 2
        },
        {
            "bitRate": 524288,
            "frameRate": 15,
            "gop": 30,
            "isVBR": 0,
            "lbrRatio": 0,
            "resolution": 0
        }
    ],
    "ret": 0
}

4.29.2 获取设备当前使用视频参数索引

IVY_CTRL_MSG_GET_VIDEO_STREAM_TYPE = 24077

  • 支持设备
FI
  • 输入
stream 0: 主码流 1: 子码流 N FI
  • 输出
ret 返回值 N FI
type 类型,也就是 IVY_CTRL_MSG_GET_VIDEO_STREAM_PARAM 命令结果param中对应的索引 N FI
  • 示例

  • input


{
    "stream":1
}
  • output

{
    "ret": 0,
    "streamType": 0
}

4.29.3 获取是否开启抽帧

IVY_CTRL_MSG_GET_DEFRAME_ENABLE = 24079

  • 支持设备
FI
  • 输出
ret 返回值 N FI
isEnable 0:关闭 1:开启 N FI
  • 示例

  • input


None
  • output

{
    "ret": 0,
    "isEnable": 1
}

4.29.4 获取码流压缩格式

IVY_CTRL_MSG_GET_STREAM_FORMAT = 24081

  • 支持设备
FI / II / IN
  • 输入
字段名 含义 字段类型 FI II IN
channel 返回值 N × ×
  • 输出
字段名 含义 字段类型 FI II IN
ret 返回值 N
mainFormat 0:h264 1:h265 N
subFormat 0:h264 1:h265 N
  • Foscam设备支持机型 model
(7000 - 8000)
  • 示例

  • input


None
  • output

{
    "ret": 0,
    "mainFormat": 1,
    "subFormat": 1
}

4.29.5 设置当前设备视频参数

IVY_CTRL_MSG_SET_VIDEO_STREAM_PARAM = 24083

对于Foscam设备,之前的输入输出没变,因此standardization对于Foscam设备来说无关紧要

  • 支持设备
FI / FN / IN
  • 输入
字段名 含义 字段类型 FI FN IN
standardization 1 必须为1 N × ×
channel 通道 N ×
stream 0:主码流 1:子码流 N
type 视频参数索引 0-3 N × ×
resolution 分辨率 N × ×
bitRate 码率 N
frameRate 帧率 N
gop N
isVBR N
lbrRatio N × ×
w 分辨率宽 N ×
h 分辨率高 N ×
  • 输入
ret 返回值 N
  • codecType 编码类型
IVY_CODEC_VIDEO_MPEG4 0
IVY_CODEC_VIDEO_H263 1
IVY_CODEC_VIDEO_H264 2
IVY_CODEC_VIDEO_MJPEG 3
IVY_CODEC_VIDEO_H265 4
IVY_CODEC_AUDIO_ADPCM 5
IVY_CODEC_AUDIO_PCM 6
IVY_CODEC_AUDIO_AAC_RAW 7
IVY_CODEC_AUDIO_AAC_ADTS 8
IVY_CODEC_AUDIO_AAC_LATM 9
IVY_CODEC_AUDIO_G711U 10
IVY_CODEC_AUDIO_G711A 11
IVY_CODEC_AUDIO_G726 12
IVY_CODEC_AUDIO_SPEEX 13
IVY_CODEC_AUDIO_MP3 14
IVY_CODEC_PICTURE_JPEG 200
  • resolution 分辨率
VIDEO_RESOLUTION_1080P (1920*1080) 0
VIDEO_RESOLUTION_720P (1280*720) 1
VIDEO_RESOLUTION_VGA (640*480) 2
VIDEO_RESOLUTION_QVGA (320*240) 3
VIDEO_RESOLUTION_VGA_640_360 (640*360) 4
VIDEO_RESOLUTION_QVGA_320_180 (320*180) 5
VIDEO_RESOLUTION_QCIF (176*144) 6
VIDEO_RESOLUTION_960P (1280*960) 7
VIDEO_RESOLUTION_3M (2304*1296) 8
VIDEO_RESOLUTION_QHD (2560*1440) 9
  • streamType 码流类型
IVY_STREAM_VIDEO_MAIN 0
IVY_STREAM_VIDEO_SUB 1
IVY_STREAM_VIDEO_3RD 2
IVY_STREAM_VIDEO_4TH 3
IVY_STREAM_AUDIO 5
IVY_STREAM_AUDIO_2RD 6
IVY_STREAM_AUDIO_3RD 7
IVY_STREAM_AUDIO_4TH 8
  • 示例

  • input


{
    "stream": 0,
    "type": 0,
    "resolution": 1,
    "bitRate": 524288,
    "frameRate": 20,
    "gop": 10,
    "isVBR": 1,
    "lbrRatio": 1,
    "ret": 0
}
  • output

{
    "ret": 0
}

4.29.6 设置视频抽帧是否开启

IVY_CTRL_MSG_SET_DEFRAME_ENABLE = 24085

  • 支持设备
FI
  • 输入
isEnable 0:关闭 1:开启 N FI
  • 输出
ret 返回值 N FI
  • 示例

  • input


{
    "isEnable": 0
}
  • output

{
    "ret": 0
}

4.29.7 设置码流压缩格式

IVY_CTRL_MSG_SET_STREAM_FORMAT = 24114

  • 支持设备
FI / II / IN
  • 输入
字段名 含义 字段类型 FI II IN
channel 返回值 N × ×
mainFormat 0:h264 1:h265 N
subFormat 0:h264 1:h265 N
  • 输出
字段名 含义 字段类型 FI II IN
ret 返回值 N
  • Foscam设备支持机型 model
(7000 - 8000)
  • 示例

  • input


{
    "mainFormat": 1,
    "subFormat": 1
}
  • output

{
    "ret": 0
}

4.30 获取定时重启配置

IVY_CTRL_MSG_GET_TIMING_REBOOT = 26111

  • 支持设备
FI
  • 输出
ret 返回值 N FI
intervalDay 每隔天数 N FI
isEnable 0:关闭 1:开启 N FI
  • 支持设备

只有能力集val4的bit2为1才支持

  • 示例

  • input


None
  • output

{
    "ret": 0,
    "intervalDay": 3,
    "isEnable": 1
}

4.31 设置定时重启

IVY_CTRL_MSG_SET_TIMING_REBOOT = 26113

  • 支持设备
FI
  • 输入
intervalDay 每隔天数 N FI
isEnable 0:关闭 1:开启 N FI
  • 输出
ret 返回值 N FI
  • 支持设备

只有能力集val4的bit2为1才支持

  • 示例

  • input


{
    "intervalDay": 3,
    "isEnable": 1
}
  • output

{
    "ret": 0
}

4.32 获取设备状态

IVY_CTRL_MSG_GET_DEVICE_STATUS = 26115

  • 支持设备
FI
  • 输出
ret 返回值 N FI
ioAlaram 0:关闭 1:开启 N FI
motionDetectAlarm 0:关闭 1:开启 2:检测到设备报警 N FI
soundAlaram 0:关闭 1:开启 N FI
record 0:未录像 1:正在录像 N FI
sdState 0:没有SD卡 N FI
sdFreeSpace sd卡剩余空间,单位kb N FI
sdTotalSpace sd卡总空间,单位kb N FI
ntpState 1:更新成功 N FI
ddnsState 0:关闭 1:开启 N FI
url ddns地址(BASE64编码) S FI
upnpState 0:关闭 1:开启 N FI
isWifiConnected 0:未连接 1:连接 N FI
infraLedState 0:关闭 1:开启 N FI
wifiConnectedAP AP名称(BASE64编码) S FI
humanDetectAlarmState 0:关闭 1:开启 N FI
  • 示例

  • input


None
  • output

{
    "ret": 0,
    "ioAlaram": 1,
    "motionDetectAlarm": 1,
    "soundAlaram": 1,
    "record": 0,
    "sdState": 0,
    "sdFreeSpace": 512,
    "sdTotalSpace": 1024,
    "ntpState": 0,
    "ddnsState": 0,
    "url": "aHR0cDovL3d3dy5kZG5zLmNvbQ==",
    "upnpState": 0,
    "isWifiConnected": 0,
    "infraLedState": 0,
    "wifiConnectedAP": "bXlBUE5hbWU=",
    "humanDetectAlarmState": 0,
    "ret": 0
}

4.33 邮箱设置

4.33.1 设置SMTP

IVY_CTRL_MSG_SET_SMTP_CONFIG = 30045

  • 支持设备
FI / FN
  • 输入
isEnable 0:关闭 1:开启 N FI / FN
server SMTP服务器地址 S FI / FN
port SMTP端口 N FI / FN
isNeedAuth 0:不需要认证 1:需要认证 N FI / FN
tls 传输层安全协议 0:无 1:TLS 2:STARTTLS N FI / FN
user SMTP用户名 (BASE64编码) S FI / FN
password SMTP密码 (BASE64编码) S F FI / FNI
sender 发件人(base64编码) S FI / FN
reciever 收件人(base64编码), Json数组,最多4个 S FI / FN
  • 输出
ret 返回值 N FI
  • 示例

  • input


{
    "isEnable": 1,
    "server": "smtp.my.com",
    "port": 200,
    "isNeedAuth": 0,
    "tls": 0,
    "user": "dXNlcg==",
    "password": "cGFzc3dvcmQ=",
    "sender": "dXNlckAxMjMuY29t",
    "reciever": ["dXNlcjFAMTIzLmNvbQ==", "dXNlcjJAMTIzLmNvbQ=="]
}
  • output

{
    "ret": 0
}

4.33.2 获取SMTP配置

IVY_CTRL_MSG_GET_SMTP_CONFIG = 30047

  • 支持设备
FI / FN
  • 输出
ret 返回值 N FI / FN
isEnable 0:关闭 1:开启 N FI / FN
server SMTP服务器地址 S FI / FN
port SMTP端口 N FI / FN
isNeedAuth 0:不需要认证 1:需要认证 N FI / FN
tls 传输层安全协议 0:无 1:TLS 2:STARTTLS N FI / FN
user SMTP用户名 (BASE64编码) S FI / FN
password SMTP密码 (BASE64编码) S F FI / FNI
sender 发件人(base64编码) S FI / FN
reciever 收件人(base64编码), Json数组,最多4个 S FI / FN
  • 示例

  • input


None
  • output

{
    "ret": 0,
    "isEnable": 1,
    "server": "smtp.my.com",
    "port": 200,
    "isNeedAuth": 0,
    "tls": 0,
    "user": "dXNlcg==",
    "password": "cGFzc3dvcmQ=",
    "sender": "dXNlckAxMjMuY29t",
    "reciever": ["dXNlcjFAMTIzLmNvbQ==", "dXNlcjJAMTIzLmNvbQ=="]
}

4.33.3 测试SMTP

IVY_CTRL_MSG_SMTP_TEST = 30049

  • 支持设备
FI / FN
  • 输入
smtpServer 返回值 N FI
port SMTP端口 N FI
isNeedAuth 0:不需要认证 1:需要认证 N FI
tls 传输层安全协议 0:无 1:TLS 2:STARTTLS N FI
user SMTP用户名 (BASE64编码) S FI
password SMTP密码 (BASE64编码) S FI
sender 发件人(base64编码) S FI
  • 输出
ret 返回值 N FI
testRet 测试结果 N FI / FN
errMsg 错误信息(BASE64编码) S FI
  • [FI] testRet定义
0 Success
2 smtp服务器地址未设置
3 smtp用户名未设置
4 smtp密码未设置
5 发件人未设置
6 生成邮件失败
7 邮件发送超时
8 不能找到smtp日志文件
9 无法解析smtp日志信息
64 命令语法不正确
65 某种方式下输入的数据不正确
66 输入文件(非系统文件)不存在或者不可读
67 无法识别指定的用户标识
68 无法识别指定的主机名
69 所需的服务或资源不可用
70 出现一个内部软件错误(包含坏的参数)
71 出现一个临时操作系统错误。这种错误的一个示例是创建一个新的进程失败
72 出现系统文件错误。例如,系统文件(例如 /etc/passwd)不存在、无法打开或者有另一种类型的错误阻止使用它
73 不能创建用户指定的文件
74 在 I/O 过程中产生错误
75 无法创建与远程系统的连接
76 在协议交换过程中,远程系统返回一些不正确的东西
77 用户没有执行所请求的操作的许可权
78 在配置文件的格式中发现到错误
  • [FN] testRet定义
0 Success
1 邮件发送失败
2 SMTP服务器、收/发件人不能为空!
3 网络出错
  • 示例

  • input


{
    "smtpServer": "smtp.my.com",
    "port": 100,
    "isNeedAuth": 0,
    "tls": 0,
    "user": "dXNlcg==",
    "password": "cGFzc3dvcmQ=",
    "sender": "dXNlckAxMjMuY29t"
}
  • output

{
    "ret": 0
}

4.34 FTP设置

4.34.1 设置FTP

IVY_CTRL_MSG_SET_FTP_CONFIG = 30051

  • 支持设备
FI / FN
  • 输入
ftpAddr ftp地址 S FI / FN
ftpPort ftp端口 N FI / FN
mode 模式 0:被动 1:主动 S FI / FN
userName 用户名(BASE64编码) S FI / FN
password 密码(BASE64编码) S FI / FN
  • 输出
ret 返回值 N FI / FN
  • 示例

  • input


{
    "ftpAddr": "http://192.168.1.39",
    "ftpPort": 100,
    "mode": 0,
    "userName": "dXNlcg==",
    "password": "cGFzc3dvcmQ="
}
  • output

{
    "ret": 0
}

4.34.2 获取FTP配置

IVY_CTRL_MSG_GET_FTP_CONFIG = 30053

  • 支持设备
FI / FN
  • 输出
ret 返回值 N FI / FN
ftpAddr ftp地址 S FI / FN
ftpPort ftp端口 N FI / FN
mode 模式 0:被动 1:主动 S FI / FN
userName 用户名(BASE64编码) S FI / FN
password 密码(BASE64编码) S FI / FN
  • 示例

  • input


{
    "ftpAddr": "http://192.168.1.39",
    "ftpPort": 100,
    "mode": 0,
    "userName": "dXNlcg==",
    "password": "cGFzc3dvcmQ="
}
  • output

{
    "ret": 0,
    "ftpAddr": "http://192.168.1.39",
    "ftpPort": 100,
    "mode": 0,
    "userName": "dXNlcg==",
    "password": "cGFzc3dvcmQ="    
}

4.34.3 FTP测试

IVY_CTRL_MSG_FTP_TEST = 30055

  • 支持设备
FI / FN
  • 输入
ftpAddr ftp地址 S FI
ftpPort ftp端口 N FI
mode 模式 0:被动 1:主动 S FI
fptUserName 用户名(BASE64编码) S FI
ftpPassword 密码(BASE64编码) S FI
  • 输出
ret 返回值 N FI
testRet 测试结果 N FI
  • testRet定义
0 Success
-1 FTP服务器地址错误
-2 FTP服务器连接失败
-3 FTP服务器登录失败
-4 FTP服务器目录不存在
  • 示例

  • input


{
    "ftpAddr": "http://192.168.1.39",
    "ftpPort": 100,
    "mode": 0,
    "fptUserName": "dXNlcg==",
    "ftpPassword": "cGFzc3dvcmQ="
}
  • output

{
    "ret": 0
}

4.34.4 开启FTP服务器

IVY_CTRL_MSG_FTP_START_SERVER = 30057

  • 支持设备
FI
  • 输出
ret 返回值 N
  • 示例

  • input


None
  • output

{
    "ret": 0
}

4.35 设置P2P

IVY_CTRL_MSG_SET_P2P_INFO = 30037

  • 支持设备
FI
  • 输入
isEnable 0:关闭 1:开启 N FI
port 端口号 N FI
  • 输出
ret 返回值 N FI
  • 示例

  • input


{
    "isEnable": 1,
    "port": 100
}
  • output

{
    "ret": 0
}

4.36 获取P2P

IVY_CTRL_MSG_GET_P2P_INFO = 30039

  • 支持设备
FI FN II
  • 输出
ret 返回值 N FI FN
isEnable 0:关闭 1:开启 N FI FN
uid uid S FI / II / IN / FN
port 端口号 N FI FN
isP2PServer N FI
type N FN
  • 示例

  • input


None
  • output

{
    "ret": 0,
    "isEnable": 1,
    "uid": "ABCDABCDABCDABCDABCDZZZZ",
    "port": 90,
    "isP2PServer": 0
}

4.36.1 设置设备P2P连接分派服务器的区域

IVY_CTRL_MSG_SET_DEVICE_BIND_INFO = 26179

  • 支持设备
FI II
  • 输入

如果存在 standardization=1 推荐

standardization 固定为 1 N FI II
area 区域 0:国内 1:国外 (可选) N FI II
token 字符串 (可选) S FI II

如果不存在standardization,或者standardization=0

channel 通道号 N II
language “EN” 或者 “CN” S II
token 字符串 S II
  • 输出
ret 返回值 N II
  • 示例

  • input


{
    "standardization": 1,
    "area":0,
    "token":"AF12321313"
}

  • output

{
    "ret": 0
}

4.37 NVR硬盘出错行为设置

4.37.1 设置NVR硬盘丢失行为

IVY_CTRL_MSG_SET_ENABLE_BUZZER_HDD_LOST = 36043

  • 支持设备
FN IN
  • 输入
字段名 含义 字段类型 FN IN
linkage 联动功能 N ×
standardization 1 必须为1 N
  • linkage定义
bit0 Ring
bit1 Send mail
bit2 Snap picture
bit3 Record
bit4 IO out
bit5 Snap to cloud
bit6 Record to cloud
bit7 Push message to the phone
bit8 Screen prompt
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "enable": 0
}
  • output

{
    "ret": 0
}

4.37.2 获取NVR硬盘丢失行为设置

IVY_CTRL_MSG_GET_ENABLE_BUZZER_HDD_LOST = 36045

对于Foscam设备,之前的输入输出没变,因此standardization对于Foscam设备来说无关紧要

  • 支持设备
FN IN
  • 输入
字段名 含义 字段类型 FN IN
standardization 1 必须为1 N
  • 输出
字段名 含义 字段类型 FN IN
linkage 联动功能 N ×
  • linkage定义
bit0 Ring
bit1 Send mail
bit2 Snap picture
bit3 Record
bit4 IO out
bit5 Snap to cloud
bit6 Record to cloud
bit7 Push message to the phone
bit8 Screen prompt
  • 示例

  • input


None
  • output

{
    "ret": 0,
    "enable": 0
}

4.37.3 设置NVR盘容量满行为

IVY_CTRL_MSG_SET_ENABLE_BUZZER_HDD_FULL = 36047

对于Foscam设备,之前的输入输出没变,因此standardization对于Foscam设备来说无关紧要

  • 支持设备
FN IN
  • 输入
字段名 含义 字段类型 FN IN
linkage 联动功能 N ×
capacity 容量 单位MB N ×
standardization 1 必须为1 N
  • linkage定义
bit0 Ring
bit1 Send mail
bit2 Snap picture
bit3 Record
bit4 IO out
bit5 Snap to cloud
bit6 Record to cloud
bit7 Push message to the phone
bit8 Screen prompt
  • 输出
字段名 含义 字段类型 FN IN
ret 返回值 N
  • 示例

  • input


{
    "linkage": 1
}
  • output

{
    "ret":0
}

4.37.4 获取NVR盘容量满行为

IVY_CTRL_MSG_GET_ENABLE_BUZZER_HDD_FULL = 36049

对于Foscam设备,之前的输入输出没变,因此standardization对于Foscam设备来说无关紧要

  • 支持设备
FN IN
  • 输入
字段名 含义 字段类型 FN IN
standardization 1 必须为1 N
  • 输出
字段名 含义 字段类型 FN IN
ret 返回值 N
linkage 联动功能 N ×
capacity 容量 单位MB N ×
standardization 1 必须为1 N
  • linkage定义
bit0 Ring
bit1 Send mail
bit2 Snap picture
bit3 Record
bit4 IO out
bit5 Snap to cloud
bit6 Record to cloud
bit7 Push message to the phone
bit8 Screen prompt
  • 示例

  • input


None
  • output

{
    "ret": 0,
    "enable": 0
}

4.37.5 设置NVR硬盘错误行为

IVY_CTRL_MSG_SET_ENABLE_BUZZER_HDD_ERROR = 36051

  • 支持设备
FN IN
  • 输入
字段名 含义 字段类型 FN IN
linkage 联动功能 N ×
standardization 1 必须为1 N
  • linkage定义
bit0 Ring
bit1 Send mail
bit2 Snap picture
bit3 Record
bit4 IO out
bit5 Snap to cloud
bit6 Record to cloud
bit7 Push message to the phone
bit8 Screen prompt
  • 输出
字段名 含义 字段类型 FN IN
ret 返回值 N
  • 示例

  • input


{
    "linkage": 1
}
  • output

{
    "ret":0
}

4.37.6 获取NVR硬盘错误行为设置

IVY_CTRL_MSG_GET_ENABLE_BUZZER_HDD_ERROR = 36053

对于Foscam设备,之前的输入输出没变,因此standardization对于Foscam设备来说无关紧要

  • 支持设备
FN IN
  • 输入
字段名 含义 字段类型 FN IN
standardization 1 必须为1 N

  • linkage定义
bit0 Ring
bit1 Send mail
bit2 Snap picture
bit3 Record
bit4 IO out
bit5 Snap to cloud
bit6 Record to cloud
bit7 Push message to the phone
bit8 Screen prompt
  • 输出
字段名 含义 字段类型 FN IN
ret 返回值 N
enable 0: 禁用蜂鸣器 1:启用蜂鸣器 N ×
linkage 联动功能 N ×
standardization 1 必须为1 N
  • 示例

  • input


None
  • output

{
    "ret":0,
    "linkage":1
}

4.38 获取WIFI通道

IVY_CTRL_MSG_GET_WIFI_CHANNEL = 36029

  • 支持设备
FN
  • 输出
ret 返回值 N
channel 通道号 N
enable N
  • 示例

  • input


None
  • output

{
    "ret": 0,
    "channel": 0,
    "enable": 0
}

4.39 设置WIFI通道

IVY_CTRL_MSG_SET_WIFI_CHANNEL = 36031

  • 支持设备
FN
  • 输入
enable N
channel N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "channel": 0,
    "enable": 0
}
  • output

{
    "ret": 0
}

4.40 获取智能录像是否开启

IVY_CTRL_MSG_GET_INTELLIGET_RECORD = 36033

  • 支持设备
FN
  • 输出
ret 返回值 N
enable 0:no 1:yes N
  • 示例

  • input


None
  • output

{
    "ret": 0,
    "enable": 0
}

4.41 设置智能录像

IVY_CTRL_MSG_SET_INTELLIGET_RECORD = 36035

  • 支持设备
FN
  • 输入
enable 0:no 1:yes N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "enable": 0
}
  • output

{
    "ret": 0
}

4.42 获取通道上IPC的视频能力集合

IVY_CTRL_MSG_GET_STREAM_CAPABILITY = 36075

  • 支持设备
FN
  • 输入
channel 通道号 N
type 码流类型 0:主码流 1:子码流 N
  • 输出
ability Json数组 S
ret 返回值 N
  • ability json结构
resolution 支持的分辨率 S
frameRate 最大帧率 N
bitRate 最大码率 S
  • 示例

  • input


{
    "channel": 0,
    "type": 0
}
  • output

{
    "ret": 0,
    "ability": [
    {
        "resolution": "1920x1080",
        "frameRate": 20,
        "bitRate": "512k"
    },
    {
        "resolution": "1080x720",
        "frameRate": 10,
        "bitRate": "512k"
    },
    {
        "resolution": "640x480",
        "frameRate": 30,
        "bitRate": "512k"
    },
        {
        "resolution": "640x360",
        "frameRate": 10,
        "bitRate": "512k"
    },
    {
        "resolution": "320x240",
        "frameRate": 20,
        "bitRate": "512k"
    }
    ]
}

4.43 增加设备账号

IVY_CTRL_MSG_ADD_ACCOUNT = 22019

  • 支持设备
FI
  • 输入
name 用户名(base64编码) S
password 密码(base64编码) S
privilege 权限 0 : Visitors 1: Operator 2: Administrator N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "name": "bmFtZQ==",
    "password": "cGFzc3dvcmQ=",
    "privilege": 0
}
  • output

{
    "ret": 0
}

4.44 删除设备账号

IVY_CTRL_MSG_DEL_ACCOUNT = 22021

  • 支持设备
FI
  • 输入
name 用户名(base64编码) S
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "name": "bmFtZQ=="
}
  • output

{
    "ret": 0
}

4.45 校验爱华盈通算法license

IVY_CTRL_MSG_CHECK_AIWINN_LICENSE = 32065

  • 支持设备
FI
  • 输出
ret 返回值 0:success, -10: Failed , Need to rewrite the license N
  • 示例

  • input


None
  • output

{
    "ret": 0
}

4.46 查询P2P TUTK切换到Foscam状态

IVY_CTRL_MSG_GET_P2P_TUTK_TO_FOSCAM_FLAG = 26141

  • 支持设备
FI
  • 输出
ret 返回值 N
flag 0:不支持切换 1:支持切换 2:已经切换到FoscamP2P N
  • 示例

  • input


None
  • output

{
    "ret": 0,
    "flag": 1
}

4.47 将TUTK P2P切换到Foscam

IVY_CTRL_MSG_SWITCH_P2P_TUTK_TO_FOSCAM = 26143

  • 支持设备
FI
  • 输出
ret 返回值 N
  • 示例

  • input


None
  • output

{
    "ret": 0
}

4.48 获取4G信息

IVY_CTRL_MSG_GET_4G_INFO = 30062

  • 支持设备
IVY 4G设备 / Foscam 4G设备
  • 输出
ret 返回值 N II FI
rssi rssi N
simType sim卡类型 1:电信 2:移动 3:联通 N
signalLevel 信号强度 0 - 5 N
IMEINumber IMEI S
ICCIDNumber ICCID S
IMSINumber IMSIN S
simNumber telphone number S ×
state 0:no sim 1: sim inserted N ×
generation 0:UNKNOW 1:1G 2:2G 3:3G 4:4G N ×
  • 示例

  • input


None
  • output

{
    "ret": 0,
    "rssi": 0,
    "simType": 2,
    "signalLevel": 5,
    "IMEINumber": "IMEIKSKFKKMWVN3141414KF",
    "ICCIDNumber": "ICCID124MFKSO2KFLDSF",
    "IMSINumber": "IMSIKFK91UHNSU10JS"
}

4.49 获取电池电量

IVY_CTRL_MSG_GET_BPI_BATTERY_STATUS = 26059

  • 支持设备
IVY
  • 输入
channel 通道号 N
  • 输出
ret 返回值 N
quantity 电量值(0-100, 如果30就表示30%,以此类推) N
ischarge 0:未充电 1:充电中 N
  • 示例

  • input


{
    "channel": 1
}
  • output

{
    "ret": 0,
    "quantity": 80,
    "ischarge": 1
}

4.50 设置对讲音量大小(设备是否支持参考能力集val2 bit11)

IVY_CTRL_MSG_SET_SPEAK_VOLUME = 24106

  • 支持设备
FI
  • 输入
volume 0-100 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "volume": 10
}
  • output

{
    "ret": 0
}

4.51 获取对讲音量大小(设备是否支持参考能力集val2 bit11)

IVY_CTRL_MSG_GET_SPEAK_VOLUME = 24108

  • 支持设备
FI
  • 输出
ret 返回值 N
volume 0-100 N
  • 示例

  • input


None
  • output

{
    "ret": 0,
    "volume": 100
}

4.52 设置留言消息,应该只支持Foscam门铃

IVY_CTRL_MSG_SET_LEAVE_MESSAGE = 24110

  • 支持设备
FI
  • 输出
enable 0: 不启用 1: 启用 N
msgType 0: 立即留言 1: 15s后没人接听留言 N
ringType 0: 默认声音 1:自定义 N
  • 示例

  • input


{
    "enable": 1,
    "msgType": 0,
    "ringType": 1
}
  • output

{
    "ret": 0
}

4.53 获取留言消息设置,应该只支持Foscam门铃

IVY_CTRL_MSG_GET_LEAVE_MESSAGE = 24112

  • 支持设备
FI
  • 输出
ret 0:成功 1: 失败 N
enable 0: 不启用 1: 启用 N
msgType 0: 立即留言 1: 15s后没人接听留言 N
ringType 0: 默认声音 1:自定义 N
existDIYRing 0:不存在自定义声音 1:存在 N
  • 示例

  • input


None
  • output

{
    "ret": 0,
    "enable": 1,
    "msgType": 0,
    "ringType": 1
}

4.54 设置NVR视频丢失行为

IVY_CTRL_MSG_SET_ENABLE_BUZZER_VIDEO_LOST = 36055

  • 支持设备
FI IN
  • 输入
字段名 含义 字段类型 FN IN
channel 通道 N ×
linkage 联动功能 N ×
schedule 时间 N ×
standardization 1 必须为1 N
  • linkage定义
bit0 Ring
bit1 Send mail
bit2 Snap picture
bit3 Record
bit4 IO out
bit5 Snap to cloud
bit6 Record to cloud
bit7 Push message to the phone
bit8 Screen prompt
  • 示例

  • input


{
    "linkage": 1,
    "schedule": [12,123,123,123,123,123,123]
}
  • output

{
    "ret": 0
}

4.55 获取NVR视频丢失行为

IVY_CTRL_MSG_GET_ENABLE_BUZZER_VIDEO_LOST = 36057

  • 支持设备
FI IN
  • 输入
字段名 含义 字段类型 FN IN
channel 通道 N ×
standardization 1 必须为1 N
  • 输出
字段名 含义 字段类型 FN IN
ret 返回值 N
linkage 联动功能 N ×
schedule 时间 N ×
standardization 1 必须为1 N
  • linkage定义
bit0 Ring
bit1 Send mail
bit2 Snap picture
bit3 Record
bit4 IO out
bit5 Snap to cloud
bit6 Record to cloud
bit7 Push message to the phone
bit8 Screen prompt
  • 示例

  • input


None
  • output

{
    "ret":0,
    "linkage": 1,
    "schedule": [12,123,123,123,123,123,123]
}

4.56 设置休眠状态/开关/计划时间

IVY_CTRL_MSG_SET_SLEEP_CONFIG = 26151

  • 相关能力集
ability[3] bit1
  • 支持设备
FI
  • 输入
字段名 含义 字段类型 FI
mode 模式 1:手动休眠 2:手动唤醒 3:schedule N
state 状态 0:sleep 1:wakeup N
schedule 计划时间,long long 类型数组,7个元素,格式同 IVY_CTRL_MSG_SET_AUDIO_ALARM_CONFIG 的schedule N
  • 输出
字段名 含义 字段类型 FI
ret 返回值 N
  • 备注

如果设置mode为手动休眠 (1) / 手动唤醒 (2),state 设置任何值都没关系。只有当mode为schedule时,设置state为1会唤醒记录休眠下的设备,等到下一个休眠时间段设备会自动休眠

  • 示例

  • input


    {
        "model":1,
        "state":1,
        "schedule": [12,123,123,123,123,123,123]
    }

  • output

{
    "ret":0
}

4.57 获取休眠状态/开关/计划时间

IVY_CTRL_MSG_GET_SLEEP_CONFIG = 26153

  • 相关能力集
ability[3] bit1
  • 支持设备
FI
  • 输入

None

  • 输出
字段名 含义 字段类型 FI
ret 结果 N
mode 模式 1:手动休眠 2:手动唤醒 3:schedule N
state 状态 0:sleep 1:wakeup N
schedule 计划时间,long long 类型数组,7个元素,格式同 IVY_CTRL_MSG_SET_AUDIO_ALARM_CONFIG 的schedule N
  • 示例

  • input


None

  • output

{
    "ret":0,
    "model":1,
    "state":0,
    "schedule": [12,123,123,123,123,123,123]
}

4.58 设置白光灯计划时间

IVY_CTRL_MSG_SET_WHITE_LIGTH_SCHEDULE = 26155

  • 支持设备
FI
  • 输入
字段名 含义 字段类型 FI
enable 0: off 1: on N
schedule 计划时间 Json数组 含有3个元素 每个元素都包含开始和结束时间 J
  • schedule 内元素Json格式
字段名 含义 字段类型 FI
sHour 开始小时 N
eHour 结束小时 N
sMin 开始分钟 N
eMin 结束分钟 N
  • 输出
字段名 含义 字段类型 FI
ret 返回值 N
  • 示例

  • input


    {
        "enable":1,
        "schedule": [{
                "sHour":1,
                "eHour":2,
                "sMin":10,
                "eMin":11
            },
            {
                "sHour":1,
                "eHour":2,
                "sMin":10,
                "eMin":11,
            },
            {
                "sHour":1,
                "eHour":2,
                "sMin":10,
                "eMin":11,
            }]
    }

  • output

{
    "ret":0
}

4.59 获取白光灯计划时间

IVY_CTRL_MSG_GET_WHITE_LIGTH_SCHEDULE = 26157

  • 支持设备
FI
  • 输入

None

  • 输出
字段名 含义 字段类型 FI
ret 返回值 N
enable 0: off 1: on N
schedule 计划时间 Json数组 含有3个元素 每个元素都包含开始和结束时间 J
  • schedule 内元素Json格式
字段名 含义 字段类型 FI
sHour 开始小时 N
eHour 结束小时 N
sMin 开始分钟 N
eMin 结束分钟 N
  • 示例

  • input


None
  • output

{
    "ret":0,
    "enable":1,
    "schedule": [{
        "sHour":1,
        "eHour":2,
        "sMin":10,
        "eMin":11
        },
        {
        "sHour":1,
        "eHour":2,
        "sMin":10,
        "eMin":11,
        },
        {
        "sHour":1,
        "eHour":2,
        "sMin":10,
        "eMin":11,
    }]
}

4.60 设置补光 (可根据能力集V1 bit28)

IVY_CTRL_MSG_SET_FILL_LIGHT_CONFIG = 26159

  • 支持设备
II
  • 输入
字段名 含义 字段类型
isEnable 总开关 1:开启 0:关闭 N
lightType 补光灯类型,按位表示 (1表示开启,0表示关闭) N
  • lightType 定义
字段名 含义 字段类型
bit0 白光灯补光 N
  • 示例

  • input


{
    "lightType":1,
    "isEnable":1
}
  • output

{
    "ret":0
}

4.61 获取补光设置 (可根据能力集V1 bit28)

IVY_CTRL_MSG_GET_FILL_LIGHT_CONFIG = 26161

  • 支持设备
II
  • 输入

None

  • 输出
字段名 含义 字段类型
ret N
isEnable 总开关 1:开启 0:关闭 N
lightType 补光灯类型,按位表示 (1表示开启,0表示关闭) N
  • lightType 定义
字段名 含义 字段类型
bit0 白光灯补光 N
  • 示例

  • input


None
  • output

{
    "ret":0,
    "lightType":1,
    "isEnable":1
}

4.62 设置自动全彩黑白模式 (可根据能力集V3 bit8或者bit29)

IVY_CTRL_MSG_SET_LIGHT_VISION_SWITCH_MODE_CONFIG = 26175

  • 支持设备
II FI
  • 输入
字段名 含义 字段类型
channel 通道号 N
lightVisionMode 模式,按位表示,每次只能设置一个位;如果支持v3 bit29,支持全部位为0,表示关闭所有 N
  • lightVisionMode 定义
bit位 含义
bit0 自动模式
bit1 全彩夜视
bit2 红外夜视
  • 示例

  • input


{
    "channel":0,
    "lightVisionMode":1
}
  • output

{
    "ret":0
}

4.63 获取自动全彩黑白模式 (可根据能力集V3 bit8或者bit29)

IVY_CTRL_MSG_GET_LIGHT_VISION_SWITCH_MODE_CONFIG = 26177

  • 支持设备
II FI
  • 输入
字段名 含义 字段类型
channel 通道号 N
  • 输出
字段名 含义 字段类型
ret N
lightVisionMode 模式,按位表示,每次只能设置一个位 N
  • 示例

  • input


{
    "channel":0,
}
  • output

{
    "ret":0,
    "lightVisionMode":1
}

4.64 设置自动接听呼叫

IVY_CTRL_MSG_SET_AUTOMATICALLY_ANSWER = 26191

  • 支持设备
II
  • 输入
字段名 含义 字段类型
channel 通道号 N
enable 1:开启 0:关闭 N
  • 输出
字段名 含义 字段类型
ret N
  • 备注

根据机型判断,如果是双向视频摄像机,支持这个命令。

  • 示例

  • input


{
    "channel":0,
    "enable":1
}
  • output

{
    "ret":0
}

4.65 获取自动接听呼叫设置

IVY_CTRL_MSG_GET_AUTOMATICALLY_ANSWER = 26193

  • 支持设备
II
  • 输入
字段名 含义 字段类型
channel 通道号 N
  • 输出
字段名 含义 字段类型
ret N
enable 1:开启 0:关闭 N
  • 备注

根据机型判断,如果是双向视频摄像机,支持这个命令。

  • 示例

  • input


{
    "channel":0
}
  • output

{
    "ret":0"enable":1
}

4.66 设置目标对象的MAC和间隔

IVY_CTRL_MSG_SET_AMBIENT_WEATHER_STATION_INFO = 30080

通过此命令为设备设置一个MAC和时间间隔,设备将会对目标MAC按照指定时间间隔进行操作

  • 支持设备
II
  • 输入
字段名 含义 字段类型
channel 通道号 N
macAddr mac地址 S
captureInterval 间隔 单位秒 N
  • 输出
字段名 含义 字段类型
ret N
  • 示例

  • input


{
    "channel":0,
    "macAddr":"ABCD123",
    "captureInterval":900
}
  • output

{
    "ret":0
}

4.67 获取设置目标对象的MAC和间隔

IVY_CTRL_MSG_GET_AMBIENT_WEATHER_STATION_INFO = 30082

  • 支持设备
II
  • 输入
字段名 含义 字段类型
channel 通道号 N
  • 输出
字段名 含义 字段类型
ret N
macAddr mac地址 S
captureInterval 间隔 单位秒 N
  • 示例

  • input


{
    "channel":0
}
  • output

{
    "ret":0"macAddr":"ABCD123",
    "captureInterval":900
}

5 报警侦测

5.1 设置声音报警

IVY_CTRL_MSG_SET_AUDIO_ALARM_CONFIG = 32019

  • 支持设备
FI
  • 输入
enable 0:关闭 1:开启 N
linkage 联动, 按位表示 N
sensitivity 灵敏度 0:low 1: middle 2:high N
snapInterval 抓拍间隔 N
triggerInterval 触发间隔 N
schedule 计划事件,Json数组,内部是7个long long类型数据 N
  • 输出
ret 返回值 N
  • linkage
bit0 Ring
bit1 发送邮件
bit2 截图
bit3 录像
  • 示例

  • input


{
    "enable":1,
    "linkage":1,
    "sensitivity":2,
    "snapInterval":5,
    "triggerInterval":5,
    "schedule":[123456,123456,123456,123456,123456,0,0]
}

  • output

{
    "ret":0,
}

5.2 获取声音报警

IVY_CTRL_MSG_GET_AUDIO_ALARM_CONFIG = 32021

  • 支持设备
FI
  • 输出
ret 返回值 N
enable 0:关闭 1:开启 N
linkage 同设置 N
sensitivity 同设置 N
snapInterval 抓拍间隔 N
triggerInterval 触发间隔 N
schedule 同设置 N
  • 示例

  • input


None

  • output

{
    "ret":0,
    "enable":1,
    "linkage":1,
    "sensitivity":2,
    "snapInterval":5,
    "triggerInterval":5,
    "schedule":[123456,123456,123456,123456,123456,0,0]
}

5.3 设置湿度侦测

IVY_CTRL_MSG_SET_HUMIDITY_ALARM_CONFIG = 32027

  • 支持设备
FI
  • 输入
linkage 联动 N
enable 是否启用 0:关闭 1:开启 N
topLimit 最高温度 N
lowerLimit 最低温度 N
snapInterval 截图间隔 N
triggerInterval 触发间隔 N
schedule 计划事件 同声音报警 N
  • 输出
ret 返回值 N
  • linkage
bit0 Ring
bit1 发邮件
bit2 截图
bit3 录像
bit7 手机推送
  • 示例

  • input


{
    "enable":1,
    "linkage":1,
    "topLimit":50,
    "lowerLimit":20,
    "snapInterval":5,
    "triggerInterval":5,
    "schedule":[123456,123456,123456,123456,123456,0,0]
}

  • output

{
    "ret":0
}

5.4 获取湿度侦测

IVY_CTRL_MSG_GET_HUMIDITY_ALARM_CONFIG = 32029

  • 支持设备
FI
  • 输出
ret 返回值 N
linkage 联动 同设置 N
enable 是否启用 0:关闭 1:开启 N
topLimit 最高温度 N
lowerLimit 最低温度 N
snapInterval 截图间隔 N
triggerInterval 触发间隔 N
schedule 计划事件 同声音报警 N
  • 示例

  • input


None

  • output

{
    "ret":0,
    "enable":1,
    "linkage":1,
    "topLimit":50,
    "lowerLimit":20,
    "snapInterval":5,
    "triggerInterval":5,
    "schedule":[123456,123456,123456,123456,123456,0,0]
}

5.5 设置温度侦测

IVY_CTRL_MSG_SET_TEMPERATURE_ALARM_CONFIG = 32031

  • 支持设备
FI
  • 输入
channel 通道号 N
linkage 联动 同湿度侦测 N
enable 是否启用 0:关闭 1:开启 N
topLimit 最高温度 N
lowerLimit 最低温度 N
snapInterval 截图间隔 N
triggerInterval 触发间隔 N
schedule 计划事件 同声音报警 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "enable":1,
    "linkage":1,
    "topLimit":50,
    "lowerLimit":20,
    "snapInterval":5,
    "triggerInterval":5,
    "schedule":[123456,123456,123456,123456,123456,0,0]
}

  • output

{
    "ret":0,
}

5.6 获取温度侦测

IVY_CTRL_MSG_GET_TEMPERATURE_ALARM_CONFIG = 32033

  • 支持设备
FI
  • 输出
ret 返回值 N
linkage 联动 同湿度侦测 N
enable 是否启用 0:关闭 1:开启 N
topLimit 最高温度 N
lowerLimit 最低温度 N
snapInterval 截图间隔 N
triggerInterval 触发间隔 N
schedule 计划事件 同声音报警 N
  • 示例

  • input


None
  • output

{
    "ret":0,
    "enable":1,
    "linkage":1,
    "topLimit":50,
    "lowerLimit":20,
    "snapInterval":5,
    "triggerInterval":5,
    "schedule":[123456,123456,123456,123456,123456,0,0]
}

5.7 清除IO报警输出

IVY_CTRL_MSG_CLEAN_IO_ALARM_OUTPUT = 32035

  • 支持设备
FI
  • 输出
ret 返回值 N
  • 示例

  • input


None
  • output

{
    "ret":0
}

5.8 设置IO报警

IVY_CTRL_MSG_SET_IO_ALARM_CONFIG = 32023

  • 支持设备
FI
  • 输入
enable 是否启用 0:关闭 1:启用 N
linkage 联动,按位表示 N
alarmLevel 报警灵敏度 0:low 1:high N
snapInterval 截图间隔 N
triggerInterval 触发间隔 N
schedule 计划时间 同声音报警 N
  • 输出
ret 返回值 N
  • linkage
bit0 ring
bit1 发送邮件
bit2 截图
bit3 录像
  • 示例

  • input


{
    "enable":1,
    "linkage":1,
    "alarmLevel":0,
    "snapInterval":10,
    "triggerInterval":10,
    "schedule":[281474976710655,281474976710655,281474976710655,281474976710655,281474976710655,281474976710655,281474976710655]
}
  • output

{
    "ret":0
}

5.9 获取IO报警

IVY_CTRL_MSG_SET_IO_ALARM_CONFIG = 32023

  • 支持设备
FI
  • 输出
ret 返回值 N
enable 是否启用 0:关闭 1:启用 N
linkage 联动,按位表示 同设置 N
alarmLevel 报警灵敏度 0:low 1:high N
snapInterval 截图间隔 N
triggerInterval 触发间隔 N
schedule 计划时间 同声音报警 N
  • 示例

  • input

None
  • output

{
    "ret":0,
    "enable":1,
    "linkage":1,
    "alarmLevel":0,
    "snapInterval":10,
    "triggerInterval":10,
    "schedule":[281474976710655,281474976710655,281474976710655,281474976710655,281474976710655,281474976710655,281474976710655]
}

5.10 设置一键报警

IVY_CTRL_MSG_SET_ONE_KEY_ALARM_CONFIG = 32037

  • 支持设备
FI
  • 输入
enable 是否开启 0:关闭 1:开启 N
alarmLinkage 联动,按位表示 N
  • 输出
ret 返回值 N
  • alarmLinkage
bit0 移动侦测
bit1 声音侦测
bit2 Io侦测
bit3 温度侦测
bit4 湿度侦测
  • 示例

  • input

{
    "enable":1,
    "alarmLinkage":3
}
  • output

{
    "ret":0
}

5.11 获取一键报警

IVY_CTRL_MSG_GET_ONE_KEY_ALARM_CONFIG = 32039

  • 支持设备
FI
  • 输出
ret 返回值 N
enable 是否开启 0:关闭 1:开启 N
alarmLinkage 联动,按位表示, 同设置 N
  • 示例

  • input

None
  • output

{
    "ret":0,
    "enable":1,
    "alarmLinkage":3
}

5.12 设置移动侦测

IVY_CTRL_MSG_SET_MOTION_DETECT_CONFIG = 24031

  • 支持设备
FI FN II IN
  • 输入
channel 通道号 N A/H
enable 是否启用 0:关闭 1:开启 N A/H
linkage 联动,按位表示 N A/H
snapInterval 触发间隔 N A/H
alarmType 报警类型 0:移动侦测 5:人体侦测 N FB
recordTime 录像时间 N FB
ipcAlarmSound 是否开启IPC声音报警 N FB
triggerInterval 触发间隔 N A/H
moveAlarmEnable 移动侦测报警开关 0:关闭 1:开启 N A/H
pirAlarmEnable pir侦测开关 0:关闭 1:开启 N A/H
carAlarmEnable 车辆侦测开关 0:关闭 1:开启 N A/H
petAlarmEnable 宠物侦测开关 0:关闭 1:开启 N A/H
humanAlarmEnable 人型侦测开关 0:关闭 1:开启 N A/H
sensitivity 灵敏度 0:low 1:normal 2:high 3:lower 4:lowest N H
schedule 计划时间 同声音报警 N A
area 区域设置,Json字符串 S A/H
  • 输出
ret 返回值 N
  • linkage
bit0 Ring A/H
bit1 发送邮件 A/H
bit2 截图 A/H
bit3 录像 A
bit4 Io输出 A
bit5 截图上云 A
bit6 录像上云 A
bit7 手机推送 A
bit8 白光灯联动 IVY设备(参考能力集V4 BIT2)
  • area 安霸区域Json
x N A
y N A
width N A
height N A
sensitivity N A
enable N A
  • area 海思区域Json
Json数组,内容是32位整型值,每一个整数值的含义可以查看 《Foscam IPCamera CGI User Guide-Allplatforms》移动侦测命令解释 N H
  • 备注

Foscam NVR 参数

model一定要设置,SDK通过model来判断使用的CGI,anba和hisi使用不同的CGI,
model只能从事件 IVY_CTRL_MSG_ABILITY_CHG 中获取

channel 通道号 N A/H
model NVR通道上设备model N A/H
enable 是否启用 0:关闭 1:开启 N A/H
linkage 联动,按位表示 N A/H
snapInterval 触发间隔 N A
recordTime 录像时间 N A/H
ipcAlarmSound 是否开启IPC声音报警 N A/H
triggerInterval 触发间隔 N A/H
sensitivity 灵敏度 0:low 1:normal 2:high 3:lower 4:lowest N A/H
schedule 计划时间 同声音报警 N A/H
area 区域设置,Json字符串 S A/H
  • 示例

  • input


//Foscam IPC
// Anba
{
    "enable": 1,
    "linkage": 9,
    "snapInterval": 2,
    "triggerInterval": 0,
    "moveAlarmEnable": 1,
    "pirAlarmEnable": 0,
    "schedule": [
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655
    ], 
    "area": [
        {
            "x": 100, 
            "y": 100, 
            "width": 100, 
            "height": 100, 
            "sensitivity": 1, 
            "enable": 0
        }, 
        {
            "x": 100, 
            "y": 100, 
            "width": 100, 
            "height": 100, 
            "sensitivity": 1, 
            "enable": 1
        }, 
        {
            "x": 100, 
            "y": 100, 
            "width": 100, 
            "height": 100, 
            "sensitivity": 1, 
            "enable": 1
        }
    ]
}


//Foscam IPC
//Hisi

{
    "enable": 1,
    "linkage": 9,
    "snapInterval": 2,
    "triggerInterval": 0,
    "moveAlarmEnable": 1,
    "pirAlarmEnable": 0,
    "sensitivity": 1,
    "schedule": [281474976710655, 281474976710655, 281474976710655, 281474976710655, 281474976710655, 281474976710655, 281474976710655],
    "area": [1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023]
}


// Foscam NVR
// Anba
{
    "channel": 0,
    "model":1023,
    "enable": 1,
    "linkage": 9,
    "snapInterval": 2,
    "recordTime": 10,
    "ipcAlarmSound": 1,
    "triggerInterval": 0,
    "schedule": [
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655
    ], 
    "area": [
        {
            "x": 100, 
            "y": 100, 
            "width": 100, 
            "height": 100, 
            "sensitivity": 1, 
            "enable": 0
        }, 
        {
            "x": 100, 
            "y": 100, 
            "width": 100, 
            "height": 100, 
            "sensitivity": 1, 
            "enable": 1
        }, 
        {
            "x": 100, 
            "y": 100, 
            "width": 100, 
            "height": 100, 
            "sensitivity": 1, 
            "enable": 1
        }
    ]
}


// Foscam NVR
// Hisi
{
    "channel": 0,
    "model":1023,
    "enable": 1,
    "linkage": 9,
    "recordTime": 10,
    "ipcAlarmSound": 1,
    "triggerInterval": 0,
    "sensitivity": 1
    "schedule": [
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655
    ], 
    "area": [1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023]
}

  • output

{
    "ret":0,
}

5.13 获取移动侦测

IVY_CTRL_MSG_GET_MOTION_DETECT_CONFIG = 24033

  • 支持设备
FI FN II IN
  • 输入
channel 通道号 N A/H
  • 输出
ret 返回值 N
enable 是否启用 0:关闭 1:开启 N
linkage 联动,按位表示 同设置 N
snapInterval 触发间隔 N
alarmType 报警类型 0:移动侦测 5:人体侦测 N
recordTime 录像时间 N
ipcAlarmSound 是否开启IPC声音报警 N
triggerInterval 触发间隔 N
moveAlarmEnable 移动侦测报警开关 0:关闭 1:开启 N
pirAlarmEnable pir侦测开关 0:关闭 1:开启 N
carAlarmEnable 车辆侦测开关 0:关闭 1:开启 N
petAlarmEnable 宠物侦测开关 0:关闭 1:开启 N
humanAlarmEnable 人型侦测开关 0:关闭 1:开启 N
sensitivity 灵敏度 0:low 1:normal 2:high 3:lower 4:lowest N
schedule 计划时间 同声音报警 N
area 区域设置,Json字符串 同设置 S
  • 备注

Foscam NVR 输入

channel 通道号 N A/H
model 通道上IPC的model N A/H

Foscam NVR 输出

channel 通道号 N A/H
enable 是否启用 0:关闭 1:开启 N A/H
linkage 联动,按位表示 N A/H
snapInterval 触发间隔 N A
recordTime 录像时间 N A/H
ipcAlarmSound 是否开启IPC声音报警 N A/H
triggerInterval 触发间隔 N A/H
sensitivity 灵敏度 0:low 1:normal 2:high 3:lower 4:lowest N A/H
schedule 计划时间 同声音报警 N A/H
area 区域设置,Json字符串 S A/H
  • linkage定义
bit0 A/H
bit1 mail A/H
bit2 ftp A/H
bit3 record A/H
bit4 buzzer A/H
  • 示例
  • input

// Foscam IPC / IVY IPC
None

// Foscam NVR / IVY NVR
{
    "channel": 1
}
  • output

//Foscam IPC
// Anba
{
    "enable": 1,
    "linkage": 9,
    "snapInterval": 2,
    "triggerInterval": 0,
    "moveAlarmEnable": 1,
    "pirAlarmEnable": 0,
    "schedule": [
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655
    ], 
    "area": [
        {
            "x": 100, 
            "y": 100, 
            "width": 100, 
            "height": 100, 
            "sensitivity": 1, 
            "enable": 0
        }, 
        {
            "x": 100, 
            "y": 100, 
            "width": 100, 
            "height": 100, 
            "sensitivity": 1, 
            "enable": 1
        }, 
        {
            "x": 100, 
            "y": 100, 
            "width": 100, 
            "height": 100, 
            "sensitivity": 1, 
            "enable": 1
        }
    ]
}


//Foscam IPC
//Hisi

{
    "enable": 1,
    "linkage": 9,
    "snapInterval": 2,
    "triggerInterval": 0,
    "moveAlarmEnable": 1,
    "pirAlarmEnable": 0,
    "sensitivity": 1,
    "schedule": [281474976710655, 281474976710655, 281474976710655, 281474976710655, 281474976710655, 281474976710655, 281474976710655],
    "area": [1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023]
}


// Foscam NVR
// Anba
{
    "model":1023,
    "enable": 1,
    "linkage": 9,
    "snapInterval": 2,
    "recordTime": 10,
    "ipcAlarmSound": 1,
    "triggerInterval": 0,
    "schedule": [
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655
    ], 
    "area": [
        {
            "x": 100, 
            "y": 100, 
            "width": 100, 
            "height": 100, 
            "sensitivity": 1, 
            "enable": 0
        }, 
        {
            "x": 100, 
            "y": 100, 
            "width": 100, 
            "height": 100, 
            "sensitivity": 1, 
            "enable": 1
        }, 
        {
            "x": 100, 
            "y": 100, 
            "width": 100, 
            "height": 100, 
            "sensitivity": 1, 
            "enable": 1
        }
    ]
}


// Foscam NVR
// Hisi
{
    "model":1023,
    "enable": 1,
    "linkage": 9,
    "recordTime": 10,
    "ipcAlarmSound": 1,
    "triggerInterval": 0,
    "sensitivity": 1
    "schedule": [
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655
    ], 
    "area": [1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023]
}

5.14 设置人形侦测

IVY_CTRL_MSG_SET_PEDESTRIAN_DECTECT_CONFIG = 32041

  • 支持设备
FI / II
  • 输入
字段 含义 类型 FI II
isEnable 是否开启 0:关闭 1:开启 N
isTrackEnable 0:关闭 1:开启 N
sensitivity 灵敏度 0:low 1:middle 2:high N
linkage 联动,按位表示 N
snapInterval 截图间隔 N
triggerInterval 触发间隔 N
isDrawBox 是否画框 0:NO 1:YES N ×
schedule 计划日期 同移动侦测 N ×
  • 输出
ret 返回值 N
  • linkage
bit0 Ring
bit1 发送邮件
bit2 截图
bit3 录像
bit4 Io输出
bit5 截图上云
bit6 录像上云
bit7 手机推送
  • 备注

对于Foscam设备,IVY_CTRL_MSG_SET_PEDESTRIAN_DECTECT_CONFIG 和 IVY_CTRL_MSG_SET_MOTION_DETECT_CONFIG 设置相互影响,两个命令的相同参数部分,如果一个命令设置后另外一个命令也可以获取到。IVY_CTRL_MSG_SET_MOTION_DETECT_CONFIG的区域设置也是针对IVY_CTRL_MSG_SET_PEDESTRIAN_DECTECT_CONFIG的,因为IVY_CTRL_MSG_SET_PEDESTRIAN_DECTECT_CONFIG没有设置区域的参数

  • 示例
  • input
{
    "isEnable":1,
    "isTrackEnable": 1,
    "sensitivity": 0,
    "linkage": 1,
    "snapInterval": 10,
    "triggerInterval": 0
}
  • output

{
    "ret":0
}

5.15 获取人形侦测

IVY_CTRL_MSG_GET_PEDESTRIAN_DECTECT_CONFIG = 32043

  • 支持设备
FI / II
  • 输出

| ret | 返回值 | N |

字段 含义 类型 FI II
ret 返回值 N
isEnable 是否开启 0:关闭 1:开启 N
isTrackEnable 0:关闭 1:开启 N
sensitivity 灵敏度 0:low 1:middle 2:high N
linkage 联动,按位表示 N
snapInterval 截图间隔 N
triggerInterval 触发间隔 N
isDrawBox 是否画框 0:NO 1:YES N ×
schedule 计划日期 同移动侦测 N ×
  • linkage
bit0 Ring
bit1 发送邮件
bit2 截图
bit3 录像
bit4 Io输出
bit5 截图上云
bit6 录像上云
bit7 手机推送
  • 示例

  • input

None
  • output

{
    "ret":0
    "isEnable":1,
    "isTrackEnable": 1,
    "sensitivity": 0,
    "linkage": 1,
    "snapInterval": 10,
    "triggerInterval": 0
}

5.16 设置人体侦测

IVY_CTRL_MSG_SET_HUMAN_ALARM_CONFIG = 32045

  • 支持设备
FI
  • 输入
enable 是否开启 0:关闭 1:开启 N
linkage 联动,按位表示 N
snapInterval 截图间隔 N
sensitivity 灵敏度 N
settingType N
humanCountEnable N
humanNumber N
cameraAngle N
schedule 计划时间,同声音侦测 N
triggerInterval 触发间隔 N
isHumanBoxingEnable 是否开启人体提示框 0:关闭 1:开启 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "enable":1,
    "linkage": 1,
    "snapInterval": 10,
    "sensitivity": 1,
    "settingType": 1,
    "humanCountEnable": 1,
    "humanNumber": 1,
    "cameraAngle": 10,
    "schedule": [
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655
    ],
    "triggerInterval": 10,
    "isHumanBoxingEnable": 0
}
  • output

{
    "ret":0
}

5.17 获取人体侦测

IVY_CTRL_MSG_GET_HUMAN_ALARM_CONFIG = 32047

  • 支持设备
FI
  • 输出
ret 返回值 N
enable 是否开启 0:关闭 1:开启 N
linkage 联动,按位表示 N
snapInterval 截图间隔 N
sensitivity 灵敏度 N
settingType N
humanCountEnable N
humanNumber N
cameraAngle N
schedule 计划时间,同声音侦测 N
triggerInterval 触发间隔 N
isHumanBoxingEnable 是否开启人体提示框 0:关闭 1:开启 N
  • 示例

  • input


None
  • output

{
    "ret":0
    "enable":1,
    "linkage": 1,
    "snapInterval": 10,
    "sensitivity": 1,
    "settingType": 1,
    "humanCountEnable": 1,
    "humanNumber": 1,
    "cameraAngle": 10,
    "schedule": [
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655
    ],
    "triggerInterval": 10,
    "isHumanBoxingEnable": 0
}

5.18 获取截图设置

IVY_CTRL_MSG_GET_SNAPSHOT_CONFIG = 24095

  • 支持设备
FI
  • 输出
ret 返回值 N FI
isEnable 0:关闭 1:启用 N FI
snapInterval 截图间隔,单位秒 N FI
schedule 计划时间,Json数组 N FI
snapQuality 截图质量 low:0 medium:1 high:2 N FI
saveLocation 保存位置 0:不保存 1:SD 2:FTP 3: SD and Cloud N FI
isEnableFileName 是否可以指定图片名字 0:启用 1:关闭 N FI
fileName 图片名字 (BASE64编码) S FI
  • 示例

  • input


None
  • output

{
    "ret":0,
    "isEnable":1,
    "snapInterval": 10,
    "snapQuality": 1,
    "saveLocation": 1,
    "isEnableFileName": 1,
    "fileName": "ZmlsZW5hbWU=",
    "schedule": [
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655
    ]
}

5.19 设置截图

IVY_CTRL_MSG_SET_SNAPSHOT_CONFIG = 24097

  • 支持设备
FI
  • 输入
isEnable 0:关闭 1:启用 N FI
snapInterval 截图间隔,单位秒 N FI
schedule 计划时间,Json数组 N FI
snapQuality 截图质量 low:0 medium:1 high:2 N FI
saveLocation 保存位置 0:不保存 1:SD 2:FTP 3: SD and Cloud N FI
isEnableFileName 是否可以指定图片名字 0:启用 1:关闭 N FI
fileName 图片名字 (BASE64编码) S FI
  • 输出
ret 返回值 N FI
  • 示例

  • input


{
    "isEnable":1,
    "snapInterval": 10,
    "snapQuality": 1,
    "saveLocation": 1,
    "isEnableFileName": 1,
    "fileName": "ZmlsZW5hbWU=",
    "schedule": [
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655
    ]
}
  • output

{
    "ret":0
}

5.20 设置PC报警

IVY_CTRL_MSG_SET_PC_AUDIO_ALARM_CONFIG = 32057

  • 支持设备
FI
  • 输入
flag 按位表示,bit0 移动侦测 bit1 声音侦测 N FI
  • 输出
ret 返回值 N FI
  • 示例

  • input


{
    "flag":1
}
  • output

{
    "ret":0
}

5.21 获取PC报警配置

IVY_CTRL_MSG_GET_PC_AUDIO_ALARM_CONFIG = 32059

  • 支持设备
FI
  • 输出
ret 返回值 N FI
flag 按位表示,bit0 移动侦测 bit1 声音侦测 N FI
  • 示例

  • input


None
  • output

{
    "ret":0,
    "flag":1
}

5.22 设置HTTP URL,当设备触发报警便于设备向URL指定的位置发送一些内容。

IVY_CTRL_MSG_SET_ALARM_HTTP_SERVER = 32061

  • 支持设备
FI
  • 输入
alarmUrl URL(需要BASE64编码) S
mdLinkUrl URL(需要BASE64编码) S
sdLinkUrl URL(需要BASE64编码) S
humanLinkUrl URL(需要BASE64编码) S
bkLinkUrl URL(需要BASE64编码) S
faceLinkUrl URL(需要BASE64编码) S
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "alarmUrl":"d3d3Lm15dXJsLmNvbQ=="
}
  • output

{
    "ret":0
}
  • 备注

每一个字段值都可以为空,或者Json中没有字段,SDK会默认这个字段为空。
不同版本的Foscam设备行为不一致,有两种行为:

  1. 无论设置什么字段,都只有alarmUrl生效。
  2. 不同的url各自生效,如果一个url为空,设备默认执行alarmUrl的字段。

两种行为的判断方式:
可以根据对应获命令的响应来判断,如果只有alarmUrl,设备就是第一种行为,否则为第二种行为。

5.23 获取HTTP URL

IVY_CTRL_MSG_GET_ALARM_HTTP_SERVER = 32063

  • 支持设备
FI
  • 输入

None

  • 输出
ret 返回值 N
alarmUrl URL(需要BASE64解码) S
mdLinkUrl URL(需要BASE64解码) S
sdLinkUrl URL(需要BASE64解码) S
humanLinkUrl URL(需要BASE64解码) S
bkLinkUrl URL(需要BASE64解码) S
faceLinkUrl URL(需要BASE64解码) S
  • 示例

  • input


None
  • output

{
    "ret":0,
    "alarmUrl":"d3d3Lm15dXJsLmNvbQ=="
}
  • 备注

不是每一个字段都一定存在。

SDK从底层获取数据后base64编码了一次,但由于直接从底层获取到的正确数据也是base64编码过的,所以要得到真正的URL,需要应用拿到数据后base64解码两次。这种操作存在一些问题,但是由于SDK已经再使用中,所以暂时先不修改。

5.24 设置报警声音大小 (V3 bit6)

IVY_CTRL_MSG_SET_BEE_VOLUME = 32075

  • 支持设备
II
  • 输入
channel 通道号,如果是IPC是可以不填 N
volume 音量大小0-100 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "volume": 98
}
  • output

{
    "ret":0
}
  • 备注

这个报警音量是单独的,和对讲的音量不一样。

5.25 获取报警声音大小 (V3 bit6)

IVY_CTRL_MSG_GET_BEE_VOLUME = 32077

  • 支持设备
II
  • 输入
channel 通道号,如果是IPC是可以不填 N
  • 输出
ret 返回值 N
volume 音量大小0-100 N
  • 示例

  • input


None
  • output

{
    "ret":0,
    "volume": 98
}
  • 备注

这个报警音量是单独的,和对讲的音量不一样。

5.26 设置PIR侦测 (V1 bit19)

IVY_CTRL_MSG_SET_PIR_ALARM_CONFIG = 32071

  • 支持设备
II
  • 输入
channel 通道号,如果是IPC是可以不填 N
isPirEnable PIR侦测开关 0:关 1:开 N
sensitivity 灵敏度 0:low,1:medium,2:High N
isHumanFilter 人形过滤开关 0:关 1:开 N
isLingerDetetctEnable 徘徊检测开关 0:关 1:开 N
lingerTime 徘徊时间 单位 second N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "isPirEnable": 1,
    "sensitivity": 1,
    "isHumanFilter": 1,
    "isLingerDetetctEnable": 1,
    "lingerTime": 10
}
  • output

{
    "ret":0
}

5.27 获取PIR侦测 (V1 bit19)

IVY_CTRL_MSG_GET_PIR_ALARM_CONFIG = 32073

  • 支持设备
II
  • 输入
channel 通道号,如果是IPC是可以不填 N
  • 输出
ret 返回值 N
isPirEnable PIR侦测开关 0:关 1:开 N
sensitivity 灵敏度 0:low,1:medium,2:High N
isHumanFilter 人形过滤开关 0:关 1:开 N
isLingerDetetctEnable 徘徊检测开关 0:关 1:开 N
lingerTime 徘徊时间 单位 second N
  • 示例

  • input


None
  • output

{
    "ret":0,
    "isPirEnable": 1,
    "sensitivity": 1,
    "isHumanFilter": 1,
    "isLingerDetetctEnable": 1,
    "lingerTime": 10
}

5.28 设置SIREN报警设置

IVY_CTRL_MSG_SET_SIREN_KEY_CALL_CONFIG = 32079

  • 支持设备
II
  • 输入
channel 通道号,如果是IPC是可以不填 N
isEnable 1:开启 0:关闭 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "isEnable":0
}
  • output

{
    "ret":0
}

5.29 获取SIREN报警设置

IVY_CTRL_MSG_GET_SIREN_KEY_CALL_CONFIG = 32081

  • 支持设备
II
  • 输入
channel 通道号,如果是IPC是可以不填 N
  • 输出
ret 返回值 N
isEnable 1:开启 0:关闭 N
  • 示例

  • input


{
    "channel":0
}
  • output

{
    "ret":0    ,
    "isEnable":0    
}

5.30 设置SIREN报警联动

IVY_CTRL_MSG_SET_SIREN_LINKAGE_CONFIG = 32083

  • 支持设备
II
  • 输入
channel 通道号,如果是IPC是可以不填 N
isEnable 1:开启 0:关闭 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "channel":0,
    "isEnable":0
}
  • output

{
    "ret":0    
}

5.31 获取SIREN联动配置

IVY_CTRL_MSG_GET_SIREN_LINKAGE_CONFIG = 32085

  • 支持设备
II
  • 输入
channel 通道号,如果是IPC是可以不填 N
  • 输出
ret 返回值 N
isEnable 1:开启 0:关闭 N
  • 示例

  • input


{
    "channel":0
}
  • output

{
    "ret":0    ,
    "isEnable":0    
}

5.32 设置机动车检测报警配置

IVY_CTRL_MSG_SET_MOTOR_VEHICLE_ALARM_CONFIG = 32091

  • 支持设备
II FI
  • 输入
参数 含义 类型 II FI
channel 通道号,如果是IPC是可以不填 N
isEnable 是否开启 N
linkage 联动 N ×
trackEnable 追踪开启 N ×
snapInterval 截图间隔 单位sec N ×
sensitivity 灵敏度 N ×
triggerInterval 触发间隔 单位sec N ×
  • 输出
ret 返回值 N
  • linkage
bit0 ring
bit1 send mail
bit2 snap picture
bit3 record
  • sensitivity
0 low
1 normal
2 high
3 lower
4 lowest
  • 示例

  • input


{
    "channel":0"isEnable":1
}
  • output

{
    "ret":0    
}

5.33 获取机动车检测报警配置

IVY_CTRL_MSG_GET_MOTOR_VEHICLE_ALARM_CONFIG = 32093

  • 支持设备
II
  • 输入
channel 通道号,如果是IPC是可以不填 N
  • 输出
参数 含义 类型 II FI
ret 0 成功 其他 失败 N
channel 通道号,如果是IPC是可以不填 N
isEnable 是否开启 N
linkage 联动 N ×
trackEnable 追踪开启 N ×
snapInterval 截图间隔 单位sec N ×
sensitivity 灵敏度 N ×
triggerInterval 触发间隔 单位sec N ×
  • 示例

  • input


{
    "channel":0
}
  • output

{
    "ret":0    ,
    "isEnable":1
}

5.34 设置非机动车检测报警配置

IVY_CTRL_MSG_SET_NON_MOTOR_VEHICLE_ALARM_CONFIG = 32095

  • 支持设备
II
  • 输入
channel 通道号,如果是IPC是可以不填 N
isEnable 是否开启 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "channel":0"isEnable":1
}
  • output

{
    "ret":0    
}

5.35 获取非机动车检测报警配置

IVY_CTRL_MSG_GET_NON_MOTOR_VEHICLE_ALARM_CONFIG = 32097

  • 支持设备
II
  • 输入
channel 通道号,如果是IPC是可以不填 N
  • 输出
ret 返回值 N
isEnable 是否开启 N
  • 示例

  • input


{
    "channel":0
}
  • output

{
    "ret":0    ,
    "isEnable":1
}

5.36 设置人脸检测报警配置

IVY_CTRL_MSG_SET_FACE_DETECT_ALARM_CONFIG = 32099

  • 支持设备
II
  • 输入
channel 通道号,如果是IPC是可以不填 N
isEnable 是否开启 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "channel":0"isEnable":1
}
  • output

{
    "ret":0    
}

5.37 获取人脸检测报警配置

IVY_CTRL_MSG_GET_FACE_DETECT_ALARM_CONFIG = 32101

  • 支持设备
II
  • 输入
channel 通道号,如果是IPC是可以不填 N
  • 输出
ret 返回值 N
isEnable 是否开启 N
  • 示例

  • input


{
    "channel":0
}
  • output

{
    "ret":0    ,
    "isEnable":1
}

5.38 设置人形追踪 (V2 BIT28)

IVY_CTRL_MSG_SET_HUMAN_TRACKING_CONFIG = 32107

  • 支持设备
FI II
  • 输入
enable 1:开启 0:关闭 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "enable":1
}
  • output

{
    "ret":0    
}

5.39 获取人形追踪(V2 BIT28)

IVY_CTRL_MSG_GET_HUMAN_TRACKING_CONFIG = 32109

  • 支持设备
FI II
  • 输入

NONE

  • 输出
ret 返回值 N
enable 1:开启 0:关闭 N
  • 示例

  • input


none
  • output

{
    "ret":0,
    "enable":1
}

5.40 设置移动追踪(V4 BIT8)

IVY_CTRL_MSG_SET_DYNAMIC_TRACK_CONFIG = 32067

  • 支持设备
II
  • 输入
isEnable 1:开启 0:关闭 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "isEnable":1
}
  • output

{
    "ret":0
}

5.41 获取移动追踪(V4 BIT8)

IVY_CTRL_MSG_GET_DYNAMIC_TRACK_CONFIG = 32069

  • 支持设备
II
  • 输入

None

  • 输出
ret 返回值 N
isEnable 1:开启 0:关闭 N
  • 示例

  • input


none
  • output

{
    "ret":0,
    "isEnable":1
}

5.42 设置设备智能检测(V4 BIT11)

IVY_CTRL_MSG_SET_INTELLIGENT_DETECT_CONFIG = 32111

  • 支持设备
II
  • 输入
channel 通道号 N
enableType bit0:人形侦测;bit1:车辆侦测;bit2:非法停车侦测;bit3:区域侦测;bit4:越界侦测;bit5:遮挡侦测 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "channel":0,
    "enableType":1
}
  • output

{
    "ret":0
}

5.43 获取设备智能检测(V4 BIT11)

IVY_CTRL_MSG_GET_INTELLIGENT_DETECT_CONFIG = 32113

  • 支持设备
II
  • 输入

none

  • 输出
ret 返回值 N
enableType bit0:人形侦测;bit1:车辆侦测;bit2:非法停车侦测;bit3:区域侦测;bit4:越界侦测;bit5:遮挡侦测 N
  • 示例

  • input


none
  • output

{
    "ret":0,
    "channel":0,
    "enableType":1
}

5.44 设置越线检测(V4 BIT11)

IVY_CTRL_MSG_SET_CROSSLINE_DETECT_CONFIG = 32115

  • 支持设备
II
  • 输入
channel 通道号 N
x0 端点A的x轴坐标 N
y0 端点A的y轴坐标 N
x1 端点B的x轴坐标 N
y1 端点B的y轴坐标 N
direction 方向:0-正反向,1-反方向,2-双向 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "channel":0,
    "x0":1,
    "y0":100,
    "x1":121,
    "y1":63,
    "direction":2
}
  • output

{
    "ret":0
}

5.45 获取越线检测(V4 BIT11)

IVY_CTRL_MSG_GET_CROSSLINE_DETECT_CONFIG = 32117

  • 支持设备
II
  • 输入
channel 通道号 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "channel":0
}
  • output

{
    "ret":0"x0":1,
    "y0":100,
    "x1":121,
    "y1":63,
    "direction":2
}

6 云录像/SD卡录像

6.1 设置设备录像(SD卡录像)是否包含音频(暂不支持)

IVY_CTRL_MSG_SET_RECORD_HAS_AUDIO = 28029

  • 支持设备
FI
  • 输入
enable 0:没有音频 1:有音频 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "enable":0
}

  • output

{
    "ret":0
}

6.1 获取设备录像(SD卡录像)是否包含音频(暂不支持)

IVY_CTRL_MSG_GET_RECORD_HAS_AUDIO = 28031

  • 支持设备
FI
  • 输出
ret 返回值 N
enable 0:没有音频 1:有音频 N
  • 示例

  • input


None

  • output

{
    "ret":0,
    "enable":0
}

6.2 设置录像(SD卡录像/云录)模式

IVY_CTRL_MSG_SET_RECORD_MODE = 28033

  • 支持设备
FI
  • 输入
mode 模式 0 / 1 N
duration 单位秒,录像长度,针对mode为1的情况 N
maxDuration 单位秒,录像长度,针对mode为2的情况 N
  • 输出
ret 返回值 N
  • mode
0 只要有报警,一致录像,直到没有录像位置;但是最大长度受maxDuration限制
1 固定时长,长度由duration指定
  • 示例

  • input


{
    "mode":0,
    "duration":30,
    "maxDuration":30
}

  • output

{
    "ret":0
}

6.3 获取录像(SD卡录像/云录)模式

IVY_CTRL_MSG_GET_RECORD_MODE = 28035

  • 支持设备
FI
  • 输出
ret 返回值 N
mode 模式 同设置 N
duration 单位秒,录像长度,针对mode为1的情况 N
maxDuration 单位秒,录像长度,针对mode为2的情况 N
  • 示例

  • input


None
  • output

{
    "ret":0,
    "mode":0,
    "duration":30,
    "maxDuration":30
}

6.4 设置录像保存位置

IVY_CTRL_MSG_SET_RECORD_STORE_LOCATION = 28037

  • 支持设备
FI
  • 输入
location 存储位置 0:none 1:SD 2: FTP 3:SD and Cloud N
addr 地址 如果是FTP,需要填写FTP地址,如果不是,忽略此参数(暂未支持) S
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "location":3,
    "addr":""
}
  • output

{
    "ret":0,
}

6.5 获取录像保存位置

IVY_CTRL_MSG_GET_RECORD_STORE_LOCATION = 28039

  • 支持设备
FI
  • 输出
ret 返回值 N
location 存储位置 0:none 1:SD 2: FTP 3: SD and Cloud N
addr 地址 如果是FTP,需要填写FTP地址,如果不是,忽略此参数 (暂未支持) S
  • 示例

  • input


None
  • output

{
    "ret":0,
    "location":3,
    "addr":""
}

6.6 获取SD卡信息

IVY_CTRL_MSG_GET_SD_CARD_INFO = 26037

  • 支持设备
FI II
  • 输出
ret 返回值 N FI II
isExist 是否存在SD卡,0:不存在 1:存在 N FI II
freeSpace 64位无符号数据,剩余空间,单位字节 N FI II
totalSpace 64位无符号数据,总空间,单位字节 N FI II
sdFormatError 0: 正常 其他值:有错误 N FI
status 0: 正常 1:有错误 对于APP,是否显示这一项,看能力集合V4 BIT3 N II
  • 示例

  • input


None
  • output

{
    "ret":0,
    "isExist":1,
    "freeSpace":193029,
    "totalSpace":2049202
}

6.7 获取报警录像时长设置

IVY_CTRL_MSG_GET_ALARM_TIME_CONFIG = 32049

  • 支持设备
FI II
  • 输出
字段 含义 类型 FI II
ret 返回值 N
isEnablePreRecord 是否开启预录 N
preRecordSecs 预录时间,单位秒 N
recordSecs 录像时间 N
  • 示例

  • input


None
  • output

{
    "ret":0,
    "isEnablePreRecord":1,
    "preRecordSecs":30,
    "recordSecs":30
}

6.8 设置报警录像时长

IVY_CTRL_MSG_SET_ALARM_TIME_CONFIG = 32051

  • 支持设备
FI II
  • 输入
字段 含义 类型 FI II
isEnablePreRecord 是否开启预录 N
preRecordSecs 预录时间,单位秒 N
recordSecs 录像时间,如果是IVY设备,0 表示 动态时长(需要能力集VAL3 bit28支持才生效) N
  • 输出
ret 返回值 N FI
  • 示例

  • input


{
    "isEnablePreRecord":1,
    "preRecordSecs":30,
    "recordSecs":30
}
  • output

{
    "ret":0
}

6.9 获取报警本地录像时长

IVY_CTRL_MSG_GET_LOCAL_ALARM_TIME_CONFIG = 32053

  • 支持设备
FI
  • 输出
ret 返回值 N FI
isEnable 是否开启本地录像 N FI
recordSecs 录像时间 N FI
  • 示例

  • input


None
  • output

{
    "isEnable":0,
    "recordSecs":20,
    "ret":0
}

6.10 设置报警本地录像时长

IVY_CTRL_MSG_SET_LOCAL_ALRAM_TIME_CONFIG = 32055

  • 支持设备
FI
  • 输入
isEnable 是否开启本地录像 N FI
recordSecs 录像时间 N FI
  • 输出
ret 返回值 N FI
  • 示例

  • input


{
    "isEnable":0,
    "recordSecs":20
}
  • output

{
    "ret":0
}

6.11 获取计划录像配置(FI:只支持SD/FTP录像)

IVY_CTRL_MSG_GET_SCHEDULE_RECORD_CONFIG = 28049

  • 支持设备
FI FN IF
  • 输入
channel 通道号 N FN IF
  • 输出
ret 返回值 N FI FN IF
isEnable 是否开启计划录像 0:关闭 1:开启 N FI FN IF
recordLevel 录像级别? N FI
spaceFullMode 空间满后录像处理方式 0:覆盖 1:停止 N FI
isEnableAudio 0:不包含音频 1:包含音频 N FI
schedule 计划时间 Json数组 N FI FN IF
streamType 录像码流类型 0: 主码流 1:子码流 N FI
  • 示例

  • input


None
  • output

{
    "isEnable":1,
    "recordLevel":1,
    "spaceFullMode":0,
    "isEnableAudio":0,
    "schedule": [
            281474976710655, 
            281474976710655, 
            281474976710655, 
            281474976710655, 
            281474976710655, 
            281474976710655, 
            281474976710655
        ]
    "streamType":0,
    "ret":0
}

6.12 设置计划录像(只支持SD/FTP录像)

IVY_CTRL_MSG_SET_SCHEDULE_RECORD_CONFIG = 28051

  • 支持设备
FI / FN / IF
  • 输入
isEnable 是否开启计划录像 0:关闭 1:开启 N FI FN IF
recordLevel 录像级别 N FI
spaceFullMode 空间满后录像处理方式 0:覆盖 1:停止 N FI
isEnableAudio 0:不包含音频 1:包含音频 N FI
schedule 计划时间 Json数组 N FI FN IF
streamType 录像码流类型 0: 主码流 1:子码流 N FI
channel 通道号 N FN IF
  • 输出
ret 返回值 N FI FN IF
  • 备注

如果是Foscam IPC,model范围在3000-4000之间,开区间,recordLevel为2,否则recordLevel为0

  • 示例

  • input


{
    "isEnable":1,
    "recordLevel":1,
    "spaceFullMode":0,
    "isEnableAudio":0,
    "schedule": [
            281474976710655, 
            281474976710655, 
            281474976710655, 
            281474976710655, 
            281474976710655, 
            281474976710655, 
            281474976710655
        ]
    "streamType":0
}
  • output

{
    "ret":0
}

6.13 设置云录像/SD卡报警录像是否包含音频

IVY_CTRL_MSG_SET_CLOUD_AND_SD_ALARM_RECORD_HAS_AUDIO = 26163

  • 支持设备
FI
  • 输入
enable 0:没有音频 1:有音频 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "enable":0
}

  • output

{
    "ret":0
}

6.14 获取云录像/SD卡报警录像是否包含音频

IVY_CTRL_MSG_GET_CLOUD_AND_SD_ALARM_RECORD_HAS_AUDIO = 26165

  • 支持设备
FI
  • 输出
ret 返回值 N
enable 0:没有音频 1:有音频 N
  • 示例

  • input


None

  • output

{
    "ret":0,
    "enable":0
}

6.15 获取某个月中有SD卡录像的日期

IVY_CTRL_MSG_GET_RECORD_DAYS_FOR_MONTH = 28057

  • 支持设备
II
  • 输入
channel 通道号 N
year 当前年份 N
month 月份 N
  • 输出
ret 返回值 N
days bit0 - bit30 表示 1日-31日,有录像对应bit为1 N
  • 示例

  • input


{
    "channel":0,
    "year":2022,
    "month":1
}

  • output

{
    "ret":0,
    "days":2
}

6.16 格式化SD卡

IVY_CTRL_MSG_SD_CARD_FORMAT = 26039

  • 支持设备
II
  • 输入
channel 通道号 N
  • 输出
ret 返回值,如果是 -21,表示正在格式化中,需要从事件(IVY_CTRL_MSG_SDCARD_FORMAT_RESULT_CHG=42063)中获取最后格式化的结果 N
  • 示例

  • input


{
    "channel":0
}

  • output

{
    "ret":-21
}

6.17 设置SD卡录像码流

IVY_CTRL_MSG_SET_RECODE_STREAM_TYPE = 28063

  • 支持设备
II
  • 输入
channel 通道号 N
streamType 0:主码流 1:子码流 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "channel":0"streamType":0
}

  • output

{
    "ret":0
}

6.18 获取SD卡录像码流

IVY_CTRL_MSG_GET_RECODE_STREAM_TYPE = 28065

  • 支持设备
II
  • 输入
channel 通道号 N
  • 输出
ret 返回值 N
streamType 0:主码流 1:子码流 N
  • 示例

  • input


{
    "channel":0
}

  • output

{
    "ret":0.
    "streamType":0
}

7 云平台相关

7.1 激活设备内第三方公司算法

IVY_CTRL_MSG_SET_ENABLE_ALGORITHM = 28041

  • 支持设备
FI
  • 输入
license 授权码,需要从云平台获取 S
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "license":"12FDADA32FDASFD121FDA"
}
  • output

{
    "ret":0
}

7.2 获取设备内第三方公司算法license

IVY_CTRL_MSG_GET_ENABLE_ALGORITHM = 28043

  • 支持设备
FI
  • 输出
ret 返回值 N
license 授权码 S
  • 示例

  • input


None
  • output

{
    "ret":0,
    "license":"12FDADA32FDASFD121FDA"
}

7.3 设置RTMP

IVY_CTRL_MSG_SET_RTMP_CONFIG = 34027

  • 支持设备
FI FB
  • 输入
isEnable 0:关闭 1:开启 N
iProperty 默认是1 N
isEnableAudio 0:关闭 1:开启 N
isMainStream 0:子码流 1:主码流 N
szStreamId S
szPublishToken S
szGuid S
szDevId S
szAccessToken S
szPortal S
szSecurityPortal S
channelSvrNum N FB
channelSvrEnableBits N FB
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "isEnable":1,
    "iProperty":1,
    "isEnableAudio":1,
    "isMainStream":1,
    "szStreamId":"AFDVE3431222222222222222222",
    "szPublishToken":"1039IKGSSO3K",
    "szGuid":"93005LFKOEMFO35SVGS",
    "szDevId":"123FSF5FDSLFK3GDV112VGS",
    "szAccessToken":"MDMIO3L2GKLLS",
    "szPortal":"HTTP://WWW.TEST.COM",
    "szSecurityPortal":"https://www.test.com"
}
  • output

{
    "ret":0
}

7.4 获取RTMP

IVY_CTRL_MSG_GET_RTMP_CONFIG = 34029

  • 支持设备
FI FB
  • 输出
ret 返回值 N
isEnable 0:关闭 1:开启 N
iProperty 默认是1 N
isEnableAudio 0:关闭 1:开启 N
isMainStream 0:子码流 1:主码流 N
szStreamId S
szPublishToken S
szGuid S
szDevId S
szAccessToken S
szPortal S
szSecurityPortal S
channelSvrNum N
channelSvrEnableBits N
  • 示例

  • input


None
  • output

{
    "ret":0,
    "isEnable":1,
    "iProperty":1,
    "isEnableAudio":1,
    "isMainStream":1,
    "szStreamId":"AFDVE3431222222222222222222",
    "szPublishToken":"1039IKGSSO3K",
    "szGuid":"93005LFKOEMFO35SVGS",
    "szDevId":"123FSF5FDSLFK3GDV112VGS",
    "szAccessToken":"MDMIO3L2GKLLS",
    "szPortal":"HTTP://WWW.TEST.COM",
    "szSecurityPortal":"https://www.test.com"
}

7.5 设置推送

IVY_CTRL_MSG_SET_PUSH_CONFIG = 34019

  • 支持设备
FI FB II
  • 输入
channel 通道号 N II/FI/FB
isEnable 0:关闭 1:开启 N II/FI/FB
pushServer 1:baidu 255:foscam N II/FI/FB
port 小于0:关闭fos config 大于等于0:开启fos config N II/FI/FB
richMediaEnable 0:关闭 1:开启 N II/FI/FB
richMediaType 默认值1 N II/FI/FB
fosTag S II/FI/FB
server S II/FI/FB
securityServer S FI/FB
securityPort S FI/FB
supportRichMedia 是否支持富媒体 0:不支持 1:支持 N FI
  • 输出
ret 返回值 N
  • 设备应填字段
bool isUseSecurity = 请求云平台();
bool supportRichMedia = 请求云平台();

// II
Json = {
    "channel":...,
    "isEnable":...,
    "pushServer":...,
    "port":...,
    "richMediaEnable":...,
    "richMediaType":...,
    "fosTag":...,
    "server":...,
    "securityServer":...,
    "securityPort":...

}

// FI
if (supportRichMedia == 1)
{
    if (isUseSecurity)
    {
        Json = {
        "isEnable":...,
        "pushServer":...,
        "port":...,
        "richMediaEnable":...,
        "richMediaType":...,
        "fosTag":...,
        "server":...,
        "securityServer":...,
        "securityPort":...
        "supportRichMedia":1
        }
    }
    else
    {
        Json = {
            "isEnable":...,
            "pushServer":...,
            "port":...,
            "richMediaEnable":...,
            "richMediaType":...,
            "fosTag":...,
            "server":...,
            "supportRichMedia":1
        }
    }
} 
else
{
    if (isUseSecurity)
    {
        Json = {
        "isEnable":...,
        "pushServer":...,
        "port":...,
        "fosTag":...,
        "server":...,
        "securityServer":...,
        "securityPort":...
        "supportRichMedia":0
        }
    }
    else
    {
        Json = {
            "isEnable":...,
            "pushServer":...,
            "port":...,
            "fosTag":...,
            "server":...,
            "supportRichMedia":0
        }
    }    
}

7.6 获取推送

IVY_CTRL_MSG_GET_PUSH_CONFIG = 34021

  • 支持设备
FI FB II
  • 输入
channel 通道号 N
  • 输出
ret 返回值 N
isEnable 0:关闭 1:开启 N
pushServer 1:baidu 255:foscam N
port < 0:关闭fos config > = 0:开启fos config N
richMediaEnable 0:关闭 1:开启 N
richMediaType 默认值1 N
fosTag S
server S
securityServer S
securityPort S

7.7 设置云配置

IVY_CTRL_MSG_SET_CLOUD_CONFIG = 34023

  • 支持设备
FI
  • 输入
token S
isEnable 这个值可以从IVY_CTRL_MSG_DROPBOX_GET_CLOUD_CONFIG中获取,SDK没有实现对应的IVY_CTRL_MSG_GET_CLOUD_CONFIG。这个不是一个必要字段,如果没有isEnable,就是设置和双向认证,如果有isEnable,就是既设置双向认证,又设置dropbox开关 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "token":"AWL14MSMFL23AFKDKFK",
    "isEnable":1
}
  • output

{
    "ret":0
}

7.8 获取云配置

IVY_CTRL_MSG_GET_CLOUD_CONFIG = 34025

  • 支持设备
FI
  • 输出
ret 返回值 N
szSubToken S
  • 示例

  • input


None
  • output

{
    "ret":0,
    "szSubToken":"AWL14MSMFL23AFKDKFK"
}

7.9 alexa

7.9.1 设置alexa启用状态

IVY_CTRL_MSG_SET_ALEXA_ENABLE = 34031

  • 支持设备
FI II
  • 输入
enable 0:关闭 1:开启 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "enable":0
}
  • output

{
    "ret":0
}

7.9.2 获取alexa启用状态

IVY_CTRL_MSG_GET_ALEXA_ENABLE = 34033

  • 支持设备
FI II
  • 输出
ret 返回值 N
enable 0:关闭 1:开启 N
  • 示例

  • input


None
  • output

{
    "ret":0,
    "enable":0
}

7.9.3 alexa休眠

IVY_CTRL_MSG_SET_ALEXA_SLEEP = 34035

  • 支持设备
FI II
  • 输出
ret 返回值 N
  • 示例

  • input


None
  • output

{
    "ret":0,
}

7.9.4 设置alexa 服务器地址

IVY_CTRL_MSG_SET_ALEXA_SERVER = 34037

  • 支持设备
FI II
  • 输入
server 地址 S
port N
securityServer 双向认证地址 S
securityPort 双向认证端口 N
alexaTag S
  • 输出
ret 返回值 N
  • 示例

  • input

{
    "server":"http://www.test.com",
    "port":88,
    "securityServer":"https://www.test1.com",
    "securityPort":443,
    "alexaTag":"LSKFKLTEWV211231"
}

  • output

{
    "ret":0
}

7.9.5 获取alexa 服务器地址

IVY_CTRL_MSG_GET_ALEXA_SERVER = 34039

  • 支持设备
FI II
  • 输出
ret 返回值 N
server 地址 S
port N
securityServer 双向认证地址 S
securityPort 双向认证端口 N
alexaTag S
  • 示例

  • input


None
  • output

{
    "ret":0,
    "server":"http://www.test.com",
    "port":88,
    "securityServer":"https://www.test1.com",
    "securityPort":443,
    "alexaTag":"LSKFKLTEWV211231"
}

7.9.6 唤醒alexa

IVY_CTRL_MSG_SET_ALEXA_WAKEUP = 34041

  • 支持设备
FI II
  • 输出
ret 返回值 N
  • 示例

  • input


None
  • output

{
    "ret":0
}

7.9.7 获取alexa状态

IVY_CTRL_MSG_SET_ALEXA_WAKEUP = 34039

  • 支持设备
FI II
  • 输出
ret 返回值 N
state 状态 N
  • state状态定义
未知 -1 N
禁止休眠 0 N
休眠状态 1 N
唤醒状态 2 N
休眠结束? 3 N
  • 示例

  • input


None
  • output

{
    "ret":0"state":2
}

7.9.8 设置启用ALEXA时设备自动切换到H264

IVY_CTRL_MSG_SET_SWITCH_H264_H265_RESOLUATION_FOR_ALEAX = 34065

  • 支持设备
II
  • 输入
enable 0:关闭 1:开启 N
  • 输出
ret 结果 N
  • 示例

  • input


{
    "enable":1
}
  • output

{
    "ret":0
}

7.9.9 获取启用ALEXA时设备自动切换到H264

IVY_CTRL_MSG_GET_SWITCH_H264_H265_RESOLUATION_FOR_ALEAX = 34067

  • 支持设备
II
  • 输入

NONE

  • 输出
enable 0:关闭 1:开启 N
ret 结果 N
  • 示例

  • input


None
  • output

{
    "ret":0,
    "enable":1
}

7.15 设置基站启用云存储

IVY_CTRL_MSG_SET_CHANNEL_SVR_EANBLE_BITS = 34045

  • 支持设备
FB
  • 输入
channelBits 通道号,按位表示 N FN
  • 输出
ret 返回值 N FN
  • 示例

  • input


{
    "channelBits":1
}
  • output

{
    "ret":0
}

7.16 获取基站启用云存储

IVY_CTRL_MSG_GET_CHANNEL_SVR_EANBLE_BITS = 34047

FB
  • 输出
ret 返回值 N FN
channelBits 通道号,按位表示 N FN
  • 示例

  • input


None
  • output

{
    "ret":0,
    "channelBits":1
}

7.18 DropBox

7.18.1 Foscam OEM IPC 命令,不知道啥意思,跟DROPBOX相关

IVY_CTRL_MSG_DROPBOX_GET_CLOUD_TOKEN = 34049

  • 支持设备
FI
  • 输入
isEnable N
cloudServer N
code S
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "isEnable":1,
    "cloudServer":"http://www.cloudserver.com",
    "code":"AFDAFDASFDASFDAS"
}
  • output

{
    "ret":0
}

7.18.2 Foscam OEM IPC 命令,不知道啥意思,跟DROPBOX相关

IVY_CTRL_MSG_DROPBOX_GET_CLOUD_QUOTA = 34051

  • 支持设备
FI
  • 输出
ret 返回值 N
isEnable N
cloudServer N
code S
  • 示例

  • input


None
  • output

{
    "ret":0,
    "isEnable":1,
    "cloudServer":"http://www.cloudserver.com",
    "code":"AFDAFDASFDASFDAS"
}

7.18.3 Foscam OEM IPC 命令,不知道啥意思,跟DROPBOX相关

IVY_CTRL_MSG_DROPBOX_TEST_CLOUD_SERVER = 34053

  • 支持设备
FI
  • 输入
isEnable N
cloudServer N
code S
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "isEnable":1,
    "cloudServer":"http://www.cloudserver.com",
    "code":"AFDAFDASFDASFDAS"
}
  • output

{
    "ret":0
}

7.18.4 Foscam OEM IPC 命令,不知道啥意思,跟DROPBOX相关

IVY_CTRL_MSG_DROPBOX_GET_CLOUD_CONFIG = 34055

  • 支持设备
FI
  • 输出
ret 返回值 N
isEnable N
statusMsg S
authAddr S
quota S
used S

7.18.5 Foscam OEM IPC 命令,不知道啥意思,跟DROPBOX相关

IVY_CTRL_MSG_DROPBOX_SET_RECORD_PATH = 28053

  • 支持设备
FI
  • 输入
path N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "path":1,
}
  • output

{
    "ret":0
}

7.18.6 Foscam OEM IPC 命令,不知道啥意思,跟DROPBOX相关

IVY_CTRL_MSG_DROPBOX_GET_SNAP_CONFIG = 24102

  • 支持设备
FI
  • 输出
ret 返回值 N
snapPicQuality 返回值 N
  • 示例

  • input


None
  • output

{
    "ret":0,
    "snapPicQuality":1
}

7.18.7 Foscam OEM IPC 命令,不知道啥意思,跟DROPBOX相关

IVY_CTRL_MSG_DROPBOX_SET_SNAP_CONFIG = 24104

  • 支持设备
FI
  • 输入
snapQuality N
saveLocation N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "snapQuality":1,
    "saveLocation":1
}
  • output

{
    "ret":0
}

7.18.8 Foscam OEM IPC 命令,不知道啥意思,跟DROPBOX相关

IVY_CTRL_MSG_DROPBOX_SET_CLOUD_CONFIG = 34057

  • 支持设备
FI
  • 输入
isEnable N
cloudServer N
code S
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "isEnable":1,
    "code":"AFDAFDASFASFASDF",
    "cloudServer":1
}
  • output

{
    "ret":0
}

7.19 获取云错误码

IVY_CTRL_MSG_GET_CLOUD_ERROR_CODE = 30072

  • 支持设备
FI
  • 输出
ret 返回值 N
errCode 错误码 N
reserve 保留 N
  • errCode定义
1 Initialization N
0 Success N
-1 Network Error N
-2 Param Error N
-3 System Error N
-4 Network Access N
-5 Network Portal N
-6 API Access N
-7 API Portal N
-8 SERVICE EXPIRED N
-9 HTTP HEAD N
-10 SERVICE UNAUTHORIZED N
-11 SERVICE DEACTIVATED N
-12 DEVICE NOT EXIST N
-13 CHECK SIGN INVALID N
-14 ACCESS DATABASE N
-15 ACCESS RESTRICTION N
-16 STREAM SERVER N
-17 DISTRIBUTE STREAM SERVER N
-18 UNKNOWN N
  • 示例

  • input


None
  • output

{
    "ret":0,
    "errCode":0,
    "reserve":""
}

7.20 设置OpenID

IVY_CTRL_MSG_SET_IOT_OPENID = 22033

  • IVY设备

  • 输入

openId open id S
  • 支持设备
II
  • 输出
ret 返回值 N
  • Foscam设备
FI
  • 输入
openid open id S
Ivid IV id S
AccessToken Token S
mqttServer serer address S
mqttPort port N
  • 输出
ret 返回值 N
  • 备注

对于Foscam设备,所有输入字段都不是必须的,存在该字段就添加,没有可以不添加。

  • 示例

  • input


{
    "openid":"BCE1D224EF9BDE124",
    "Ivid":"KFK2VNK2KFKS112421",
    "AccessToken":"AFDASKFLDK12321",
    "mqttServer":"192.168.1.3",
    "mqttPort":800
}
  • output

{
    "ret":0
}

7.21 设置设备推送间隔(V3 BIT19)

IVY_CTRL_MSG_SET_PUSH_INTERVAL = 34061

  • 支持设备
FI
  • 输入
interval 时间间隔 单位:分钟 合法值:(1,3,7,15,30) N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "interval":7
}
  • output

{
    "ret":0
}

7.22 获取设备推送间隔(V3 BIT19)

IVY_CTRL_MSG_GET_PUSH_INTERVAL = 34063

  • 支持设备
FI
  • 输入

None

  • 输出
ret 返回值 N
interval 时间间隔 单位:分钟 合法值:(1,3,7,15,30) N
  • 示例

  • input

None

  • output

{
    "ret":0,
    "interval":7
}

7.23 KVS

7.23.1 设置KVS

IVY_CTRL_MSG_SET_KVS_CONFIG = 34071

  • 支持设备
II
  • 输入
channel 通道号 N
szPortal portal S
  • 输出
ret 返回值 N
  • 示例

  • input



{
    "channel":0,
    "szPortal":"www.abc.com",
}
  • output

{
    "ret":0
}

7.23.2 获取KVS配置

IVY_CTRL_MSG_GET_KVS_CONFIG = 34069

  • 支持设备
II
  • 输入
channel 通道号 N
  • 输出
ret 返回值 N
szPortal protal S
  • 示例

  • input


{
    "channel":0,
}
  • output

{    
    "szPortal":"www.abc.com",
    "ret":0
}

8 PTZ控制

8.1 PTZ控制命令

IVY_CTRL_MSG_PTZ_CONTROL_CMD = 26029

  • 支持设备 (如果没有特殊说明就是支持FI)
FI FN
  • 输入
cmd 命令控制ID N
命令数据 根据命令id不同,数据有差异 S
  • 输出
ret 返回值 N
其他值 控制命令不同,其他值返回不同 N
  • 控制命令ID对应的数据命令和返回值中的其他值
8.11 停止任何PTZ活动

IVY_PTZ_STOP = 0

  • 示例

{
    "cmd":0
}

8.12 将PTZ恢复到默认位置

IVY_PTZ_RESET = 1

  • 示例

{
    "cmd":1
}

8.13 设置PTZ速度

IVY_PTZ_SET_SPEED = 10

  • 命令数据
speed 0 - 4 N
  • 示例

{
    "cmd":10,
    "speed":1
}

8.13 Zoom in

IVY_PTZ_ZOOM_IN = 11

  • 命令数据
channel 通道号 N FN
  • 示例

{
    "cmd":11
}

8.14 Zoom out

IVY_PTZ_ZOOM_OUT = 12

  • 命令数据
channel 通道号 N FN
  • 示例

{
    "cmd":12
}

8.15 Zoom stop (不支持 FI)

IVY_PTZ_ZOOM_STOP = 13

  • 命令数据
channel 通道号 N FN
  • 示例

{
    "cmd":13
}
8.16 FOCUS NEAR

IVY_PTZ_FOCUS_NEAR = 16

  • 示例

{
    "cmd":16
}
8.17 FOCUS FAR

IVY_PTZ_FOCUS_FAR = 17

  • 示例
{
    "cmd":17
}
8.18 Focus stop

IVY_PTZ_FOCUS_STOP = 18

  • 示例
{
    "cmd":18
}
8.19 Ptz up

IVY_PTZ_MOVE_UP = 2

  • 命令数据
channel 通道号 N FN
  • 示例
{
    "cmd":2
}
8.20 Ptz down

IVY_PTZ_MOVE_DOWN = 3

  • 命令数据
channel 通道号 N FN
  • 示例
{
    "cmd":3
}
8.21 Ptz left

IVY_PTZ_MOVE_LEFT = 4

  • 命令数据
channel 通道号 N FN
  • 示例
{
    "cmd":4
}
8.22 Ptz right

IVY_PTZ_MOVE_RIGHT = 5

  • 命令数据
channel 通道号 N FN
  • 示例
{
    "cmd":5
}
8.23 Ptz leftup

IVY_PTZ_MOVE_LEFTUP = 6

  • 命令数据
channel 通道号 N FN
  • 示例
{
    "cmd":6
}
8.24 Ptz left down

IVY_PTZ_MOVE_LEFTDOWN = 7

  • 命令数据
channel 通道号 N FN
  • 示例
{
    "cmd":7
}
8.25 Ptz right up

IVY_PTZ_MOVE_RIGHTUP = 8

  • 命令数据
channel 通道号 N FN
  • 示例
{
    "cmd":8
}
8.26 Ptz right down

IVY_PTZ_MOVE_RIGHTDOWN = 9

  • 命令数据
channel 通道号 N FN
  • 示例
{
    "cmd":9
}
8.27 开始巡航

IVY_PTZ_START_CRUISE = 27

  • 命令数据
name 巡航名称 S FI FN
channel 通道 N FN
  • 示例
{
    "cmd":27,
    "name":"abc123"
}
8.28 停止巡航

IVY_PTZ_STOP_CRUISE = 28

  • 命令数据
name 巡航名称 S FN
channel 通道 N FN
  • 示例
{
    "cmd":28,
    "name":"abc123"
}
8.29 增加预置点

IVY_PTZ_SET_PRESET_POINT = 21

  • 命令数据
name 预置点名称 S FI FN
channel 通道 N FN
  • 其他值
point 当前所有预置点名称,用Json字符串数组表示 S FI
ret 返回值 N FI FN
  • 示例

  • input

{
    "cmd":21,
    "name":"abc123"
}
  • output
{
    "ret":0,
    "point":["abc", "123", "leftTop", "rightTop"]
}
8.30 到达预置点

IVY_PTZ_GOTO_PRESET_POINT = 22

  • 命令数据
name 预置点名称 S FI FN
channel 通道 N FN
  • 示例
{
    "cmd":22,
    "name":"abc123"
}
8.31 删除预置点

IVY_PTZ_CLEAR_PRESET_POINT = 23

  • 命令数据
name 预置点名称 S FI FN
channel 通道 N FN
  • 示例
{
    "cmd":23,
    "name":"abc123"
}
  • 备注

对于IVY设备,不要使用 IVY_PTZ_DEL_PRESET_POINT=50 这个命令删除预值点,因为有的设备没有实现这个命令。
对于FOSCAM设备,两个命令都可以,因为SDK做了兼容

8.32 获取预置点

IVY_PTZ_GET_PRESET_POINT_LIST = 24

  • 其他值
point 当前所有预置点名称,用Json字符串数组表示 S
  • 示例

  • output

{
    "ret":0,
    "point":["abc", "123", "leftTop", "rightTop"]
}
8.33 设置看守位

IVY_PTZ_SET_GUARD_POSITION = 25

  • 命令数据
name 预置点名称 S
  • 示例
{
    "cmd":25,
    "name":"abc123"
}
8.34 获取看守位

IVY_PTZ_GET_GUARD_POSITION = 26

  • 其他值
name 看守卫名称 S
  • 示例

  • input

{
    "cmd":21
}
  • output
{
    "ret":0,
    "name":"abc"
}
8.35 增加巡航路径

IVY_PTZ_SET_CURISE_MAP = 29

  • 命令数据
name 巡航名称 S
point 所有预置点名称,用Json字符串数组表示 S
  • 示例
{
    "cmd":29,
    "name":"abc123",
    "point":["a123", "abds", "preset1"]
}
8.36 删除巡航路径

IVY_PTZ_DEL_CRUISE_MAP_INFO = 49

  • 命令数据
name 巡航名称 S
  • 示例
{
    "cmd":49,
    "name":"abc123"
}
8.37 获取巡航路径

IVY_PTZ_GET_CRUISE_MAP_INFO = 31

  • 命令数据
name 巡航名称 S
  • 其他值
preset 所有预置点名称,用Json字符串表示 S
  • 示例

  • input

{
    "cmd":31,
    "name":"abc123"
}
  • output
{
    "ret":0,
    "point":["abc123", "123", "leftTop", "rightTop"]
}
8.38 设置巡航路径时间

IVY_PTZ_SET_CURISE_CTRL_TIME = 32

  • 命令数据
name 巡航名称 S
time 时间 N
  • 示例
{
    "cmd":32,
    "name":"abc123",
    "time":10
}
8.39 获取巡航列表

IVY_PTZ_GET_CRUISE_MAP_LIST = 33

  • 其他值
list 当前所有巡航名称,用Json字符串数组表示 S
  • 示例

  • input

{
    "cmd":33
}
  • output
{
    "ret":0,
    "list":["abc123", "123", "cruise1", "cruise12"]
}
8.40 设置ZOOM速度

IVY_PTZ_SET_ZOOM_SPEED = 14

  • 命令数据
speed 速度值 0:slow 1:normal 2: fast N
  • 示例
{
    "cmd":14,
    "speed":2
}
8.41 获取ZOOM速度

IVY_PTZ_GET_ZOOM_SPEED = 15

  • 其他值
speed 速度值 0:slow 1:normal 2: fast N
  • 示例

  • input

{
    "cmd":15
}
  • output
{
    "ret":0,
    "speed":2
}
8.42 设置巡航模式

IVY_PTZ_SET_CRUISE_CTRL_MODE = 34

  • 命令数据
mode 模式 0:时间 1:圈数 N
  • 示例
{
    "cmd":34,
    "mode":0
}
8.43 获取巡航模式

IVY_PTZ_GET_CRUISE_CTRL_MODE = 35

  • 其他值
mode 模式 0:时间 1:圈数 N
  • 示例

  • input

{
    "cmd":35
}
  • output
{
    "ret":0,
    "mode":2
}
8.44 设置巡航自定义时间

IVY_PTZ_SET_CRUISE_TIME_CUSTOMED = 36

  • 命令数据
isEnable 0:关闭 1:开启 N
time 单位分钟 N
  • 示例
{
    "cmd":36,
    "isEnable":1,
    "time":5
}
8.45 获取巡航自定义时间

IVY_PTZ_GET_CRUISE_TIME_CUSTOMED = 37

  • 其他值
isEnable 0:关闭 1:开启 N
time 单位分钟 N
  • 示例

  • input

{
    "cmd":37
}
  • output
{
    "ret":0,
    "isEnable":1,
    "time":1
}
8.46 设置巡航时间

IVY_PTZ_SET_CRUISE_TIME = 38

  • 命令数据
time N
  • 示例
{
    "cmd":38,
    "time":10
}
8.47 获取巡航时间

IVY_PTZ_GET_CRUISE_TIME = 39

  • 其他值
time N
  • 示例

  • input

{
    "cmd":39
}
  • output
{
    "ret":0,
    "time":1
}
8.48 设置云台自测试模式

IVY_PTZ_SET_SELF_TEST_MODE = 40

  • 命令数据
mode 0:不自检 1:正常启动 2:启动后到预置点 N
  • 示例
{
    "cmd":40,
    "mode":1
}
8.49 获取云台自测试模式

IVY_PTZ_GET_SELF_TEST_MODE = 41

  • 其他值
mode 0:不自检 1:正常启动 2:启动后到预置点 N
  • 示例

  • input

{
    "cmd":41
}
  • output
{
    "ret":0,
    "mode":1
}
8.50 设置云台自测试到达的预置点

IVY_PTZ_SET_PRE_POINT_FOR_SELF_TEST = 42

  • 命令数据
name 预置点名称 S
  • 示例
{
    "cmd":42
    "name":"preste1"
}
8.51 获取云台自测试到达的预置点

IVY_PTZ_GET_PRE_POINT_FOR_SELF_TEST = 43

  • 其他值
name 预置点名称 S
  • 示例

  • input

{
    "cmd":43
}
  • output
{
    "ret":0,
    "name":"abc123"
}
8.52 设置巡航中预置点停留的时间

IVY_PTZ_SET_CRUISE_PRESET_POINT_LINGER_TIME = 45

  • 命令数据
name 巡航名称 S
time 时间,单位秒,Json数组,最多8个 N
  • 示例
{
    "cmd":45,
    "name":"cruise1",
    "time":[1,2,2,2,2,2,2,6]
}
8.53 获取巡航中预置点停留的时间

IVY_PTZ_SET_CRUISE_PRESET_POINT_LINGER_TIME = 46

  • 命令数据
name 巡航名称 S
  • 其他值
time 时间,单位秒,Json数组,最多8个 N
  • 示例

  • input

{
    "cmd":46
}
  • output
{
    "ret":0,
    "time":[2,2,2,2,2,2,2,8]
}
8.54 设置巡航循环次数

IVY_PTZ_SET_CRUISE_LOOP_COUNT = 47

  • 命令数据
count 次数 N
  • 示例
{
    "cmd":47,
    "count":5
}
8.55 获取巡航循环次数

IVY_PTZ_GET_CRUISE_LOOP_COUNT = 48

  • 其他值
count 次数 N
  • 示例

  • input

{
    "cmd":48
}
  • output
{
    "ret":0,
    "count":10
}
8.56 设置自动聚焦

IVY_PTZ_SET_AUTO_FOCUS = 51

  • 命令数据
isEnable 0:关闭 1:开启 N
  • 示例
{
    "cmd":51,
    "isEnable":1
}
8.57 获取自动聚焦

IVY_PTZ_GET_AUTO_FOCUS = 52

  • 其他值
isEnable 0:关闭 1:开启 N
  • 示例

  • input

{
    "cmd":52
}
  • output
{
    "ret":0,
    "isEnable":1
}
8.58 设置启动后回到守护位的时间

IVY_PTZ_SET_GUARD_POSITION_BACKTIME = 53

  • 其他值
ret 结果 N
  • 示例

  • input

{
    "cmd":53
}
  • output
{
    "ret":0,
}
8.59 获取启动后回到守护位的时间

IVY_PTZ_GET_GUARD_POSITION_BACKTIME = 54

  • 其他值
minutes 时间单位分钟 N
ret 结果 N
  • 示例

  • input

{
    "cmd":54
}
  • output
{
    "ret":0,
    "minutes":5
}
8.60 获取当前巡航状态

IVY_PTZ_GET_CURRENT_CRUISE_STATE = 55

  • 命令数据
channel 通道号 N II
  • 其他值
name 巡航名称 N II
state 巡航状态,0:没有在巡航 1:正在巡航 N II
ret 结果 N II
  • 示例

  • input

{
    "cmd":55,
    "channel":0
}
  • output
{
    "ret":0,
    "name":"afdafdas",
    "state":1
}

8.2 获取设备得PTZ能力集合

IVY_CTRL_MSG_GET_PTZ_ABILITY = 36041

  • 支持设备
FN
  • 输入
channel 通道号 N
  • 输出
ret 返回值 N
pt 0:不支持 1:支持 N
zoom 0:不支持 1:支持 N
focus 0:不支持 1:支持 N

可以用来判断通道上的IPC是否支持变焦/聚焦。

  • 示例

  • input

{
    "channel":1
}
  • output
{
    "ret":0,
    "pt":1"zoom":1"focus":1
}

9 Foscam童谣操作

9.1 获取童谣播放状态

IVY_CTRL_MSG_GET_MUSIC_PLAY_STATE = 24063

  • 支持设备
FI
  • 输出
ret 返回值 N FI
musicTotal 总数量 N FI
mode N FI
index N FI
isPlaying N FI
listName BASE64编码 N FI
  • 示例

  • input

None
  • output
{
    "ret":0,
    "musicTotal":5,
    "mode":1,
    "index":5,
    "isPlaying":1,
    "listName":"BASGEGDAD==FD2KWF12=="
}

9.2 设置童谣播放

IVY_CTRL_MSG_SET_MUSIC_PLAY_START = 24065

  • 支持设备
FI
  • 输入
mode 1:list play 2:single repeat 3:all repeat N FI
index 0-n N FI
listName BASE64编码 N FI
  • 输出
ret 返回值 N FI
  • 示例

  • input

{
    "mode":1,
    "index":5,
    "listName":"BASGEGDAD==FD2KWF12=="
}
  • output
{
    "ret":0
}

9.3 停止播放

IVY_CTRL_MSG_SET_MUSIC_PLAY_STOP = 24067

  • 支持设备
FI
  • 输出
ret 返回值 N FI
  • 示例

  • input

None
  • output
{
    "ret":0
}

9.4 播放上一个

IVY_CTRL_MSG_SET_MUSIC_PLAY_PREV = 24069

  • 支持设备
FI
  • 输出
ret 返回值 N FI
  • 示例

  • input

None
  • output
{
    "ret":0
}

9.5 播放下一个

IVY_CTRL_MSG_SET_MUSIC_PLAY_NEXT = 24071

  • 支持设备
FI
  • 输出
ret 返回值 N FI
  • 示例

  • input

None
  • output
{
    "ret":0
}

9.6 获取播放列表

IVY_CTRL_MSG_GET_MUSIC_NAME_LIST = 24073

  • 支持设备
FI
  • 输入
musicListName N FI
startNo N FI
musicNum N FI
  • 输出
ret 返回值 N FI
musicListName N FI
musicCnt N FI
musicName N FI
  • 示例

  • input

{
    "musicListName":0,
    "startNo":0,
    "musicNum":10
}
  • output
{
    "ret":0,
    "musicListName":0,
    "musicCnt":10,
    "musicName":0
}

10 硬盘信息以及硬盘录像

10.1 设置硬盘录像参数

IVY_CTRL_MSG_SET_STROGE_CONFIG = 28045

  • 支持设备
FI IN
  • 输入
diskRewrite 是否循环覆盖 N IN / FN
previewTime 预录时间 N IN / FN
smartMode 智能录像 N IN
  • smartMode
0 FS_SMART_REC_MODE_OFF
1 FS_SMART_REC_MODE_1x
2 FS_SMART_REC_MODE_2x
3 FS_SMART_REC_MODE_3x
4 FS_SMART_REC_MODE_4x
  • 输出
ret 返回值 N IN / FN
  • 示例

  • input

{
    "diskRewrite":1,
    "previewTime":30,
    "smartMode":2
}
  • output
{
    "ret":0,
    "diskRewrite":1,
    "previewTime":30,
    "smartMode":2
}

10.2 获取硬盘录像参数

IVY_CTRL_MSG_GET_STROGE_CONFIG = 28047

  • 支持设备
FI IN
  • 输出
ret 返回值 N FN
diskRewrite 是否循环覆盖 N IN
previewTime 预录时间 N IN
smartMode 智能录像 同设置 N IN
  • 示例

  • input

None
  • output
{
    "ret":0,
    "diskRewrite":1,
    "previewTime":30,
    "smartMode":2
}

10.3 获取硬盘信息

  • 支持设备
FI IN

IVY_CTRL_MSG_GET_DISK_INFO = 26031

  • 输出(此输出针对 IN 设备)
ret 返回值 N IN
name 硬盘名 S IN
busId N IN
index 索引 N IN
busType 硬盘类型 N IN
state 硬盘状态 N IN
busy N IN
canFormat 是否可以格式化 N IN
freeSpace 剩余空间,单位KB N IN
totalSpace 总空间 单位KB N IN
  • busType
0 BUS_TYPE_SATA
1 BUS_TYPE_ESATA
2 BUS_TYPE_IPSAN
3 BUS_TYPE_NAS
  • state
0 DISK_UNFORMAT
1 DISK_RECORD
2 DISK_BACKUP
  • 输出(此输出针对 FN 设备)
ret 返回值 N FN
previewTime 预录制时间 (0-5s) S FN
diskRewrite 循环覆盖写 (0: stop 1:rewrite) N FN
info disk信息 Json字符串 FN
  • Json
totalSpace 总大小 单位MB N FN
freeSpace 剩余大小 单位MB N FN
canFormat 是否能格式化 0:no 1:yes N FN
type N FN
status 状态 N FN
index 索引 N FN
  • type
0 SATA硬盘
1 ESATA硬盘
2 U盘
  • state
0 未格式化
1 录像盘
2 备份盘
  • 示例

  • input

None
  • output
{
    "ret":0,
    "name":"1FFDAS2FDSAVDASV",
    "busId":1,
    "index":2,
    "busType":2,
    "state":2,
    "canFormat":2,
    "busy":2,
    "freeSpace":1024,
    "totalSpace":20000
}

10.4 硬盘格式化

  • 支持设备
FI IN

IVY_CTRL_MSG_DISK_FORMAT = 26033

  • 输入
diskId 硬盘ID N IN / FN
type 硬盘类型 N FN
  • 输出
ret 返回值 N IN / FN
  • 备注
    如果当前设备是FoscamNVR,type值总是0(参考网页代码)。
  • 示例

  • input

{
    "diskId":0,
    "type":0
}
  • output
{
    "ret":0
}

10.5 NVR硬盘录像设置

  • 支持设备
IN

IVY_CTRL_MSG_SET_NVR_DISK_RECORD = 28059

  • 输入
channel 通道号 0-31 N IN
audio 录像是否有音频 0:没有 1:有 N IN
preSec 预录像,单位秒 N IN
timeLapseSec 延时录像,单位秒 N IN
schedule 计划录像 JSON数组 IN
sync 同步channel的配置到所有通道 1:同步 0:不同步, 如果不传此项,表示不同步 N IN
  • schedule格式

类似 [1024, 1024, 1024, 1024, 1024, 1024, 1024],一个 JSON 数组,7个元素,表示7天,每一个元素是一个 64位 无符号整型数字,每个 2个bit 位表示 1个小时,还可以表示3种录像类型,一个元素位置正好可以表示一天的时间。每天的开始时间是从 64位 无符号整型数字的最低位开始

  • schedule中录像格式表示方式
00(二进制)
01(二进制) 计划录像
10(二进制) 事件录像
11(二进制) 保留

bit63 <—————————————————- bit0
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

00000000 00000000 00000000 00000000 00000000 00000000 00000000 10011000

十进制 152

表示 :
00:00-00:59 不录象
01:00-01:59 事件录像
02:00-02:59 计划录像
03:00-03:59 事件录像
04:00-23:59 不录象

  • 输出
ret 返回值 N IN
  • 备注

如果输入中只有某一项,或者几项,也可以生效,其他没有的项保持不变

  • 示例

  • input

{
    "channel":2,
    "audio":1,
    "preSec":10,
    "timeLapseSec":0,
    "schedule":[
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655
    ],
    "sync":0
}
  • output
{
    "ret":0
}

10.6 获取NVR硬盘录像设置

  • 支持设备
IN

IVY_CTRL_MSG_GET_NVR_DISK_RECORD = 28061

  • 输入
channel 通道号 0-31 N IN
  • 输出
ret 返回值 N IN
channel 通道号 0-31 N IN
audio 录像是否有音频 0:没有 1:有 N IN
preSec 预录像,单位秒 N IN
timeLapseSec 延时录像,单位秒 N IN
schedule 计划录像 JSON数组 IN
  • 示例

  • input

{
    "channel":2
}
  • output
{
    "ret":0,
    "channel":2,
    "audio":1,
    "preSec":10,
    "timeLapseSec":0,
    "schedule":[
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655, 
        281474976710655
    ]
}

11 NVR通道设备相关

11.1 获取IPC列表信息

IVY_CTRL_MSG_GET_IPC_LIST_INFO = 36023

  • 支持设备
FN IN FB
  • 输出
ret 返回值 N FN
raws IPC列表信息 Json数组 S FN
  • raws Json格式
channel 通道号 N FN
isOnLine 是否在线 0:不在线 1:在线 N IN / FN / FB
devName 设备名 (BASE64编码) S IN / FN / FB
appVer 应用版本 S IN / FN / FB
sysVer 系统版本 S IN / FN / FB
macAddr Mac地址 S IN / FN / FB
  • 示例

  • input

None
  • output
{
    "ret":0,
    "raws":[
    {
        "channel":1,
        "isOnLine":0,
        "devName":"FDAFDAS",
        "appVer":"41321321",
        "sysVer":"1231",
        "macAddr":"FDASFDA"
    }, 
    {
        "channel":2,
        "isOnLine":1,
        "devName":"FDAFDAS",
        "appVer":"41321321",
        "sysVer":"1231",
        "macAddr":"FDASFDA"
    }
    ]
}
  • 备注

对于FoscamNVR,这个命令只是获取已经添加到NVR上的设备,并不能获取到未添加到NVR上的设备
对于IVY NVR,这个命令可以同时做两个事情,就是添加和未添加的只要NVR能搜索到,都会返回,通过channel值判断是否已经添加,如果channel小于0,表示还未添加。

11.2 删除通道设备

IVY_CTRL_MSG_DEL_IPC = 36021

  • 支持设备
FN IN
  • 输入
channel 通道号 N IN / FN
  • 输出
ret 返回值 N IN / FN
  • 示例

  • input

{
    "channel":1
}
  • output
{
    "ret":0
}

11.3 设置启用自动添加设备

IVY_CTRL_MSG_SET_ENABLE_AUTO_ADD_DEVICES = 36037

  • 支持设备
FN IN
  • 输入
enable 0:no 1:yes N FN
enableKit 0:no 1:yes N IN
  • 输出
ret 返回值 N
  • 示例

  • input

{
    "enable":1
}
  • output
{
    "ret":0
}

11.4 获取启用自动添加设备

IVY_CTRL_MSG_GET_ENABLE_AUTO_ADD_DEVICES = 36039

  • 支持设备
FN IN
  • 输出
ret 返回值 N FN IN
enable 0:no 1:yes N FN
enableKit 0:no 1:yes N IN
  • 示例

  • input

None
  • output
{
    "ret":0,
    "enable":1
}

11.5 添加设备

IVY_CTRL_MSG_ADD_IPC = 36019

  • 支持设备
FN
  • 输入
channel 通道号(0-n) N
ip ip地址 S
httpPort http端口 N
mediaPort media端口 N
usr 用户名(BASE64编码) S
pwd 密码(BASE64编码) S
devName 设备名称 (BASE64编码) S
productType 1:Foscam 2:MJ 3:Onvif N
protocol 设备协议版本 N
xAddr onvif服务地址 S
mac mac S
  • 输出
ret 返回值 N
  • 示例

  • input

{
    "channel":0,
    "ip":"192.168.10.5",
    "httpPort":88,
    "mediaPort":88,
    "usr":"dXNlcg==",
    "pwd":"cGFzc3dvcmQ=",
    "devName":"bXlkZXZpY2U=",
    "productType":1,
    "protocol":1,
    "xAddr":"192.168.51.1",
    "mac":"SK123FALSK12"
}
  • output
{
    "ret":0
}

11.6 删除设备

IVY_CTRL_MSG_DEL_IPC = 36021

  • 支持设备
FN
  • 输入
channel 通道号 N
  • 输出
ret 返回值 N
  • 示例

  • input

{
    "channel":1
}
  • output
{
    "ret":0
}

11.7 获取NVR通道上设备信息

IVY_CTRL_MSG_GET_ONE_IPC_INFO_ON_LIST = 36027

  • 支持设备
FN
  • 输入
channel 通道 N
  • 输出
ret 返回值 N
channel 通道号 N
isEnable 0:启用 1:不启用 N
status 状态 N
productType 产品类型 N
ptcls N
httpPort HTTP端口 N
mediaPort 媒体端口 N
ipAddr ip地址 S
xAddr ? S
devName 设备名称(base64编码) S
pwd 设备密码(base64编码) S
devMac mac地址 S
appVer 应用固件版本号 S
sysVer 系统固件版本号 S
vid ? S
model model N
  • 示例

  • input

{
    "channel":1
}
  • output
{
    "ret":0,
    "channel":0,
    "isEnable":1,
    "status":1,
    "productType":"camera",
    "ptcls":0,
    "httpPort":88,
    "mediaPort":88,
    "ipAddr":"192.168.11.12",
    "xAddr":"192.168.11.12",
    "devName":"ZGV2bmFtZQ==",
    "pwd":"cHdk",
    "devMac":"123456ABCDEF",
    "appVer":"1.34.1.4",
    "sysVer":"1.24.12.4",
    "vid":"Vendor",
    "model":1110
}

11.8 获取当前设备内所有账户信息

IVY_CTRL_MSG_GET_ACCOUNTS_INFORMATION = 36067

  • 支持设备
FN
  • 输出
ret 返回值 N
accounts Json数组 S
  • accounts json结构
enable 0:不启用 1:启用 N
name 用户名(base64编码) S
password 密码(base64编码) S
privilege 权限,2:管理员 1:操作者 0:访问者 N
  • 示例

  • input


None
  • output
{
    "ret":0,
    "accounts":[
    {
        "enable":0,
        "name":"bmFtZQ==",
        "password":"cHdk",
        "privilege":0
    },
    {
        "enable":0,
        "name":"bmFtZQ==",
        "password":"cHdk",
        "privilege":2
    }
    ]
}

11.9 设置当前设备内账户信息

IVY_CTRL_MSG_SET_ACCOUNTS_INFORMATION = 36069

  • 支持设备
FN
  • 输入
accounts Json数组 S
  • accounts json结构
enable 0:不启用 1:启用 N
name 用户名(base64编码) S
password 密码(base64编码) S
privilege 权限,2:管理员 1:操作者 0:访问者 N
  • 输出
ret 返回值 N
  • 示例

  • input


{
    "accounts":[
    {
        "enable":0,
        "name":"bmFtZQ==",
        "password":"cHdk",
        "privilege":0
    },
    {
        "enable":0,
        "name":"bmFtZQ==",
        "password":"cHdk",
        "privilege":2
    }
    ]
}
  • output
{
    "ret":0
}

11.10 搜索和NVR在同一网络内的IPC

IVY_CTRL_MSG_SEARCH_DEVS_BY_NVR = 36073

  • 支持设备
FN
  • 输出
list Json数组 S
ret 返回值 N
  • list json结构
protocol 协议版本 N
httpPort 端口号 N
mediaPort 端口号 N
devName 设备名称(BASE64编码) S
mac 设备MAC S
xAddr onvif服务地址 S
  • 示例

  • input


None
  • output
{
    "ret":0,
    "list":[
    {
        "protocol":0,
        "httpPort":88,
        "mediaPort":88,
        "devName":"ZGV2TmFtZQ==",
        "mac":"123456ABCDEF",
        "xAddr":"192.168.10.10"
    },
        {
        "protocol":0,
        "httpPort":88,
        "mediaPort":88,
        "devName":"ZGV2TmFtZQ==",
        "mac":"123456ABCDEF",
        "xAddr":"192.168.10.10"
    }
    ]
}

13 向IVY设备发送FoscamCGI

IVY_CTRL_MSG_SEND_FOSCAM_CGI = 26189

该命令用于向IVY NVR发送Foscam CGI,相当于透传Foscam CGI,这样可以方便对接,减少设备端的对接时间,当输入参数加上standardization=1后,SDK内部会进行转换,方便应用端使用。

满足 IVY_CTRL_MSG_GET_FOSCAM_DEVICE_ABILITY_ON_THE_NVR 使用条件,即可以使用此命令

13.1 向IVY设备发送设置移动侦测FoscamCGI

  • 支持设备
II IN

(推荐使用)

  • 输入
channel 通道号,如果是IPC,可以不填,或者填255 N
model Foscam设备model号 N
cgiType 必须为 2 N
standardization 必须为 1 N

……
其余字段同 IVY_CTRL_MSG_SET_MOTION_DETECT_CONFIG

  • 输出
ret 返回值 N
  • 示例

  • input


```cpp
{
    "channel":0,
    "model":30000,
    "cgiType":2,
    ......
}

- *output*

```cpp
{
    "ret":0
}

如果 standardization 不存在,或者 standardization 不为 1

  • 输入
channel 通道号,如果是IPC,可以不填,或者填255 N
cgi Foscam CGI S
  • 输出
ret 返回值 N
xml CGI返回的xml S

13.2 向IVY设备发送获取移动侦测FoscamCGI

  • 支持设备
II IN

(推荐使用)

  • 输入
channel 通道号,如果是IPC,可以不填,或者填255 N
model Foscam设备model号 N
cgiType 必须为 1 N
standardization 必须为 1 N
  • 输出
ret 返回值 N
……
其余字段同 IVY_CTRL_MSG_GET_MOTION_DETECT_CONFIG
  • 示例

  • input


```cpp
{
    "channel":0,
    "model":30000,
    "cgiType":2,
}

- *output*

```cpp
{
    "ret":0,
    ......
}

如果 standardization 不存在,或者 standardization 不为 1

  • 输入
channel 通道号,如果是IPC,可以不填,或者填255 N
cgi Foscam CGI S
  • 输出
ret 返回值 N
xml CGI返回的xml S

13.3 向IVY设备发送获取人形侦测FoscamCGI

  • 支持设备
II IN

(推荐使用)

  • 输入
channel 通道号,如果是IPC,可以不填,或者填255 N
cgiType 必须为 3 N
standardization 必须为 1 N
  • 输出
ret 返回值 N
……
其余字段同 IVY_CTRL_MSG_GET_PEDESTRIAN_DECTECT_CONFIG
  • 示例

  • input


```cpp
{
    "channel":0,
    "cgiType":3,
}

- *output*

```cpp
{
    "ret":0,
    ......
}

如果 standardization 不存在,或者 standardization 不为 1

  • 输入
channel 通道号,如果是IPC,可以不填,或者填255 N
cgi Foscam CGI S
  • 输出
ret 返回值 N
xml CGI返回的xml S

13.4 向IVY设备发送设置人形侦测FoscamCGI

  • 支持设备
II IN

(推荐使用)

  • 输入
channel 通道号,如果是IPC,可以不填,或者填255 N
cgiType 必须为 4 N
standardization 必须为 1 N

……
其余字段同 IVY_CTRL_MSG_SET_PEDESTRIAN_DECTECT_CONFIG

  • 输出
ret 返回值 N
  • 示例

  • input


```cpp
{
    "channel":0,
    "cgiType":24,
    ......
}

- *output*

```cpp
{
    "ret":0
}

如果 standardization 不存在,或者 standardization 不为 1

  • 输入
channel 通道号,如果是IPC,可以不填,或者填255 N
cgi Foscam CGI S
  • 输出
ret 返回值 N
xml CGI返回的xml S

13.x 向IVY设备发送FoscamCGI

  • 支持设备
II IN

(推荐使用)

  • 输入
channel 通道号,如果是IPC,可以不填,或者填255 N
cgiType cgi 类型 N
standardization 必须为 1 N
…… 同本文档中命令的定义;比如 cgiType == FOSCAM_CGI_PTZ,后续字段就是 IVY_CTRL_MSG_PTZ_CONTROL_CMD 的命令数据;比如 cgiType == FOSCAM_CGI_SET_LIGHT_VISION_SWITCH_MODE_CONFIG 后续字段就是 IVY_CTRL_MSG_SET_LIGHT_VISION_SWITCH_MODE_CONFIG 的字段; 如果无法找到对应 cgiType 的命令,可能命令没有实现这个 cgi,输入输出参数可以参考 app 中输入输出参数
  • cgiType 定义
FOSCAM_CGI_UNKNOWN 0
FOSCAM_CGI_GET_MOTION_DETECT 1
FOSCAM_CGI_SET_MOTION_DETECT 2
FOSCAM_CGI_GET_PEDESTRIAN_DECTECT_CONFIG 3
FOSCAM_CGI_SET_PEDESTRIAN_DECTECT_CONFIG 4
FOSCAM_CGI_PTZ 5
FOSCAM_CGI_SET_SIREN 6
FOSCAM_CGI_GET_SIREN 7
FOSCAM_CGI_SET_WHITE_LIGHT_BRIGHTNESS 8
FOSCAM_CGI_GET_WHITE_LIGHT_BRIGHTNESS 9
FOSCAM_CGI_SET_LIGHT_VISION_SWITCH_MODE_CONFIG 10
FOSCAM_CGI_GET_LIGTH_VISION_SWITCH_MODE_CONFIG 11
FOSCAM_CGI_SET_DAY_NIGHT_MODE 12
FOSCAM_CGI_GET_DAY_NIGHT_MODE 13
FOSCAM_CGI_GET_DEV_STATE 14
FOSCAM_CGI_SET_NIGHT_VISION_SCHEDULE 15
FOSCAM_CGI_GET_NIGHT_VISION_SCHEDULE 16
FOSCAM_CGI_SET_WHITE_LIGHT_MODE 17
FOSCAM_CGI_GET_WHITE_LIGHT_MODE 18
FOSCAM_CGI_SET_WHITE_LIGHT_SCHEDULE 19
FOSCAM_CGI_GET_WHITE_LIGHT_SCHEDULE 20
FOSCAM_CGI_SET_AUDIO_VOLUME 21
FOSCAM_CGI_GET_AUDIO_VOLUME 22
  • 输出
ret 返回值 N
  • 示例

  • input


```cpp
{
    "channel":0,
    "cgiType":24,
    ......
}

- *output*

```cpp
{
    "ret":0
}

如果 standardization 不存在,或者 standardization 不为 1

  • 输入
channel 通道号,如果是IPC,可以不填,或者填255 N
cgi Foscam CGI S
  • 输出
ret 返回值 N
xml CGI返回的xml S
文档更新时间: 2024-01-11 10:11   作者:庄小婵