4. IOS PPVIEW SDK接口说明

4.1. 概述

本节主要用于详细描述IOS PPVIEW SDK各接口的作用、参数、返回值。如何使用这些接口来开发客户端,请参见IOS客户端开发指南

在头文件中存在,但在本文档中没有描述的接口,是已废弃或内部保留接口,开发者不必关心。

4.2. 类

4.2.1. ppview_cli(交互类)

@interface ppview_cli : NSObject

封装了用于与平台服务器和设备端进行交互的接口。

定义在ppview_cli.h中。

#import "ppview_cli.h"

4.2.2. vv_real_player(实时播放器类)

@interface vv_real_player : NSObject

封装了用于播放实时音视频的接口。
定义在vv_real_player.h中。

#import "vv_real_player.h"

4.2.3. CTalk(音频对讲类)

@interface CTalk : NSObject

封装了用于音频对讲的接口。
定义在CTalk.h中:

#import "CTalk.h"

4.2.4. vv_playback_player(设备端录像远程回放类)

@interface vv_playback_player : NSObject

封装了用于远程回放设备端录像的接口。
定义在vv_playback_player.h中:

#import "vv_playback_player.h"

4.2.5. vv_local_player(手机端录像本地回放类)

@interface vv_local_player : NSObject

封装了用于回放在手机端中录制的录像的接口。
定义在vv_local_player.h中:

#import "vv_local_player.h"

4.2.6. vv_dev_item(设备信息)

@interface vv_dev_item : NSObject
@property (retain) NSString* m_devid;
@property (retain) NSString* m_p2p_pass;
@end

P2P预连接时所需的设备信息列表中的一项。
定义在vv_dev_item.h中:

m_devid为设备序列号。
m_p2p_pass为设备端P2P密码,请注意,这个密码不是设备访问密码,是建立与设备间P2P连接时所需的密码,只有特殊设备才有这个密码,通常不需要关注,赋空值即可。

4.2.7. vv_cam_item(摄像头信息)

@interface vv_cam_item : NSObject
@property (retain, nonatomic) NSString* devid;
@property (retain, nonatomic) NSString* camid;
@end

批量布撤防摄像头时用到。
定义在vv_cam_item.h中。

devid为设备序列号。
camid为摄像头编号。

4.2.8. time_item(时间段信息)

@interface time_item : NSObject
@property (assign) int start_min;//开始分钟值
@property (assign) int end_min;//结束分钟值(这分钟也有录像)
@end

查询某天内哪些分钟有录像时,返回的结果中用到。
定义在time_item.h中。

start_min表示开始的分钟值。
end_min表示结束分钟值。
在开始和结束分钟值内,有录像。
其中的分钟值以一日24x60=1440分钟来算,比如13:21,则分钟值为13x24+21=333。

4.2.8. CPlayer_fish_jpg(鱼眼摄像头图片播放类)

@interface CPlayer_fish_jpg : NSObject

- (id)init:(int)playindex;
- (void)set_surfaceview:(UIView *)view;
- (int)start_play:(NSString *)filename top:(float)top bottom:(float)bottom left:(float)left right:(float)right fisheyetype:(int)fisheyetype;
- (void)stop_play;

@end

用于播放从鱼眼摄像头抓取到的鱼眼图片。
定义在CPlayer_fish_jpg.h中。

4.3. 函数接口

4.3.1. 基础接口

类:ppview_cli

4.3.1.1. getInstance(获得库实例)

+ (ppview_cli*) getInstance;
  • 接口说明

用于获得SDK库接口实例,调用所有库接口之前,必须获取此实例。内部采用单例模式,可多次调用,不会产生多个实例。

注:ppview_cli类主要负责与平台及设备端交互用,媒体播放功能,由其它类(实时播放器类设备端录像远程回放类手机端录像本地回放类鱼眼摄像头抓图图片显示类)负责。

  • 返回值

库接口实例

4.3.1.2. setAppInfo(初始化参数)

- (void)setAppInfo:(NSString *)cli_url devurl:(NSString *)dev_url eventurl:(NSString *)event_url appid:(NSString *)app_id vendorpass:(NSString *)vendor_pass with_p2p_svr:(NSString *)p2psvr with_p2p_port:(int)p2p_port with_secret:(NSString *)secret;
  • 接口说明

用于设置应用所必需的参数。

4.3.1.3. cli_lib_cli_active_status(前后台切换、网络中断/恢复)

- (int)cli_lib_cli_active_status:(int)status;
  • 接口说明
    当IOS客户端前后台切换,或者网络在中断状态和连接状态间变化时调用

  • 参数说明

    • status:1=切换到前台或网络恢复,0=切换到后台或网络中断
  • 返回值
    0=成功
    -1=失败

4.3.1.4. cli_lib_clear_player_cache(网络中断)

- (void)cli_lib_clear_player_cache;
  • 接口说明
    当IOS客户端从前台切换到后台前,或者网络连接中断时调用

  • 参数说明

  • 返回值

4.3.2. 账号相关接口

类:ppview_cli

4.3.2.1. cli_lib_GetSmsVcode(请求短信验证码)

- (int)cli_lib_GetSmsVcode:(NSString *)mobile bCheck:(int)bcheckexist;  
  • 接口说明
    用于从平台获得短信验证码。

  • 参数说明

    • mobile: 手机号码
    • bcheckexist:检查手机号码是否已在平台中存在。取值为0时,手机号码存在时仍会发送验证码,用于密码重置操作;取值为1时,手机号码不存在时才会发送验证码,用于账号注册。
  • 返回值
    1 = 只表示调用成功,请求的结果在cli_lib_GetSmsVcode_CALLBACK代理中返回
    -1 = 调用失败

  • 相关接口

4.3.2.2. cli_lib_GetMailVcode(请求邮箱验证码)

- (int)cli_lib_GetMailVcode:(NSString *)mail language:(NSString *)language bCheck:(int)bcheckexist;
  • 接口说明
    用于从平台获得邮箱验证码。

  • 参数说明

    • mail: 邮箱号
    • language:邮件语言,通常与手机APP的语言一致,zh=简体中文,en=英文
    • bcheckexist:检查邮箱号是否已在平台中存在。取值为0时,邮箱号存在时仍会发送验证码,用于密码重置操作;取值为1时,邮箱号不存在时才会发送验证码,用于账号注册。
  • 返回值
    1 = 只表示调用成功,请求的结果在cli_lib_GetMailVcode_CALLBACK代理中返回
    -1 = 调用失败

  • 相关接口

4.3.2.3. cli_lib_Register(注册新用户)

- (int)cli_lib_Register:(NSString *)reguser regpass:(NSString *)regpass vcode:(NSString *)vcode mail:(NSString *)mail mobile:(NSString *)mobile myses:(NSString *)sess with_nick:(NSString *)nick_name;
  • 接口说明
    用于注册新用户。

  • 参数说明

    • reguser:要注册的新用户名(手机号或邮箱号)
    • regpass:新用户名密码
    • vcode:验证码
    • mail:注册邮箱(手机号注册时可以为空)
    • mobile:注册手机(邮箱注册时可以为空)
    • sess:已废弃,传入nil即可
    • nick_name:昵称
  • 返回值
    1 = 只表示调用成功,请求的结果在cli_lib_Register_CALLBACK代理中返回
    -1 = 调用失败

  • 相关接口

4.3.2.4. cli_lib_user_resetpass_mobile(通过手机重置密码)

- (int)cli_lib_user_resetpass_mobile:(NSString *)user with_mobile:(NSString *)mobile with_vcode:(NSString *)vcode new_pass:(NSString *)newpass;

4.3.2.5. cli_lib_user_resetpass_email_v2(通过邮箱重置密码)

- (int)cli_lib_user_resetpass_email_v2:(NSString *)email language:(NSString *)language;
  • 接口说明
    通过邮箱重置密码。如果成功,会向指定邮箱发送一份密码重置邮件,打开邮件中的链接,即可重置密码。

  • 参数说明

    • email:邮箱号
    • language:邮件语言,zh=简体中文,en=英文
  • 返回值
    1 = 只表示调用成功,请求的结果在cli_lib_ResetPassword_mail_CALLBACK代理中返回
    -1 = 调用失败

  • 相关接口

4.3.2.6. cli_lib_login(登录)

- (int)cli_lib_login:(NSString *)loguser pass:(NSString *)logpass; 
  • 接口说明
    登录到平台中。

  • 参数说明

    • loguser:客户端账号
    • logpass:客户端密码
  • 返回值
    1 = 只表示调用成功,请求的结果在cli_lib_login_callback代理中返回
    -1 = 调用失败

  • 相关接口

4.3.2.7. cli_lib_ModifyNick(修改用户昵称)

- (int)cli_lib_ModifyNick:(NSString *)newnick; 
  • 接口说明
    修改用户的昵称,必须登录后才能调用。

  • 参数说明

    • newnick:新昵称
  • 返回值
    1 = 只表示调用成功,请求的结果在cli_lib_ModifyNick_CALLBACK代理中返回
    -1 = 调用失败

  • 相关接口

4.3.2.8. cli_lib_ModifyPassword_v2(修改密码)

- (int)cli_lib_ModifyPassword_v2:(NSString *)usr oldpass:(NSString *)oldpass new_pass:(NSString *)newpass; 
  • 接口说明
    修改用户的密码,必须登录后才能调用。这是在用户没有忘记老密码时使用的。

  • 参数说明

    • user:用户名
    • oldpass:老密码
    • newpass:新密码
  • 返回值
    1 = 只表示调用成功,请求的结果在cli_lib_ModifyPassword_CALLBACK代理中返回
    -1 = 调用失败

  • 相关接口

4.3.3. 列表相关接口

类:ppview_cli

4.3.3.1. cli_lib_GetDevList(获取设备列表)

- (int)cli_lib_GetDevList;
  • 接口说明

用于获取设备列表。

注:设备列表与摄像头列表的区别是:如果设备包括多个通道(摄像头),如DVR,在设备列表中,一个设备仅为一项,而在摄像头列表中,每个通道都是单独的一项。

4.3.3.2. cli_lib_GetCamlistSn(获取摄像头列表流水号)

- (int)cli_lib_GetCamlistSn;
  • 接口说明
    用于获取摄像头列表流水号。摄像头列表流水号是一个无符号短整型整数,用于标识摄像头列表的变化,当列表变化时,数字会自动+1,直到超过65535时回复到0,再继续+1,周而复始。

  • 参数说明

  • 返回值
    1 = 只表示调用成功,请求的结果在cli_lib_GetCamlistSn_CALLBACK代理中返回
    -1 = 调用失败

  • 相关接口

4.3.3.3. cli_lib_getcamlist_ex(获取摄像头列表)

- (int)cli_lib_getcamlist_ex;
  • 接口说明 用于获取摄像头列表。

注:设备列表与摄像头列表的区别是:如果设备包括多个通道(摄像头),如DVR,在设备列表中,一个设备仅为一项,而在摄像头列表中,每个通道都是单独的一项。

如果为了有更好的用户体验,当获取到摄像头列表后,可以为每个摄像头预创建一个P2P连接,这样可以加快之后创建P2P连接的速度,从而加快与设备之间的P2P交互(如获取和设置设备上的参数操作),参见cli_lib_set_preconnects

4.3.3.4 cli_lib_GetCamThumbnail(获取摄像头缩略图)

- (NSData *)cli_lib_GetCamThumbnail:(NSString *)camid;
  • 接口说明 用于获取摄像头缩略图。

注:此接口阻塞执行,其结果在返回值中直接返回,不通过代理返回

  • 参数说明

  • 返回值
    nil = 没有取到
    非nil = jpeg文件格式的图片数据

  • 相关接口

4.3.3.5. cli_lib_ModifyCamName(修改摄像头名称)

- (int)cli_lib_ModifyCamName:(NSString *)camid new_name:(NSString *)newname sn:(int)sn parentid:(NSString *)parent_id; 

4.3.3.6. cli_lib_DeleteDevice(删除自己添加的设备)

- (int)cli_lib_DeleteDevice:(NSString *)devid;  
  • 接口说明 删除自己添加的设备。如果要删除别人分享给自己的设备,则需要使用cli_lib_delete_shared_camera接口。

注:某些设备可能含有多个通道(即多个摄像头,如DVR),在调用cli_lib_DeleteDevice时将删除所有的通道。

4.3.3.7. cli_lib_delete_shared_camera(删除别人分享给自己的摄像头)

- (int)cli_lib_delete_shared_camera:(NSString *)devid camid:(NSString *)camid sn:(int)cursn;

4.3.3.8. cli_lib_ModifyCamPrivateStatus(修改摄像头隐私模式)

- (int)cli_lib_ModifyCamPrivateStatus:(NSString *)camid devid:(NSString *)devid status:(int)status;
  • 接口说明
    用于设置摄像头的隐私模式,处于隐私模式下的摄像头,远程无法打开实时音视频播放。隐私模式的当前状态保存在摄像头列表中,请参见:摄像头列表cams部分的private_status字段

  • 参数说明

    • camid:摄像头编号,从摄像头列表中获取,参见cams中的id字段
    • dev_id:设备编号,从摄像头列表中获取,参见cams中的devid字段
    • status:隐私模式,0=关,1=开
  • 返回值
    1 = 只表示调用成功,请求的结果在cli_lib_SetCamPrivate_CALLBACK代理中返回
    -1 = 调用失败

  • 相关接口

4.3.3.9. cli_lib_AddNewGroup(添加新分组)

- (int)cli_lib_AddNewGroup:(NSString *)parent_gid new_name:(NSString *)newname sn:(int)sn; 

4.3.3.10. cli_lib_ModifyGroupName(修改分组名)

- (int)cli_lib_ModifyGroupName:(NSString *)groupid new_name:(NSString *)newname with_parid:(NSString *)parid sn:(int)sn;

4.3.3.11. cli_lib_MoveGroup(移动分组)

- (int)cli_lib_MoveGroup:(NSString *)groupid oldparid:(NSString *)old_parid destgroupid:(NSString *)destgroupid sn:(int)sn;
  • 接口说明
    将分组移动到另一个分组下,如果该分组包含有子分组和摄像头,这些子分组和摄像头仍从属于该分组,即移动分组时,会将该分组及其下属的子分组和摄像头作为一个整体移动到新分组下。分组信息保存在摄像头列表中,请参见:摄像头列表groups部分。

  • 参数说明

  • 返回值
    1 = 只表示调用成功,结果在cli_lib_MoveGroup_CALLBACK代理中返回
    -1 = 调用失败

  • 相关接口

4.3.3.12. cli_lib_MoveCamera(在分组间移动摄像头)

- (int)cli_lib_MoveCamera:(NSString *)camid cam_type:(int)cam_type old_groupid:(NSString *)oldgroupid destgroupid:(NSString *)destgroupid sn:(int)sn;

4.3.3.13. cli_lib_MoveGroup_to_newgroup(创建新分组并移动某分组到此新分组)

- (int)cli_lib_MoveGroup_to_newgroup:(NSString *)groupid oldparid:(NSString *)old_parid new_groupname:(NSString *)new_groupname newgroup_parid:(NSString *)newgroup_parid sn:(int)sn; 
  • 接口说明
    新建一个分组,并将指定分组移动到这个新建分组下,如果该分组包含有子分组和摄像头,这些子分组和摄像头仍从属于该分组,即移动分组时,会将该分组及其下属的子分组和摄像头作为一个整体移动到新分组下。分组信息保存在摄像头列表中,请参见:摄像头列表groups部分。

  • 参数说明

  • 返回值
    1 = 只表示调用成功,结果在cli_lib_MoveGroup_to_newgroup_CALLBACK代理中返回
    -1 = 调用失败

  • 相关接口

4.3.3.14. cli_lib_MoveCamera_to_newgroup(创建新分组并移动某摄像头到此新分组)

- (int)cli_lib_MoveCamera_to_newgroup:(NSString *)camid cam_type:(int)cam_type old_groupid:(NSString *)oldgroupid new_groupname:(NSString *)new_groupname newgroup_parid:(NSString *)newgroup_parid sn:(int)sn;

4.3.3.15. cli_lib_DeleteGroup(删除分组)

- (int)cli_lib_DeleteGroup:(NSString *)groupid sn:(int)sn;  

4.3.3.16. cli_lib_disable_cam_alert_event(取消摄像头报警状态)

- (int)cli_lib_disable_cam_alert_event:(NSString *)devid camid:(NSString *)camid;  
  • 接口说明
    取消摄像头的报警状态。
    当摄像头报警后,平台会将摄像头列表camsalert_event字段,标记成“正在报警”状态。如果APP有需要显示某摄像头处于报警状态这样的需求,可以利用这个字段,在界面上显示该摄像头为报警状态。并通过本接口来取消这个状态。

  • 参数说明

  • 返回值
    1 = 只表示调用成功,结果在cli_lib_disable_alert_event_callback代理中返回
    -1 = 调用失败

  • 相关接口

4.3.3.17. cli_lib_disable_cam_lowpower_event(取消摄像头外接传感器低电状态)

- (int)cli_lib_disable_cam_lowpower_event:(NSString *)devid camid:(NSString *)camid;    
  • 接口说明
    当摄像头相关的外部传感器触发低电压事件后,平台会将摄像头列表camssensor_low_power字段,标记成“低电压”状态。如果APP有需要显示低电状态这样的需求,可以利用这个字段,在界面上显示该摄像头为外部传感器低电状态。用户通过本接口来取消低电状态。

  • 参数说明

  • 返回值
    1 = 只表示调用成功,结果在cli_lib_disable_lowpower_event_callback代理中返回
    -1 = 调用失败

  • 相关接口

4.3.4. 初始化配置及添加设备相关接口

类:ppview_cli

4.3.4.1. cli_lib_start_search(搜索局域网内的设备)

- (int)cli_lib_start_search;

注:由于广播包在局域网内十分容易丢包,因此建议重复搜索三次,将三次的结果合并在一起。否则可能会存在部分设备没有被搜到。

4.3.4.2. cli_lib_wifi_start_config(开启一键WIFI配置)

- (int)cli_lib_wifi_start_config:(NSString *)ssid pass:(NSString *)passwd;
  • 接口说明 用于配置设备的WIFI参数。手机调用这个函数后会开启无线数据广播,设备会从无线信号中抓取到信息并自动配置WIFI参数。

注:一键WIFI配置阶段,由于网络还不通,因此手机APP是无法与设备进行通信的,此时需要手机APP不断地去尝试连接设备,并有一个超时判断。详细方法请参见编程指南:一键WIFI配置

  • 参数说明

    • ssid:WIFI的SSID
    • passwd:WIFI密码
  • 返回值
    1 = 成功
    -1 = 失败

  • 相关接口

4.3.4.3. cli_lib_wifi_stop_config(关闭一键WIFI配置)

- (void)cli_lib_wifi_stop_config;
  • 接口说明
    使手机从一键WIFI配置状态中退出。

  • 参数说明

  • 返回值

  • 相关接口

4.3.4.4. cli_lib_getwifi_qrcode(生成二维码字符串)

- (NSString *)cli_lib_getwifi_qrcode:(NSString *)ssid ssidpass:(NSString *)pass lang:(NSString *)lang;
  • 接口说明
    生成用于配置WIIF并添加设备的二维码字符串,开发者使用此字符串生成二维码,放置在支持二维码识别的设备前即可进行WIFI配置及添加设备

  • 参数说明

    • ssid:WIFI SSID
    • pass:WIFI密码
    • lang:客户端使用的语言,zh=中文,en=英文
  • 返回值
    二维码字符串

  • 相关接口

4.3.4.5. cli_lib_bind_lang(添加设备)

- (int)cli_lib_bind_lang:(long)hconnector devname:(NSString *)dev_name devusr:(NSString *)dev_usr devpass:(NSString *)dev_pass bind_sess:(NSString *)bindsess lang:(NSString *)lang;
  • 接口说明
    用于将设备添加到当前登录的账号下。如果该设备已经被其它用户添加,则无法添加。

  • 参数说明

    • hconnector:P2P连接实例(参见cli_lib_createconnect)
    • dev_name:设备名称(可不填)
    • dev_usr:设备账号
    • dev_pass:设备密码
    • bind_sess:用于标记此次操作的随机字符串(也可用设备编号),由于添加操作与返回添加结果是异步的,如果同时进行多次这个操作时,可以用来标识此次操作,此值会在cli_lib_binduser_callback代理中返回。
    • lang:当前客户端的语言,zh=中文,en=英文。这个参数用于告诉设备,当前使用者的语言,以便语音播报时使用相应的语音。
  • 返回值
    1 = 只表示调用成功,请求的结果在cli_lib_binduser_callback代理中返回
    -1 = 调用失败

  • 相关接口

4.3.5. P2P连接相关

类:ppview_cli

直接与设备交互的接口,都需要先创建一个P2P连接,再将P2P连接句柄作为参数调用相关的函数。

4.3.5.1. cli_lib_createconnect(创建P2P连接)

- (long)cli_lib_createconnect:(NSString *)dev_id devuser:(NSString *)dev_user devpass:(NSString *)dev_pass tag:(NSString *)tag;
  • 接口说明
    创建P2P连接,用于有设备交互。

  • 参数说明

    • dev_id:设备编号,从摄像头列表中获取,参见cams中的devid字段
    • dev_usr:设备账号,从摄像头列表中获取,参见cams中的dev_user字段
    • dev_pass:设备密码,从摄像头列表中获取,参见cams中的dev_pass字段
    • tag:用于标记这个P2P连接,在代理中会作为参数返回,当有多个P2P连接时,可一一对应方便进行管理。
  • 返回值
    大于0 = 这个P2P连接的句柄(用于标记这个P2P连接的整数)。返回时只表示已创建了P2P通道的实例,P2P连接是成功或失败,在代理cli_lib_devconnect_CALLBACK中返回。在这个P2P连接没有被释放请,如果连接状态发生变化,这个代理会被多次调用。
    0 = 失败

  • 相关接口

4.3.5.2. cli_lib_releaseconnect(释放P2P连接)

- (long)cli_lib_releaseconnect:(long)hconnector;

4.3.5.3. cli_lib_set_preconnects(P2P预连接)

- (int)cli_lib_set_preconnects:(NSArray *)devs_array;
  • 说明
    传入设备队列,让SDK预先创建好与设备间的P2P通道,以便加快后续需要与设备进行P2P交互的操作,提高用户体验。生成设备队列所需的信息可从摄像头列表中得到。

  • 参数说明

    • devs_array:设备序列号队列。可以多次重复调用,SDK内部会比较队列中的序列号,重新调整预连接的设备。如果传入的队列为空,表示清除所有预连接。devs_array是由多个vv_dev_item类实例组成的队列,由开发者从摄像头列表中得到并自己生成。
  • 返回值
    1 = 成功
    -1 = 失败

  • 相关接口

4.3.6. 实时音视频播放相关

类:vv_real_player

与交互式接口不同,实时音视频播放需要创建播放器实例,并调用播放器实例的接口来实现功能。多画面播放时,需要创建多个实例。

4.3.6.1. init(创建并初始化实时播放器)

- (id)init:(int)playindex fisheyetype:(int)fisheyetype 
           left:(float)left right:(float)right 
           top:(float)top bottom:(float)bottom;
  • 说明
    初始化实时音视频播放器实例。其中与鱼眼镜头相关的参数,在初始化普通镜头时,可以直接填写0即可。鱼眼镜头的相关参数,可以从摄像头列表中的fisheye_params中获得。

  • 参数说明

    • playindex:播放器索引标记,开发者可随意自己设定这个值,在多路同时播放的情况下,必须保证每个播放器的playindex值都不同。这个值会在与实时音视频播放相关的代理函数中返回,以便与播放器实例进行对应。
    • fisheyetype:鱼眼镜头类型,0=非鱼眼,1=吊装360度,2=壁挂180度
    • left:鱼眼图像左边距,参见fisheye_params
    • right:鱼眼图像右边距,参见fisheye_params
    • top:鱼眼图像上边距,参见fisheye_params
    • bottom:鱼眼图像下边距,参见fisheye_params

注:鱼眼镜头参数在摄像头出厂前,通过厂测软件校准设定。

  • 返回值 播放器实例

4.3.6.2. set_surfaceview(设置播放窗口)

- (void)set_surfaceview:(UIView *)view;
  • 说明
    设置用于播放的surface view。

  • 参数说明

    • view:用于播放的surface view,必须是OpenGl类型的view。

4.3.6.3. start_play(开始播放)

- (int)start_play:(int)chlid stream_id:(int)stream_id devid:(NSString *)dev_id user:(NSString *)user pass:(NSString *)pass;
  • 说明 开始实时音视频播放。

播放过程中,如果分辨率发生变化,SDK内部会自动处理变化并继续播放,但由于分辨率发生变化时,画面的长宽比也会发生变化,因此开发者需要在变化时,调整surface_view的大小以符合长宽比。

4.3.6.4. ptz_ctrl(云镜控制)

- (int)ptz_ctrl:(int)cmd with_speed:(int)speed with_times:(int)times;
  • 说明 如果摄像头具有云镜控制能力,则可调用这个接口来进行控制。云镜控制只有在播放成功后才允许执行。

摄像头是否具备云镜控制能力,可从摄像头列表中获取,参见cams中的ptz字段。

如果摄像头是鱼眼类型,此操作无效。

  • 参数说明

    • cmd:云镜命令,含义见下表。
    • speed:云镜速度或其它参数,与云镜命令对应,含义见下表
    • times:命令重复次数,只对巡航命令有效,0表示无穷次(慎用)

    云镜命令说明:

命令号 说明 speed含义
0 停止所有当前正在更新的云镜操作
1 云台上转 转动速度(1~100),默认50
2 云台下转 转动速度(1~100),默认50
3 云台左转 转动速度(1~100),默认50
4 云台右转 转动速度(1~100),默认50
5 镜头拉近 拉近速度(1~100),默认50
6 镜头拉远 拉远速度(1~100),默认50
10 设置当前位置为预置点 预置点号(1~32)
11 移动到预置点 预置点号(1~32)
12 删除预置点 预置点号(1~32)
13 设置当前位置为看守位
14 移动到看守位
15 设置无操作时自动回复到看守位的闲置时间 秒数
16 删除看守位
20 水平巡航
21 垂直巡航
22 水平巡航接着垂直巡航

注:所有云镜命令及速度控制能力,都依赖于硬件实现,只有硬件支持这些命令时接口才起作用。

  • 返回值
    1 = 成功
    -1 = 失败

  • 相关接口

4.3.6.5. snap_picture(实时播放抓图)

- (void)snap_picture;

4.3.6.6. start_record(开启本地录像)

- (BOOL)start_record:(NSString *)video_filename thumbil_filename:(NSString *)thumbil_filename;
  • 说明 将当前播放的音视频录制到手机上。

注:这个录像功能是指将音视频录制到手机上,而不是远程控制设备端是否录像。录像在手机上的录像格式为私有格式,通过手机APP可以回放。

  • 参数说明

    • video_filename:本地录像文件名,需要带上完整的路径。SDK中的DEMO程序是将文件存放在应用的沙盒内,开发者可以选择其它可写的路径。
    • thumbil_filename:录像缩略图文件名,需要带上完整的路径,允许传入nil,表示不需要缩略图。
  • 返回值
    true = 成功
    false = 失败

  • 相关接口

4.3.6.7. stop_record(关闭本地录像)

- (BOOL)stop_record;
  • 说明
    停止本地录像

  • 参数说明

  • 返回值
    true = 成功
    false = 失败

4.3.6.8. set_audio_status(设置音频开关)

- (int)set_audio_status:(int)status;
  • 说明
    在音视频播放过程中开启或关闭该画面的音频播放。

  • 参数说明

    • status:音频开关状态,1=开,0=关
  • 返回值
    1 = 成功
    -1 = 失败

  • 相关接口

4.3.6.9. get_audio_status(获取音频开关状态)

- (int)get_audio_status;
  • 说明
    获取播放器的音频开关状态。

  • 参数说明

  • 返回值
    0 = 关闭状态
    1 = 开启状态

  • 相关接口

4.3.6.10. stop_play(停止播放)

- (void)stop_play;
  • 说明
    停止实时音视频播放。

  • 参数说明

  • 返回值

  • 相关接口

    4.3.6.11. set_fisheye_param(重新设置鱼眼镜头参数)

- (void)set_fisheye_param:(float)left right:(float)right top:(float)top bottom:(float)bottom;
  • 说明
    重新设置鱼眼镜头参数,一般在鱼眼摄像头切换码流时使用,必须在start_play之前调用。

  • 参数说明

  • 返回值

  • 相关接口

4.3.7. 音频对讲相关

类:CTalk

4.3.7.1. CTalk.getInstance(获得对讲实例)

+(CTalk*) getInstance;
  • 说明
    CTalk类采用单例模式,因为无论是手机APP还是设备端,同时只允许一个对讲的实例存在。

  • 返回值
    对讲类实例。

4.3.7.2. vv_voicetalk_start(开启对讲)

- (int)vv_voicetalk_start:(long)connector chlid:(int)chlid user:(NSString *)user pass:(NSString *)pass talk_type:(int)talk_type;

4.3.7.3. vv_voicetalk_stop(关闭对讲)

- (void)vv_voicetalk_stop;

4.3.7.4. voice_switch(切换音频方向)

- (void)voice_switch:(int)direction;
  • 说明
    切换对讲时的音频方向,只针对半双工的情况有效。

  • 参数说明

    • direction:音频方向,0=设备->APP,1=APP->设备
  • 返回值

4.3.8. 设备端远程录像查询相关

类:ppview_cli

4.3.8.1 cli_lib_record_get_date_list(查询某一月内哪些天有录像)

- (int)cli_lib_record_get_date_list:(long)hconnector with_chlid:(int)chlid with_rec_type:(int)rec_type with_date:(NSString *)date;

4.3.8.2 cli_lib_record_get_min_list(查询某一天内哪些分钟有录像)

- (int)cli_lib_record_get_min_list:(long)hconnector with_chlid:(int)chlid with_rec_type:(int)rec_type with_date:(NSString *)date;

4.3.9. 设备端远程录像回放相关

类:vv_playback_player

4.3.9.1. init(创建并初始化远程录像回放实例)

- (id)init:(int)playindex fisheyetype:(int)fisheyetype 
           left:(float)left right:(float)right 
           top:(float)top bottom:(float)bottom;
  • 说明
    初始化远程录像回放器实例。其中与鱼眼镜头相关的参数,在初始化普通镜头时,可以直接填写0即可。鱼眼镜头的相关参数,可以从摄像头列表中的fisheye_params中获得。

  • 参数说明

    • playindex:回放器索引标记,开发者可随意自己设定这个值,在多路同时回放的情况下,必须保证每个回放器的playindex值都不同。这个值会在与远程回放相关的代理函数中返回,以便与回放器实例进行对应。
    • fisheyetype:鱼眼镜头类型,0=非鱼眼,1=吊装360度,2=壁挂180度
    • left:鱼眼图像左边距,参见fisheye_params
    • right:鱼眼图像右边距,参见fisheye_params
    • top:鱼眼图像上边距,参见fisheye_params
    • bottom:鱼眼图像下边距,参见fisheye_params

注:鱼眼镜头参数在摄像头出厂前,通过厂测软件校准设定。

  • 返回值 回放器实例

4.3.9.2. set_surfaceview(设置回放窗口)

- (void)set_surfaceview:(UIView *)view;
  • 说明
    设置用于回放的surface view。

  • 参数说明

    • view:用于回放的surface view,必须是OpenGl类型的view。

4.3.9.3. start_play(开始回放)

- (int)start_play:(int)chlid devid:(NSString *)dev_id user:(NSString *)user pass:(NSString *)pass start_time:(NSString *)start_time;
  • 说明 开始设备端录像远程回放。

回放过程中,如果录像的分辨率发生变化,SDK内部会自动处理变化并继续播放,但由于分辨率发生变化时,画面的长宽比也会发生变化,因此开发者需要在变化时,调整surface_view的大小以符合长宽比。

4.3.9.4. snap_picture(回放抓图)

- (void)snap_picture;

4.3.9.5. set_audio_status(设置音频开关)

- (int)set_audio_status_private:(int)status;
  • 说明
    在回放过程中开启或关闭该画面的音频播放。

  • 参数说明

    • status:音频开关状态,1=开,0=关
  • 返回值
    1 = 成功
    -1 = 失败

  • 相关接口

4.3.9.6. get_audio_status(获取音频开关状态)

- (int)get_audio_status;
  • 说明
    获取回放实例的音频开关状态。

  • 参数说明

  • 返回值
    0 = 关闭状态
    1 = 开启状态

  • 相关接口

4.3.9.7. stop_play(停止回放)

- (void)stop_play;
  • 说明
    停止回放。

  • 参数说明

  • 返回值

  • 相关接口

4.3.10. 手机端存储的录像回放相关

相关类:vv_local_player

4.3.10.1. init(创建并初始化本地录像回放实例)

- (id)init:(int)playindex fisheyetype:(int)fisheyetype 
           left:(float)left right:(float)right 
           top:(float)top bottom:(float)bottom;
  • 说明
    初始化本地录像回放器实例。其中与鱼眼镜头相关的参数,在初始化普通镜头时,可以直接填写0即可。鱼眼镜头的相关参数,可以从摄像头列表中的fisheye_params中获得。

  • 参数说明

    • playindex:回放器索引标记,开发者可随意自己设定这个值,在多路同时回放的情况下,必须保证每个回放器的playindex值都不同。这个值会在与本地回放相关的代理函数中返回,以便与回放器实例进行对应。
    • fisheyetype:鱼眼镜头类型,0=非鱼眼,1=吊装360度,2=壁挂180度
    • left:鱼眼图像左边距,参见fisheye_params
    • right:鱼眼图像右边距,参见fisheye_params
    • top:鱼眼图像上边距,参见fisheye_params
    • bottom:鱼眼图像下边距,参见fisheye_params

注:鱼眼镜头参数在摄像头出厂前,通过厂测软件校准设定。

  • 返回值 本地回放器实例

4.3.10.2. set_surfaceview(设置回放窗口)

- (void)set_surfaceview:(UIView *)view;
  • 说明
    设置用于回放的surface view。

  • 参数说明

    • view:用于回放的surface view,必须是OpenGl类型的view。

4.3.10.3. start_play(开始回放)

-(int)start_play:(NSString*)filename;
  • 说明

开始本地录像回放。

回放过程中,如果录像的分辨率发生变化,SDK内部会自动处理变化并继续播放,但由于分辨率发生变化时,画面的长宽比也会发生变化,因此开发者需要在变化时,调整surface_view的大小以符合长宽比。

4.3.10.4. set_audio_status(设置音频开关)

- (int)set_audio_status_private:(int)status;
  • 说明
    在回放过程中开启或关闭该画面的音频播放。

  • 参数说明

    • status:音频开关状态,1=开,0=关
  • 返回值
    1 = 成功
    -1 = 失败

  • 相关接口

4.3.10.5. get_audio_status(获取音频开关状态)

- (int)get_audio_status;
  • 说明
    获取本地回放实例的音频开关状态。

  • 参数说明

  • 返回值
    0 = 关闭状态
    1 = 开启状态

  • 相关接口

4.3.10.6. set_pause(暂停/恢复本地回放)

- (void)set_pause:(BOOL)pause;
  • 说明
    在本地回放过程中,暂停、恢复回放。

  • 参数说明

    • pause:是否暂停,true=暂停,false=恢复
  • 返回值

  • 相关接口

4.3.10.7. get_video_width(获取本地录像当前正在回放画面的宽度)

- (int)get_video_width;
  • 说明 获取当前正在回放的录像图像宽度(像素)。

注:整个录像里,可能存在不同的分辨率,此函数所获取到的只是当前正在回放的画面宽度。

  • 参数说明

  • 返回值
    画面宽度,像素值

  • 相关接口

4.3.10.8. get_video_height(获取本地录像当前正在回放画面的高度)

- (int)get_video_height;
  • 说明 获取当前正在回放的录像图像高度(像素)。

注:整个录像里,可能存在不同的分辨率,此函数所获取到的只是当前正在回放的画面高度。

  • 参数说明

  • 返回值
    画面高度,像素值

  • 相关接口

4.3.10.9. get_cur_sec(获取当前录像播放位置的秒数)

- (int)get_cur_sec;
  • 说明
    获取当前录像播放位置的秒数。录像总的秒数在on_play_status_callback中返回。结合这个函数返回的秒数,可以实现APP显示播放进度。

  • 参数说明

  • 返回值
    当前秒数

  • 相关接口

4.3.10.10. set_seek(重新定位录像播放位置)

- (int)set_seek:(int)pos;
  • 说明
    重新定位录像播放位置。结合进度条,可以实现播放位置拖动。

  • 参数说明

    • pos:重定位位置的秒数。
  • 返回值
    重定位的秒数

  • 相关接口

4.3.10.11. get_cur_frame_utctime(获取当前回放位置的录像UTC时间)

- (int)get_cur_frame_utctime;
  • 说明
    获取当前回放位置的录像UTC时间,可用于在回放画面上叠加时间字幕。

  • 参数说明
    无。

  • 返回值
    当前录像的utc时间。

  • 相关接口

4.3.10.12. stop_play(停止本地回放)

- (void)stop_play;
  • 说明
    停止本地回放。

  • 参数说明

  • 返回值

  • 相关接口

4.3.11. 鱼眼摄像头抓图图片显示相关

相关类:CPlayer_fish_jpg

4.3.11.1. init(创建并初始化鱼眼摄像头图片查看实例)

- (id)init:(int)playindex;
  • 说明
    鱼眼摄像头图片查看实例。

  • 参数说明

    • playindex:查看实例索引标记
  • 返回值
    鱼眼摄像头图片查看实例

4.3.11.2. set_surfaceview(设置查看窗口)

- (void)set_surfaceview:(UIView *)view;
  • 说明
    设置用于查看的surface view。

  • 参数说明

    • view:用于查看的surface view,必须是OpenGl类型的view。

4.3.11.3. start_play(显示鱼眼图片)

- (int)start_play:(NSString *)filename top:(float)top bottom:(float)bottom left:(float)left right:(float)right fisheyetype:(int)fisheyetype;
  • 说明
    显示鱼眼图片。显示后,通过手势操作图片的功能SDK已实现。

  • 参数说明

    • filename:图片文件名。
    • fisheyetype:鱼眼镜头类型,1=吊装360度,2=壁挂180度
    • left:鱼眼图像左边距,参见fisheye_params
    • right:鱼眼图像右边距,参见fisheye_params
    • top:鱼眼图像上边距,参见fisheye_params
    • bottom:鱼眼图像下边距,参见fisheye_params

注:鱼眼镜头参数在摄像头出厂前,通过厂测软件校准设定。

  • 返回值
    1 = 成功
    -1 = 失败

  • 相关接口

4.3.11.4. stop_play(停止显示鱼眼图片)

- (void)stop_play;
  • 说明
    停止显示鱼眼摄像头抓图图片。

  • 参数说明

  • 返回值

  • 相关接口

4.3.12. 布撤防相关

相关类:ppview_cli

4.3.12.1. cli_lib_ModifyCamAlertStatus(单个摄像头布撤防)

- (int)cli_lib_ModifyCamAlertStatus:(NSString *)camid devid:(NSString *)devid status:(int)status; 
  • 接口说明 对摄像头进行布撤防操作。布防后的设备,发生报警时,会将报警消息上传到平台,平台会将消息推送给APP。

注:某些设备,当重要报警触发时(如火警、煤气泄漏等),在撤防状态下,仍会上传报警信息,并推送至APP。

4.3.12.2. cli_lib_ModifyCamsAlertStatus(多摄像头批量布撤防)

- (int)cli_lib_ModifyCamsAlertStatus:(NSArray *)cams status:(int)status;
  • 接口说明 对多个摄像头进行批量布撤防操作。布防后的设备,发生报警时,会将报警消息上传到平台,平台会将消息推送给APP。

注:某些设备,当重要报警触发时(如火警、煤气泄漏等),在撤防状态下,仍会上传报警信息,并推送至APP。

4.3.13. 事件相关

4.3.13.1. cli_lib_get_event_list(分页获取账号下所有摄像头的事件列表)

- (int)cli_lib_get_event_list:(NSString *)event_id items_count:(int)items_count;
  • 接口说明
    分页获取账号下所有摄像头的事件列表,收到的列表按发生时间由近到远排序。

  • 参数说明

    • event_id:从哪个事件编号开始向后取列表。取第一页时,取值"0",取后一页时,取值为前一页的最后一个event_id。
    • item_count:每页取多少条。建议不要超过20。
  • 返回值
    1 = 只表示调用成功,结果在cli_lib_events_callback代理中返回
    -1 = 调用失败

  • 相关接口

4.3.13.2. cli_lib_get_unreadevent_count(获取账号下所有摄像头的事件列表中未读的条数)

- (int)cli_lib_get_unreadevent_count;  
  • 接口说明
    获取账号下所有摄像头的事件列表中未读的条数。

  • 参数说明

  • 返回值
    1 = 只表示调用成功,结果在cli_lib_unreadeventcount_callback代理中返回
    -1 = 调用失败

  • 相关接口

4.3.13.3. cli_lib_get_cam_event_list(分页获取某摄像头的事件列表)

- (int)cli_lib_get_cam_event_list:(NSString *)cam_id event_id:(NSString *)event_id items_count:(int)items_count; 
  • 接口说明
    分页获取某摄像头的事件列表,收到的列表按发生时间由近到远排序。

  • 参数说明

    • cam_id:摄像头编号。
    • event_id:从哪个事件编号开始向后取列表。取第一页时,取值"0",取后一页时,取值为前一页的最后一个event_id。
    • item_count:每页取多少条。建议不要超过20。
  • 返回值
    1 = 只表示调用成功,结果在cli_lib_cam_events_callback代理中返回
    -1 = 调用失败

  • 相关接口

4.3.13.4. cli_lib_GetEventThumbnail(获取事件缩略图)

- (NSData *)cli_lib_GetEventThumbnail:(NSString *)camid eventid:(NSString *)eventid;  
  • 接口说明
    获取某一事件的抓图缩略图。此函数是阻塞式的,结果直接返回。

  • 参数说明

    • camid:摄像头编号
    • eventid:事件编号
  • 返回值
    事件抓图缩略图数据,jpeg文件格式。

4.3.13.5. cli_lib_GetEventUrl(获取事件图片url)

- (NSString *)cli_lib_GetEventUrl:(NSString *)event_id;  
  • 接口说明
    获取某一事件的抓图图片url。APP使用webview直接打开这个url显示即可。
    此函数为阻塞调用方式,结果直接返回。

  • 参数说明

    • eventid:事件编号
  • 返回值
    事件抓图url。

4.3.13.6. cli_lib_set_all_events_readed(将所有事件设置为已读)

- (int)cli_lib_set_all_events_readed;       

4.3.14. 设备参数及交互相关(P2P直接访问设备方式)

相关类:ppview_cli

设置设备参数,都通过P2P连接进行交互,因此所有通过P2P交互进行设备参数设置的接口,都需要先创建一个P2P连接(创建P2P连接参见cli_lib_createconnect,设备参数设置流程参见开发指南-设备参数设置流程)。

4.3.14.1. cli_lib_setdevpass(修改设备密码)

- (int)cli_lib_setdevpass:(long)hconnector devuser:(NSString *)dev_usr devpass:(NSString *)dev_pass devnewpass:(NSString *)new_dev_pass;

4.3.14.2. cli_lib_get_mirror_config(获取摄像头图像镜像/吊装模式)

- (int)cli_lib_get_mirror_config:(long)hconnector with_chlid:(int)chlid;

4.3.14.3. cli_lib_set_mirror_config(设置摄像头图像镜像/吊装模式)

- (int)cli_lib_set_mirror_config:(long)hconnector with_chlid:(int)chlid state:(int)state;

4.3.14.4. cli_lib_dev_reboot(远程重启设备)

- (int)cli_lib_dev_reboot:(long)hconnector;
  • 说明
    远程重启设备。由于在hconnector创建时已与设备对应,因此参数中不再需要设备序列号。此接口以阻塞方式调用,结果直接返回。

  • 参数说明

  • 返回值
    0 = 成功
    -1 = 客户端句柄不存在
    -2 = 库未初始化
    -3 = 连接句柄不存在
    -4 = 发送数据失败
    -5 = 接收回复失败
    -6 = 接收回复超时
    -7 = 接收到错误的回复

  • 相关接口

4.3.14.5. cli_lib_cli_get_netif_settings (获取设备网络配置信息)

- (int)cli_lib_cli_get_netif_settings:(long)hconnector;

4.3.14.6. cli_lib_cli_set_netif_settings (设置设备网络配置信息)

- (int)cli_lib_cli_set_netif:(long)hconnector set_json:(NSData *)setjson;
  • 说明
    获取设备的所有网络接口的配置信息。

  • 参数说明

    • hconnector:P2P连接句柄,由cli_lib_createconnect创建。
    • setjson:网络配置信息,json格式。

setjson网络配置信息格式说明(JSON):

{
    "token": "网络接口名,如eth0、wlan0等",
    "net_type": 网络类型,整型数:1=有线静态ip, 2=有线DHCP, 3=无线静态ip, 4=无线DHCP,
    "ip": "IP地址,net_type=2或4时不需要",
    "mask": "子网掩码,net_type=2或4时不需要",
    "gate": "网关IP地址,net_type=2或4时不需要",
    "dns_dhcp": 是否通过dhcp得到dns,1=是,0=否,
    "dns1": "主DNS服务器地址,dns_dhcp=1时不需要",
    "dns2": "辅DNS服务器地址,dns_dhcp=1时不需要",
    "ssid": "无线SSID,有线网络时不需要这个字段",
    "secu_psk_pass": "无线密码,有线网络时不需要这个字段"
}

注:JSON中的字段,除说明可以不需要的情况外,其余的都是必需的,如果某些参数不需要修改,填写原值即可。

获取网络配置时,取到的是所有网卡的信息,设置时只能一个一个设置。

4.3.14.7. cli_lib_get_wifi_lists (获取设备端扫描到的WIFI列表)

- (int)cli_lib_get_wifi_lists:(long)hconnector;

4.3.14.8. cli_lib_get_sdcard_info(获取设备端SD卡信息)

- (int)cli_lib_get_sdcard_info:(long)hconnector;

4.3.14.9. cli_lib_format_sdcard(格式化SD卡)

- (int)cli_lib_format_sdcard:(long)hconnector;

4.3.14.10. cli_lib_get_record_config(获取设备当前的录像配置)

- (int)cli_lib_get_record_config:(long)hconnector with_chlid:(int)chlid;

4.3.14.11. cli_lib_set_record_config(设置设备的录像配置)

- (int)cli_lib_set_record_config:(long)hconnector with_chlid:(int)chlid config:(NSString *)config_json;
  • 说明
    设置设备的录像配置,包括是否录像及录像计划时段信息。

  • 参数说明

config_json录像配置信息格式说明(JSON格式):

名称 类型 必需 描述
timing_schedule json 定时录像计划

timing_schedule说明:

名称 类型 必需 描述
enabled int 是否开启定时录像,1=是,0=否
day_of_week_enabled string 一周内各天是否开启录像,从周日开始每天用0或1表示关闭和开启,组成共七个字节的字符串,如周一至周五开启,周未不开启,用字符串”0111110“表示
sun string 周日的定时录像时段,如00:00-12:00;14:00-24:00,多个时间段用;分隔,下同,不在时间段内的时间,表示不录像。允许跨天,如23:00~01:00表示周日的23:00到周一的01:00录像。跨天时,timing_arm中的开关以前一天的开关为准。
mon string 周一的定时录像时间段
tue string 周二的定时录像时间段
wed string 周三的定时录像时间段
thu string 周四的定时录像时间段
fri string 周五的定时录像时间段
sat string 周六的定时录像时间段

注:当day_of_week_enabled中的某一天录像处于关闭状态时,后面表示时间段的信息无意义,可以不写,但建议仍保留,设置后会保存在设备端,当下次需要打开该天的录像开关时,可以不需要重新设置时间段。

通常为了用户操作方便,一周内的所有日子都使用相同的录像时间段,此时将每天的时间段设置成一样即可。

例:

{
    "timing_schedule":  
    {
        "enabled": 1
        "day_of_week_enabled": "1000111",
        "sun": "00:00-12:00;14:00-24:00",
        "mon": "00:00-23:59",
        "tue": "00:00-23:59",
        "wed": "00:00-23:59",
        "thu": "00:00-23:59",
        "fri": "00:00-23:59",
        "sat": "00:00-23:59"
     }
 }

4.3.14.12. cli_lib_get_arm_config(获取安防配置信息)

- (int)cli_lib_get_arm_config:(long)hconnector with_chlid:(int)chlid;
  • 说明
    获取安防配置。安防配置中的定时布撤防计划是指在指定的时间点定时进行布防和撤防操作。手工布撤防请参见cli_lib_ModifyCamAlertStatus。通常如果在自动布撤防生效期间,进行了手工布撤防,则以手工布撤防操作为准,设备需等待到下一个定时布撤防的时间点才进行操作。打个比方,如果9:00进行了自动布防,自动撤防时间设置在10:00的话,如果没有人工操作,布防状态会一直保持到10:00然后自动撤防,如果在9:00~10:00间人工进行了撤防,如9:30,则9:30~10:00这段时间不再布防,一直需要等到第二天的9:00才会继续触发自动布防。

  • 参数说明

  • 返回值
    1 = 调用成功,结果在代理cli_lib_arm_config_get_callback中返回
    -1 = 调用失败

  • 相关接口

4.3.14.13. cli_lib_set_arm_config(设置安防配置信息)

- (int)cli_lib_set_arm_config:(long)hconnector with_chlid:(int)chlid config:(NSString *)config_json;


config_json定时布撤防配置信息格式说明(JSON格式):

名称 类型 必需 描述
time_arm_enabled int 配置是否生效,1=是,0=否
timing_arm string 一周内各天是否开启录像,从周日开始每天用0或1表示关闭和开启,组成共七个字节的字符串,如周一至周五开启,周未不开启,用字符串”0111110“表示
sun string 周日的布防时段,如00:00-12:00;14:00-24:00,多个时间段用;分隔,下同,不在时间段内的时间,表示撤防。允许跨天,如23:00~01:00表示周日的23:00到周一的01:00布防。跨天时,timing_arm中的开关以前一天的开关为准。
mon string 周一的布防时间段
tue string 周二的布防时间段
wed string 周三的布防时间段
thu string 周四的布防时间段
fri string 周五的布防时间段
sat string 周六的布防时间段
motion_enabled int 是否触发移动侦测报警,0=否,1=是,默认1
alert_sound int 事件触发时,是否播放报警音,0、1=是,2=否(注:存在即使开启这个开关时仍不会播放报警音的情况,需要看设备端的具体情况而定),播放报警音同时取值0和1是为了兼容老型号,可任选一个值
arm_snap int 布防状态下触发事件时的抓图张数,默认3
disarm_snap int 撤防状态下触发事件时的抓图张数,默认0
alert_time int 同一事件两次触发最短时间间隔(单位秒),同时也是报警录像时长,默认60秒
alert_act int 报警联动方式,0=无,1=上下巡航,2=左右巡航,3=预置点巡航,4=转动到预置位,默认0
preset int 当alert_act=4时的预置位

注:当timing_arm中的某一天定时布撤防开关处于关闭状态时,后面表示时间段的信息无意义,可以不写,但建议仍保留,设置后会保存在设备端,当下次需要打开该天的定时布撤防开关时,可以不需要重新设置时间段。

通常为了用户操作方便,可以将一周内的所有日子都使用相同的布撤防时间段,此时将每天的时间段设置成一样即可。

例:

{
    "time_arm_enabled": 1
    "timing_arm": "1000111",
    "sun": "00:00-12:00;14:00-24:00",
    "mon": "00:00-23:59",
    "tue": "00:00-23:59",
    "wed": "00:00-23:59",
    "thu": "00:00-23:59",
    "fri": "00:00-23:59",
    "sat": "00:00-23:59",
    "motion_enabled": 1,
    "alert_sound": 1
 }

4.3.14.14. cli_lib_cli_get_timezone(获取设备端时区)

- (int)cli_lib_cli_get_timezone:(long)hconnector;

4.3.14.15. cli_lib_cli_set_timezone(设置设备端时区)

- (int)cli_lib_cli_set_timezone:(long)hconnector timezone:(int)timezone;

4.3.14.16. cli_lib_upgrate_firmware(启动设备端固件升级过程)

- (int)cli_lib_upgrate_firmware:(long)hconnector firmware_url:(NSString *)firmware_url firmware_hash:(NSString *)firmware_hash;

4.3.15. 关系(好友及黑名单)管理相关

相关类:ppview_cli

4.3.15.1. cli_lib_get_usr_relations(获取关系列表)

- (int)cli_lib_get_usr_relations;         

4.3.15.2. cli_lib_add_usr_relations(添加关系)

- (int)cli_lib_add_usr_relations:(NSString *)relation_usr relation_type:(int)relation_type; 
  • 接口说明
    添加用户的关系(好友、黑名单)。添加好友时,只是向对方发送添加好友请求,只有对方同意后,才真正被添加;添加用户到黑名单则不需要对方同意。

  • 参数说明

    • relation_usr:对方账号
    • relation_type:关系类型:1=好友 2=黑名单
  • 返回值
    1 = 只表示调用成功,结果在cli_lib_AddUsrRelations_CALLBACK代理中返回
    -1 = 调用失败

  • 相关接口

4.3.15.3. cli_lib_modify_usr_relations(修改关系)

- (int)cli_lib_modify_usr_relations:(NSString *)relation_usr relation_type:(int)relation_type memo:(NSString *)memo;
  • 接口说明
    修改关系。将好友移入黑名单,或将黑名单中的用户请求添加为好友;也可以不改变关系类型,仅修改对方的备注,如改成姓名,用于备忘。

  • 参数说明

    • relation_usr:对方账号
    • relation_type:修改后的关系类型:1=好友 2=黑名单。如果不修改,保持原来的值即可
    • memo:备注信息。如果不修改,保持原来的值即可。
  • 返回值
    1 = 只表示调用成功,结果在cli_lib_ModifyUsrRelations_CALLBACK代理中返回
    -1 = 调用失败

  • 相关接口

4.3.15.4. cli_lib_delete_usr_relations(删除关系)

- (int)cli_lib_delete_usr_relations:(NSString *)relation_usr;   

4.3.16. 摄像头分享相关

类:ppview_cli

已分享给自己的摄像头,从摄像头列表中获取,参见:cli_lib_getcamlist_ex
删除已分享给自己的摄像头,使用cli_lib_delete_shared_camera接口。

4.3.16.1. cli_lib_get_sharecam_req_count(获取别人向自己发送的分享请求数量)

- (int)cli_lib_get_sharecam_req_count; 
  • 接口说明
    获取别人向自己发送的分享请求数量,已处理的分享请求数不算在内。

  • 参数说明

  • 返回值
    1 = 只表示调用成功,结果在cli_lib_reqcount_callback代理中返回
    -1 = 调用失败

  • 相关接口

4.3.16.2. cli_lib_get_dev_belong(获取设备的归属用户)

- (int)cli_lib_get_dev_belong:(NSString *)devid; 
  • 接口说明
    获取设备的归属用户。当添加设备时,回复已被其它用户添加时,可以通过这个接口获取该设备的归属用户,并请求让归属用户将此设备分享给自己。

  • 参数说明

    • devid:设备编号
  • 返回值
    1 = 只表示调用成功,结果在cli_lib_GetDevBelong_CALLBACK代理中返回
    -1 = 调用失败

  • 相关接口

4.3.16.3. cli_lib_req_share_devid(请求别人将设备分享给自己)

- (int)cli_lib_req_share_devid:(NSString *)devid with_msg:(NSString *)msg;     
  • 接口说明
    请求别人将设备分享给自己。由于请求分享时,用户并不能知道该设备下有多少个通道,因此只针对设备进行请求分享,对方收到请求后,可以选择设备下的全部或部分通道进行分享。

  • 参数说明

    • devid:设备编号
    • msg:请求时附带的信息。对方在收到请求时可以看到该信息,用户可以填上自己的姓名或其它信息,以方便对方判断是否可以分享
  • 返回值
    1 = 只表示调用成功,结果在cli_lib_ReqShareDev_CALLBACK代理中返回
    -1 = 调用失败

  • 相关接口

4.3.16.4. cli_lib_get_sharereqs_cams(获取别人发来的分享请求列表)

- (int)cli_lib_get_sharereqs_cams;   

4.3.16.5. cli_lib_response_sharereq_cam(响应别人的分享请求)

- (int)cli_lib_response_sharereq_cam:(NSString *)reqid cmd:(int)cmd; 
  • 接口说明
    响应别人的分享请求,同意或拒绝。

  • 参数说明

    • reqid:分享请求编号
    • cmd:响应指令,1=同意,0=拒绝
  • 返回值
    1 = 只表示调用成功,结果在cli_lib_ResponseShareReq_CALLBACK代理中返回
    -1 = 调用失败

  • 相关接口

4.3.16.6. cli_lib_get_shared_cams(获取分享给某用户的摄像头列表)

- (int)cli_lib_get_shared_cams:(NSString *)relation_usr; 
  • 接口说明
    获取我分享给指定用户的摄像头列表。

  • 参数说明

    • relation_usr:对方的用户名
  • 返回值
    1 = 只表示调用成功,结果在cli_lib_GetShareCams_CALLBACK代理中返回
    -1 = 调用失败

  • 相关接口

4.3.16.7. cli_lib_set_shared_cams(设置分享给某用户的摄像头列表)

- (int)cli_lib_set_shared_cams:(NSString *)relation_usr cam_json:(NSData *)cam_json; 
  • 接口说明
    设置我分享给指定用户的摄像头列表。如果对方是我的好友,我可以直接将摄像头分享给他,不需要确认。

  • 参数说明

    • relation_usr:对方的用户名
    • cam_json:分享的摄像头列表。

cam_json格式说明(JSON格式):

名称 类型 是否必需 说明
shares json数组 包含摄像头列表的json数组

shares数组元素格式说明:

名称 类型 是否必需 说明
dev_id string 设备编号
cam_id string 摄像头编号

例:

{
    shares:[
        {"dev_id":"dev1", "cam_id": "cam1"},
        {"dev_id":"dev1", "cam_id": "cam2"},
        {"dev_id":"dev2", "cam_id": "cam1"}
    ]
}

4.3.16.8. cli_lib_get_cam_shareusr_list(获取某摄像头的分享用户列表)

- (int)cli_lib_get_cam_shareusr_list:(NSString *)devid camid:(NSString *)camid;  
  • 接口说明
    获取某摄像头的分享用户列表。即获取到这个摄像头已经分享给哪些用户了。

  • 参数说明

    • devid:设备序列号
    • camid:摄像头编号
  • 返回值
    1 = 只表示调用成功,结果在cli_lib_GetCam_shareusrs_CALLBACK代理中返回
    -1 = 调用失败

  • 相关接口

4.3.16.9. cli_lib_set_shared_friends(设置某摄像头的分享用户列表)

- (int)cli_lib_set_shared_friends:(NSString *)camid devid:(NSString *)devid friends_json:(NSData *)friends_json;  
  • 接口说明
    设置某摄像头所分享的用户列表。这些用户必须都是在自己的好友列表内,非好友将被忽略。

  • 参数说明

    • camid:摄像头编号
    • devid:设备编号。
    • friends_json:所分享的用户列表,JSON格式。

friends_json格式说明(JSON格式):

名称 类型 是否必需 说明
users json数组 包含用户列表的json数组

users数组元素格式说明:

名称 类型 是否必需 说明
user string 用户账号

例:

{
    users:[
        {"user":"user1"},
        {"user":"user2"},
        {"user":"user3"}
    ]
}

4.3.17. 透明通道传输相关

类:ppview_cli

4.3.17.1. cli_lib_trchl_open(打开透明传输通道)

- (int)cli_lib_trchl_open:(long)hconnector;
  • 说明 打开透明传输通道。透明通道是为开发者预留的,可以在设备端和客户端之间P2P传输任意格式数据的接口。因此需要设备端与客户端协同才可正常工作。SDK中的DEMO仅示例了这些接口的用法,在真实环境中测试时,需要设备端也实现了相应的接口,并与客户端使用相同的自定义协议。

注:必须与设备端配套使用。所传输的内容是开发者自定义的。

此接口是阻塞模式。如果需要异步执行,开发者需要自己创建线程。

说明
大于0 创建成功,返回透明通道句柄,用于唯一标识这个透明通道
-1 客户端句柄不存在
-2 库未初始化
-3 P2P连接句柄不存在
-4 通过P2P发送数据失败
-5 客户端透明通道数超限(最多64个)
-8 P2P连接中断
-9 设备端超时无响应
-10 数据错误
-11
-20 设备端不支持透明通道
-21 设备端开启透明通道失败
-22 设备端透明通道数超限(上限由硬件厂商自己决定)

4.3.17.2 cli_lib_trchl_send(通过透明通道发送数据)

- (int)cli_lib_trchl_send:(int)trchl_handle buffer:(char *)buffer size:(int)size;
- (int)cli_lib_trchl_close:(int)trchl_handle;

4.3.18. 推送相关

相关类:ppview_cli

4.3.18.1. cli_lib_vv_registerForPush_types(初始化并注册APNS消息类型接口)

+ (void)cli_lib_vv_registerForPush_types:(int)types launchingOption:(NSDictionary *)launchOptions;
  • 接口说明
    初始化并注册APNS消息类型,需要接收IOS后台推送所必需。详细推送流程参见:编程指南-推送信息处理流程
    调用此函数后,如果成功,则会触发didRegisterForRemoteNotificationsWithDeviceToken,在didRegisterForRemoteNotificationsWithDeviceToken中需要调用cli_lib_vv_registerDeviceToken向平台服务器注册手机的设备token。

  • 参数说明

    • types:IOS通知提示类型,参见IOS的UIRemoteNotificationType类型
    • launchOptions:didFinishLaunchingWithOptions中传入的参数。
  • 返回值

  • 相关接口

4.3.18.2. cli_lib_vv_registerDeviceToken(注册手机的设备Token)

+ (void)cli_lib_vv_registerDeviceToken:(NSData *)deviceToken; 
  • 接口说明
    向平台服务器上报手机的设备标识号(Token)。调用cli_lib_vv_registerForPush_types后如果向苹果推送服务器注册成功,就会触发didRegisterForRemoteNotificationsWithDeviceToken,在didRegisterForRemoteNotificationsWithDeviceToken中调用这个函数。详细推送流程参见:编程指南-推送信息处理流程

  • 参数说明

    • deviceToken:手机的设备标识号,从didRegisterForRemoteNotificationsWithDeviceToken中传入的参数。
  • 返回值

  • 相关接口

4.3.18.3. cli_lib_vv_setTags_ex(设置推送标记)

- (BOOL)cli_lib_vv_setTags_ex:(NSString *)user language:(NSString *)language push_svr:(NSString *)push_svr push_svr_port:(int)push_svr_port push_key:(NSString *)push_key push_pass:(NSString *)push_pass client_type:(int)client_type version:(NSString *)version;
  • 接口说明
    向平台推送服务器上报与推送相关的标记,标记中包含有用户的账号信息、语言类型等,必须在cli_lib_vv_registerDeviceToken之后执行,参见编程指南-推送信息处理流程-设置推送标记。详细的推送流程参见:编程指南-推送信息处理流程

  • 参数说明

    • user:用户账号。
    • language:推送消息所用语言,en=英文,zh=简体中文
    • push_svr:推送服务器地址(ppview.vveye.com)
    • push_svr_port:推送服务器端口(7000)
    • push_key:推送服务器key,注册为开发者后可得到此key,或咨询技术支持来得到
    • push_pass:与推送服务器key对应的密码,注册为开发者后可得到,或咨询技术支持来得到
    • client_type:客户端类型,0=开发版、1=发布版(由于苹果开发版和发布版采用不同的签名,因此需要做这个标记,否则会收不到推送)
    • version:手机系统版本号。
  • 返回值
    true = 调用成功(设置结果在代理cli_lib_push_register_callback中返回。
    false = 调用失败

  • 相关接口

4.3.18.4. cli_lib_vv_push_stop(注销推送)

- (BOOL)cli_lib_vv_push_stop;

4.3.19. 辅助函数

4.3.19.1. cli_lib_get_dev_firmware_info(获取设备最新固件版本信息)

相关类:ppview_cli

- (int)cli_lib_get_dev_firmware_info:(NSString *)devid;      
  • 说明
    获取设备最新成固件(firmware)版本。如果设备支持通过APP远程在线升级,当平台上有与该设备型号相匹配的固件升级文件上传时,通过此接口,可以取到该固件升级文件的相关信息,并比较设备当前版本是否是最新的。如果平台上的固件升级文件比设备当前的固件版本要新,开发者可以在APP中显示新的固件版本号,并提示用户更新。通过手机APP启动设备端固件升级,请参见接口:cli_lib_upgrate_firmware

  • 参数说明

  • 返回值
    1:调用成功,结果在代理cli_lib_get_dev_firmware_callback中返回
    -1:调用失败

  • 相关接口

4.3.20. 外部传感器相关

4.3.20.1. cli_lib_coding_sensors(开启设备与传感器对码)

相关类:ppview_cli

- (int)cli_lib_coding_sensors:(long)hconnector with_chlid:(int)chlid;   
  • 说明
    开始与外部传感器进行对码操作。调用此接口后,需要触发一下传感器来完成配对,在完成前不可做其他操作。超时时间为30秒。

  • 参数说明

  • 返回值
    1:调用成功,结果在代理cli_lib_sensor_codding_callback中返回
    -1:调用失败

  • 相关接口

4.3.20.2. cli_lib_get_sensors(获得传感器列表)

相关类:ppview_cli

- (int)cli_lib_get_sensors:(long)hconnector with_chlid:(int)chlid sensor_type:(int)sensor_type;  

4.3.20.3. cli_lib_set_sensors(设置传感器信息)

相关类:ppview_cli

- (int)cli_lib_set_sensors:(long)hconnector with_chlid:(int)chlid with_id:(NSString*)sensorid name:(NSString*)name preset:(int)preset isalarm:(int)isalarm with_tag:(int)tag;
  • 说明
    设置传感器信息。

  • 参数说明

    • hconnector:P2P连接句柄,由cli_lib_createconnect创建。
    • chlid:通道号,从摄像头列表中获取,参见cams中的chlid字段
    • sensor_id:传感器编号
    • name:传感器名称
    • preset:传感器触发时所联动到的预置点。设置为0表示不联动。
    • isalarm:是否报警联动(0=否 1=是)
    • tag:标记,随意填写,在代理函数cli_lib_sensor_set_callback中会返回。
  • 返回值
    1:调用成功,结果在代理cli_lib_sensor_set_callback中返回
    -1:调用失败

  • 相关接口

4.3.20.4. cli_lib_delete_sensor(移除传感器)

相关类:ppview_cli

-(int)cli_lib_delete_sensor:(long)hconnector with_chlid:(int)chlid sensorid:(NSString*)sensorid;

4.3.20.5. cli_lib_set_sensor_subchl(设置传感器子通道信息)

相关类:ppview_cli

-(int)cli_lib_set_sensor_subchl:(long)hconnector with_chlid:(int)chlid with_id:(NSString*)sensorid subchl_id:(int)subchl_id name:(NSString*)name alarm_linkage:(int)alarm_linkage with_tag:(NSString*)tag;

4.3.20.6. cli_lib_sensor_remote_ctl(远程控制传感器开关)

相关类:ppview_cli

- (int)cli_lib_sensor_remote_ctl:(long)hconnector sensor_id:(NSString*)sensor_id chlid:(int)chlid subchlid:(int)subchlid status:(int)status;

4.4. 代理接口

4.4.1. vercode_interface(验证码相关接口)

相关类:ppview_cli

@protocol vercode_interface <NSObject>
@optional
- (void)cli_lib_GetSmsVcode_CALLBACK:(int)HttpRes;
- (void)cli_lib_GetMailVcode_CALLBACK:(int)HttpRes;
@end

4.4.1.1. cli_lib_GetSmsVcode_CALLBACK(获取短信验证码回复消息代理)

- (void)cli_lib_GetSmsVcode_CALLBACK:(int)HttpRes;
  • 说明
    获取短信验证码的回复代理,返回获取短信验证码的结果。

  • 参数说明

    • HttpRes:回复值,具体如下:
说明
200 获取短信验证码成功
203 认证失败(APP_KEY和APP_PASS有问题)
400 服务器错误(数据库访问)
418 手机号已在平台中存在(cli_lib_GetSmsVcodebcheckexist参数为1时)

4.4.1.2. cli_lib_GetMailVcode_CALLBACK(获取邮箱验证码回复消息代理)

- (void)cli_lib_GetMailVcode_CALLBACK:(int)HttpRes;
  • 说明
    获取邮箱验证码的回复代理,返回获取邮箱验证码的结果。

  • 参数说明

    • HttpRes:回复值,具体如下:
说明
200 获取邮箱验证码成功
203 认证失败(APP_KEY和APP_PASS有问题)
400 服务器错误(数据库访问或发送邮件失败)
418 邮箱号已在平台中存在(cli_lib_GetMailVcodebcheckexist参数为1时)

4.4.2. register_interface(注册相关代理接口)

相关类:ppview_cli

@protocol register_interface <NSObject>
@optional
- (void)cli_lib_Register_CALLBACK:(int)HttpRes;
@end

4.4.2.1. cli_lib_Register_CALLBACK(注册新用户回复代理)

- (void)cli_lib_Register_CALLBACK:(int)HttpRes;
  • 说明
    注册新用户回复代理,返回注册新用户的结果。

  • 参数说明

    • HttpRes:回复值,具体如下:
说明
200 注册成功
203 认证失败(APP_KEY和APP_PASS有问题)
400 服务器错误(数据库访问)
403 没有先获取验证码或验证码已过期
405 验证码不正确
418 手机号或邮箱号已存在

4.4.3. set_interface(用户信息操作相关代理接口)

相关类:ppview_cli

@protocol set_interface <NSObject>
@optional
- (void)cli_lib_ModifyPassword_CALLBACK:(int)HttpRes newpass:(NSString *)new_pass;
- (void)cli_lib_GetUsrInfo_CALLBACK:(int)HttpRes type:(int)type mobile:(NSString *)mobile email:(NSString *)email nick:(NSString *)nickname;
- (void)cli_lib_ResetPassword_sms_CALLBACK:(int)HttpRes with_vercode:(NSString *)vercode;
- (void)cli_lib_ResetPassword_mail_CALLBACK:(int)HttpRes with_mail:(NSString *)mail;
- (void)cli_lib_ModifyNick_CALLBACK:(int)HttpRes newnick:(NSString *)new_nick;
- (void)cli_lib_ModifyMail_CALLBACK:(int)HttpRes newmail:(NSString *)new_mail;
- (void)cli_lib_GetUsr_CALLBACK:(int)HttpRes usr:(NSString *)usr phone:(NSString *)phone;
@end

4.4.3.1. cli_lib_ResetPassword_sms_CALLBACK(短信重置密码回复代理)

- (void)cli_lib_ResetPassword_CALLBACK:(int)HttpRes with_vercode:(NSString *)vercode;
  • 说明
    通过短信重置密码回复代理,返回短信重置密码的结果。

  • 参数说明

    • HttpRes:回复值
    • vercode:重置时所用的验证码

回复值具体含义如下:

说明
200 重置成功
203 认证失败(APP_KEY和APP_PASS有问题)
400 服务器错误(数据库访问)
402 用户不存在
403 没有先获取验证码或验证码已过期
405 验证码不正确

4.4.3.2. cli_lib_ResetPassword_mail_CALLBACK(邮箱重置密码回复代理)

- (void)cli_lib_ResetPassword_mail_CALLBACK:(int)HttpRes with_mail:(NSString *)mail;
  • 说明
    通过邮箱重置密码回复代理,返回通过邮箱请求重置密码的结果。

  • 参数说明

    • HttpRes:回复值
    • vercode:重置时所用的邮箱

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY和APP_PASS有问题)
400 服务器错误(数据库访问)
402 用户不存在
403 发送邮件失败

4.4.3.3. cli_lib_ModifyNick_CALLBACK(修改昵称回复代理)

- (void)cli_lib_ModifyNick_CALLBACK:(int)HttpRes newnick:(NSString *)new_nick;
  • 说明
    修改昵称的回复代理函数,返回修改昵称的结果。

  • 参数说明

    • HttpRes:回复值
    • newnick:修改后的新昵称

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问)
412 用户不存在

4.4.3.4. cli_lib_ModifyPassword_CALLBACK(修改用户密码回复代理)

- (void)cli_lib_ModifyPassword_CALLBACK:(int)HttpRes newpass:(NSString *)new_pass;
  • 说明
    修改用户密码的回复代理函数,返回修改密码的结果。

  • 参数说明

    • HttpRes:回复值
    • new_pass:修改后的新密码

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问)
412 用户不存在

4.4.4 login_interface(登录代理接口)

相关类:ppview_cli

@protocol login_interface <NSObject>
@optional
- (void)cli_lib_login_callback:(int)HttpRes;
@end

4.4.4.1. cli_lib_login_callback(登录请求回复代理)

- (void)cli_lib_login_callback:(int)HttpRes;
  • 说明
    登录请求回复的代理函数,返回登录结果。

  • 参数说明

    • HttpRes:回复值

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问)
411 用户被禁用(即被管理员设置为禁止访问服务器)
412 用户不存在

4.4.5. devlist_interface(设备列表代理接口)

相关类:ppview_cli

@protocol devlist_interface <NSObject>
@optional
- (void)cli_lib_GetDevList_CALLBACK:(int)HttpRes data:(NSData *)data;
@end

4.4.5.1. cli_lib_GetDevList_CALLBACK(取设备列表回复代理)

- (void)cli_lib_GetDevList_CALLBACK:(int)HttpRes data:(NSData *)data;
  • 说明
    取设备列表回复的代理函数,返回设备列表。

  • 参数说明

    • HttpRes:回复值
    • data:设备列表(json格式)

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问)
500 请求消息内部错误

设备列表的具体格式如下:

{
    "devs":[
        {
            "id": "设备编号",
            "name": "设备名称",
            "vendor": "厂家名称",
            "model": "型号",
            "status": 状态,数字型,0-离线 1-在线 2-绑定时设备密码设置错误或密码被修改了,
            "dev_user": "设备账号",
            "dev_pass": "设备密码",
            "firmware": "固件版本号"
        },
        ......
    ]
}

4.4.6. cameralist_interface(摄像头列表代理接口)

相关类:ppview_cli

@protocol cameralist_interface <NSObject>
@optional
- (void)cli_lib_GetCamlistSn_CALLBACK:(int)HttpRes sn:(short)list_sn;
- (void)cli_lib_GetCamlist_CALLBACK:(int)HttpRes data:(NSData *)data;
- (void)cli_lib_ModifyCamName_CALLBACK:(int)HttpRes camid:(NSString *)cam_id cam_name:(NSString *)camname parentid:(NSString *)parent_id my_sn:(int)sn;
- (void)cli_lib_DeleteShareCam_CALLBACK:(int)HttpRes camid:(NSString *)cam_id devid:(NSString *)devid my_sn:(int)sn;
- (void)cli_lib_SetCamPrivate_CALLBACK:(int)HttpRes camid:(NSString *)cam_id status:(int)status;
- (void)cli_lib_ModifyGroupName_CALLBACK:(int)HttpRes groupid:(NSString *)group_id new_name:(NSString *)newname parentid:(NSString *)parent_id my_sn:(int)sn;
- (void)cli_lib_AddNewGroup_CALLBACK:(int)HttpRes groupid:(NSString *)group_id parentid:(NSString *)parent_id new_name:(NSString *)newname my_sn:(int)sn;
- (void)cli_lib_Deletegroup_CALLBACK:(int)HttpRes groupid:(NSString *)group_id my_sn:(int)sn;
- (void)cli_lib_MoveGroup_CALLBACK:(int)HttpRes groupid:(NSString *)group_id old_parid:(NSString *)oldparid new_parid:(NSString *)newparid my_sn:(int)sn;
- (void)cli_lib_MoveCamera_CALLBACK:(int)HttpRes camid:(NSString *)cam_id old_parid:(NSString *)parent_old new_parid:(NSString *)parent_new my_sn:(int)sn;
- (void)cli_lib_SetCamAlert_CALLBACK:(int)HttpRes camid:(NSString *)cam_id status:(int)status;
- (void)cli_lib_SetCamsAlert_CALLBACK:(int)HttpRes status:(int)status;
- (void)cli_lib_MoveGroup_to_newgroup_CALLBACK:(int)HttpRes groupid:(NSString *)group_id old_parid:(NSString *)oldparid new_groupname:(NSString *)new_groupname new_groupid:(NSString *)new_groupid new_group_par_id:(NSString *)new_group_par_id my_sn:(int)sn;
- (void)cli_lib_MoveCamera_to_newgroup_CALLBACK:(int)HttpRes camid:(NSString *)cam_id old_parid:(NSString *)parent_old new_groupname:(NSString *)new_groupname new_groupid:(NSString *)new_groupid new_group_par_id:(NSString *)new_group_par_id my_sn:(int)sn;
@end

4.4.6.1. cli_lib_GetCamlistSn_CALLBACK(取摄像头列表流水号代理)

- (void)cli_lib_GetCamlistSn_CALLBACK:(int)HttpRes sn:(short)list_sn;
  • 说明
    取摄像头列表流水号回复的代理函数,返回摄像头列表流水号。

  • 参数说明

    • HttpRes:回复值
    • list_sn:流水号 回复值具体含义如下:
说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问)

4.4.6.2. cli_lib_GetCamlist_CALLBACK(取摄像头列表回复代理)

- (void)cli_lib_GetCamlist_CALLBACK:(int)HttpRes data:(NSData *)data;
  • 说明
    取摄像头列表回复的代理函数,返回摄像头列表。

  • 参数说明

    • HttpRes:回复值
    • data:摄像头列表(json格式)

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问)
411 用户被禁用(即被管理员设置为禁止访问服务器)
412 用户不存在
500 请求消息内部错误


摄像头列表的具体格式如下:

名称 类型 必需 描述
sn int 列表流水号,无符号短整型,列表变化后会自动+1
id string 根分组编号
shared bool 是否已被共享,true或false
groups list 直属分组列表
cams list 直属摄像头列表


groups格式说明:

名称 类型 必需 描述
id string 分组编号
shared bool 是否已被共享,true或false
name string 分组名称
type int 分组类型,0=自建分组,1=别人共享给自己的分组
groups list 直属分组列表
cams list 直属摄像头列表


cams格式说明:

名称 类型 必需 描述
id string 摄像头编号
shared bool 是否已被共享,true或false
name string 摄像头名称
type int 摄像头类型,0=自属摄像头,1=别人共享给自己的摄像头
devid string 所属设备编号
chlid int 通道号(从0开始)
dev_user string 设备用户名
dev_pass string 设备密码
state int 0=不在线 1=在线
pic_sn string 摄像头图片序列号,图片变化时序列号随机变化
ptz int 0或无表示无云台,1表示有云台
voicetalk_type int 对讲方式,0=无对讲,2=全双工对讲,4=半双工对讲
alert_status int 布撤防状态,0=撤防 1=布防(默认为0)
alert_event int 当前的报警状态,0=不在报警 1=正在报警
sensor_num int 所挂载的外部传感器数量,默认为0
sensor_low_power int 所挂载的外部传感器是否在低电压状态,0=正常 1=低电压(默认0)
private_status int 隐私模式,0=关闭 1=开启(默认0)
fisheyetype int 鱼眼模式,0=无,1=吊装360度鱼眼,2=壁挂180度鱼眼
playback_cap int 是否有回放能力,0=否,1=是
streams list 码流信息


streams格式说明:

名称 类型 必需 描述
stream_id int 码流号(从0开始)
video_codec int 视频编码格式,1=H264, 2=MPEG4, 3=MJPEG
width int 视频宽度
height int 视频高度
video_bitrate int 视频码率,单位Kbps
frame_rate int 帧率,单位fps
audio_codec int 音频编码格式,128=PCM, 129=AAC, 130=ulaw, 131=alaw, 132=G726_16, 133=G726_32, 134=opus
sample_rate int 音频采样率
bit_rate int 音频比特率
audio_chs int 音频声道
fisheye_params json 鱼眼镜头参数


fisheye_params格式说明:

名称 类型 必需 描述
l float 鱼眼图像圆弧左边缘离整个画面左边缘的像素数,如果圆弧左边缘在画面外部,则为负值
r float 鱼眼图像圆弧右边缘离整个画面右边缘的像素数,如果圆弧右边缘在画面外部,则为负值
t float 鱼眼图像圆弧上边缘离整个画面上边缘的像素数,如果圆弧上边缘在画面外部,则为负值
b float 鱼眼图像圆弧下边缘离整个画面下边缘的像素数,如果圆弧下边缘在画面外部,则为负值

注:没有在文档中说明的json字段为保留字段,开发者不必关心

示例:

{
  "sn" : 1768,
  "id" : "C6A5E8BF-00B0-0001-649A-446A12573DD0",
  "shared" : false,
  "groups" : [
    {
      "id" : "C7376410-B6B0-0001-A9CC-82F57170A670",
      "shared" : false,
      "name" : "childgroup",
      "type" : 0,
      "cams" : [
        {
          "id" : "AANC5300079117-0",
          "shared" : false,
          "name" : "AANC5300079117-0",
          "type" : 0,
          "devid" : "AANC5300079117",
          "chlid" : 0,
          "dev_user" : "admin",
          "dev_pass" : "admin",
          "state" : 1,
          "pic_sn" : "",
          "ptz" : 0,
          "voicetalk_type" : 4,
          "alert_status" : 1,
          "alert_event" : 0,
          "sensor_num" : 0,
          "sensor_low_power" : 0,
          "private_status" : 0,
          "fisheyetype" : 1,
          "playback_cap" : 1,
          "streams" : [
            {
              "stream_id" : 0,
              "video_codec" : 1,
              "width" : 1280,
              "height" : 960,
              "video_bitrate" : 1024,
              "frame_rate" : 12,
              "audio_codec" : 130,
              "sample_rate" : 8000,
              "bit_rate" : 16,
              "audio_chs" : 1,
              "fisheye_params": {
                "l": 120,
                "r": 120,
                "t": 10,
                "b": 10
              }
              
            },
            {
              "stream_id" : 1,
              "video_codec" : 1,
              "width" : 640,
              "height" : 480,
              "video_bitrate" : 768,
              "frame_rate" : 25,
              "audio_codec" : 130,
              "sample_rate" : 8000,
              "bit_rate" : 16,
              "audio_chs" : 1
            },
            {
              "stream_id" : 2,
              "video_codec" : 1,
              "width" : 320,
              "height" : 240,
              "video_bitrate" : 256,
              "frame_rate" : 25,
              "audio_codec" : 130,
              "sample_rate" : 8000,
              "bit_rate" : 16,
              "audio_chs" : 1
            }
          ]
        }
      ]
    }
  ],
  "cams" : [
    {
      "id" : "ALN61007936-0",
      "shared" : false,
      "name" : "ALN61007936-0",
      "type" : 0,
      "devid" : "ALN61007936",
      "chlid" : 0,
      "dev_user" : "admin",
      "dev_pass" : "admin",
      "state" : 1,
      "pic_sn" : "",
      "ptz" : 0,
      "voicetalk_type" : 4,
      "alert_status" : 1,
      "alert_event" : 0,
      "sensor_num" : 0,
      "sensor_low_power" : 0,
      "private_status" : 0,
      "fisheyetype" : 0,
      "playback_cap" : 1,
      "streams" : [
        {
          "stream_id" : 0,
          "video_codec" : 1,
          "width" : 640,
          "height" : 480,
          "video_bitrate" : 1024,
          "frame_rate" : 25,
          "audio_codec" : 130,
          "sample_rate" : 8000,
          "bit_rate" : 16,
          "audio_chs" : 1 
        },
        {
          "stream_id" : 1,
          "video_codec" : 1,
          "width" : 640,
          "height" : 480,
          "video_bitrate" : 1024,
          "frame_rate" : 8,
          "audio_codec" : 130,
          "sample_rate" : 8000,
          "bit_rate" : 16,
          "audio_chs" : 1
        }
      ]
    }
  ]
}

4.4.6.3. cli_lib_ModifyCamName_CALLBACK(修改摄像头名称结果代理)

- (void)cli_lib_ModifyCamName_CALLBACK:(int)HttpRes camid:(NSString *)cam_id cam_name:(NSString *)camname parentid:(NSString *)parent_id my_sn:(int)sn;
  • 说明
    修改摄像头名称回复的代理函数。

  • 参数说明

    • HttpRes:回复值
    • cam_id:摄像头编号
    • camname:修改后的摄像头名称
    • parentid:摄像头所在分组id,与cli_lib_ModifyCamName中传入的值对应。
    • sn:摄像头列表流水号,与cli_lib_ModifyCamName中传入的值相同。名称修改后,sn会发生变化,并收到相应的推送,收到推送后开发者需要刷新摄像头列表,如果触发这个代理时,摄像头列表已被刷新,则新的摄像头列表中的sn会比这里传来的值要大,此时可以不用主动去刷新列表,否则需要把列表中的摄像头名称改为新值或重新获取列表进行刷新。

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问)
410 所修改的摄像头不属于当前账号

4.4.6.4. cli_lib_DeleteShareCam_CALLBACK(删除别人分享给自己的摄像头结果代理)

- (void)cli_lib_DeleteShareCam_CALLBACK:(int)HttpRes camid:(NSString *)cam_id devid:(NSString *)devid my_sn:(int)sn;
  • 说明
    删除别人分享给自己的摄像头结果代理。

  • 参数说明

    • HttpRes:回复值
    • cam_id:摄像头编号
    • devid:设备序列号
    • sn:摄像头列表流水号,与cli_lib_delete_shared_camera中传入的值相同。删除后,sn会发生变化,并收到相应的推送,收到推送后开发者需要刷新摄像头列表,如果触发这个代理时,摄像头列表已被刷新,则新的摄像头列表中的sn会比这里传来的值要大,此时可以不用主动去刷新列表,否则需要主动把列表中的共享摄像头删除掉或重新获取列表进行刷新。

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问)

4.4.6.5. cli_lib_GetCamlistSn_CALLBACK(取摄像头列表流水号代理)

- (void)cli_lib_GetCamlistSn_CALLBACK:(int)HttpRes sn:(short)list_sn;
  • 说明
    取摄像头列表流水号回复的代理函数,返回摄像头列表流水号。

  • 参数说明

    • HttpRes:回复值
    • list_sn:流水号 回复值具体含义如下:
说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问)

4.4.6.6. cli_lib_GetCamlist_CALLBACK(取摄像头列表回复代理)

- (void)cli_lib_GetCamlist_CALLBACK:(int)HttpRes data:(NSData *)data;
  • 说明
    取摄像头列表回复的代理函数,返回摄像头列表。

  • 参数说明

    • HttpRes:回复值
    • data:摄像头列表(json格式)

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问)
411 用户被禁用(即被管理员设置为禁止访问服务器)
412 用户不存在
500 请求消息内部错误


摄像头列表的具体格式如下:

名称 类型 必需 描述
sn int 列表流水号,无符号短整型,列表变化后会自动+1
id string 根分组编号
shared bool 是否已被共享,true或false
groups list 直属分组列表
cams list 直属摄像头列表

groups格式说明:

名称 类型 必需 描述
id string 分组编号
shared bool 是否已被共享,true或false
name string 分组名称
type int 分组类型,0=自建分组,1=别人共享给自己的分组
groups list 直属分组列表
cams list 直属摄像头列表


cams格式说明:

名称 类型 必需 描述
id string 摄像头编号
shared bool 是否已被共享,true或false
name string 摄像头名称
type int 摄像头类型,0=自属摄像头,1=别人共享给自己的摄像头
devid string 所属设备编号
chlid int 通道号(从0开始)
dev_user string 设备用户名
dev_pass string 设备密码
state int 0=不在线 1=在线
pic_sn string 摄像头图片序列号,图片变化时序列号随机变化
ptz int 0或无表示无云台,1表示有云台
voicetalk_type int 对讲方式,0=无对讲,2=全双工对讲,4=半双工对讲
alert_status int 布撤防状态,0=撤防 1=布防(默认为0)
alert_event int 当前的报警状态,0=不在报警 1=正在报警
sensor_num int 所挂载的外部传感器数量,默认为0
sensor_low_power int 所挂载的外部传感器是否在低电压状态,0=正常 1=低电压(默认0)
private_status int 隐私模式,0=关闭 1=开启(默认0)
fisheyetype int 鱼眼模式,0=无,1=吊装360度鱼眼,2=壁挂180度鱼眼
playback_cap int 是否有回放能力,0=否,1=是
streams list 码流信息


streams格式说明:

名称 类型 必需 描述
stream_id int 码流号(从0开始)
video_codec int 视频编码格式,1=H264, 2=MPEG4, 3=MJPEG
width int 视频宽度
height int 视频高度
video_bitrate int 视频码率,单位Kbps
frame_rate int 帧率,单位fps
audio_codec int 音频编码格式,128=PCM, 129=AAC, 130=ulaw, 131=alaw, 132=G726_16, 133=G726_32, 134=opus
sample_rate int 音频采样率
bit_rate int 音频比特率
audio_chs int 音频声道
fisheye_params json 鱼眼镜头参数


fisheye_params格式说明:

名称 类型 必需 描述
l float 鱼眼图像圆弧左边缘离整个画面左边缘的像素数,如果圆弧左边缘在画面外部,则为负值
r float 鱼眼图像圆弧右边缘离整个画面右边缘的像素数,如果圆弧右边缘在画面外部,则为负值
t float 鱼眼图像圆弧上边缘离整个画面上边缘的像素数,如果圆弧上边缘在画面外部,则为负值
b float 鱼眼图像圆弧下边缘离整个画面下边缘的像素数,如果圆弧下边缘在画面外部,则为负值

注:没有在文档中说明的json字段为保留字段,开发者不必关心

示例:

{
  "sn" : 1768,
  "id" : "C6A5E8BF-00B0-0001-649A-446A12573DD0",
  "shared" : false,
  "groups" : [
    {
      "id" : "C7376410-B6B0-0001-A9CC-82F57170A670",
      "shared" : false,
      "name" : "childgroup",
      "type" : 0,
      "cams" : [
        {
          "id" : "AANC5300079117-0",
          "shared" : false,
          "name" : "AANC5300079117-0",
          "type" : 0,
          "devid" : "AANC5300079117",
          "chlid" : 0,
          "dev_user" : "admin",
          "dev_pass" : "admin",
          "state" : 1,
          "pic_sn" : "",
          "ptz" : 0,
          "voicetalk_type" : 4,
          "alert_status" : 1,
          "alert_event" : 0,
          "sensor_num" : 0,
          "sensor_low_power" : 0,
          "private_status" : 0,
          "fisheyetype" : 1,
          "playback_cap" : 1,
          "streams" : [
            {
              "stream_id" : 0,
              "video_codec" : 1,
              "width" : 1280,
              "height" : 960,
              "video_bitrate" : 1024,
              "frame_rate" : 12,
              "audio_codec" : 130,
              "sample_rate" : 8000,
              "bit_rate" : 16,
              "audio_chs" : 1,
              "fisheye_params": {
                "l": 120,
                "r": 120,
                "t": 10,
                "b": 10
              }
              
            },
            {
              "stream_id" : 1,
              "video_codec" : 1,
              "width" : 640,
              "height" : 480,
              "video_bitrate" : 768,
              "frame_rate" : 25,
              "audio_codec" : 130,
              "sample_rate" : 8000,
              "bit_rate" : 16,
              "audio_chs" : 1
            },
            {
              "stream_id" : 2,
              "video_codec" : 1,
              "width" : 320,
              "height" : 240,
              "video_bitrate" : 256,
              "frame_rate" : 25,
              "audio_codec" : 130,
              "sample_rate" : 8000,
              "bit_rate" : 16,
              "audio_chs" : 1
            }
          ]
        }
      ]
    }
  ],
  "cams" : [
    {
      "id" : "ALN61007936-0",
      "shared" : false,
      "name" : "ALN61007936-0",
      "type" : 0,
      "devid" : "ALN61007936",
      "chlid" : 0,
      "dev_user" : "admin",
      "dev_pass" : "admin",
      "state" : 1,
      "pic_sn" : "",
      "ptz" : 0,
      "voicetalk_type" : 4,
      "alert_status" : 1,
      "alert_event" : 0,
      "sensor_num" : 0,
      "sensor_low_power" : 0,
      "private_status" : 0,
      "fisheyetype" : 0,
      "playback_cap" : 1,
      "streams" : [
        {
          "stream_id" : 0,
          "video_codec" : 1,
          "width" : 640,
          "height" : 480,
          "video_bitrate" : 1024,
          "frame_rate" : 25,
          "audio_codec" : 130,
          "sample_rate" : 8000,
          "bit_rate" : 16,
          "audio_chs" : 1 
        },
        {
          "stream_id" : 1,
          "video_codec" : 1,
          "width" : 640,
          "height" : 480,
          "video_bitrate" : 1024,
          "frame_rate" : 8,
          "audio_codec" : 130,
          "sample_rate" : 8000,
          "bit_rate" : 16,
          "audio_chs" : 1
        }
      ]
    }
  ]
}

4.4.6.7. cli_lib_ModifyCamName_CALLBACK(修改摄像头名称结果代理)

- (void)cli_lib_ModifyCamName_CALLBACK:(int)HttpRes camid:(NSString *)cam_id cam_name:(NSString *)camname parentid:(NSString *)parent_id my_sn:(int)sn;
  • 说明
    修改摄像头名称回复的代理函数。

  • 参数说明

    • HttpRes:回复值
    • cam_id:摄像头编号
    • camname:修改后的摄像头名称
    • parentid:摄像头所在分组id,与cli_lib_ModifyCamName中传入的值对应。
    • sn:摄像头列表流水号,与cli_lib_ModifyCamName中传入的值相同。名称修改后,sn会发生变化,并收到相应的推送,收到推送后开发者需要刷新摄像头列表,如果触发这个代理时,摄像头列表已被刷新,则新的摄像头列表中的sn会比这里传来的值要大,此时可以不用主动去刷新列表,否则需要把列表中的摄像头名称改为新值或重新获取列表进行刷新。

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问)
410 所修改的摄像头不属于当前账号

4.4.6.8. cli_lib_SetCamPrivate_CALLBACK(设置摄像头隐私模式结果代理)

- (void)cli_lib_SetCamPrivate_CALLBACK:(int)HttpRes camid:(NSString *)cam_id status:(int)status;
  • 说明
    设置摄像头隐私模式结果代理。处于隐私模式下的摄像头,远程无法打开实时音视频播放。

  • 参数说明

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问)

4.4.6.9. cli_lib_AddNewGroup_CALLBACK(添加新分组结果代理)

- (void)cli_lib_ModifyGroupName_CALLBACK:(int)HttpRes groupid:(NSString *)group_id new_name:(NSString *)newname parentid:(NSString *)parent_id my_sn:(int)sn;

  • 说明
    添加新分组结果代理。

  • 参数说明

    • HttpRes:回复值
    • group_id:新分组的分组编号。
    • new_name:新分组名,与cli_lib_AddNewGroup调用时传入的参数值相同。
    • sn:摄像头列表流水号,与cli_lib_AddNewGroup调用时传入的参数值相同。

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问失败)
403 服务器错误(更新数据库失败)
410 当前所用的摄像头列表不是最新的,需要重新获取摄像头列表后,再添加。(也就是说在此期间,可能有其它APP修改了摄像头列表,当前所用的列表是旧的,如果基于旧的列表添加分组,可能会引起列表的混乱)
411 找不到指定的父分组

4.4.6.10. cli_lib_ModifyGroupName_CALLBACK(修改分组名结果代理)

- (void)cli_lib_ModifyGroupName_CALLBACK:(int)HttpRes groupid:(NSString *)group_id new_name:(NSString *)newname parentid:(NSString *)parent_id my_sn:(int)sn;

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问失败)
403 服务器错误(更新数据库失败)
410 当前所用的摄像头列表不是最新的,需要重新获取摄像头列表后,再添加。(也就是说在此期间,可能有其它APP修改了摄像头列表,当前所用的列表是旧的,如果基于旧的列表添加分组,可能会引起列表的混乱)
411 找不到指定的分组

4.4.6.11. cli_lib_MoveGroup_CALLBACK(移动分组结果代理)

- (void)cli_lib_MoveGroup_CALLBACK:(int)HttpRes groupid:(NSString *)group_id old_parid:(NSString *)oldparid new_parid:(NSString *)newparid my_sn:(int)sn;
  • 说明
    移动分组结果代理。

  • 参数说明

    • HttpRes:回复值
    • group_id:在移动的分组编号,与cli_lib_MoveGroup调用时传入的参数值相同。
    • oldparid:原所属父分组编号,与cli_lib_MoveGroup调用时传入的参数值相同。
    • newparid:新所属父分组编号,与cli_lib_MoveGroup调用时传入的参数值相同。
    • sn:摄像头列表流水号,与cli_lib_MoveGroup调用时传入的参数值相同。

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问失败)
403 服务器错误(更新数据库失败)
410 当前所用的摄像头列表不是最新的,需要重新获取摄像头列表后,再添加。(也就是说在此期间,可能有其它APP修改了摄像头列表,当前所用的列表是旧的,如果基于旧的列表添加分组,可能会引起列表的混乱)
411 找不到指定的分组
412 目标分组不存在

4.4.6.12. cli_lib_MoveCamera_CALLBACK(分组间移动摄像头结果代理)

- (void)cli_lib_MoveCamera_CALLBACK:(int)HttpRes camid:(NSString *)cam_id old_parid:(NSString *)parent_old new_parid:(NSString *)parent_new my_sn:(int)sn;
  • 说明
    分组间移动摄像头结果代理。

  • 参数说明

    • HttpRes:回复值
    • camid:摄像头编号,与cli_lib_MoveCamera调用时传入的参数值相同。
    • parent_old:原所属父分组编号,与cli_lib_MoveCamera调用时传入的参数值相同。
    • parent_new:新所属父分组编号,与cli_lib_MoveCamera调用时传入的参数值相同。
    • sn:摄像头列表流水号,与cli_lib_MoveCamera调用时传入的参数值相同。

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问失败)
403 服务器错误(更新数据库失败)
406 摄像头是其它用户分享过来的,无移动权限。
410 当前所用的摄像头列表不是最新的,需要重新获取摄像头列表后,再添加。(也就是说在此期间,可能有其它APP修改了摄像头列表,当前所用的列表是旧的,如果基于旧的列表添加分组,可能会引起列表的混乱)
411 找不到指定的摄像头
412 目标分组不存在

4.4.6.13. cli_lib_MoveGroup_to_newgroup_CALLBACK(创建新分组并移动某分组到此新分组结果代理)

- (void)cli_lib_MoveGroup_to_newgroup_CALLBACK:(int)HttpRes groupid:(NSString *)group_id old_parid:(NSString *)oldparid new_groupname:(NSString *)new_groupname new_groupid:(NSString *)new_groupid new_group_par_id:(NSString *)new_group_par_id my_sn:(int)sn;

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问失败)
403 服务器错误(更新数据库失败)
410 当前所用的摄像头列表不是最新的,需要重新获取摄像头列表后,再添加。(也就是说在此期间,可能有其它APP修改了摄像头列表,当前所用的列表是旧的,如果基于旧的列表添加分组,可能会引起列表的混乱)
411 找不到指定的分组

4.4.6.14. cli_lib_MoveCamera_to_newgroup_CALLBACK(创建新分组并移动某摄像头到此新分组结果代理)

- (void)cli_lib_MoveCamera_to_newgroup_CALLBACK:(int)HttpRes camid:(NSString *)cam_id old_parid:(NSString *)parent_old new_groupname:(NSString *)new_groupname new_groupid:(NSString *)new_groupid new_group_par_id:(NSString *)new_group_par_id my_sn:(int)sn;

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问失败)
403 服务器错误(更新数据库失败)
406 摄像头是其它用户分享过来的,无移动摄像头权限。
410 当前所用的摄像头列表不是最新的,需要重新获取摄像头列表后,再添加。(也就是说在此期间,可能有其它APP修改了摄像头列表,当前所用的列表是旧的,如果基于旧的列表添加分组,可能会引起列表的混乱)
411 找不到指定的摄像头

4.4.6.15. cli_lib_Deletegroup_CALLBACK(删除分组结果代理 )

- (void)cli_lib_Deletegroup_CALLBACK:(int)HttpRes groupid:(NSString *)group_id my_sn:(int)sn;
  • 说明
    删除分组结果代理。

  • 参数说明

    • HttpRes:回复值
    • group_id:分组编号,与cli_lib_DeleteGroup调用时传入的参数值相同。
    • sn:摄像头列表流水号,与cli_lib_DeleteGroup调用时传入的参数值相同。

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问失败)
403 服务器错误(更新数据库失败)
410 当前所用的摄像头列表不是最新的,需要重新获取摄像头列表后,再添加。(也就是说在此期间,可能有其它APP修改了摄像头列表,当前所用的列表是旧的,如果基于旧的列表添加分组,可能会引起列表的混乱)
411 找不到指定的分组

4.4.6.16. cli_lib_SetCamAlert_CALLBACK(单个摄像头布撤防结果代理)

- (void)cli_lib_SetCamAlert_CALLBACK:(int)HttpRes camid:(NSString *)cam_id status:(int)status;
  • 说明
    单个摄像头布撤防结果代理。

  • 参数说明

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问失败)
404 无权限

4.4.6.17. cli_lib_SetCamsAlert_CALLBACK(多摄像头批量布撤防)

- (void)cli_lib_SetCamsAlert_CALLBACK:(int)HttpRes status:(int)status;
  • 说明
    多摄像头批量布撤防代理。

  • 参数说明

    • HttpRes:回复值
    • status:设置后的布撤防状态,0=撤防,1=布防,与cli_lib_ModifyCamsAlertStatus调用时传入的参数值相同。

回复值具体含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问失败)
404 无权限

4.4.7. add_dev_interface(设备添加相关接口)

相关类:ppview_cli

@protocol add_dev_interface <NSObject>
@optional
- (void)cli_lib_vv_search_callback:(NSData *)searchdata;
- (void)cli_lib_binduser_callback:(int)result my_sess:(NSString *)bindsess;
- (void)cli_lib_getdevinfo_callback:(int)result with_data:(NSData *)jsondata;
- (void)cli_lib_binduser_offline_callback:(int)result devid:(NSString *)devid;
@end

4.4.7.1. cli_lib_search_callback(搜索设备回复代理)

- (void)cli_lib_vv_search_callback:(NSData *)searchdata;
  • 说明 搜索设备的回复代理函数,返回搜索到的设备列表。

注:由于广播包在局域网内十分容易丢包,因此建议重复搜索三次,将三次的结果合并在一起。否则可能会存在部分设备没有被搜到。

  • 参数说明
    • searchdata:搜索到的设备列表(json格式)

搜索到的设备列表格式如下:

名称 类型 必需 描述
devices list 搜索到的设备列表,如果没有搜到,里面为空

devices格式说明:

名称 类型 必需 描述
dev_id string 设备编号
ip string 设备IP地址

示例:

{
    "devices":  [{
            "dev_id":   "ZYB-TEST-003",
            "ip":   "192.168.1.123"
        }, {
            "dev_id":   "ZHXH-TEST-5039",
            "ip":   "192.168.1.140"
        }, {
            "dev_id":   "AANC5300079117",
            "ip":   "192.168.1.156"
        }, {
            "dev_id":   "ALN61007936",
            "ip":   "192.168.1.120"
        }, {
            "dev_id":   "ZYB-TEST-005",
            "ip":   "192.168.1.178"
        }]
}

4.4.7.2. cli_lib_binduser_callback(添加设备回复代理)

- (void)cli_lib_binduser_callback:(int)result my_sess:(NSString *)bindsess;
  • 说明
    用户添加设备的返回结果。

  • 参数说明

回复值含义如下:

说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问)
408 设备已被其它用户绑定
412 用户密码错误或用户不存在
500 请求消息参数错误
504 鉴权失败

4.4.8. dev_delete_interface(删除设备结果代理接口)

@protocol dev_delete_interface <NSObject>
@optional
- (void)cli_lib_deleteDev_CALLBACK:(int)HttpRes devid:(NSString *)dev_id;
@end

4.4.8.1. cli_lib_deleteDev_CALLBACK(删除设备结果代理)

- (void)cli_lib_deleteDev_CALLBACK:(int)HttpRes devid:(NSString *)dev_id;
  • 说明
    删除设备结果代理。

  • 参数说明

    • HttpRes:回复值
    • devid:设备序列号

回复值含义如下:

说明
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问)

4.4.8. vvpush_msg_interface_ex(二维码添加设备代理接口)

相关类:ppview_cli

@protocol vvpush_msg_interface_ex <NSObject>
@optional
- (void)cli_lib_qrcode_bind_callback:(int)res devid:(NSString *)devid dev_ower:(NSString *)dev_ower;
@end

4.4.8.1. cli_lib_qrcode_bind_callback(二维码添加设备成功代理)

- (void)cli_lib_qrcode_bind_callback:(int)res devid:(NSString *)devid dev_ower:(NSString *)dev_ower;
  • 说明
    用户添加设备的返回结果。

  • 参数说明

    • res:回复结果,1=已被其它账号添加,2=添加成功
    • devid:设备编号
    • dev_ower:如果该设备已被其它账号添加,则这个参数返回该账号
  • 相关接口

4.4.9. dev_delete_interface(删除设备代理接口)

相关类:ppview_cli

@protocol dev_delete_interface <NSObject>
@optional
- (void)cli_lib_deleteDev_CALLBACK:(int)HttpRes devid:(NSString *)dev_id;
@end

4.4.9.1. cli_lib_deleteDev_CALLBACK(删除设备回复代理)

- (void)cli_lib_deleteDev_CALLBACK:(int)HttpRes devid:(NSString *)dev_id;
  • 说明
    用户删除设备的返回结果。

  • 参数说明

    • HttpRes:回复值
    • dev_id:设备编号,从摄像头列表中获取,参见cams中的devid字段

回复值含义如下:

说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
200 成功
203 认证失败(APP_KEY、APP_PASS、用户名、密码中有一个或多个有错误)
400 服务器错误(数据库访问)

4.4.10. dev_connect_interface(与设备P2P连接代理接口)

相关类:ppview_cli

@protocol dev_connect_interface <NSObject>
@optional
- (void)cli_lib_devconnect_CALLBACK:(int)msg_id connector:(int)h_connector result:(int)res;
@end

4.4.10.1. cli_lib_devconnect_CALLBACK(与设备P2P连接状态变化代理)

- (void)cli_lib_devconnect_CALLBACK:(int)msg_id connector:(int)h_connector result:(int)res;

状态值含义如下:

说明
1 已连通
0 未连通
-1 设备序列号不存在
-2 P2P连接失败,等待30秒后自动重连
-3 设备端P2P连接数超限,P2P连接中断,等待30秒后自动重连
-4 设备端离线,等待30秒后自动重连
-5 设备有P2P连接密码,密码认证失败

4.4.11. vv_real_play_interface(实时播放器代理接口)

相关类:vv_real_player

@protocol vv_real_play_interface <NSObject>
@optional
- (void)on_play_audio_cap_callback:(int)exist play_id:(int)index;
- (void)on_play_status_callback:(int)status play_id:(int)index tag:(NSString *)tag;
- (void)on_snap_jpg_callback:(int)res jpgdata:(NSData *)data;
- (void)on_resolution_changed_callback:(int)width height:(int)height index:(int)index;
@end

4.4.11.1. on_play_status_callback(实时播放器状态变化代理)

- (void)on_play_status_callback:(int)status play_id:(int)index tag:(NSString *)tag;
  • 说明
    播放状态代理,返回实时播放器的播放状态。应用中存在多个播放器实例时,通过play_id来对应播放器。

  • 参数说明

    • status:播放状态,1=成功 -1=失败 -99=播放过程中接收数据超时(需要重新开启播放)
    • index:播放器索引,与vv_real_player.init中的playindex值对应。
  • 相关接口

4.4.11.2. on_resolution_changed_callback(播放过程中分辨率发生变化代理)

- (void)on_resolution_changed_callback:(int)width height:(int)height index:(int)index;
  • 说明
    播放过程中,分辨率发生变化通知。如果分辨率发生变化,SDK内部会自动处理变化并继续播放,但由于分辨率分生变化时,画面的长宽比也会发生变化,因此开发者需要在变化时,调整surface_view的大小以符合长宽比。

  • 参数说明

    • width:新的画面宽度(像素)
    • height:新的画面高度(像素)
    • index:播放器索引,与vv_real_player.init中的playindex值对应。
  • 相关接口

4.4.11.3. on_play_audio_cap_callback(告知APP这个码流是否包含音频)

- (void)on_play_audio_cap_callback:(int)exist play_id:(int)index;
  • 说明
    开始播放后,会触发这个代理,告知APP是码流中是否包含音频。通常不需要实现这个代理,因为在摄像头列表streams中的audio_codec字段已经表明是否包含音频了,如果无audio_codec或audio_codec值为0表示无音频。保留这个代理的原因是为了兼容早期某些厂家的摄像头。 

  • 参数说明

    • exist:是否包含音频,0=否,1=是
    • index:播放器索引,与vv_real_player.init中的playindex值对应。
  • 相关接口

4.4.11.4. on_snap_jpg_callback(抓图代理)

- (void)on_snap_jpg_callback:(int)res jpgdata:(NSData *)data;
  • 说明
    在播放的过程中抓图。 

  • 参数说明

    • res:抓图结果,1=成功,-1=失败
    • data:jpeg文件格式的图片数据,可以直接保存为jpeg文件
  • 相关接口

4.4.12. CTalk_interface(对讲代理接口)

相关类:CTalk

@protocol CTalk_interface <NSObject>
@optional
- (void)on_voicetalk_status_callback:(int)status;
@end

4.4.12.1. on_voicetalk_status_callback(对讲状态变化代理)

-(void)on_voicetalk_status_callback:(int)status;
  • 说明
    开启对讲请求结果的代理。 

  • 参数说明

    • status:开启对讲请求结果

    0 = 成功
    -1 = 客户端句柄不存在
    -2 = 库未初始化
    -3 = 连接句柄不存在
    -4 = 发送数据失败
    -5 = 对讲已开启,不能重复开启
    -6 = 创建音频编码器失败
    -7 = 创建音频解码器失败
    -8 = 中断
    -9 = 超时
    -10 = 数据错误
    -20 = 设备端对讲插件不存在
    -21 = 设备端对讲插件打开失败
    -22 = 开启对讲失败,可能已被别人占用
    414 = 认证失败
    500 = 协议格式错误

  • 相关接口

4.4.13. c2d_cam_query_record_interface(设备端录像远程查询接口)

@protocol c2d_cam_query_record_interface <NSObject>
@optional
- (void)cli_lib_cam_record_min_callback:(int)res timelists:(NSMutableArray *)lists;
- (void)cli_lib_cam_record_date_callback:(int)res days:(NSString *)days with_date:(NSString *)str_date;
@end

4.4.13.1. cli_lib_cam_record_date_callback(查询某月内哪些天有录像代理)

- (void)cli_lib_cam_record_date_callback:(int)res days:(NSString *)days with_date:(NSString *)str_date;
  • 说明
    查询在设备端存储的录像中,某月哪些天有录像的结果代理。 

  • 参数说明

    • res:回复值(见下表)
    • days:查询得到的结果,31个由"0"和"1"组成的字符串,分别代表1~31日是否有录像,0=无,1=有
    • str_date:查询的月份,与cli_lib_record_get_date_list中的date参数对应。

回复值说明:

说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 认证失败(设备账号、设备密码中有一个或多个有错误)
206 设备端不支持此功能
500 请求参数错误

4.4.13.2. cli_lib_cam_record_min_callback(查询某日的录像)

- (void)cli_lib_cam_record_min_callback:(int)res timelists:(NSMutableArray *)lists;
  • 说明
    查询在设备端存储的录像中,某日哪些分钟有录像的结果代理。 

  • 参数说明

    • res:回复值(见下表)
    • lists:查询得到的结果,为由time_item类实例组成的队列,队列中每一项表示一天内某一分钟开始到某一分钟结束的范围内存在录像。

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 认证失败(设备账号、设备密码中有一个或多个有错误)
205 设备端不支持此功能
500 请求参数错误
501 设备端查询失败

4.4.14. vv_playback_player_interface(设备端录像远程回放代理接口)

@protocol vv_playback_player_interface <NSObject>
@optional
- (void)on_play_audio_cap_callback:(int)exist play_id:(int)index;
- (void)on_play_status_callback:(int)status progress:(int)progress play_id:(int)index;
- (void)on_resolution_changed_callback:(int)width height:(int)height index:(int)index;
- (void)on_snap_jpg_callback:(int)res jpgdata:(NSData *)data;
@end

4.4.14.1. on_play_status_callback(回放状态变化代理)

- (void)on_play_status_callback:(int)status progress:(int)progress play_id:(int)index;
  • 说明
    播放状态代理,返回实时播放器的播放状态。应用中存在多个播放器实例时,通过play_id来对应播放器。

  • 参数说明

    • status:回放状态,1=成功 -1=失败 -99=播放过程中接收数据超时(需要重新开启播放)
    • progress:回放缓冲的进度,status=1时,0~100表示缓冲进度
    • index:回放器索引,与vv_playback_player.init中的playindex值对应。
  • 相关接口

4.4.14.2. on_resolution_changed_callback(回放过程中分辨率发生变化代理)

- (void)on_resolution_changed_callback:(int)width height:(int)height index:(int)index;
  • 说明
    回放过程中,分辨率发生变化通知。如果分辨率发生变化,SDK内部会自动处理变化并继续播放,但由于分辨率分生变化时,画面的长宽比也会发生变化,因此开发者需要在变化时,调整surface_view的大小以符合长宽比。

  • 参数说明

    • width:新的画面宽度(像素)
    • height:新的画面高度(像素)
    • index:回放器索引,与vv_playback_player.init中的playindex值对应。
  • 相关接口

4.4.14.3. on_play_audio_cap_callback(告知APP这个码流是否包含音频)

- (void)on_play_audio_cap_callback:(int)exist play_id:(int)index;
  • 说明
    开始回放后,会触发这个代理,告知APP回放流中是否包含音频。。 

  • 参数说明

    • exist:是否包含音频,0=否,1=是
    • index:回放器索引,与vv_playback_player.init中的playindex值对应。
  • 相关接口

4.4.14.4. on_snap_jpg_callback(抓图代理)

- (void)on_snap_jpg_callback:(int)res jpgdata:(NSData *)data;
  • 说明
    在回放的过程中抓图。 

  • 参数说明

    • res:抓图结果,1=成功,-1=失败
    • data:jpeg文件格式的图片数据,可以直接保存为jpeg文件
  • 相关接口

4.4.15. vv_local_player_interface(手机端存储的录像回放代理)

相关类:vv_local_player

@protocol vv_local_player_interface <NSObject>
@optional
- (void)on_play_audio_cap_callback:(int)exist play_id:(int)index;
- (void)on_play_status_callback:(int)status play_id:(int)index total_sec:(long)total_sec;
- (void)on_resolution_changed_callback:(int)width height:(int)height index:(int)index;
@end

4.4.15.1. on_play_status_callback(本地回放状态变化代理)

- (void)on_play_status_callback:(int)status play_id:(int)index total_sec:(long)total_sec;
  • 说明
    本地回放成功或失败代理。

  • 参数说明

    • status:本地回放结果,1=成功 -1=失败
    • index:本地回放实例索引,与vv_local_player.init中的playindex值对应。
    • total_sec:所本地回放的录像的总秒数。
  • 相关接口

4.4.15.2. on_resolution_changed_callback(本地回放过程中分辨率发生变化代理)

- (void)on_resolution_changed_callback:(int)width height:(int)height index:(int)index;
  • 说明
    本地回放过程中,分辨率发生变化通知。如果分辨率发生变化,SDK内部会自动处理变化并继续播放,但由于分辨率分生变化时,画面的长宽比也会发生变化,因此开发者需要在变化时,调整surface_view的大小以符合长宽比。

  • 参数说明

    • width:新的画面宽度(像素)
    • height:新的画面高度(像素)
    • index:本地回放实例索引,与vv_local_player.init中的playindex值对应。
  • 相关接口

4.4.15.3. on_play_audio_cap_callback(告知APP这个录像中是否包含音频)

- (void)on_play_audio_cap_callback:(int)exist play_id:(int)index;
  • 说明
    开始本地回放后,会触发这个代理,告知APP本地回放的媒体中是否包含音频。。 

  • 参数说明

    • exist:是否包含音频,0=否,1=是
    • index:本地回放实例索引,与vv_local_player.init中的playindex值对应。
  • 相关接口

4.4.16. dev_set_interface(设备密码设置代理接口)

相关类:ppview_cli

@protocol dev_set_interface <NSObject>
@optional
- (void)cli_lib_devsetpass_CALLBACK:(int)HttpRes devid:(NSString *)dev_id;
@end

4.4.16.1. cli_lib_devsetpass_CALLBACK(设备密码修改代理)

- (void)cli_lib_devsetpass_CALLBACK:(int)HttpRes devid:(NSString *)dev_id;
  • 说明
    设备密码修改结果代理。如果修改成功,请自行更新已获取到的设备列表或摄像头列表中的设备密码,以便其它函数使用这个密码时用的是正确的值。也可以重新获取一次列表。 

  • 参数说明

    • HttpRes:回复值(见下表)。
    • 所修改的设备编号:dev_id

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 老密码认证错误
500 参数错误
501 设备端不支持获取用户信息
502 设备端不支持修改密码

4.4.17. c2s_mirror_config_interface(图像镜像/吊装模式相关代理接口)

@protocol c2s_mirror_config_interface <NSObject>
@optional
- (void)cli_lib_mirror_config_get_callback:(int)res with_config:(int)config;
- (void)cli_lib_mirror_config_set_callback:(int)res;
@end

4.4.17.1. cli_lib_mirror_config_get_callback(获取图像镜像/吊装模式代理)

- (void)cli_lib_mirror_config_get_callback:(int)res with_config:(int)config;
  • 说明
    当摄像头采取吊装时,设备端需要将图像上下及左右镜像翻转过来。 

  • 参数说明

    • res:返回值,含义见下表。
    • config:镜像模式,0=正常 1=上下翻转 2=左右翻转 3=上下且左右翻转

返回值含义说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 设备端认证失败
205 设备端不支持
500 请求参数错误

4.4.17.2. cli_lib_mirror_config_set_callback(设置图像镜像/吊装模式代理)

- (void)cli_lib_mirror_config_set_callback:(int)res;
  • 说明
    设置镜像/吊装模式。当摄像头采取吊装时,设备端需要将图像上下及左右镜像翻转过来。 

  • 参数说明

    • res:回复值,含义如下:
回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 设备端认证失败
205 设备端不支持
500 请求参数错误

4.4.18. dev_netif_interface (网络配置代理接口)

@protocol dev_netif_interface <NSObject>
@optional
- (void)cli_lib_netif_cli_get_CALLBACK:(int)res with_data:(NSData *)net_data;
- (void)cli_lib_netif_cli_set_CALLBACK:(int)res;
@end

4.4.18.1. cli_lib_netif_cli_get_CALLBACK(获取网络配置信息结果代理)

- (void)cli_lib_netif_cli_get_CALLBACK:(int)res with_data:(NSData *)net_data;
  • 说明
    获取设备端所有网络接口配置信息的结果代理。 

  • 参数说明

    • res:回复值。
    • net_data:接收到的网络配置信息。JSON格式。

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 非法请求
205 设备端不支持
414 设备账号或密码错误
500 请求参数错误
501 设备端查询网络配置时出错

net_data格式说明(JSON):

{
    "netifs":[
      {
      "token": "网络接口名,如eth0、wlan0等",
      "net_type": 网络类型,整型数:1=有线静态ip, 2=有线DHCP, 3=无线静态ip, 4=无线DHCP,
      "ip": "IP地址",
      "mask": "子网掩码",
      "gate": "网关IP地址",
      "dns_dhcp": 是否通过dhcp得到dns,1=是,0=否,
      "dns1": "主DNS服务器地址",
      "dns2": "辅DNS服务器地址",
      "ssid": "无线SSID,有线网络时没有这个字段",
      "secu_psk_pass": "无线密码,有线网络时没有这个字段"                 
        },
     ...多个网卡
    ]
}

4.4.18.2. cli_lib_netif_cli_set_CALLBACK(设置网络配置信息结果代理)

- (void)cli_lib_netif_cli_set_CALLBACK:(int)res;
  • 说明
    设备设备端某网络接口配置信息的结果代理。 

  • 参数说明

    • res:回复值。

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 非法请求
205 设备端不支持
413 找不到指定的网卡
414 设备账号或密码错误
500 请求参数错误
501 设备端查询网络配置时出错

4.4.19. c2s_dev_wifi_interface (获取设备端无线列表结果代理接口)

@protocol c2s_dev_wifi_interface <NSObject>
@optional
- (void)cli_lib_get_wifi_list_callback:(int)res data:(NSData *)data;
@end

4.4.19.1. cli_lib_get_wifi_list_callback(获取设备端无线列表结果代理)

- (void)cli_lib_get_wifi_list_callback:(int)res data:(NSData *)data;
  • 说明
    获取设备扫描到的WIFI列表。 

  • 参数说明

    • res:回复值。
    • data:接收到的WIFI列表信息。JSON格式。

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 非法请求
205 设备端不支持
413 设备扫描WIFI列表时出错
500 请求参数错误

data格式说明(JSON):

{
   "wifi_list": [
       {
           "ssid": "WIFI SSID", 
           "is_conn": 是否是当前连接,整型数,1=是 0=否,
           "is_secu": 是否加密,整型数,1=是 0=否
           "signel": 信号强度,整型数,1~100
       },
       ...多个
   ]
    }

4.4.20. c2s_sdcard_interface(SD卡操作相关代理接口)

@protocol c2s_sdcard_interface <NSObject>
@optional
- (void)cli_lib_sdcard_info_get_callback:(int)res status:(int)status total_space:(int)total_space free_space:(int)free_space;
- (void)cli_lib_sdcard_format_callback:(int)res;
- (void)cli_lib_sdcard_format_progress_callback:(int)progress;
@end

4.4.20.1. cli_lib_sdcard_info_get_callback(获取SD卡信息结果代理)

- (void)cli_lib_sdcard_info_get_callback:(int)res status:(int)status total_space:(int)total_space free_space:(int)free_space;
  • 说明
    发送获取SD卡信息后得到的回复。 

  • 参数说明

    • res:回复值。
    • status:SD卡状态,res=200时有效。0=未格式化,1=正常,2=SD卡读写错误
    • total_space:SD卡总容量(MBytes)
    • free_space:SD卡空闲容量(MBytes)

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 非法请求
205 设备端不支持
404 设备端没有SD卡

4.4.20.2. cli_lib_sdcard_format_progress_callback(SD卡格式化进度代理)

- (void)cli_lib_sdcard_format_progress_callback:(int)progress;

4.4.20.3. cli_lib_sdcard_format_callback(SD卡格式化结果代理)

- (void)cli_lib_sdcard_format_callback:(int)res;
  • 说明
    SD卡格式化是否成功。 

  • 参数说明

    • res:结果回复值。
回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 非法请求
205 设备端不支持
404 设备端没有SD卡
501 格式化失败
502 SD卡太小,无法创建保留分区(>=2G)

4.4.21. c2s_record_config_interface(录像配置相关代理接口)

相关类:ppview_cli

@protocol c2s_record_config_interface <NSObject>
@optional
- (void)cli_lib_record_config_get_callback:(int)res with_config:(NSData *)config_json;
- (void)cli_lib_record_config_set_callback:(int)res;
@end

4.4.21.1. cli_lib_record_config_get_callback(获取录像配置的结果代理)

- (void)cli_lib_record_config_get_callback:(int)res with_config:(NSData *)config_json;
  • 说明
    获得的录像配置信息。 

  • 参数说明

    • res:回复值。
    • config_json:录像配置信息(JSON格式)

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 非法请求
205 设备端不支持
500 请求命令格式错误

config_json录像配置信息格式说明(JSON格式):

名称 类型 必需 描述
timing_schedule json 定时录像计划

timing_schedule说明:

名称 类型 必需 描述
enabled int 是否开启定时录像,1=是,0=否
day_of_week_enabled string 一周内各天是否开启录像,从周日开始每天用0或1表示关闭和开启,组成共七个字节的字符串,如周一至周五开启,周未不开启,用字符串”0111110“表示
sun string 周日的定时录像时段,如00:00-12:00;14:00-24:00,多个时间段用;分隔,下同不在时间段内的时间,表示不录像。允许跨天,如23:00~01:00表示周日的23:00到周一的01:00录像。跨天时,timing_arm中的开关以前一天的开关为准。
mon string 周一的定时录像时间段
tue string 周二的定时录像时间段
wed string 周三的定时录像时间段
thu string 周四的定时录像时间段
fri string 周五的定时录像时间段
sat string 周六的定时录像时间段

注:当day_of_week_enabled中的某一天录像处于关闭状态时,后面表示时间段的信息无意义,但仍会被保存在设备端,以便下次需要打开该天的录像开关时,可以不需要重新设置时间段。

如果手机APP处理一周内的所有日子都使用相同的录像时间段,则当各天录像时间段配置不一致时,可只取周日的。

例:

{
    "timing_schedule":  
    {
        "enabled": 1
        "day_of_week_enabled": "1000111",
        "sun": "00:00-12:00;14:00-24:00",
        "mon": "00:00-23:59",
        "tue": "00:00-23:59",
        "wed": "00:00-23:59",
        "thu": "00:00-23:59",
        "fri": "00:00-23:59",
        "sat": "00:00-23:59"
     }
 }

4.4.21.2. cli_lib_record_config_set_callback(设置录像配置的结果代理)

- (void)cli_lib_record_config_set_callback:(int)res;
  • 说明
    设置录像配置信息请求的回复。 

  • 参数说明

    • res:回复值。

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 非法请求
205 设备端不支持
500 请求命令格式错误

4.4.22. c2s_arm_config_interface(安防配置相关代理接口)

相关类:ppview_cli

@protocol c2s_arm_config_interface <NSObject>
@optional
- (void)cli_lib_arm_config_get_callback:(int)res with_config:(NSData *)config_json;
- (void)cli_lib_arm_config_set_callback:(int)res;
@end

4.4.22.1. cli_lib_arm_config_get_callback(获取安防配置信息结果代理)

- (void)cli_lib_arm_config_get_callback:(int)res with_config:(NSData *)config_json;
  • 说明
    获得的安防配置信息。 

  • 参数说明

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 非法请求
205 设备端不支持
500 请求命令格式错误

注:当timing_arm中的某一天定时布撤防处于关闭状态时,后面表示时间段的信息无意义,但仍会被保存在设备端,以便下次需要打开该天的定时布撤防开关时,可以不需要重新设置时间段。

如果手机APP处理一周内的所有日子都使用相同的定时布撤防时间段,则当各天定时布撤防时间段配置不一致时,可只取周日的。

4.4.22.2. cli_lib_arm_config_set_callback(设置安防配置的结果代理)

- (void)cli_lib_arm_config_set_callback:(int)res;
  • 说明
    设置安防配置信息请求的回复结果。 

  • 参数说明

    • res:回复值。

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 非法请求
205 设备端不支持
500 请求命令格式错误

4.4.23. c2d_timezone_interface(时区设置相关代理接口)

s@protocol c2d_timezone_interface <NSObject>
@optional
- (void)cli_lib_timezone_get_callback:(int)res;
- (void)cli_lib_timezone_set_callback:(int)res timezone:(int)timezone;
@end

4.4.23.1. cli_lib_timezone_get_callback(请求获取设备端的时区的结果代理)

- (void)cli_lib_timezone_get_callback:(int)res;
  • 说明
    请求获取设备端的时区的结果。 

  • 参数说明

    • res:回复值。

回复值说明:

回复值 说明
-101 客户端句柄不存在
-102 库未初始化
-103 连接句柄不存在
-104 发送数据失败
-105 接收数据失败
-106 超时
-107 设备端返回的结果有错误
-11~12 时区值,东区为正值,西区为负值。

4.4.23.2. cli_lib_timezone_set_callback(请求设置设备端的时区的结果代理)

- (void)cli_lib_timezone_set_callback:(int)res timezone:(int)timezone;
  • 说明
    请求设置设备端的时区的结果。 

  • 参数说明

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 认证失败
500 请求格式错误

4.4.24. c2d_trchl_interface(透明通道代理接口)

相关类:ppview_cli

@protocol c2d_trchl_interface <NSObject>
@optional
- (void)cli_lib_trchl_receive_callback:(int)trchlhandle data:(NSData *)data datalen:(int)datalen;
@end

4.4.24.1. cli_lib_trchl_receive_callback(透明通道数据接收代理)

- (void)cli_lib_trchl_receive_callback:(int)trchlhandle data:(NSData *)data datalen:(int)datalen;

4.4.25. c2s_dev_firmware_interface(固件升级相关代理接口)

@protocol c2s_dev_firmware_interface <NSObject>
@optional
- (void)cli_lib_get_dev_firmware_callback:(int)res cur_ver:(NSString *)cur_ver new_ver:(NSString *)new_ver firm_url:(NSString *)firm_url firm_hash:(NSString *)firm_hash model:(NSString *)model;
- (void)cli_lib_upgrade_firmware_callback:(int)msgid progress_tag1:(int)progress_tag1 progress_tag2:(int)progress_tag2;
@end

4.4.25.1. cli_lib_get_dev_firmware_callback(获取设备最新固件版本信息回复代理)

- (void)cli_lib_get_dev_firmware_callback:(int)res cur_ver:(NSString *)cur_ver new_ver:(NSString *)new_ver firm_url:(NSString *)firm_url firm_hash:(NSString *)firm_hash model:(NSString *)model;
  • 说明
    请求获取指定设备的最新固件版本信息的回复。 

  • 参数说明

    • res:回复值。
    • cur_ver:设备当前的固件版本。版本号以小写v或大写V开头,后面紧跟三个用'.'分割的数字,表示版本。数字后可能跟有空格及build日期等信息,开发者使用前面的数字作为是否当前版本是最新版,可忽略空格后的其它信息。
    • new_ver:设备最新的固件版本。
    • firm_url:固件升级文件下载地址,是远程请求设备端升级时所需要的参数,不需要APP下载,设备端会自动下载。
    • firm_hash:固件升级文件hash值,也是请求升级时发送给设备的参数,用于设备下载完固件文件后确定文件是否完整
    • model:设备型号。

回复值说明:

回复值 说明
200 成功
203 认证失败
400 平台端错误或设备还未被绑定

4.4.25.2. cli_lib_upgrade_firmware_callback(设备端固件升级过程及结果回复代理)

- (void)cli_lib_upgrade_firmware_callback:(int)msgid progress_tag1:(int)progress_tag1 progress_tag2:(int)progress_tag2;
  • 说明
    启动设备端固件升级过程后,设备端返回的升级进度及升级结果回复代理。 

  • 参数说明

    • msgid:回复值。
    • progress_tag1:标记1
    • progress_tag2:标记2

参数说明(表中”-“表示该参数在该回复值的情况下无意义):

回复值 说明 progress_tag1 progress_tag2
-1 客户端句柄不存在 - -
-2 库未初始化 - -
-3 连接句柄不存在 - -
-4 发送数据失败 - -
-5 接收数据失败 - -
-6 超时 - -
-7 设备端返回的结果有错误 - -
0x0102 正在下载固件文件 下载进度百分比 -
0x0103 下载结果 0=下载成功,-1=下载失败(同回复值404),-2=下载后文件校验错误(同回复值405) -
0x0104 正在升级固件 升级进度百分比 -
200 完成所有升级步骤,升级成功 - -
203 认证失败 - -
204 设备未就绪 - -
205 设备不支持 - -
404 下载固件失败 - -
405 下载的固件文件校验失败 - -
406 升级失败 - -
417 设备正处于升级状态,无法完成本次升级请求 - -

4.4.26. vvpush_msg_interface(推送消息处理代理接口)

@protocol vvpush_msg_interface <NSObject>
@optional
- (void)cli_lib_push_register_callback:(int)res;
- (void)cli_lib_push_unregister_callback:(int)res;
- (void)cli_lib_devstatus_change_callback:(NSString *)devid status:(int)status;
- (void)cli_lib_devlist_change_callback;
- (void)cli_lib_camlist_change_callback:(short)sn;
- (void)cli_lib_alarm_callback:(NSDictionary *)event;
- (void)cli_lib_eventpic_change_callback:(NSString *)eventid;
- (void)cli_lib_alert_change_callback:(NSString *)camid status:(int)status;
- (void)cli_lib_disable_alert_event_callback:(NSString *)camid;
- (void)cli_lib_disable_lowpower_event_callback:(NSString *)camid;
- (void)cli_lib_camprivate_change_callback:(NSString *)camid status:(int)status;
- (void)cli_lib_req_cam_sharenum_change_callback:(int)num;
- (void)cli_lib_user_relations_changed_callback:(NSDictionary *)dic;
@end

4.4.26.1. cli_lib_push_register_callback(设置推送标记结果代理)

- (void)cli_lib_push_register_callback:(int)res;
  • 说明
    设置推送标记回复代理。 

  • 参数说明

    • res:回复值。
回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 认证失败
500 请求格式错误

4.4.26.2. cli_lib_push_unregister_callback(注销推送结果代理)

- (void)cli_lib_push_unregister_callback:(int)res;
  • 说明
    注销推送回复代理。 

  • 参数说明

    • res:回复值。
回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 认证失败
500 请求格式错误

4.4.26.3. cli_lib_devstatus_change_callback(设备在线状态变化通知代理)

- (void)cli_lib_devstatus_change_callback:(NSString *)devid status:(int)status;
  • 说明
    当设备在线状态发生变化时,平台服务器向APP推送的消息。收到此消息后,开发者应当更新APP的摄像头列表中,从属于该设备的摄像头的在线状态。

  • 参数说明

    • devid:设备编号。
    • status:状态,1=在线,0=离线

4.4.26.4. cli_lib_devlist_change_callback(设备列表变化通知代理)

- (void)cli_lib_devlist_change_callback;
  • 说明
    当设备列表发生变化时(如添加、删除设备时),平台向APP推送的消息。可不处理,只处理[摄像头列表变化通知代理]。如果处理,则收到此消息后刷新设备列表和摄像头列表。

  • 参数说明

4.4.26.5. cli_lib_camlist_change_callback(摄像头列表变化通知代理)

- (void)cli_lib_camlist_change_callback:(short)sn;
  • 说明
    当摄像头列表发生变化时(如添加、删除设备,增加/删除共享摄像头时),平台向APP推送的消息。收到此消息后需要刷新摄像头列表。

  • 参数说明

    • sn:新的摄像头列表流水号

4.4.26.6. cli_lib_alarm_callback(事件通知代理)

- (void)cli_lib_alarm_callback:(NSDictionary *)event;
  • 说明
    当设备触发事件时,如移动侦测,门磁、红外等外部传感器触发事件时,平台向APP推送的消息。如果APP此时不在前台,平台会通过苹果推送向手机推送后台消息。

  • 参数说明

    • event:事件信息,具体说明如下:
键值 类型 是否必需 说明
event_id string 事件编号,唯一标识这个事件
time int 事件触发时间(UTC)
event_type int 事件类型,详细类型见后表
event_important int 是否是重要报警,1=是(如SOS、烟感等),0=否,如果是,建议无论此摄像头是否处于布防状态,或APP设置了不播放报警音,都应当通过声音或振动来通知用户。
cam_id string 事件对应通道编号
cam_name string 事件对应通道名称
rec_duration int 如果有事件录像,表示事件录像时长,单位秒。
sensor_id string 如果是外部传感器触发,表示外部传感器编号
sensor_status int 如果是外部传感器触,表示外部传感器状态,0=关 1=开
title string 推送消息标题
memo string 摘要

事件类型(event_type)说明:

event_type 说明
1 通知消息
10001 移动侦测
10002 人体红外感应
10003 视频遮挡
10004 烟感报警
10005 煤气泄漏
10006 门磁报警
10007 紧急呼救
10008 玻璃破碎
10009 输入线路报警
10010 浸水报警
10011 外部供电中断报警
10012 外部供电恢复报警
10013 视频输入中断报警
10014 设备有异常
10015 视频丢失
10016 硬盘错误
10017 无硬盘
10018 硬盘满
10019 低电压
10020 门铃
10021 震动传感器
10022 幕帘报警
10023 开关触发
10024 插座触发

4.4.26.7. cli_lib_eventpic_change_callback(事件抓图上传完成通知代理)

- (void)cli_lib_eventpic_change_callback:(NSString *)eventid;
  • 说明
    当摄像头发生事件时,由于事件是即时推送的,因此当APP接收到事件推送消息时,事件抓图可能还没有上传完成。平台会在事件抓图上传完成后,向APP推送一条消息,此时,APP可以去获取事件抓图的缩略图。

  • 参数说明

  • 相关接口

4.4.26.8. cli_lib_alert_change_callback(摄像头布撤防状态变化通知代理)

- (void)cli_lib_alert_change_callback:(NSString *)camid status:(int)status;
  • 说明
    当有其它用户使用同一账号登录APP后对摄像头进行了布撤防操作,或是设备自动布撤防状态发生变化时,平台向APP推送的消息。

  • 参数说明

    • camid:摄像头编号。
    • status:布撤防状态,0=撤防,1=布防

4.4.26.9. cli_lib_disable_alert_event_callback(取消摄像头报警状态推送通知代理)

- (void)cli_lib_disable_alert_event_callback:(NSString *)camid;
  • 说明
    当摄像头报警后,平台会将摄像头列表camsalert_event字段,标记成“正在报警”状态。如果APP有需要显示某摄像头处于报警状态这样的需求,可以利用这个字段,在界面上显示该摄像头为报警状态。当有用户通过cli_lib_disable_cam_alert_event取消报警状态时,APP会收到这个推送,此时应更新界面。
    没有显示摄像头报警状态的APP,可以忽略此消息。

  • 参数说明

    • camid:摄像头编号。
  • 相关接口

4.4.26.10. cli_lib_disable_lowpower_event_callback(取消摄像头外部传感器低电状态推送通知代理)

- (void)cli_lib_disable_lowpower_event_callback:(NSString *)camid;
  • 说明
    当摄像头相关的外部传感器触发低电压事件后,平台会将摄像头列表camssensor_low_power字段,标记成“低电压”状态。如果APP有需要显示低电状态这样的需求,可以利用这个字段,在界面上显示该摄像头为外部传感器低电状态。当有用户通过cli_lib_disable_cam_lowpower_event取消低电状态时,APP会收到这个推送,此时应更新界面。
    没有显示摄像头外部传感器低电状态的APP,可以忽略此消息。

  • 参数说明

    • camid:摄像头编号。
  • 相关接口

4.4.26.11. cli_lib_camprivate_change_callback(摄像头隐私模式通知代理)

- (void)cli_lib_camprivate_change_callback:(NSString *)camid status:(int)status;
  • 说明
    当有其它用户使用同一个账号通过cli_lib_ModifyCamPrivateStatus修改摄像头隐私模式时,APP会收到这个推送消息。

  • 参数说明

    • camid:摄像头编号。
    • status:隐私模式,1=开,0=关
  • 相关接口

4.4.26.12. cli_lib_req_cam_sharenum_change_callback(摄像头隐私模式通知代理)

- (void)cli_lib_req_cam_sharenum_change_callback:(int)num;
  • 说明
    当其它用户向自己请求分享的未处理分享请求数量发生变化时,平台向APP发送此消息。APP可以通过此消息,来显示分享请求的变化。

  • 参数说明

    • num:未处理分享请求数量。
    • status:隐私模式,1=开,0=关

4.4.26.13. cli_lib_user_relations_changed_callback(用户好友、黑名单变化通知代理)

- (void)cli_lib_user_relations_changed_callback:(NSDictionary *)dic;
  • 说明
    当用户的关系信息(好友,黑名单)发生变化时,平台向APP推送的消息。

  • 参数说明

    • dic:用户的关系信息。

dic说明:

键值 类型 说明
event_type int 事件类型,1=添加好友,2=关系改变(好友->黑名单,或黑名单->请求添加为好友),3=删除好友
relation_user string 相关用户名
relation_type int 关系类型,0=申请成为好友(等待是否同意),1=好友,2=黑名单

4.4.27. c2s_msg_interface(所有摄像头事件相关代理接口)

相关类:ppview_cli

@protocol c2s_msg_interface <NSObject>
@optional
- (void)cli_lib_events_callback:(int)res event_id:(NSString *)event_id events:(NSData *)events;
- (void)cli_lib_unreadeventcount_callback:(int)res count:(int)count;
- (void)cli_lib_set_allevents_read_callback:(int)res;
- (void)cli_lib_disable_alert_event_callback:(int)res camid:(NSString *)camid;
- (void)cli_lib_disable_lowpower_event_callback:(int)res camid:(NSString *)camid;
@end

4.4.27.1. cli_lib_events_callback(分页获取所有摄像头事件列表结果代理)

- (void)cli_lib_events_callback:(int)res event_id:(NSString *)event_id events:(NSData *)events;
  • 说明
    分页获取用户账号下所有摄像头(不包括分享摄像头)的事件列表。

  • 参数说明

    • res:回复值。
    • event_id:事件id,同cli_lib_get_event_list中传入的参数。
    • events:事件列表,JSON格式。 回复值说明:
回复值 说明
200 成功
203 认证失败
400 平台服务器内部错误
500 请求格式错误

事件列表格式说明(JSON)

名称 类型 是否必需 说明
events list 事件列表

events说明:

名称 类型 是否必需 说明
event_id string 事件编号
time int 事件发生时的时间(UTC)
event_type int 事件类型,参见事件类型表
readed bool 是否已读
cam_id string 事件对应通道编号
cam_nam string 事件对应通道名
event_pic_id string 事件对应缩略图编号(如没有事件抓图,则没有这一项)
rec_duration int 如果有事件录像,表示事件录像时长,单位秒。
event_important int 是否是紧急报警(1=是,0=否)
sensor_id string 外部传感器编号
sensor_name string 外部传感器名称
sensor_status int 外部传感器状态(0=关闭 1=报警 2=触发)
sensor_sub_chl_id int 外部传感器子通道编号(从0开始)
sensor_sub_chl_name string 外部传感器子通道名称
sensor_sub_chl_status int 外部传感器子通道状态
title string 标题
memo string 摘要
fisheyetype int 鱼眼类型,0=非鱼眼,1=顶装360度鱼眼,2=壁装180度鱼眼
fisheye_params json 鱼眼图像校准参数

fishtye_params说明:

名称 类型 必需 描述
l float 鱼眼图像圆弧左边缘离整个画面左边缘的像素数,如果圆弧左边缘在画面外部,则为负值
r float 鱼眼图像圆弧右边缘离整个画面右边缘的像素数,如果圆弧右边缘在画面外部,则为负值
t float 鱼眼图像圆弧上边缘离整个画面上边缘的像素数,如果圆弧上边缘在画面外部,则为负值
b float 鱼眼图像圆弧下边缘离整个画面下边缘的像素数,如果圆弧下边缘在画面外部,则为负值

4.4.27.2. cli_lib_unreadeventcount_callback(获取未读事件数结果代理)

- (void)cli_lib_unreadeventcount_callback:(int)res count:(int)count;
  • 说明
    获取未读事件数结果代理

  • 参数说明

    • res:回复值。
    • count:未读事件条数。

回复值说明:

回复值 说明
200 成功
203 认证失败
400 平台服务器内部错误
500 请求格式错误

4.4.27.3. cli_lib_set_allevents_read_callback(将所有事件设置为已读结果代理)

- (void)cli_lib_set_allevents_read_callback:(int)res;
  • 说明
    将所有事件设置为已读结果代理。

  • 参数说明

    • res:回复值。

回复值说明:

回复值 说明
200 成功
203 认证失败
400 平台服务器内部错误
500 请求格式错误

4.4.27.4. cli_lib_disable_alert_event_callback(取消摄像头报警状态结果代理)

- (void)cli_lib_disable_alert_event_callback:(int)res camid:(NSString *)camid;

当摄像头报警后,平台会将摄像头列表camsalert_event字段,标记成“正在报警”状态。如果APP有需要显示某摄像头处于报警状态这样的需求,可以利用这个字段,在界面上显示该摄像头为报警状态。并通过cli_lib_disable_cam_alert_event来取消这个状态。

如果是其它用户用相同账号登录平台后,取消报警状态,则是通过vvpush_msg_interface接口下的推送消息代理:cli_lib_disable_alert_event_callback来得到通知

  • 参数说明
    • res:回复值。
    • camid:摄像头编号。

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 认证失败
400 平台服务器内部错误
500 请求格式错误

4.4.27.5. cli_lib_disable_lowpower_event_callback(取消摄像头外部传感器低电状态结果代理)

- (void)cli_lib_disable_lowpower_event_callback:(int)res camid:(NSString *)camid;

当摄像头相关的外部传感器触发低电压事件后,平台会将摄像头列表camssensor_low_power字段,标记成“低电压”状态。如果APP有需要显示低电状态这样的需求,可以利用这个字段,在界面上显示该摄像头为外部传感器低电状态。用户通过cli_lib_disable_cam_lowpower_event来取消低电状态。

如果是其它用户用相同账号登录平台后,取消低电状态,则是通过vvpush_msg_interface接口下的推送消息代理:cli_lib_disable_lowpower_event_callback来得到通知

  • 参数说明
    • res:回复值。
    • camid:摄像头编号。

回复值说明:

回复值 说明
200 成功
203 认证失败
400 平台服务器内部错误
500 请求格式错误

4.4.28. c2s_cam_msg_interface(单个摄像头事件相关代理接口)

相关类:ppview_cli

@protocol c2s_cam_msg_interface <NSObject>
@optional
- (void)cli_lib_cam_events_callback:(int)res cam_id:(NSString *)cam_id event_id:(NSString *)event_id events:(NSData *)events;
@end

4.4.28.1. cli_lib_cam_events_callback(分页获取某摄像头事件列表结果代理)

- (void)cli_lib_cam_events_callback:(int)res cam_id:(NSString *)cam_id event_id:(NSString *)event_id events:(NSData *)events;
  • 说明
    分页获取某摄像头的事件列表。

  • 参数说明

回复值 说明
200 成功
203 认证失败
400 平台服务器内部错误
500 请求格式错误

事件列表格式说明(JSON)

名称 类型 是否必需 说明
events list 事件列表

events说明:

名称 类型 是否必需 说明
event_id string 事件编号
time int 事件发生时的时间(UTC)
event_type int 事件类型,参见事件类型表
readed bool 是否已读
cam_id string 事件对应通道编号
cam_nam string 事件对应通道名
event_pic_id string 事件对应缩略图编号(如没有事件抓图,则没有这一项)
rec_duration int 如果有事件录像,表示事件录像时长,单位秒。
title string 标题
memo string 摘要
fisheyetype int 鱼眼类型,0=非鱼眼,1=顶装360度鱼眼,2=壁装180度鱼眼
fisheye_params json 鱼眼图像校准参数

fishtye_params说明:

名称 类型 必需 描述
l float 鱼眼图像圆弧左边缘离整个画面左边缘的像素数,如果圆弧左边缘在画面外部,则为负值
r float 鱼眼图像圆弧右边缘离整个画面右边缘的像素数,如果圆弧右边缘在画面外部,则为负值
t float 鱼眼图像圆弧上边缘离整个画面上边缘的像素数,如果圆弧上边缘在画面外部,则为负值
b float 鱼眼图像圆弧下边缘离整个画面下边缘的像素数,如果圆弧下边缘在画面外部,则为负值

4.4.29. c2s_usr_relations_interface(用户关系相关代理接口)

相关类:ppview_cli

@protocol c2s_usr_relations_interface <NSObject>
@optional
- (void)cli_lib_GetUsrRelations_CALLBACK:(int)HttpRes data:(NSData *)data;
- (void)cli_lib_AddUsrRelations_CALLBACK:(int)HttpRes relation_usr:(NSString *)relation_usr relation_type:(int)relation_type;
- (void)cli_lib_ModifyUsrRelations_CALLBACK:(int)HttpRes relation_usr:(NSString *)relation_usr relation_type:(int)relation_type memo:(NSString *)memo;
- (void)cli_lib_DeleteUsrRelations_CALLBACK:(int)HttpRes relation_usr:(NSString *)relation_usr;
@end

4.4.29.1. cli_lib_GetUsrRelations_CALLBACK(获取关系列表结果代理)

- (void)cli_lib_GetUsrRelations_CALLBACK:(int)HttpRes data:(NSData *)data;
  • 说明
    获取关系列表的结果代理。关系列表中,包括待审核的好友请求,已添加的好友及添加到黑名单中的用户。

  • 参数说明

    • HttpRes:回复值。
    • data:关系列表,JSON格式。

回复值说明:

回复值 说明
200 成功
203 认证失败
400 平台服务器内部错误
500 请求格式错误

关系列表格式说明(JSON)

名称 类型 是否必需 说明
relations json list 关系列表,json数组

relations说明:

名称 类型 是否必需 说明
user string 用户名
memo string 备注信息。如果是好友和黑名单,可自己填写备注,比方说对方姓名,用于备忘。
status int 状态,0=待审核 1=好友 2=黑名单

4.4.29.2. cli_lib_AddUsrRelations_CALLBACK(添加关系结果代理)

- (void)cli_lib_AddUsrRelations_CALLBACK:(int)HttpRes relation_usr:(NSString *)relation_usr relation_type:(int)relation_type;
  • 说明
    添加关系结果代理。包括请求将对方添加为好友和将对方加入黑名单。

  • 参数说明

回复值说明:

回复值 说明
200 成功
203 认证失败
400 平台服务器内部错误
405 我在对方黑名单中,无法请求添加好友
406 对方在我黑名单中,不能添加为好友,需要先移除,或直接使用cli_lib_modify_usr_relations函数。
411 已是好友,不需要再请求
412 对方账号不存在
500 请求格式错误

4.4.29.3. cli_lib_ModifyUsrRelations_CALLBACK(修改关系结果代理)

- (void)cli_lib_ModifyUsrRelations_CALLBACK:(int)HttpRes relation_usr:(NSString *)relation_usr relation_type:(int)relation_type memo:(NSString *)memo;

回复值说明:

回复值 说明
200 成功
203 认证失败
400 平台服务器内部错误
412 对方不在我的关系列表中
500 请求格式错误

4.4.29.4. cli_lib_DeleteUsrRelations_CALLBACK(删除关系结果代理)

- (void)cli_lib_DeleteUsrRelations_CALLBACK:(int)HttpRes relation_usr:(NSString *)relation_usr;
  • 说明
    修改关系结果代理。

  • 参数说明

回复值说明:

回复值 说明
200 成功
203 认证失败
400 平台服务器内部错误
412 对方不在我的关系列表中
500 请求格式错误

4.4.30. c2s_share_reqcount_interface(分享请求数代理接口)

相关类:ppview_cli

@protocol c2s_share_reqcount_interface <NSObject>
@optional
- (void)cli_lib_reqcount_callback:(int)res count:(int)count;
@end

4.4.30.1 cli_lib_reqcount_callback(获取分享请求数结果代理)

- (void)cli_lib_reqcount_callback:(int)res count:(int)count;
  • 说明
    获取分享请求数结果代理。

  • 参数说明

    • res:回复值。
    • count:res=200时表示分享请求数。

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 认证失败
400 平台服务器内部错误
500 请求格式错误

4.4.31. c2s_share_cams_interface(摄像头分享相关代理接口)

相关类:ppview_cli

@protocol c2s_share_cams_interface <NSObject>
@optional
- (void)cli_lib_GetDevBelong_CALLBACK:(int)HttpRes devid:(NSString *)devid belongto:(NSString *)belong_usr;
- (void)cli_lib_ReqShareDev_CALLBACK:(int)HttpRes devid:(NSString *)devid;
- (void)cli_lib_GetShareCams_CALLBACK:(int)HttpRes relation_user:(NSString *)relation_usr data:(NSData *)data;
- (void)cli_lib_SetShareCams_CALLBACK:(int)HttpRes relation_usr:(NSString *)relation_usr;
- (void)cli_lib_GetCam_shareusrs_CALLBACK:(int)HttpRes camid:(NSString *)camid data:(NSData *)data;
- (void)cli_lib_SetShareFriends_CALLBACK:(int)HttpRes camid:(NSString *)camid;
@end

4.4.31.1. cli_lib_GetDevBelong_CALLBACK(获取设备归属用户结果代理)

- (void)cli_lib_GetDevBelong_CALLBACK:(int)HttpRes devid:(NSString *)devid belongto:(NSString *)belong_usr;
  • 说明
    获取分享请求数结果代理。

  • 参数说明

    • res:回复值。
    • count:res=200时表示分享请求数。

回复值说明:

回复值 说明
200 成功
203 认证失败
400 平台服务器内部错误
500 请求格式错误

4.4.31.2. cli_lib_ReqShareDev_CALLBACK(请求别人将设备分享给自己结果代理)

- (void)cli_lib_ReqShareDev_CALLBACK:(int)HttpRes devid:(NSString *)devid;
  • 说明
    请求别人将设备分享给自己结果代理。

  • 参数说明

回复值说明:

回复值 说明
200 成功
203 认证失败
400 平台服务器内部错误
500 请求格式错误

4.4.31.3. cli_lib_GetShareCams_CALLBACK(获取分享给某用户的摄像头列表结果代理)

- (void)cli_lib_GetShareCams_CALLBACK:(int)HttpRes relation_user:(NSString *)relation_usr data:(NSData *)data;
  • 说明
    获取分享给某用户的摄像头列表结果代理。

  • 参数说明

    • HttpRes:回复值。
    • relation_user:对方的用户账号,同cli_lib_get_shared_cams中传入的参数。
    • data:摄像头列表,JSON格式。

回复值说明:

回复值 说明
200 成功
203 认证失败
400 平台服务器内部错误
412 对方非好友
500 请求格式错误

data格式说明:

名称 类型 是否必需 说明
shares json数组 包含摄像头列表的json数组

shares数组元素格式说明:

名称 类型 是否必需 说明
cam_id string 摄像头编号

例:

{
    shares:[
        {"dev_id":"dev1", "cam_id": "cam1"},
        {"dev_id":"dev1", "cam_id": "cam2"},
        {"dev_id":"dev2", "cam_id": "cam1"}
    ]
}

4.4.31.4. cli_lib_SetShareCams_CALLBACK(设置分享给某用户的摄像头列表结果代理)

- (void)cli_lib_SetShareCams_CALLBACK:(int)HttpRes relation_usr:(NSString *)relation_usr;
  • 说明
    设置分享给某用户的摄像头列表结果代理。

  • 参数说明

回复值说明:

回复值 说明
200 成功
203 认证失败
400 平台服务器内部错误
405 我在对方黑名单中
412 对方非好友
500 请求格式错误

4.4.31.5. cli_lib_GetCam_shareusrs_CALLBACK(获取某摄像头的分享用户列表结果代理)

- (void)cli_lib_GetCam_shareusrs_CALLBACK:(int)HttpRes camid:(NSString *)camid data:(NSData *)data;
  • 说明
    获取某摄像头的分享用户列表结果代理。

  • 参数说明

    • HttpRes:回复值。
    • camid:摄像头编号,同cli_lib_get_cam_shareusr_list中传入的参数。
    • data:分享用户列表,JSON格式。

回复值说明:

回复值 说明
200 成功
203 认证失败
400 平台服务器内部错误
500 请求格式错误

data格式(JSON)说明:

名称 类型 是否必需 说明
users json数组 包含用户列表的json数组

users数组元素格式说明:

名称 类型 是否必需 说明
user string 用户账号

例:

{
    users:[
        {"user":"user1"},
        {"user":"user2"},
        {"user":"user3"}
    ]
}

4.4.31.6. cli_lib_SetShareFriends_CALLBACK(设置某摄像头的分享用户列表结果代理)

- (void)cli_lib_SetShareFriends_CALLBACK:(int)HttpRes camid:(NSString *)camid;
  • 说明
    设置某摄像头的分享用户列表结果代理。

  • 参数说明

回复值说明:

回复值 说明
200 成功
203 认证失败
400 平台服务器内部错误
500 请求格式错误

4.4.32. c2s_share_req_interface(分享请求及响应代理接口)

相关类:ppview_cli

@protocol c2s_share_req_interface <NSObject>
@optional
- (void)cli_lib_GetShareReqs_CALLBACK:(int)HttpRes data:(NSData *)data;
- (void)cli_lib_ResponseShareReq_CALLBACK:(int)HttpRes reqid:(NSString *)reqid;
@end

4.4.32.1. cli_lib_GetShareReqs_CALLBACK(获取别人发来的分享请求列表结果代理)

- (void)cli_lib_GetShareReqs_CALLBACK:(int)HttpRes data:(NSData *)data;
  • 说明
    获取别人发来的分享请求列表结果代理。列表中包括所有其它用户向自己发送的分享请求。当设备包含多个通道(即摄像头)时,对单个设备的分享请求会被分解成多个通道的分享请求,被请求者可以根据需要分享全部或一部分通道。

  • 参数说明

    • HttpRes:回复值。
    • data:分享请求列表,JSON格式。

回复值说明:

回复值 说明
200 成功
203 认证失败
400 平台服务器内部错误
500 请求格式错误

分享请求列表格式说明(JSON)

名称 类型 是否必需 说明
share_reqs json list 分享请求列表,json数组

share_reqs格式说明:

名称 类型 是否必需 说明
from_user string 发起请求的用户账号
from_nick string 发起请求的用户昵称
cam_id string 所要分享的摄像头编号
cam_name string 所要分享的摄像头名称
memo string 发起分享请求时,所带的附加信息
reqid string 请求编号,响应请求cli_lib_response_sharereq_cam时需要用到

4.4.32.2. cli_lib_ResponseShareReq_CALLBACK(响应别人的分享请求结果代理)

- (void)cli_lib_ResponseShareReq_CALLBACK:(int)HttpRes reqid:(NSString *)reqid;
  • 说明
    响应别人的分享请求结果代理。

  • 参数说明

回复值说明:

回复值 说明
200 成功
203 认证失败
400 平台服务器内部错误
405 我在对方黑名单中
406 对方在我黑名单中
412 设备已不归属于我
500 请求格式错误

4.4.33. c2s_sensors_interface(外部传感器相关操作代理接口)

相关类:ppview_cli

@protocol c2s_sensors_interface <NSObject>
@optional
-(void)cli_lib_sensor_codding_callback:(int)res data:(NSData*)data;
-(void)cli_lib_get_sensors_callback:(int)res data:(NSData*)data;
-(void)cli_lib_sensor_delete_callback:(int)res sensor_id:(NSString*)sensor_id;
-(void)cli_lib_sensor_set_callback:(int)res tag:(int)tag sensorid:(NSString*)sensorid name:(NSString*)name preset:(int)preset isalarm:(int)isalarm;
-(void)cli_lib_sensor_subchl_remote_ctrl_callback:(int)res sensor_id:(NSString*)sensor_id chlid:(int)chlid status:(int)status;
-(void)cli_lib_sensor_subchl_set_callback:(int)res tag:(NSString*)tag sensorid:(NSString*)sensorid chlid:(int)chlid name:(NSString*)name alarm_linkage:(int)alarm_linkage;
@end

4.4.33.1. cli_lib_sensor_codding_callback(传感器对码结果代理)

-(void)cli_lib_sensor_codding_callback:(int)res data:(NSData*)data;
  • 说明
    传感器对码结果代理

  • 参数说明

    • res:回复值。
    • data:对码结果,JSON格式。

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 认证失败
205 设备不支持
409 正在对码中
500 参数错误
501 对码超时或失败

对码结果格式说明(JSON)

名称 类型 是否必需 说明
sensors json list 多个对码结果,json数组(由于设备通常在识别到一个对码后立即退出对码状态,因此通常数组中只有一个对码成功的传感器)

sensors格式说明:

名称 类型 是否必需 说明
index int 序号(会变动的,不能作为传感器的标识)
chl_id int 对应的通道号(数字,-1表示没有对应关系)
type int 传感器类型,参见传感器类型表
sensor_id string 传感器编号,可用于唯一标识传感器
sub_chl_count int 子通道数,0表示没有


传感器类型表:

数值 类型
0x01 门磁
0x02 红外
0x03 烟感
0x04 煤气
0x05 水浸
0x06 振动
0x07 遥控器
0x08 红外幕帘
0xF1 开关
0xF2 插座
0xF9 遥控窗帘

4.4.33.2. cli_lib_get_sensors_callback(获得传感器列表结果代理)

-(void)cli_lib_get_sensors_callback:(int)res data:(NSData*)data;
  • 说明
    获得传感器列表结果代理

  • 参数说明

    • res:回复值。
    • data:传感器列表,JSON格式。

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 认证失败
205 设备不支持
409 超时
500 参数错误
501 内部错误


传感器列表格式说明(JSON)

名称 类型 是否必需 说明
sensors json list 多个传感器信息,json数组

sensors格式说明:

名称 类型 是否必需 说明
index int 序号(会变动的,不能作为传感器的标识)
chl_id int 对应的通道号(数字,-1表示没有对应关系)
name string 传感器名称,初始值与传感器编号相同,可修改
type int 传感器类型,参见传感器类型表
sensor_id string 传感器编号,可用于唯一标识传感器
status int 传感器状态(0=关 1=开)
low_power int 是否处于低电压状态,0=否,1=是
preset int 对应联动的预置点号,0表示没有。
is_alarm int 触发后是否报警,0=否,1=是
sub_chl_count int 子通道数,0表示没有
sub_chls json list 多个子通道的信息,如果sub_chl_count==0,则不包含这部分信息

sub_chls格式说明:

名称 类型 是否必需 说明
name string 子通道名称
status int 子通道状态,0=关,1=开,2=停
alarm_linkage int 报警时是否联动,0=否,1=是

4.4.33.3. cli_lib_sensor_set_callback(设置传感器信息结果代理)

- (void)cli_lib_sensor_set_callback:(int)res tag:(int)tag sensorid:(NSString*)sensorid name:(NSString*)name preset:(int)preset isalarm:(int)isalarm;
  • 说明
    设置传感器信息结果代理

  • 参数说明

    • res:回复值。
    • tag:标记,值与调用cli_lib_set_sensors时传入的值相同
    • sensorid:传感器编号。
    • name:传感器名称
    • preset:对应联动的预置点号,0表示没有。
    • isalarm:触发后是否报警,0=否,1=是

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 认证失败
205 设备不支持
409 超时
500 参数错误
501 内部错误

4.4.33.4. cli_lib_sensor_delete_callback(移除传感器结果代理)

- (void)cli_lib_sensor_delete_callback:(int)res sensor_id:(NSString*)sensor_id;
  • 说明
    移除传感器结果代理

  • 参数说明

    • res:回复值。
    • sensor_id:传感器编号。

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 认证失败
205 设备不支持
409 超时
500 参数错误
501 内部错误

4.4.33.5. cli_lib_sensor_subchl_set_callback(设置传感器子通道信息结果代理)

-(void)cli_lib_sensor_subchl_set_callback:(int)res tag:(NSString*)tag sensorid:(NSString*)sensorid chlid:(int)subchlid name:(NSString*)name alarm_linkage:(int)alarm_linkage;
  • 说明
    设置传感器子通道信息结果代理

  • 参数说明

    • res:回复值。
    • tag:标记,值与调用cli_lib_set_sensor_subchl传入的参数相同。
    • sensor_id:传感器编号。
    • subchlid:子通道号
    • name:子通道名
    • alarm_linkage:相关联的通道下的传感器触发报警时是否联动开启,0=否,1=是

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 认证失败
205 设备不支持
409 超时
500 参数错误
501 内部错误

4.4.33.6. cli_lib_sensor_subchl_remote_ctrl_callback(远程控制传感器开关结果代理)

- (void)cli_lib_sensor_subchl_remote_ctrl_callback:(int)res sensor_id:(NSString*)sensor_id chlid:(int)subchlid status:(int)status;
  • 说明
    远程控制传感器开关结果代理

  • 参数说明

    • res:回复值。
    • sensor_id:传感器编号。
    • subchlid:子通道号
    • status:状态,0=关,1=开,2=停

回复值说明:

回复值 说明
-1 客户端句柄不存在
-2 库未初始化
-3 连接句柄不存在
-4 发送数据失败
-5 接收数据失败
-6 超时
-7 设备端返回的结果有错误
200 成功
203 认证失败
205 设备不支持
409 超时
500 参数错误
501 内部错误