Page 1 of 1

【分享帖】网关sdk安防功能接入介绍

Posted: 2022年 Dec 30日 15:47
by jm.yao

一、安防基础能力
只支持在安防白名单内的网关和子设备。

  1. 布撤防
    在家/离家布防功能是建立在一套设备联动规则之上的,可以理解为当规则生效的情况下有外力破坏规则时需要触发报警通知用户。
    撤防功能是子设备触发报警规则也不走报警逻辑。
    24小时的子设备不受布撤防影响。
    Image

  2. 忽略设备
    如果在布防过程中,存在门磁等设备处于打开状态(异常状态),App会弹出警告框,提示是否继续布防还是取消。App在进行布放的时候第一步就是获取异常设备列表。

  3. 延迟
    布防延迟:只支持布防模式下,即切换模式后,延迟N秒后再进入该模式。
    报警延迟:只支持布防模式下,即在布防模式下,发生报警,延迟N秒后才会真正触发报警逻辑。
    Image

  4. 报警信息上报
    当dp32上报时,把主机状态同步给基线sdk(tuya_iot_home_secruity_alarm_status)。当状态是true时,sdk会判断是否有报警设备,有则上报(ALARM_CAUSE),上报完成后清除掉;当状态为false时,sdk会清除相关内容。

  5. 多网关局域网安防同步
    布撤防的同步:在同一局域内有多个网关(如A,B两个网关),如果A布撤防了,则B也会跟着布撤防。
    报警状态的同步:在同一局域内有多个网关(如A,B两个网关),如果A报警了,则B也会跟着报警,表现为dp32的同步。

二、安防接口

  • 结构体定义

Image
alarm_cb:报警发生回调接口
alarm_mute_cb:报警消音回调接口
alarm_cancel_cb:报警取消回调接口
disarmed_cb:撤防完成回调接口
away_and_armed_cb:离家布防完成回调接口
home_and_armed_cb:在家布防完成回调接口
arm_ignore_cb:报警忽略回调接口
arm_countdown_cb:布防倒计时开始回调接口
alarm_countdown_cb:报警倒计时开始回调接口
alarm_door_cb:门磁设备打开回调接口
alarm_devname_cb:报警下发设备名称回调接口

Image

gw_offline_dp_save_cb:离线保存 DP 信息回调接口
gw_home_security_if_cb:安防模式变化通知回调接口
gw_home_security_alarm_delay_status_cb:报警延时状态通知回调接口
gw_home_security_event_cb:安防事件通知回调接口
gw_home_security_cancel_alarm:取消报警回调接口
gw_home_security_alarm_dev_new_cb:安防报警设备功能点信息处理回调接口
gw_home_security_enter_alarm_cb:进入报警状态通知回调接口

  • 接口说明

OPERATE_RET tuya_iot_gw_home_security_reg_ops_cb(TY_HOME_SECURITY_OPS_CB_S *cbs)
功能说明:注册安防功能操作回调接口
参数说明:操作回调结构体,详见 TY_HOME_SECURITY_OPS_CB_S

OPERATE_RET tuya_iot_gw_home_security_start(TY_GW_HOME_SECURITY_APP_CBS_S *iot_alarm_cbs)
功能说明:安防服务初始化接口
参数说明:安防业务回调结构体,详见 TY_GW_HOME_SECURITY_APP_CBS_S
cbs == NULL,表示 SDK 内部处理
cbs != NULL,表示开发者自行处理