目的:获取海康威视摄像头实时监控预览URL地址
一、 通过海康管理平台抓包获取
登录海康管理平台,到实时监控场景下

抓包两个主要的数据流
第一个:获取树节点,也就是监控点列表。

第二步:获取id为10000001001310000202的监控点的实时监控

截图中的内容:
请求url:http://218.58.60.10:82/vms/web/module/preview/findPlayUrl.action
Post参数:
{ "indexCode": "10000001001310000202", "cameraName": "大枣园幼儿园1", "id": "904", "intelCode": "", "intelChannelNo": "" }
返回结果:
{ "playInfo": { "cameraId": 1337, "devType": 0, "indexCode": "10000002001310000074", "installWay": 0, "name": "机关幼儿园夏庄路01_通道1", "orgId": 5, "orgIndexCode": "10000002005000000001", "playType": 0, "playUrl": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Preview><StreamSvr><Svr type=\"3\" ip=\"192.168.100.2\" port=\"7302\" rtspPort=\"7302\"\/><Svr type=\"41\" ip=\"218.58.60.10\" port=\"554\"\/><\/StreamSvr><CamIndexCode>10000002001310000074<\/CamIndexCode><DevIndexCode>10000002001130000068<\/DevIndexCode><LinkType>1<\/LinkType><StreamType>0<\/StreamType><CamName>机关幼儿园夏庄路01_通道1<\/CamName><UserName>admin<\/UserName><PassWord>XdMOANI=<\/PassWord><UserLevel>50<\/UserLevel><DevType>2<\/DevType><Manufacturer>0<\/Manufacturer><ProSeries>202<\/ProSeries><ChannelNo>1<\/ChannelNo><SubStream>MAIN<\/SubStream><NetZone cnid=\"2\" pnid=\"1\"\/><TreatyType>SDK<\/TreatyType><\/Preview>", "substream": 0 }, "privilegeCode": "10051,10020,10052,10029,10011,10022,10033,10021,10032,10002,10024,10013,10012,10001,10015,10004,10003,10014,10028,10006,10027,10005", "success": true }
整理后的xml内容:
<?xml version="1.0" encoding="utf-8"?> <Preview> <StreamSvr> <Svr type="3" ip="192.168.3.207" port="7302" rtspPort="7302" /> <Svr type="41" ip="60.209.152.77" port="554" /> </StreamSvr> <CamIndexCode>37020300001310000074</CamIndexCode> <DevIndexCode>37020300001130000051</DevIndexCode> <LinkType>1</LinkType> <StreamType>0</StreamType> <CamName>长春路1号汉方药业 01</CamName> <UserName>admin</UserName> <PassWord>DYNeBdVruB8=</PassWord> <UserLevel>50</UserLevel> <DevType>0</DevType> <Manufacturer>0</Manufacturer> <ProSeries>1</ProSeries> <ChannelNo>1</ChannelNo> <SubStream>MAIN</SubStream> <NetZone cnid="2" pnid="1" /> <TreatyType>SDK</TreatyType> </Preview>
结论:在返回结果中提供了监控地址的ip和端口,可以用指定的规则在比如像VCL之类的视频播放器里预览。如:
http://112.6.118.37:81/pag/112.6.118.36/7302/002783/0/SUB/TCP/live.m3u8
二、调用海康提供的ws接口
根据《平台二次开发主要接口调用说明.docx》一问的表述,以《ByteRivers V1.1接口说明书.pdf》为标准,探索webservice二次开发。
第一步、登录(接口文档4.9章)

请求参数:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.cms.ivms6.hikvision.com/"> <soapenv:Header/> <soapenv:Body> <ws:login> <!--Optional:--> <ws:loginAccount>admin</ws:loginAccount> <!--Optional:--> <ws:password>c03be2ee6c42e603ddd631c513dd9a0041e0b5bd5c7cb6bc9ca110592f213a4a</ws:password> <!--Optional:--> <ws:serviceIp>218.58.60.10</ws:serviceIp> <!--Optional:--> <ws:clientIp>192.168.31.223</ws:clientIp> <!--Optional:--> <ws:clientMac>58-FB-84-58-3D-10</ws:clientMac> </ws:login> </soapenv:Body> </soapenv:Envelope>
返回结果:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <ns:loginResponse xmlns:ns="http://ws.cms.ivms6.hikvision.com/"> <ns:return><![CDATA[<?xml version="1.0" encoding="UTF-8" ?><table> <head> <result type="tgc" result_code="0" message="成功" size="1" /> </head> <rows> <row tgc="TGT-112-B2je0sTUQA2sjJvgblwyEhZYC0K2imo4WXSR6uCger7sfQAYwY-cas" tag="tgc" /> </rows> </table>]]></ns:return> </ns:loginResponse> </soapenv:Body> </soapenv:Envelope>
效果:正常登录
第二步:申请令牌(接口文档4.1章)

参数:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.cms.ivms6.hikvision.com/"> <soapenv:Header/> <soapenv:Body> <ws:applyToken> <!--Optional:--> <ws:tgt>TGT-112-B2je0sTUQA2sjJvgblwyEhZYC0K2imo4WXSR6uCger7sfQAYwY-cas</ws:tgt> </ws:applyToken> </soapenv:Body> </soapenv:Envelope>
返回结果:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <ns:applyTokenResponse xmlns:ns="http://ws.cms.ivms6.hikvision.com/"> <ns:return><![CDATA[<?xml version="1.0" encoding="UTF-8" ?><table> <head> <result type="st" result_code="0" message="成功" size="1" /> </head> <rows> <row st="ST-78399-zGsSOkCSwo0kbVEeHZSF-cas" tag="st" /> </rows> </table>]]></ns:return> </ns:applyTokenResponse> </soapenv:Body> </soapenv:Envelope>
第三步:获取部分资源
获取有指定操作类型权限的全部资源(接口文档3.5章)

返回结果:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <ns:getAllResourceDetailResponse xmlns:ns="http://ws.cms.ivms6.hikvision.com/"> <ns:return><![CDATA[<?xml version="1.0" encoding="UTF-8"?> <table> <head> <result preview_top_level="0" result_code="0" message="成功" size="7"/> </head> <rows> <row i_id="1" c_classname="Domain" c_org_name="李沧区食药监局" i_parent_id="null" c_org_code="init-domain" c_index_code="69918559000000000000" c_org_desc="初始化的域" i_operate_role_id="7" i_config_role_id="6" i_manage_role_id="5" i_default_role_id="1" c_path=",1," c_area_code="69918559" i_status="0" c_creator="1" c_create_time="2013-10-29 14:27:06" c_update_time="2017-05-09 14:53:17" i_sys_role_id="2" i_safe_role_id="3" i_audit_role_id="4" i_org_tree_id="null" i_order="0" i_level="1" i_domain_id="1" i_level1="1" i_level2="null" i_level3="null" i_level4="null" i_level5="null" i_level6="null" i_level7="null" i_level8="null" i_level9="null" i_level10="null" i_important_prison="null" c_third_system="null" c_cascade_code="null" c_pinyin_code="lcqsyjj" c_org_type="0" createtime="2013-10-29 14:27:06" pinyincode="lcqsyjj" creator="1" parentid="null" order="0" orgcode="init-domain" path=",1," classname="Domain" cascadecode="null" updatetime="2017-05-09 14:53:17" status="0" areacode="69918559" orgname="李沧区食药监局" orgtreeid="null" orgdesc="初始化的域" orginternalcode="69918559000000000000" privilege="2" i_vag_related="null" i_operator_id="null" i_sequence_idx="null" c_device_key="null" b_self_relation_trigger="null"/> <row i_id="6" c_classname="Organization" c_org_name="远程监控系统升级改造扩容工程" i_parent_id="1" c_org_code="null" c_index_code="00000000005000000001" c_org_desc="" i_operate_role_id="null" i_config_role_id="null" i_manage_role_id="null" i_default_role_id="12" c_path=",1,6," c_area_code="00000000" i_status="0" c_creator="1" c_create_time="2017-05-10 16:30:13" c_update_time="2017-05-15 12:23:37" i_sys_role_id="null" i_safe_role_id="null" i_audit_role_id="null" i_org_tree_id="1" i_order="1" i_level="2" i_domain_id="1" i_level1="1" i_level2="6" i_level3="null" i_level4="null" i_level5="null" i_level6="null" i_level7="null" i_level8="null" i_level9="null" i_level10="null" i_important_prison="null" c_third_system="null" c_cascade_code="null" c_pinyin_code="ycjkxtsjgzkrgc" c_org_type="0" createtime="2017-05-10 16:30:13" pinyincode="ycjkxtsjgzkrgc" creator="1" parentid="1" order="1" orgcode="null" path=",1,6," classname="Organization" cascadecode="null" updatetime="2017-05-15 12:23:37" status="0" areacode="00000000" orgname="远程监控系统升级改造扩容工程" orgtreeid="1" orgdesc="" orginternalcode="00000000005000000001" privilege="2" i_vag_related="null" i_operator_id="null" i_sequence_idx="null" c_device_key="null" b_self_relation_trigger="null"/> <row i_id="3" c_classname="Organization" c_org_name="李沧区农产品检测室" i_parent_id="1" c_org_code="null" c_index_code="10000000005000000001" c_org_desc="" i_operate_role_id="null" i_config_role_id="null" i_manage_role_id="null" i_default_role_id="9" c_path=",1,3," c_area_code="10000000" i_status="0" c_creator="1" c_create_time="2017-05-09 14:54:13" c_update_time="2017-05-15 12:23:37" i_sys_role_id="null" i_safe_role_id="null" i_audit_role_id="null" i_org_tree_id="1" i_order="2" i_level="2" i_domain_id="1" i_level1="1" i_level2="3" i_level3="null" i_level4="null" i_level5="null" i_level6="null" i_level7="null" i_level8="null" i_level9="null" i_level10="null" i_important_prison="null" c_third_system="null" c_cascade_code="null" c_pinyin_code="lcqncpjcs" c_org_type="0" createtime="2017-05-09 14:54:13" pinyincode="lcqncpjcs" creator="1" parentid="1" order="2" orgcode="null" path=",1,3," classname="Organization" cascadecode="null" updatetime="2017-05-15 12:23:37" status="0" areacode="10000000" orgname="李沧区农产品检测室" orgtreeid="1" orgdesc="" orginternalcode="10000000005000000001" privilege="2" i_vag_related="null" i_operator_id="null" i_sequence_idx="null" c_device_key="null" b_self_relation_trigger="null"/> <row i_id="4" c_classname="Organization" c_org_name="三期" i_parent_id="1" c_org_code="null" c_index_code="10000001005000000001" c_org_desc="" i_operate_role_id="null" i_config_role_id="null" i_manage_role_id="null" i_default_role_id="10" c_path=",1,4," c_area_code="10000001" i_status="0" c_creator="1" c_create_time="2017-05-09 14:54:28" c_update_time="2017-05-15 12:23:36" i_sys_role_id="null" i_safe_role_id="null" i_audit_role_id="null" i_org_tree_id="1" i_order="3" i_level="2" i_domain_id="1" i_level1="1" i_level2="4" i_level3="null" i_level4="null" i_level5="null" i_level6="null" i_level7="null" i_level8="null" i_level9="null" i_level10="null" i_important_prison="null" c_third_system="null" c_cascade_code="null" c_pinyin_code="sq" c_org_type="0" createtime="2017-05-09 14:54:28" pinyincode="sq" creator="1" parentid="1" order="3" orgcode="null" path=",1,4," classname="Organization" cascadecode="null" updatetime="2017-05-15 12:23:36" status="0" areacode="10000001" orgname="三期" orgtreeid="1" orgdesc="" orginternalcode="10000001005000000001" privilege="2" i_vag_related="null" i_operator_id="null" i_sequence_idx="null" c_device_key="null" b_self_relation_trigger="null"/> <row i_id="5" c_classname="Organization" c_org_name="二期" i_parent_id="1" c_org_code="null" c_index_code="10000002005000000001" c_org_desc="" i_operate_role_id="null" i_config_role_id="null" i_manage_role_id="null" i_default_role_id="11" c_path=",1,5," c_area_code="10000002" i_status="0" c_creator="1" c_create_time="2017-05-09 14:54:41" c_update_time="2017-07-11 14:43:39" i_sys_role_id="null" i_safe_role_id="null" i_audit_role_id="null" i_org_tree_id="1" i_order="4" i_level="2" i_domain_id="1" i_level1="1" i_level2="5" i_level3="null" i_level4="null" i_level5="null" i_level6="null" i_level7="null" i_level8="null" i_level9="null" i_level10="null" i_important_prison="null" c_third_system="null" c_cascade_code="null" c_pinyin_code="qt" c_org_type="0" createtime="2017-05-09 14:54:41" pinyincode="qt" creator="1" parentid="1" order="4" orgcode="null" path=",1,5," classname="Organization" cascadecode="null" updatetime="2017-07-11 14:43:39" status="0" areacode="10000002" orgname="二期" orgtreeid="1" orgdesc="" orginternalcode="10000002005000000001" privilege="2" i_vag_related="null" i_operator_id="null" i_sequence_idx="null" c_device_key="null" b_self_relation_trigger="null"/> <row i_id="8" c_classname="Organization" c_org_name="一期" i_parent_id="1" c_org_code="null" c_index_code="00000000005000000003" c_org_desc="" i_operate_role_id="null" i_config_role_id="null" i_manage_role_id="null" i_default_role_id="15" c_path=",1,8," c_area_code="00000000" i_status="0" c_creator="1" c_create_time="2017-07-11 14:19:45" c_update_time="2017-07-11 14:43:39" i_sys_role_id="null" i_safe_role_id="null" i_audit_role_id="null" i_org_tree_id="1" i_order="5" i_level="2" i_domain_id="1" i_level1="1" i_level2="8" i_level3="null" i_level4="null" i_level5="null" i_level6="null" i_level7="null" i_level8="null" i_level9="null" i_level10="null" i_important_prison="null" c_third_system="null" c_cascade_code="null" c_pinyin_code="yq" c_org_type="0" createtime="2017-07-11 14:19:45" pinyincode="yq" creator="1" parentid="1" order="5" orgcode="null" path=",1,8," classname="Organization" cascadecode="null" updatetime="2017-07-11 14:43:39" status="0" areacode="00000000" orgname="一期" orgtreeid="1" orgdesc="" orginternalcode="00000000005000000003" privilege="2" i_vag_related="null" i_operator_id="null" i_sequence_idx="null" c_device_key="null" b_self_relation_trigger="null"/> <row i_id="7" c_classname="Organization" c_org_name="电脑画面" i_parent_id="1" c_org_code="null" c_index_code="00000000005000000002" c_org_desc="" i_operate_role_id="null" i_config_role_id="null" i_manage_role_id="null" i_default_role_id="13" c_path=",1,7," c_area_code="00000000" i_status="0" c_creator="1" c_create_time="2017-05-22 14:27:20" c_update_time="2017-07-11 14:27:51" i_sys_role_id="null" i_safe_role_id="null" i_audit_role_id="null" i_org_tree_id="1" i_order="6" i_level="2" i_domain_id="1" i_level1="1" i_level2="7" i_level3="null" i_level4="null" i_level5="null" i_level6="null" i_level7="null" i_level8="null" i_level9="null" i_level10="null" i_important_prison="null" c_third_system="null" c_cascade_code="null" c_pinyin_code="dnhm" c_org_type="0" createtime="2017-05-22 14:27:20" pinyincode="dnhm" creator="1" parentid="1" order="6" orgcode="null" path=",1,7," classname="Organization" cascadecode="null" updatetime="2017-07-11 14:27:51" status="0" areacode="00000000" orgname="电脑画面" orgtreeid="1" orgdesc="" orginternalcode="00000000005000000002" privilege="2" i_vag_related="null" i_operator_id="null" i_sequence_idx="null" c_device_key="null" b_self_relation_trigger="null"/> </rows> </table>]]></ns:return> </ns:getAllResourceDetailResponse> </soapenv:Body> </soapenv:Envelope>
获取【三期】组织下有指定操作类型权限的全部资源(接口文档3.6章)

1 <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> 2 <soapenv:Body> 3 <ns:getAllResourceDetailByOrgResponse xmlns:ns="http://ws.cms.ivms6.hikvision.com/"> 4 <ns:return><
本文探讨了如何获取海康威视摄像头的实时监控预览URL。通过管理平台抓包发现,虽然能获取监控地址的IP和端口,但海康提供的WebService接口并未直接提供预览地址的API。尽管接口通,但存在权限限制和未找到相应功能,可能需要寻求其他方法或厂家协助。
1万+

被折叠的 条评论
为什么被折叠?



