返回顶部
首页 > 资讯 > 后端开发 > JAVA >海康 综合安防管理平台 对接
  • 833
分享到

海康 综合安防管理平台 对接

java开发语言 2023-08-16 19:08:07 833人浏览 独家记忆
摘要

海康摄像头对接,通过海康综合安防管理平台对接 1. 海康综合安防管理平台介绍 1.1 官网介绍 1.2 个人理解 综合安防管理平台部署之后,有2个系统,一个是综合安防管理平台:是用户端系统,一个是运营中心:是综合安防平台的后台管理系统,可

海康摄像头对接,通过海康综合安防管理平台对接

1. 海康综合安防管理平台介绍

1.1 官网介绍

在这里插入图片描述

1.2 个人理解

综合安防管理平台部署之后,有2个系统,一个是综合安防管理平台:是用户端系统,一个是运营中心:是综合安防平台的后台管理系统,可提供api与业务平台对接,实现实时预览、录播回放、语音对讲、报警订阅等功能。

1.3 综合安防管理平台

在这里插入图片描述

1.4 运行管理中心系统

在这里插入图片描述

2. 需求

通过对接综合安防平台API实现摄像头的实时预览,录播回放,语音对讲,安全帽监测

3. 对接步骤

3.1 运行管理中心创建合作方并授权对应的api权限

在这里插入图片描述

3.2 获取合作方的秘钥

在这里插入图片描述
说明: 该秘钥是获取api权限的秘钥

3.3 拿到该秘钥,想要调用对应API接口还需要获取某一个摄像头的主键,cameraindexCode

3.3.1 官网api地址

在这里插入图片描述

3.3.2 代码编写

controller

     @Apioperation(value = "分页获取监控点资源")    @GetMapping(value = "/GetResource")    public String postGetResource() {        return cameraService.callPostApiGetResources();    }

sereviceImpl

     @Override    public String callPostApiGetResources() {                ArtemisConfig config = new ArtemisConfig();        config.setHost(artemisHost); // 代理API网关Nginx服务器ip端口        config.setAppKey(artemisAppKey);  // 秘钥appkey        config.setAppSecret(artemisAppSecret);// 秘钥appSecret        String getCamsApi = ARTEMIS_PATH + "/api/resource/v1/cameras";        Map paramMap = new HashMap();// post请求FORM表单参数        paramMap.put("pageNo", "1");        paramMap.put("pageSize", "20");        String body = JSON.tojsON(paramMap).toString();        Map path = new HashMap(2) {            {                put("https://", getCamsApi);            }        };        String result = null;        try {            result = ArtemisHttpUtil.doPostStringArtemis(config, path, body, null, null, "application/json");            log.info(MessageFormat.format("分页获取监控点资源{0}", result));        } catch (Exception e) {            e.printStackTrace();        }        return result;    }

返回值

{    "code": "0",    "msg": "success",    "data": {        "total": 1,        "pageNo": 1,        "pageSize": 100,        "list": [            {                "cameraIndexCode": "a8f74dcf14f846bb95c8dff6684f897e",                "cameraName": "193GB_IPCamera 01",                "cameraType": 0,                "cameraTypeName": "1",                "capabilitySet": "645f0a62-05ff-4396-a687-944c3f0406d6",                "capabilitySetName": "0",                "intelligentSet": "0",                "intelligentSetName": "null",                "channelNo": "1",                "channelType": "analog",                "channelTypeName": "null",                "createTime": "null",                "encodeDevIndexCode": "73c2e4903a4547f8812a26d329802cd0",                "encodeDevResourceType": "null",                "encodeDevResourceTypeName": "null",                "gbIndexCode": "null",                "installLocation": "29",                "keyBoardCode": "ga_h264",                "latitude": "null",                "longitude": "null",                "pixel": 1,                "ptz": 1,                "ptzController": 1,                "ptzControllerName": "123",                "ptzName": "1234",                "recordLocation": "0",                "recordLocationName": "0",                "regionIndexCode": "123",                "status": 1,                "statusName": "123",                "transType": 0,                "transTypeName": "1",                "treatyType": "1",                "treatyTypeName": "1",                "viewshed": "123",                "updateTime": "1234567489"            }        ]    }}

拿到对应的摄像头的主键cameraIndexCode,保存到数据库,后面调用实时预览接口,对应哪一个摄像头设备,用到这个cameraIndexCode

3.4 拿到该秘钥,就可以调用对应的实时预览接口,获取实时预览的串流url

3.4.1 官网api接口地址

https://open.hikvision.com/docs/docId?productId=5c67f1e2f05948198c909700&version=%2Ff8356830af1d40f3b1da7db12baa47af&tagPath=API%E5%88%97%E8%A1%A8-%E8%A7%86%E9%A2%91%E4%B8%9A%E5%8A%A1-%E8%A7%86%E9%A2%91%E5%8A%9F%E8%83%BD#c93b92ea
在这里插入图片描述

3.4.2 代码编写

controller

     @ApiOperation(value = "获取当前监控点的预览url")    @GetMapping(value = "/getOnePreviewUrl")    public ajaxResult getOnePreviewUrl(@RequestParam(value = "cameraIndexCode") String cameraIndexCode) {        String url = cameraService.callPostApiPreviewUrl(cameraIndexCode, "rtmp");        return AjaxResult.successData(url);    }

serviceImpl

        @Override    public String callPostApiPreviewUrl(String cameraIndexCode, String protocol) {        ArtemisConfig config = new ArtemisConfig();        config.setHost(artemisHost); // 代理API网关nginx服务器ip端口        config.setAppKey(artemisAppKey);  // 秘钥appkey        config.setAppSecret(artemisAppSecret);// 秘钥appSecret        String getCamsApi = ARTEMIS_PATH + "/api/video/v1/cameras/previewURLs";        Map paramMap = new HashMap();// post请求Form表单参数        paramMap.put("cameraIndexCode", cameraIndexCode);        paramMap.put("streamType", 0);        paramMap.put("protocol", protocol);        String body = JSON.toJSON(paramMap).toString();        Map path = new HashMap(2) {            {                put("https://", getCamsApi);            }        };        String result = null;        try {            result = ArtemisHttpUtil.doPostStringArtemis(config, path, body, null, null, "application/json");            log.info(MessageFormat.format("获取监控点预览取流URL{0}", result));            JSONObject jsonObject = JSON.parseObject(result);            String code = jsonObject.getString("code");            if("0".equals(code)){                String data = jsonObject.getString("data");                return data;            }        } catch (Exception e) {            e.printStackTrace();        }        return result;    }

返回值

{    "code": "0",    "msg": "success",    "data": {        "url": "rtsp://10.2.145.66:655/EUrl/CLJ52BW"    }}

根据返回值中的url,放到vlc播放器中可测试是否正确(点击媒体-打开网络串流)
在这里插入图片描述
测试正确,播放正常,把该yrl返回给前端,让前端调用h5播放器,播放该url即可。

来源地址:https://blog.csdn.net/liupantao/article/details/129950713

--结束END--

本文标题: 海康 综合安防管理平台 对接

本文链接: https://lsjlt.com/news/372011.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 海康 综合安防管理平台 对接
    海康摄像头对接,通过海康综合安防管理平台对接 1. 海康综合安防管理平台介绍 1.1 官网介绍 1.2 个人理解 综合安防管理平台部署之后,有2个系统,一个是综合安防管理平台:是用户端系统,一个是运营中心:是综合安防平台的后台管理系统,可...
    99+
    2023-08-16
    java 开发语言
  • 智慧园区综合管理平台园区管理系统方案
    智慧园区综合管理平台园区管理系统方案产业园区是实现产业发展集聚规模化产业,也是经济化转型升级的重要方式之一,怎样为园区中的企业以及个人提供智慧化服务,是每个产业园区服务需要解决的主要问题。智慧园区是在基本园区服务的基础上,解决园区建设中存在...
    99+
    2023-06-05
  • 一卡通综合管理平台中了后缀.[mr.hacker@tutan
    2.33GB的sql数据库被后缀.[mr.hacker@tutanota.com]加密    最近几天有一个一卡通综合管理平台的数据库被勒索病毒加密了,因为整个服务器只有sql数据库是重要的,而且客户拒绝向...
    99+
    2024-04-02
  • 智慧园区综合管理平台搭建,园区楼宇集成系统开发方案
    智慧园区综合管理平台搭建,园区楼宇集成系统开发方案智慧园区综合管理云平台是通过统一的软件平台对园区内公共区域、各建筑物的电气设备进行自动控制和管理,并对用户提供信息和通信服务。另外对园区的所有空调、给水排水、供配电设备、通风、消防、保安设备...
    99+
    2023-06-04
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作