一、摄像头扫码配网
·内容格式:len str len str len str。其中 len:2个字符,代表紧随内容 utf-8 解码的长度,str 顺序:ssid、password、token。
·示例:
以 Tencent-wifi,密码为 l,token 为 v3_00d……为例,设备侧需要解析的字符串为:
其对应的3个字段如下:
{ "SSID": "Tencent-wifi", "password": "l", "token": "v3_00d02b0248546d5a5fbf95a5812e4" }
2. 设备侧解析完 wifi ssid 和密码后,自行完成联网操作。
3. 连接完成后调用 系统模块 iv_sys_init() 和 物模型模块 iv_dm_init() 初始化必要的功能模块。
4. 在确认初始化接口返回成功且确保设备上线后,调用 iv_ad_send_bind_info() 配网接口,上报上述配网 token。
5. 上报成功后,刷新小程序主页面即可看到刚添加的设备。
二、云台控制
设备侧需完成小程序云台信令的响应,参考 交互信令。
三、语音对讲
·设备对接协议:设备到小程序上行仅支持 AAC,小程序到设备下行支持 AAC 16K 采样率或者设置任意采样率的 PCM,但下行 PCM 不支持小程序回音消除,推荐使用 AAC 16K 。
·采样率:为了有更好的延时效果,设备到小程序的 AAC 格式请设置为 8K 采样率以上。
·语音对讲设备侧 响应信令。
四、本地录像回放
·设备侧需响应 本地录像回放指令。
·获取某月有本地录像文件的日期:设备侧按需返回日期。
·获取某一天所有本地录像文件的列表:设备侧需返回 json 列表。
·点播某个录像文件:设备侧需 推送音视频流。
·暂停播放某个录像文件:设备侧需停止推送音视频流。
·恢复播放某个录像文件:设备侧需继续推送音视频流。
·实时显示某个录像文件的播放进度:设备侧需实时响应当前播放进度请求,并返回相对时间戳。
五、云存回放
·设备端对接设备端 SDK,某一个事件发生时,传入事件 ID、图片,并根据回调进行音视频流推送。
·云存储模块说明
·事件类型:
·有人活动:event id = 1。
·画面发生变化:event id = 2。
六、相关物模型
所需的物模型需要在控制台的物模型页面进行操作,主要包括需要导入的相关物模型和添加的必选标准功能的物模型,同时也支持添加自定义功能的物模型。
导入相关物模型 json 内容:
{ "version": "1.0", "profile": { "ProductId": "FT92OO0JFG", "CategoryId": "113" }, "properties": [ { "id": "_sys_xp2p_info", "name": "xp2p信息", "desc": "", "mode": "rw", "define": { "type": "string", "min": "0", "max": "64" }, "required": false }, { "id": "_sys_cs_days", "name": "云存全时天数", "desc": "", "mode": "rw", "define": { "type": "int", "min": "0", "max": "100", "start": "0", "step": "1", "unit": "" }, "required": false }, { "id": "_sys_cs_status", "name": "云存开关", "desc": "", "mode": "rw", "define": { "type": "bool", "mapping": { "0": "关", "1": "开" } }, "required": false }, { "id": "_sys_cs_type", "name": "云存类型", "desc": "", "mode": "rw", "define": { "type": "enum", "mapping": { "1": "全时", "2": "事件" } }, "required": false }, { "id": "_sys_ai_status", "name": "AI开关", "desc": "", "mode": "rw", "define": { "type": "bool", "mapping": { "0": "关", "1": "开" } }, "required": false }, { "id": "record_enable", "name": "本地录像使能", "desc": "", "mode": "rw", "define": { "type": "bool", "mapping": { "0": "关", "1": "开" } }, "required": false } ], "events": [], "actions": []}