记录一次对接海康安防平台做二次开发
前几天对接了海康平台做二次开发,主要涉及到卡口车辆出入、人员刷脸或者刷卡进出等方面,做个记录
卡口相关
首先通过海康安防平台的api查询出入口的终端地址和父设备编号
海康接口调用
- 接口位置:http://{ip}:{port}/artemis-web/api/detail/1516237474282602496
- 接口名称: 获取停车库列表
- 接口url: api/resource/v1/park/parkList
调用一览
从这个接口中我们可以获取到父设备编号: parkIndexCode
相关表设计一览
通过父设备编号获取出入口列表
海康接口调用
- 接口位置: http://{ip}:{port}/artemis-web/api/detail/1516237474538455040
- 接口名称: 获取出入口列表
- 接口url: /api/resource/v1/entrance/entranceList
调用一览
这样可以讲获取到的code维护在自己数据库中待后面调用使用,卡口可分出入口,根据实际情况自己配置。
获取车道列表
海康接口调用
- 接口位置: http://{ip}:{port}/artemis-web/api/detail/1516237474626535424
- 接口名称: 获取车道列表
- 接口url: /api/resource/v1/roadway/roadwayList
调用一览
根据上一步获取到的entranceIndexCodes可以进一步获取到车道列表信息,同时保存其中的roadwayIndexCode以便后续的接口调用
安防平台对应
数据库设计,保存其中的出入口的左右车道编号以便后续记录并查询统计卡口车辆出入情况。
配置相应的服务接受海康推送的通行记录
海康的时间订阅
- 接口位置:http://{ip}:{port}/artemis-web/api/detail/1516237490963349504
- 接口名称:按事件类型订阅事件
- 接口url:/api/eventService/v1/eventSubscriptionByEventTypes
调用一览
通过此接口可以将自己服务接口注册进海康服务,最终海康服务会在有相关事件响应时将数据推送到我们服务接口中,可以选择性的将接口数据处理保存。
安防平台出入记录
人员相关
添加人员
海康接口调用
- 接口位置:http://{ip}:{port}/artemis-web/api/detail/1516237455638921216
- 接口名称:添加人员
- 接口url: /api/resource/v1/person/single/add
注意事项
添加人员可能会出现缺少tagId
需要进api管理的合作方进行tagId配置。
然后确保部署综合安防平台的人员将默认储存池配置起来
之后就可以正常添加人员信息和人员照片了,注意当前接口人员头像是必传的。
添加人员中的orgIndexCode
该字段需要进行下面操作后进行获取
添加园区及园区下企业
维护组织架构
首先需要对组织进行维护,组织名称和对应的组织编号,注意这边的组织编号实际上并没有太大用处,实际需要用到的是通过接口查询出来的orgIndexCode
获取orgIndexCode
- 接口位置:http://{ip}:{port}/artemis-web/api/detail/1516237457287282688
- 接口名称:根据父组织编号获取下级组织列表
- 接口url: /api/resource/v1/org/parentOrgIndexCode/subOrgList
调用一览
总节点的默认orgIndexCode固定为root000000
需要将其中每家企业的orgIndexCode
储存下来,方便添加人员时使用。
本地储存表结构设计
create table hk_org
(
id bigint auto_increment comment '主键ID'
primary key,
org_index_code varchar(64) null comment '组织唯一编码',
org_no varchar(64) null comment '组织自定义编码',
org_name varchar(100) null comment '组织名称',
org_path varchar(1024) null comment '组织路径',
parent_org_index_code varchar(64) null comment '父级组织(0标识为根组织)',
parent_org_name varchar(64) null comment '父级组织名称',
update_time datetime null comment '更新时间',
unit_id bigint not null comment '企业id'
)
charset = utf8mb3
row_format = DYNAMIC;
导入后效果查看
安防平台可以分别导入人员信息和人员照片,照片按照姓名_身份证号.jpg
多个一起压缩导入。这也是为什么有上一篇从文件服务器取流改名压缩文件的原因。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 ALLBS!
评论