华为云用户手册

  • URI GET /v1/{user_id}/space-heatmap 表1 路径参数 参数 是否必选 参数类型 描述 user_id 是 String 用户ID:由数字组成,长度范围[15,25],获取方式参考获取user ID与下载AK/SK章节 表2 Query参数 参数 是否必选 参数类型 描述 channel_id 是 String 通道ID: 好望设备:取值范围[0,999] device_id 是 String 设备ID: 好望设备:大小写字母、数字组成,长度范围[8,32],可在设备外壳或者设备web页面上获取 start_time 是 String 开始时间:时间格式为yyyy-MM-dd HH:mm:ss type 是 String 时间类型:枚举类型 枚举值: YEAR 年统计 MONTH 月统计 WEEK 周统计 DAY 日统计
  • URI GET /v1/{user_id}/time-heatmap 表1 路径参数 参数 是否必选 参数类型 描述 user_id 是 String 用户ID:由数字组成,长度范围[15,25],获取方式参考获取user ID与下载AK/SK章节 表2 Query参数 参数 是否必选 参数类型 描述 channel_id 是 String 通道ID: 好望设备:取值范围[0,999] device_id 是 String 设备ID: 好望设备:大小写字母、数字组成,长度范围[8,32],可在设备外壳或者设备web页面上获取 start_time 是 String 开始时间:时间格式为yyyy-MM-dd HH:mm:ss type 是 String 时间类型:枚举类型 枚举值: YEAR 年统计 MONTH 月统计 WEEK 周统计 DAY 日统计
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 in Array of integers 进入人数列表 type是DAY时返回是当天24小时的人流流入统计数据 type是WEEK时返回是当周7天的人流流入统计数据 type是MONTH时返回是当月天数的人流流入统计数据 type是YEAR时返回是当年12个月的人流流入统计数据 out Array of integers 离开人数列表 type是DAY时返回是当天24小时的人流流出统计数据 type是WEEK时返回是当周7天的人流流出统计数据 type是MONTH时返回是当月天数的人流流出统计数据 type是YEAR时返回是当年12个月的人流流出统计数据
  • URI GET /v1/{user_id}/statistics/people 表1 路径参数 参数 是否必选 参数类型 描述 user_id 是 String 用户ID:由数字组成,长度范围[15,25],获取方式参考获取user ID与下载AK/SK章节 表2 Query参数 参数 是否必选 参数类型 描述 channel_id 是 String 通道ID: 好望设备:取值范围[0,999] device_id 是 String 设备ID: 好望设备:大小写字母、数字组成,长度范围[8,32],可在设备外壳或者设备web页面上获取 end_date 否 String 结束时间:日期格式为yyyyMMdd type为DAY或者YEAR时不用填写 type为WEEK或者MONTH时不填默认取start_date值 type为CUSTOMIZE时必填 start_date 是 String 开始时间:日期格式为yyyyMMdd type为DAY时,查询start_date当天人流信息 type为WEEK时,查询start_date当周人流信息 type为MONTH时,查询start_date当月人流信息 type为YEAR时,查询start_date当年人流信息 type 是 String 报表类型:枚举类型 枚举值: DAY 日统计 WEEK 周统计,需注意的是,如果start_date和end_date的日期跨度大于等于7天,会以MONTH 模式处理和返回数据 MONTH 月统计,需注意的是,如果start_date和end_date的日期跨度小于7天,会以WEEK 模式处理和返回数据 YEAR 年统计 CUSTOMIZE 自定义统计,预留,暂不使用
  • 响应示例 状态码: 200 OK 示例 1 { "pic_url" : "// 当 storage 字段为 false 时,此字段为空串", "pic_data" : "AAAAgAAAAAAAAAAAAAAAgAAAAd+/G0N4rYLasJ08oixRKANqyPxtwopjAcfLZ4vrF3LjwAAAAAAAAAAAAAAsIovJNbDeBeddTigN037AAiOm67Mrvka1Ht8LGT2S8FDAySkfqvCnq+ CS 5BmInek3OfrSDIQDy+TUImvmwYXjpj3FkYIU+L0GkGD7C6r73YxoZ2ocChqpARrXIzlp/zKi4DpzQ47Ese4IX2zkrLgehpMhE98" } 示例 2 { "pic_url" : "http://api-ivm.myhuaweicloud.com/v1/holo/219123456CYP***_0_210/static", "pic_data" : "// 当 storage 字段为 true 时,此字段为空串" } 示例2中获取到的pic_url的请求示例如下 请求 http://api-ivm.myhuaweicloud.com/v1/holo/219123456CYP***_0_210/static Access-Token: xxx 响应格式1: { "pic_data": "ABCD1234ABCD1234ABCD1234ABCD1234ABCD1234ABCD1234ABCD1234ABCD1234" // base64编码的图片 } 响应格式2: 二进制编码的图片内容
  • URI GET /v1/{user_id}/devices/snap 表1 路径参数 参数 是否必选 参数类型 描述 user_id 是 String 用户ID:由数字组成,长度范围[15,25],获取方式参考获取user ID与下载AK/SK章节 表2 Query参数 参数 是否必选 参数类型 描述 channel_id 是 String 通道ID: 好望设备:取值范围[0,999] 国标设备:由数字组成,长度为20个字符,由客户自行在设备侧设置,可以在web界面获取 device_id 是 String 设备ID: 好望设备:大小写字母、数字组成,长度范围[8,32],可在设备外壳或者设备web页面上获取 国标设备:由数字组成,长度为20个字符长度,由客户自行设置,其中第11-13位,必须是以下之一132(IPC)、111(DVR)、118(NVR),用来区分设备类型 storage 是 String 是否 云存储 标识。 枚举值: true 当需要云存储时,接口返回图片的下载URL; false 无需存储时,返回图片base64编码数据。
  • 响应示例 状态码: 200 接口响应 { "failed_num": 0, "alarms": [ { "alarm_uuid": "HOLOIPCALARM53200_0_people_count_line_alarm_20230220201831_17", "url": "http://123.123.123.123:31012/v1/holo/HOLOIPCALARM53200_0_people_count_line_alarm_20230220201831_17.jav?secret=lln7Rnpg6sS%2BvUp%2BD%2FPHKCpbsVhg&type=0&expire=1676926267&extend=0", "targetgroup_url": "", "result": { "code": "IVM.0", "msg": "success" } } ] }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述消息管理 failed_num Integer 请求失败的错误数量 alarms Array of AlarmPictureUrlsResAlarm objects 响应信息 表5 AlarmPictureUrlsResAlarm 参数 参数类型 描述 alarm_uuid String 告警id url String 告警图片网络下载路径,该路径有效期为五分钟 targetgroup_url String 目标组图片网络下载路径,该路径有效期为五分钟,如果没有该图片则返回空 result AlarmPictureUrlReqResult object 响应信息 表6 AlarmPictureUrlReqResult 参数 参数类型 描述 code String 错误码 msg String 错误码描述
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Access-Token 是 String 用户认证token,从获取用户认证token接口获取 表3 请求Body参数 参数 是否必选 参数类型 描述 alarm_classification 否 String 告警分类: INTELLIGENT(移动智能告警,包括移动侦测和周界告警) TARGET (目标智能告警) TARGET_DET (口罩告警) CROWD(人群态势告警) THIRD_PARTY / THIRDPARTY_INTELLIGENT(第三方智能告警) 该字段已弃用,客户只需要传入正确的alarm_uuids即可 alarm_uuids 是 Array of strings 告警的alarm_uuid数组:alarm_uuid是告警信息的唯一标识,每条告警信息都拥有该属性,包含在消息管理配置的通知URL推送的告警消息体中,从设备智能告警消息中查阅,数组长度[1,100] 由产生该条告警的设备ID,通道ID,告警的消息类型和时间等信息组成。例如:2000000000WLL0000001_0_target_alarm_20060102150405_0
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 failed_num Integer 请求失败数:取值范围[0,100] data Array of Data objects 响应信息 表5 Data 参数 参数类型 描述 data_id String 智能数据id urls Array of DownloadInfo objects 图片网络下载路径,该路径有效期为五分钟 result Result object 请求结果 表6 DownloadInfo 参数 参数类型 描述 type String 图片类型 TARGET业务: ALL 全部 BODY 人体图 BACKGROUND 背景图 TARGET 人脸图 VEHICLE业务: ALL:全部 VEHICLE 车辆图 BACKGROUND 背景图 PLATE 车辆图 url String 图片下载url 表7 Result 参数 参数类型 描述 code String 错误码 msg String 错误信息
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Access-Token 是 String 用户认证token,从获取用户认证token接口获取 表3 请求Body参数 参数 是否必选 参数类型 描述 data_classification 是 String 智能类型: 枚举值: TARGET 目标(通过订阅TARGET_DATA类型获取到的TLV数据,使用该参数获取图片URL) VEHICLE 车辆(通过订阅VEHICLE_DATA类型获取到的TLV数据,使用该参数获取图片URL) type 是 String 图片类型枚举值: TARGET业务: ALL 全部 BODY 人体图 BACKGROUND 背景图 TARGET 人脸图 VEHICLE业务: ALL:全部 VEHICLE 车辆图 BODY 人体图 BACKGROUND 背景图 PLATE 车牌图 data_ids 是 Array of strings 数据ID:从设备智能数据(TLV)消息体结构中查阅(仅支持TLV数据),数组长度[1,100]
  • 响应示例 状态码: 200 OK { "failed_num" : "integer", "data" : [ { "data_id" : "string", "urls" : [ { "type" : "string", "url" : "string" } ], "result" : { "code" : "string", "msg" : "string" } } ] }
  • 请求示例 获取图片下载路径请求体 POST /v1/123456789*****/intelligence-data/pictures { "data_classification" : "VEHICLE", "type" : "VEHICLE", "data_ids" : [ "06cac6be36394e2a813088bf0c0cb31c", "32a0223a911b44468c376a61f2c4d8a7" ] }
  • 功能介绍 微卡口业务:在机动车进入智能感知范围时,抓取机动车相关信息进行上报的智能场景。 微卡口业务消息体的message_type值为micro_checkpoint_data。 目前行业视频管理服务会处理以下场景: itgt_type/target_type枚举值: 51 微卡口(摄像机SDC/NVR800开启微卡口/车辆智能下的功能,机动车进去区域且触发违法停车、非机动车占用机动车道、机动车占用非机动车道、逆行/倒车、压线等事件,则会被抓拍且分析出目标行为和特征信息,如:品牌、款式、主/副驾驶的情况,包括有无打电话、有无系安全带、有无遮阳板等) 52 微卡口车流量统计(摄像机SDC/NVR800开启微卡口/车辆智能下的交通流量统计功能,机动车进入区域则会被统计分析,最后得到统计分析结果,如:车辆计数、车辆平均速度、车流密度等) 表1 message_type为micro_checkpoint_data,data结构体如下: 字段名 类型 说明 device_id String 设备ID,正常情况下不为空,必传 channel_id String 通道ID,正常情况下不为空,必传 data_id String 数据ID:正常情况下不为空,必传。可用于查询智能图片数据,参考链接:智能图片下载 report_time String 上报时间:示例:2021-03-15T16:43:00+08:00 data Data object 业务信息 表2 Data 字段名 类型 说明 common Common object 通用数据定义 targets Array of Target object 目标数据定义 表3 Common 字段名 类型 说明 channel_id Int64 通道ID channel_id_ex Int64 相机扩展通道ID pts Int64 时间戳 sdc_device_id String 主从机设备ID sdc_uuid String 摄像机视频源通道号 intelligence_type Int 智能类型 image_height Int 图片高度 image_width Int 图片宽度 meta_type_mask Int 元数据类型掩码 枚举值: 1 框数据 2 图数据 8 保活数据 16 告警数据 intelligent_target_index Int 智能目标/业务类型索引 target_time_domain_info Int 配合索引使用,标识三层数据时域信息 枚举值: 0 实时框数据(检测框,规则框数据,用于复合流请流) 1 目标等其他数据(目标抓拍,定时上报,用于后端储存检索) sys_language_type Int 后台系统语言类型 target_type Int target类型,对应微卡口车流量统计类型 表4 Target 字段名 类型 说明 car_pre_brand String 品牌字符:中文字符,例如大众 car_pre_brand_index Int 品牌字符索引,当检测到机动车属性时传该值,见附录车款类型 car_sub_brand String 子款字符:中文字符,例如明锐 car_sub_brand_index Int 子款字符索引 car_year_brand String 年款字符:例如2011 cur_snap_index Int 当前抓拍序列号 device_id String 设备ID dir_id String 方向编号 data_id String 数据ID:正常情况下不为空,必传。可用于查询智能图片数据,参考链接:智能图片下载 feature_frame_flag Int 当前帧是否为关键帧,抠特征图来源帧 global_object_id Int64 智能目标全局ID ir_info String 方向信息 lane_id Int 车道号 mfr_car_pendant Int 挂件 枚举值: -1 未知 0 无 1 有 mfr_main_belt Int 主驾驶安全带 枚举值: -1 未知 0 无 1 有 mfr_main_call Int 主驾驶打电话 枚举值: -1 未知 0 无 1 有 mfr_main_sun_visor Int 主驾驶遮阳板 枚举值: -1 未知 0 无 1 有 mfr_nap_kin_box Int 纸巾盒 枚举值: -1 未知 0 无 1 有 mfr_vice_belt Int 副驾驶安全带 枚举值: -1 未知 0 无 1 有 mfr_vice_exist Int 是否有副驾驶 枚举值: -1 未知 0 无 1 有 mfr_vice_sun_visor Int 副驾驶遮阳板 枚举值: -1 未知 0 无 1 有 mfr_year_log Int 年检标 枚举值: -1 未知 0 无 1 有 panorama_pic String 全景图,已转化为url panorama_pic_size Int 全景图大小 pic_snapshot_dst_offset Int64 夏令时偏移时间:单位秒/s pic_snapshot_time Int 抓拍时间:单位秒/s pic_snapshot_timems Int64 抓拍时间:单位毫秒/ms pic_snapshot_tzone Int64 抓拍时区:单位毫秒/ms 东区为+ 西区为-,支持夏令时 plate_char String 车牌字符 plate_color Int 车牌颜色,当检测到机动车属性时传该值,见附录车牌颜色 plate_confidence Int 车牌置信度 plate_pic String 车牌抠图:已转化为图片url plate_pos Rect object 车牌位置万分比 plate_pos_abs Rect object 车牌位置绝对坐标 plate_pos_com Rect object 车牌位置万分比 plate_snapshot_type Int 车牌抓拍触发类型 枚举值: 0 手动触发 1 自动触发 plate_type Int 车牌类型,参考附录车牌类型 producer_name String 数据生成者名字 roid_id String 道路编号 target_type Int 智能业务类型 枚举值: 51 微卡口 52 微卡口车流量统计 trecord_type Int 告警类型,见附录告警类型 vehicle_color Int 车辆颜色,当检测到机动车属性时传该值,见附录车辆颜色 vehicle_direction Int 车辆运动方向 枚举值: 0 未知 1 向左 2 向右 3 向上 4 向下 vehicle_pic String 车辆特写图,已转化为url vehicle_pos Rect object 车辆位置 vehicle_pos_abs Rect object 车辆位置绝对坐标 vehicle_pos_com Rect object 车辆位置相对坐标万分比 vehicle_type Int 机非人类型,当检测到机非人属性时传该值,见附录机非人类型 vehicle_type_ext Int 机非人扩展类型,当检测到机非人属性时传该值,见附录机非人类型,例如机非人类型为轿车,扩展类型为两厢轿车 vlpr_alg_type Int 车牌算法类型 microport_traffic_statistics Int 微卡口车流量统计,历史版本遗留字段,为1代表该包为微卡口车流量统计 statistics_average_speed Int 平均速度 statistics_congestion_degree Int 交通状态 statistics_lane_count Int 微卡口车流量统计车道数量 statistics_lane_index Int 微卡口车流量统计当前车道 statistics_lane_space_used_ratio Int 车道空间占有率 statistics_lane_time_used_ratio Int 车道时间占有率 statistics_queue_length Int 排队长度 statistics_vehicle_car_large_count Int 大型车数量 statistics_vehicle_car_med_count Int 中型车数量 statistics_vehicle_car_small_count Int 小型车数量 statistics_vehicle_count Int 车辆计数 statistics_vehicle_density Int 车流密度 statistics_vehicle_head_interval Int 车头时间间隔 statistics_vehicle_head_space_interval Int 车头空间间隔 traffic_statistics_cycle Int 车流量统计周期 表5 Rect 字段名 类型 说明 x Int 检测框左上角坐标点x 计算方式,x1 = x *全景图像素宽度/ 10000 y Int 检测框左上角坐标点y 计算方式,y1 = y *全景图像素高度/ 10000 width Int 检测框宽度 计算方式 widht1 = widht *全景图像素宽度/ 10000 height Int 检测框长度 计算方式 height1 = height *全景图像素高度/ 10000 示例一、微卡口 { "message_id": 1676872319771064837, "message_type": "micro_checkpoint_data", "data": { "device_id": "219123456CYP***", "channel_id": "0", "data_id": "167687231972200300350000kcxdq130", "report_time": "2023-02-20T13:51:57+08:00", "data": { "common": { "channel_id": 101, "channel_id_ex": 101, "image_height": 720, "image_width": 1280, "meta_type_mask": 2, "pts": 786519119707, "sdc_uuid": "224440c1-966e-57eb-fd7b-8ca03739be7e", "sys_language_type": 0 }, "targets": [ { "car_pre_brand": "日产", "car_pre_brand_index": 75, "car_sub_brand": "轩逸", "car_sub_brand_index": 574, "car_year_brand": "2009_2012_2016_2018", "cur_snap_index": 0, "data_id": "167687231972200300350000kcxdq130", "device_id": "", "dir_id": "", "feature_frame_flag": 1, "global_object_id": 7200441985172434795, "ir_info": "", "lane_id": 3, "mfr_car_pendant": 0, "mfr_main_belt": 1, "mfr_main_call": 0, "mfr_main_sun_visor": 0, "mfr_nap_kin_box": 0, "mfr_vice_belt": 0, "mfr_vice_exist": 0, "mfr_vice_sun_visor": 0, "mfr_year_log": 0, "panorama_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230220_tlv_167687231972200300020000kcxdq130.jpg/static", "panorama_pic_size": 103310, "pic_snapshot_dst_offset": 0, "pic_snapshot_time": 1676872317, "pic_snapshot_timems": 1676872317957, "pic_snapshot_tzone": 28800000, "plate_char": "浙A306B1", "plate_color": 1, "plate_confidence": 97, "plate_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230220_tlv_167687231972200300320000kcxdq130.jpg/static", "plate_pos": { "x": 7726, "y": 5027, "width": 726, "height": 694 }, "plate_pos_abs": { "x": 989, "y": 362, "width": 93, "height": 50 }, "plate_pos_com": { "x": 7726, "y": 5027, "width": 726, "height": 694 }, "plate_snapshot_type": 1, "plate_type": 1, "producer_name": "ITGT", "roid_id": "", "target_type": 51, "trecord_type": 36, "vehicle_color": 2, "vehicle_direction": 4, "vehicle_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230220_tlv_167687231972200300010000kcxdq130.jpg/static", "vehicle_pos": { "x": 4429, "y": 1361, "width": 4000, "height": 4750 }, "vehicle_pos_abs": { "x": 567, "y": 98, "width": 512, "height": 342 }, "vehicle_pos_com": { "x": 4429, "y": 1361, "width": 4000, "height": 4750 }, "vehicle_type": 1, "vehicle_type_ext": 18, "vlpr_alg_type": 0 } ] } }, "test": false } 示例二、微卡口车流量统计 { "message_id": 1676874462279656679, "message_type": "micro_checkpoint_data", "data": { "device_id": "219123456CYP***", "channel_id": "0", "data_id": "167687446220900300350000kcxdq130", "report_time": "2023-02-20T14:27:40+08:00", "data": { "common": { "channel_id": 101, "channel_id_ex": 101, "image_height": 720, "image_width": 1280, "meta_type_mask": 2, "pts": 146494760, "sdc_uuid": "224440c1-966e-57eb-fd7b-8ca03739be7e", "sys_language_type": 0, "target_type": 52 }, "targets": [ { "car_pre_brand": "斯柯达", "car_pre_brand_index": 74, "car_sub_brand": "明锐", "car_sub_brand_index": 554, "car_year_brand": "2010", "cur_snap_index": 0, "data_id": "167687446220900300350000kcxdq130", "microport_traffic_statistics": 1, "device_id": "", "dir_id": "", "feature_frame_flag": 1, "global_object_id": 7202244372492976151, "ir_info": "", "lane_id": 3, "mfr_car_pendant": 0, "mfr_main_belt": 1, "mfr_main_call": 0, "mfr_main_sun_visor": 0, "mfr_nap_kin_box": 0, "mfr_vice_belt": 0, "mfr_vice_exist": 0, "mfr_vice_sun_visor": 0, "mfr_year_log": 0, "panorama_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230220_tlv_167687446220900300020000kcxdq130.jpg/static", "panorama_pic_size": 98965, "pic_snapshot_dst_offset": 0, "pic_snapshot_time": 1676874459, "pic_snapshot_timems": 1676874459506, "pic_snapshot_tzone": 28800000, "plate_char": "浙A068PN", "plate_color": 1, "plate_confidence": 97, "plate_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230220_tlv_167687446220900300320000kcxdq130.jpg/static", "plate_pos": { "x": 5953, "y": 3222, "width": 765, "height": 472 }, "plate_pos_abs": { "x": 762, "y": 232, "width": 98, "height": 34 }, "plate_pos_com": { "x": 5953, "y": 3222, "width": 765, "height": 472 }, "plate_snapshot_type": 1, "plate_type": 1, "producer_name": "ITGT", "statistics_average_speed": 0, "statistics_congestion_degree": 1, "statistics_lane_count": 3, "statistics_lane_index": 1, "statistics_lane_space_used_ratio": 0, "statistics_lane_time_used_ratio": 0, "statistics_queue_length": 0, "statistics_vehicle_car_large_count": 0, "statistics_vehicle_car_med_count": 0, "statistics_vehicle_car_small_count": 0, "statistics_vehicle_count": 0, "statistics_vehicle_density": 0, "statistics_vehicle_head_interval": 0, "statistics_vehicle_head_space_interval": 0, "roid_id": "", "target_type": 52, "traffic_statistics_cycle": 5, "trecord_type": 36, "vehicle_color": 2, "vehicle_direction": 4, "vehicle_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230220_tlv_167687446220900300010000kcxdq130.jpg/static", "vehicle_pos": { "x": 3648, "y": 569, "width": 3281, "height": 3625 }, "vehicle_pos_abs": { "x": 467, "y": 41, "width": 420, "height": 261 }, "vehicle_pos_com": { "x": 3648, "y": 569, "width": 3281, "height": 3625 }, "vehicle_type": 1, "vehicle_type_ext": 17, "vlpr_alg_type": 0 } ] } }, "test": false }
  • 功能介绍 行为分析与人车物分离业务:对人车物行为进行分析生成相应数据的智能场景。 行为分析与人车物分离业务消息体的message_type值为behavior_analysis_data 。 目前行业视频管理服务会处理以下场景: itgt_type/target_type枚举值: 21 行为分析抓图(摄像机SDC/NVR800开启行为分析功能,目标进入区域且触发入侵、越线、徘徊、遗留、移走、区域进入、区域离开、快速移动等告警,则进行抓拍并分析目标信息,如:目标类型、目标状态、目标速度等) 表1 message_type为behavior_analysis_data时,data结构体如下: 字段名 类型 说明 device_id String 设备ID,正常情况下不为空,必传 channel_id String 通道ID,正常情况下不为空,必传 data_id String 数据ID:正常情况下不为空,必传。可用于查询智能图片数据,参考链接:智能图片下载 report_time String 上报时间:示例:2021-03-15T16:43:00+08:00 data Data object 业务信息 表2 Data 字段名 类型 说明 common Common object 通用数据定义 rule Rule object 规则数据定义 targets Array of Target Object 目标数据定义 Common对象: 表3 Common 字段名 类型 说明 channel_id Int64 通道ID channel_id_ex Int64 相机扩展通道ID pts Int64 时间戳 sdc_device_id String 主从机设备ID sdc_uuid String 摄像机视频源通道号 intelligence_type Int 智能类型 image_height Int 图片高度 image_width Int 图片宽度 meta_type_mask Int 元数据类型掩码 枚举值: 1 框数据 2 图数据 8 保活数据 16 告警数据 intelligent_target_index Int 智能目标/业务类型索引 target_time_domain_info Int 配合索引使用,标识三层数据时域信息 枚举值: 0 实时框数据(检测框,规则框数据,用于复合流请流) 1 目标等其他数据(目标抓拍,定时上报,用于后端储存检索) Rule 对象: 表4 Rule 字段名 类型 说明 rule_area_pos MetaArea Object 规则框位置 rule_area_pos_relative MetaArea Object 规则框位置(相对位置) rule_type Int 规则类型 表5 MetaArea 字段名 类型 说明 num Int 框线坐标点数量:框线为多边形,这里表示顶点的个数 points Array of Point object 坐标 表6 Point 字段名 类型 说明 x Int 横坐标 y Int 纵坐标 表7 Target 字段名 类型 说明 data_id Int 数据ID,正常情况下不为空,必传 panorama_pic String 全景图,已经转化为url panorama_pic_size Int 全景图大小 pic_snapshot_dst_offset Int64 夏令时偏移时间:单位秒/s pic_snapshot_time Int 抓拍时间:单位秒/s pic_snapshot_timems Int64 抓拍时间:单位毫秒/ms pic_snapshot_tzone Int64 抓拍时区:单位毫秒/ms 东区为+ 西区为- color Color object 颜色 global_object_id Int64 智能目标全局ID obj_id Int 目标ID obj_pos Rect object 目标位置 obj_pos_r Rect object 目标位置(相对位置) obj_speed Point object 目标速度 obj_status Int 目标状态 枚举值: 0 无状态 1 徘徊状态 2 绊线状态 4 遗留状态 8 移走状态 16 入侵状态 32 区域进入状态 64 区域离开状态 128 球机转动,雷球联动 256 电梯内电瓶车检测 obj_type Int 目标类型 枚举值: 0 未分类 1 车 2 人 96 机非人的机动车 97 机非人的非机动车 98 机非人的行人 128 区域显示框类型0:目标框 129 区域显示框类型1:人框 130 区域显示框类型2:非机动车框 131 区域显示框类型3:机动车框 132 区域显示框类型4:在目标业务中是人身框、在交通业务中是车牌框 133 区域显示框类型5:停车侦测使用框 134 区域显示框类型6:人群密度使用框 135 区域显示框类型7:排队长度使用框 136 区域显示框类型8:违停球使用框 137 区域显示框类型9:自动跟踪使用框 138 区域显示框类型10:复杂行为分析使用框 139 区域显示框类型11:火点检测使用框 255 其他 target_type Int 智能业务场景 枚举值: 21 行为分析抓图 表8 Rect 字段名 类型 说明 x Int 上层业务检测框左上角坐标点计算方式,x1 = x *全景图像素宽度/ 10000 y Int 上层业务检测框左上角坐标点计算方式,y1 = y *全景图像素高度/ 10000 width Int 上层业务检测框宽度计算方式 widht1 = widht *全景图像素宽度/ 10000 height Int 上层业务检测框长度计算方式 height1 = height *全景图像素高度/ 10000 表9 Color 字段名 类型 说明 red Int 红色像素 green Int 绿色像素 blue Int 蓝色像素 conf_lev Int 置信度 color_id Int 颜色id 示例一、行为分析抓图 { "message_id": 1676822987447548758, "message_type": "behavior_analysis_data", "data": { "device_id": "HOLO123***", "channel_id": "0", "data_id": "167682298743800500010002rwnwv040", "report_time": "2023-02-20T00:09:47+08:00", "data": { "common": { "channel_id": 101, "channel_id_ex": 101, "image_height": 1440, "image_width": 2560, "intelligent_target_index": 281474976710656, "meta_type_mask": 2, "pts": 517577328, "sdc_uuid": "e15ee2b3-83c2-073a-28e1-378e9612aa71", "target_time_domain_info": 1, "target_type": 21 }, "rule": { "rule_area_pos": { "num": 4, "points": [ { "x": 1, "y": 1 }, { "x": 351, "y": 1 }, { "x": 351, "y": 287 }, { "x": 1, "y": 287 } ] }, "rule_area_pos_relative": { "num": 4, "points": [ { "x": 28, "y": 34 }, { "x": 9971, "y": 34 }, { "x": 9971, "y": 9965 }, { "x": 28, "y": 9965 } ] }, "rule_type": 4 }, "targets": [ { "data_id": "167682298742100500010001rwnwv040", "panorama_pic": "https://www.example.com/v1/holo/tlv_HOLO123***_0_20230220_tlv_167682298742100500010001rwnwv040.jpg/static", "panorama_pic_size": 199629, "pic_snapshot_dst_offset": 0, "pic_snapshot_time": 1631497728, "pic_snapshot_timems": 1631497728392, "pic_snapshot_tzone": 28800000, "target_type": 21 }, { "color": { "red": 0, "green": 0, "blue": 0, "conf_lev": 0, "color_id": 0 }, "data_id": "167682298743800500010000rwnwv040", "global_object_id": 7007351688747024516, "meta_type_mask": 2, "obj_id": 132, "obj_pos": { "x": 169, "y": 110, "width": 74, "height": 177 }, "obj_pos_r": { "x": 4804, "y": 3819, "width": 2128, "height": 6173 }, "obj_speed": { "x": 0, "y": 0 }, "obj_status": 16, "obj_type": 98, "target_type": 21 }, { "color": { "red": 0, "green": 0, "blue": 0, "conf_lev": 0, "color_id": 0 }, "data_id": "167682298743800500010001rwnwv040", "global_object_id": 7007351688747024510, "meta_type_mask": 2, "obj_id": 126, "obj_pos": { "x": 217, "y": 155, "width": 80, "height": 126 }, "obj_pos_r": { "x": 6191, "y": 5395, "width": 2285, "height": 4388 }, "obj_speed": { "x": 8, "y": 14 }, "obj_status": 16, "obj_type": 98, "target_type": 21 }, { "color": { "red": 0, "green": 0, "blue": 0, "conf_lev": 0, "color_id": 0 }, "data_id": "167682298743800500010002rwnwv040", "global_object_id": 7007351688747024493, "meta_type_mask": 2, "obj_id": 109, "obj_pos": { "x": 85, "y": 137, "width": 74, "height": 148 }, "obj_pos_r": { "x": 2421, "y": 4756, "width": 2128, "height": 5152 }, "obj_speed": { "x": 3, "y": 6 }, "obj_status": 16, "obj_type": 98, "target_type": 21 } ] } }, "test": false }
  • 功能介绍 头肩业务:人群密度,排队长度,过线计数与人数统计相关的场景的智能业务。 头肩业务消息体的message_type值为head_shoulder_data。 目前行业视频管理服务会处理以下场景: itgt_type/target_type枚举值: 12 人群密度(摄像机SDC/NVR800开启人群密度功能,会自动抓拍区域内人群,提取人群信息,如人群密度、人数等) 13 排队长度(摄像机SDC/NVR800开启排队长度功能,会自动抓拍区域内的排队队列,提取排队信息,如排队人数、排队时长等) 15 过线计数(摄像机SDC/NVR800开启过线计数功能,绘制一条线,指定进入和离开方向,有人通过线,则会记录过线信息,如进入总人数、离开总人数等)
  • 消息结构体介绍 表1 message_type为vehicle_data时,data结构体如下: 字段名 类型 说明 device_id String 设备ID,正常情况下不为空,必传 channel_id String 通道ID,正常情况下不为空,必传 data_id String 数据ID:正常情况下不为空,必传。可用于查询智能图片数据,参考链接:智能图片下载 itgt_type Int 智能业务场景 枚举值: 6 机非人业务目标整体信息 7 机非人业务机动车信息 8 机非人业务非机动车信息 53 非机动车上目标检测 report_time String 上报时间,示例:2021-03-15T16:43:00+08:00 global_obj_id Int64 全局ID,设备传入的唯一标识 lane_id Int64 车道号 vehicle_direction Int 车辆运动方向 枚举值: 0 未知 1 向左 2 向右 3 向上 4 向下 plate_char String 车牌字符,当检测到机动车属性时传该值 plate_color Int 车牌颜色,当检测到机动车属性时传该值,见附录车牌颜色 vehicle_type Int 机非人类型,当检测到机非人属性时传该值,见附录机非人类型 vehicle_color Int 车辆颜色,当检测到机动车属性时传该值,见附录车辆颜色 car_pre_brand Int 品牌字符索引,当检测到机动车属性时传该值,见附录车款类型 car_sub_brand Int 子款符号索引,当检测到机动车属性时传该值 car_year_brand String 年款符号,当检测到机动车属性时传该值 rider_age_range Int 骑行人年龄范围 枚举值: 0 未知 1 少年 2 青年 3 老年 rider_gender Int 骑行人性别 枚举值: 0 未知 1 男性 2 女性 has_helmet Boolen 是否戴头盔 helmet_color Int 头盔颜色 motor_color Int 非机动车颜色 has_motor_sunshade Boolen 是否有遮阳伞 has_motor_carry Boolen 是否有携带物 has_license_plate Boolen 是否有车牌 rider_num Int 骑行人数 motor_type Int 非机动车类型 vehicle_url String 车辆特写图url target_all_pic_url String 目标整体抠图url panorama_url String 全景图片url vehicle_pos RectCor object 车辆检测框位置万分比 human_pos RectCor object 目标整体位置万分比 human_age Int 行人年龄 枚举值: 0 未知 1 少年 2 青年 3 老年 human_gender Int 行人性别 枚举值: 0 未知 1 男性 2 女性 human_upperstyle Int 上衣款式 0 未知 1 长袖 2 短袖 human_uppercolor Int 上衣颜色 human_lowstyle Int 下衣款式 human_lowercolor Int 下衣颜色 human_shape Int 体型 human_mouthmask Int 行人口罩 human_hair Int 行人头发 common Common object 通用数据定义 target Target object 目标:设备上传TLV时的设备的原始数据,该字段是设备上传的原始数据的解析,不同的业务场景传入的字段会不相同。 moto_type Int 非机动车类型 表2 RectCor 字段名 类型 说明 x_cor Int 上层业务检测框左上角坐标点x计算方式,x1 = x_cor *全景图像素宽度/ 10000 y_cor Int 上层业务检测框左上角坐标点y计算方式,y1 = y_cor *全景图像素高度/ 10000 width Int 上层业务检测框宽度 计算方式 widht1 = widht *全景图像素宽度/ 10000 height Int 上层业务检测框长度 计算方式 height1 = height *全景图像素高度/ 10000 表3 Common 字段名 类型 说明 channel_id Int64 通道ID channel_id_ex Int64 相机扩展通道ID pts Int64 时间戳 sdc_device_id String 主从机设备ID sdc_uuid String 摄像机视频源通道号 intelligence_type Int 智能类型 image_height Int 图片高度 image_width Int 图片宽度 meta_type_mask Int 元数据类型掩码 枚举值: 1 框数据 2 图数据 8 保活数据 16 告警数据 表4 Target 字段名 类型 说明 car_pre_brand String 品牌字符:中文字符,例如大众 car_pre_brand_index Int 品牌字符索引,当检测到机动车属性时传该值,见附录车款类型 car_sub_brand String 子款字符:中文字符,例如明锐 car_sub_brand_index Int 子款字符索引 car_year_brand String 年款字符:例如2011 cur_snap_index Int 当前抓拍序列号 global_object_id Int64 智能目标全局ID human_pic String 目标整体抠图:已转化为图片url human_pic_kps Int 目标整体抠图kps质量过滤标志位 human_pic_roi Rect object 目标整体抠图中的目标整体目标框:目标整体抠图中可能存在其它干扰,此坐标用于精确圈定目标整体范围 human_rect_position Rect object 目标整体位置 lane_id Int 车道号 panorama_pic String 全景图:已转化为图片url pic_snapshot_dst_offset Int64 夏令时偏移时间:单位秒/s pic_snapshot_time Int 抓拍时间 pic_snapshot_timems Int64 抓拍时间:单位毫秒/ms pic_snapshot_tzone Int64 抓拍时区:单位毫秒/ms 东区为+ 西区为-,支持夏令时 plate_char String 车牌字符,当检测到机动车属性时传该值 plate_color Int 车牌颜色,当检测到机动车属性时传该值,见附录车牌颜色 plate_pic String 车牌抠图:已转化为图片url plate_pos Rect object 车牌位置万分比 plate_pos_abs Rect object 车牌位置绝对坐标 plate_pos_com Rect object 车牌位置万分比 plate_type Int 车牌类型,参考附录车牌类型 target_type Int 智能业务场景 枚举值: 6 机非人业务目标整体信息 7 机非人业务机动车信息 8 机非人业务非机动车信息 53 非机动车上目标检测 trecord_type Int 告警类型,见附录告警类型 vehicle_color Int 车辆颜色,当检测到机动车属性时传该值,见附录车辆颜色 vehicle_direction Int 车辆运动方向 枚举值: 0 未知 1 向左 2 向右 3 向上 4 向下 vehicle_pic String 车辆图,已转化为图片url vehicle_pos Rect object 车身位置万分比 vehicle_pos_abs Rect object 车辆位置绝对坐标 vehicle_pos_com Rect object 车辆位置相对坐标万分比 vehicle_type Int 机非人类型,当检测到机非人属性时传该值,见附录机非人类型 vehicle_type_ext Int 机非人扩展类型,当检测到机非人属性时传该值,见附录机非人类型 ,例如机非人类型为轿车,扩展类型为两厢轿车 vhd_object_id Int64 机非人ID human_gender Int 行人性别 枚举值: 0 未知 1 男性 2 女性 human_umbrella Int 是否撑伞 枚举值: 0 未知 1 否 2 是 human_lower_color Int 下衣颜色 枚举值: 0 未知 1 黑 2 蓝 3 绿 4 白/灰 5 黄/橙/棕 6 红/粉/紫 human_direct Int 行进方向 human_carry Int 是否拎东西 枚举值: 0 未知 1 否 2 是 human_mouth_mask Int 是否戴口罩 枚举值: 0 未知 1 否 2 是 human_age Int 年龄人群 枚举值: 0 未知 1 少年 2 青年 3 老年 human_upper_texture Int 上衣纹理 枚举值: 0 未知 1 纯色 2 条纹 3 格子 human_view Int 朝向 枚举值: 0 未知 1 正面 2 背面 3 左倾 4 右倾 human_feature Feature Object 目标整体属性 human_luggage Int 是否有行李箱 human_backpack Int 是否有背包 human_lower_style Int 下衣款式 枚举值: 0 未知 1 长裤 2 短裤 3 裙子 human_upper_color Int 上衣颜色 human_hair Int 发型 枚举值: 0 未知 1 长 2 短 3 秃头 human_shape Int 体型 枚举值: 0 未知 1 标准 2 肥 3 瘦 human_speed Int 行进速度 human_upper_style Int 上衣款式 枚举值: 0 未知 1 长袖 2 短袖 human_hat Int 是否戴帽子 human_frontpack Int 是否有前面背包 human_satchel Int 是否有斜挎包 human_glass Int 是否戴眼镜 motor_color Int 非机动车颜色 motor_license_plate Int 是否有车牌 motor_motor_carry Int 是否有携带物品 motor_sunshade Int 是否有遮阳伞 motor_sunshade_color Int 遮阳伞颜色 motor_type Int 非机动车类型 riderman_age Int 骑行人年龄人群 riderman_feature RidermanFeature Object 骑行人属性 riderman_gender Int 骑行人性别 riderman_helmet Int 骑行人是否戴头盔 riderman_helmetcolor Int 骑行人头盔颜色 riderman_num Int 骑行人数量,具体人数 riderman_uppercolor Int 骑行人上衣颜色 riderman_upperstyle Int 骑行人上衣款式 vehicle_pos_abs Rect Object 车辆位置绝对坐标 face_id Int64 人脸号 face_pic_time Int 人脸抓拍时间 face_pic_tzone Int64 人脸抓拍时区:单位毫秒/ms 东区为+ 西区为-,支持夏令时 表5 Rect 字段名 类型 说明 x Int 上层业务检测框左上角坐标点x计算方式,x1 = x *全景图像素宽度/ 10000 y Int 上层业务检测框左上角坐标点y计算方式,y1 = y *全景图像素高度/ 10000 width Int 上层业务检测框宽度 计算方式 widht1 = widht *全景图像素宽度/ 10000 height Int 上层业务检测框长度 计算方式 height1 = height *全景图像素高度/ 10000 表6 Feature 字段名 类型 说明 age Int 年龄人群 backpack Int 是否有背包 carry Int 是否拎东西 front_pack Int 是否有前面背包 gender Int 行人性别 枚举值: 0 未知 1 男性 2 女性 glass Int 是否戴眼睛 hair Int 发型 hat Int 是否戴麦子 lower_color Int 上衣颜色 lower_style Int 上衣款式 luggage Int 是否有行李箱 mouth_mask Int 是否戴口罩 move_direct Int 行进方向 move_speed Int 行进速度 satchel Int 是否有斜挎包 shape Int 体型 umbrella Int 是否有雨伞 upper_color Int 下衣颜色 upper_style Int 下衣款式 upper_texture Int 上衣纹理 view Int 朝向 表7 RidermanFeature 字段名 类型 说明 age Int 年龄人群 gender Int 行人性别 枚举值: 0 未知 1 男性 2 女性 helmet Int 是否戴头盔 helmet_color Int 头盔颜色 upper_color Int 下衣颜色 upper_style Int 下衣款式 示例一、机非人业务目标整体信息 { "message_id": 1676253459558286045, "message_type": "vehicle_data", "data": { "device_id": "219123456CYP***", "channel_id": "0", "data_id": "167625345941400200060000rwnwv130", "report_time": "2023-02-13T09:57:37+08:00", "itgt_type": 6, "global_obj_id": 7198857782190185688, "lane_id": 1, "vehicle_type": 9, "target_all_pic_url": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230213_tlv_167625345941400200040000rwnwv130.jpg/static", "panorama_url": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230213_tlv_167625345941400200020000rwnwv130.jpg/static", "human_lowstyle": 1, "human_gender": 1, "human_uppercolor": 2, "human_hair": 2, "human_shape": 1, "human_age": 2, "human_mouthmask": 1, "human_lowercolor": 2, "human_upperstyle": 2, "human_pos": { "x_cor": 3218, "y_cor": 1601, "width": 1057, "height": 6046 }, "common": { "channel_id": 101, "channel_id_ex": 101, "meta_type_mask": 2, "pts": 167668079703, "sdc_device_id": "40619954-b309-46b1-7d1a-a3f443a58c87", "sdc_uuid": "224440c1-966e-57eb-fd7b-8ca03739be7e" }, "target": { "global_object_id": 7198857782190185688, "human_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230213_tlv_167625345941400200040000rwnwv130.jpg/static", "human_pic_roi": { "x": 2916, "y": 0, "width": 4229, "height": 10000 }, "human_gender": 1, "human_umbrella": 1, "human_lower_color": 2, "human_direct": 2, "human_carry": 1, "human_mouth_mask": 1, "human_age": 2, "human_upper_texture": 1, "human_view": 1, "human_feature": { "age": 2, "backpack": 1, "carry": 1, "front_pack": 1, "gender": 1, "glass": 65536, "hair": 2, "hat": 65536, "lower_color": 2, "lower_style": 1, "luggage": 1, "mouth_mask": 1, "move_direct": 2, "move_speed": 0, "satchel": 1, "shape": 1, "umbrella": 1, "upper_color": 2, "upper_style": 2, "upper_texture": 1, "view": 131072 }, "human_luggage": 1, "human_backpack": 1, "human_lower_style": 1, "human_upper_color": 2, "human_hair": 2, "human_shape": 1, "human_speed": 2, "human_upper_style": 2, "human_hat": 1, "human_frontpack": 1, "human_satchel": 1, "human_glass": 1, "human_rect_position": { "x": 3218, "y": 1601, "width": 1057, "height": 6046 }, "lane_id": 1, "panorama_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230213_tlv_167625345941400200020000rwnwv130.jpg/static", "pic_snapshot_dst_offset": 0, "pic_snapshot_time": 1676253453, "pic_snapshot_timems": 1676253453434, "pic_snapshot_tzone": 28800000, "target_type": 6, "trecord_type": 34, "vehicle_type": 9, "vehicle_type_ext": 9, "vhd_object_id": 40152 } }, "test": false } 示例二、机非人业务机动车信息 { "message_id": 1676252528838941764, "message_type": "vehicle_data", "data": { "device_id": "219123456CYP***", "channel_id": "0", "data_id": "167625252854900210110000rwnwv130", "report_time": "2023-02-13T09:42:06+08:00", "itgt_type": 7, "global_obj_id": 7198857782190185052, "lane_id": 2, "vehicle_direction": 4, "plate_char": "浙XXXXXX", "plate_color": 1, "vehicle_type": 1, "vehicle_color": 2, "car_pre_brand": 74, "car_sub_brand": 554, "car_year_brand": "2010", "vehicle_url": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230213_tlv_167625252854900210010000rwnwv130.jpg/static", "panorama_url": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230213_tlv_167625252854900210020000rwnwv130.jpg/static", "vehicle_pos": { "x_cor": 3218, "y_cor": 111, "width": 3085, "height": 3402 }, "common": { "channel_id": 101, "channel_id_ex": 101, "meta_type_mask": 2, "pts": 166735159705, "sdc_uuid": "224440c1-966e-57eb-fd7b-8ca03739be7e", "sdc_device_id": "40619954-b309-46b1-7d1a-a3f443a58c87" }, "target": { "car_pre_brand": "斯柯达", "car_pre_brand_index": 74, "car_sub_brand": "明锐", "car_sub_brand_index": 554, "car_year_brand": "2010", "cur_snap_index": 0, "global_object_id": 7198857782190185052, "lane_id": 2, "panorama_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230213_tlv_167625252854900210020000rwnwv130.jpg/static", "pic_snapshot_dst_offset": 0, "pic_snapshot_time": 1676252525, "pic_snapshot_timems": 1676252525274, "pic_snapshot_tzone": 28800000, "plate_char": "浙XXXXXX", "plate_color": 1, "plate_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230213_tlv_167625252854900210080000rwnwv130.jpg/static", "plate_pos": { "x": 5437, "y": 1958, "width": 601, "height": 666 }, "plate_pos_abs": { "x": 696, "y": 141, "width": 77, "height": 48 }, "plate_pos_com": { "x": 5437, "y": 1958, "width": 601, "height": 666 }, "plate_type": 1, "target_type": 7, "trecord_type": 34, "vehicle_color": 2, "vehicle_direction": 4, "vehicle_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230213_tlv_167625252854900210010000rwnwv130.jpg/static", "vehicle_pos": { "x": 3218, "y": 111, "width": 3085, "height": 3402 }, "vehicle_pos_abs": { "x": 412, "y": 8, "width": 395, "height": 245 }, "vehicle_pos_com": { "x": 3218, "y": 111, "width": 3085, "height": 3402 }, "vehicle_type": 1, "vehicle_type_ext": 17, "vhd_object_id": 39516 } }, "test": false } 示例三、机非人业务非机动车信息 { "message_id": 1676253298093565055, "message_type": "vehicle_data", "data": { "device_id": "219123456CYP***", "channel_id": "0", "data_id": "167625329805000220030000rwnwv130", "report_time": "2023-02-13T09:54:56+08:00", "itgt_type": 8, "moto_type": 1, "motor_color": 1, "rider_num": 1, "global_obj_id": 7198857782190185592, "lane_id": 2, "vehicle_type": 8, "vehicle_url": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230213_tlv_167625329805000220010000rwnwv130.jpg/static", "panorama_url": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230213_tlv_167625329805000220020000rwnwv130.jpg/static", "vehicle_pos": { "x_cor": 3484, "y_cor": 3805, "width": 1953, "height": 6180 }, "common": { "channel_id": 101, "channel_id_ex": 101, "image_height": 720, "image_width": 1280, "meta_type_mask": 2, "pts": 167506599705, "sdc_uuid": "224440c1-966e-57eb-fd7b-8ca03739be7e" }, "target": { "motor_color": 1, "motor_license_plate": 1, "motor_motor_carry": 1, "motor_sunshade": 1, "motor_sunshade_color": 0, "motor_type": 1, "riderman_age": 0, "riderman_feature": { "age": 0, "gender": 0, "helmet": 0, "helmet_color": 0, "upper_color": 0, "upper_style": 0 }, "riderman_gender": 0, "riderman_helmet": 0, "riderman_helmetcolor": 0, "riderman_num": 1, "riderman_uppercolor": 0, "riderman_upperstyle": 0, "global_object_id": 7198857782190185592, "lane_id": 2, "panorama_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230213_tlv_167625329805000220020000rwnwv130.jpg/static", "pic_snapshot_dst_offset": 0, "pic_snapshot_time": 1676253294, "pic_snapshot_timems": 1676253294194, "pic_snapshot_tzone": 28800000, "target_type": 8, "trecord_type": 34, "vehicle_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230213_tlv_167625329805000220010000rwnwv130.jpg/static", "vehicle_pos_abs": { "height": 345, "width": 140, "x": 146, "y": 192 }, "vehicle_pos": { "x": 3484, "y": 3805, "width": 1953, "height": 6180 }, "vehicle_type": 8, "vehicle_type_ext": 8, "vhd_object_id": 40056 } }, "test": false } 示例四、非机动车上目标检测 { "message_id": 1676253298093565055, "message_type": "vehicle_data", "data": { "device_id": "219123456CYP***", "channel_id": "0", "data_id": "167625329805000220030000rwnwv130", "report_time": "2023-02-13T09:54:56+08:00", "itgt_type": 8, "global_obj_id": 7198857782190185592, "human_lowercolor": 1, "human_lowstyle": 1, "human_mouthmask": 1, "human_pos": { "height": 2513, "width": 515, "x_cor": 6265, "y_cor": 1027 }, "human_shape": 1, "human_uppercolor": 4, "moto_type": 1, "motor_color": 1, "rider_num": 2, "lane_id": 2, "vehicle_type": 8, "vehicle_url": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230213_tlv_167625329805000220010000rwnwv130.jpg/static", "panorama_url": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230213_tlv_167625329805000220020000rwnwv130.jpg/static", "vehicle_pos": { "x_cor": 3484, "y_cor": 3805, "width": 1953, "height": 6180 }, "common": { "channel_id": 101, "channel_id_ex": 101, "image_height": 720, "image_width": 1280, "meta_type_mask": 2, "pts": 167506599705, "sdc_uuid": "224440c1-966e-57eb-fd7b-8ca03739be7e" }, "target": { "face_id": 349, "face_pic_time": 1681289694842, "face_pic_tzone": 28800000, "global_object_id": 7198857782190185592, "human_age": 0, "human_backpack": 1, "human_carry": 1, "human_direct": 2, "human_frontpack": 1, "human_gender": 0, "human_glass": 1, "human_hair": 0, "human_hat": 0, "human_lower_color": 1, "human_lower_style": 1, "human_luggage": 1, "human_mouth_mask": 1, "human_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_6_20230412_tlv_168129058721800230040000rdhfp020.jpg/static", "human_pic_kps": 1, "human_pic_roi": { "height": 10000, "width": 6125, "x": 2000, "y": 0 }, "human_rect_position": { "height": 2513, "width": 515, "x": 6265, "y": 1027 }, "human_satchel": 1, "human_shape": 1, "human_speed": 2, "human_umbrella": 1, "human_upper_color": 4, "human_upper_style": 0, "human_upper_texture": 1, "human_view": 0, "motor_color": 1, "motor_license_plate": 1, "motor_motor_carry": 1, "motor_sunshade": 1, "motor_sunshade_color": 0, "motor_type": 1, "lane_id": 2, "panorama_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230213_tlv_167625329805000220020000rwnwv130.jpg/static", "pic_snapshot_dst_offset": 0, "pic_snapshot_time": 1676253294, "pic_snapshot_timems": 1676253294194, "pic_snapshot_tzone": 28800000, "riderman_age": 0, "riderman_gender": 0, "riderman_helmet": 0, "riderman_helmetcolor": 0, "riderman_num": 2, "riderman_uppercolor": 4, "riderman_upperstyle": 0, "target_type": 8, "trecord_type": 34, "vehicle_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_0_20230213_tlv_167625329805000220010000rwnwv130.jpg/static", "vehicle_pos": { "x": 3484, "y": 3805, "width": 1953, "height": 6180 }, "vehicle_type": 8, "vehicle_type_ext": 8, "vhd_object_id": 40056 } }, "test": false }
  • 功能介绍 机非人业务:机动车/非机动车/行人相关的智能场景。 机非人业务消息体的message_type值为target_data。 目前行业视频管理服务会处理以下场景: itgt_type/target_type枚举值: 6 机非人业务目标整体信息(摄像机SDC/NVR800开启机非人模式,行人进入区域,会被自动抓拍,提取行人特征信息,如:年龄段、是否戴眼镜、长头发还是短头发、是否戴帽子、衣服款式和颜色等) 7 机非人业务机动车信息(摄像机SDC/NVR800开启机非人模式, 机动车进入区域,会被自动抓拍,提取机动车特征信息,如:机动车品牌、款型、车牌号、车牌颜色等) 8 机非人业务非机动车信息(摄像机SDC/NVR800开启机非人模式,非机动车进入区域,会被自动抓拍,提取非机动车特征信息,如:非机动车类型、颜色、骑行者的特征信息等) 53 非机动车上目标检测(特定混行摄像机SDC开启混行模式,非机动车进入区域,会被自动抓拍,提取非机动车及其骑行者特征信息,如:非机动车类型、颜色、骑行者的特征信息等。注意:与8不同的是,53有更多的关于骑行者的特征信息,如骑行者是否背包、是否有撑伞等)
  • 消息结构体介绍 表1 message_type为third_data时,data结构体如下: 字段名 类型 说明 device_id String 设备ID,正常情况下不为空,必传 channel_id String 通道ID,正常情况下不为空,必传 report_time String 上报告警时间。示例:2020-09-26T14:28:00+08:00 data_id String 数据ID:正常情况下不为空,必传。可用于查询智能图片数据,参考链接:智能图片下载 tlv_data String 第三方 tlv 数据包,base64编码的字符串,该数据较长需要准备好足够的空间 示例一、三方TLV数据示例 { "message_id": 1676253463557926634, "message_type": "third_data", "data": { "device_id": "219123456CYP***", "channel_id": "1", "report_time": "2023-02-13T09:57:41+08:00", "tlv_data": "TUVUQQAAAAABAAAgEAAAAGJlaGF2aW9yQW5hbHlzZQACAAAgBQAAAElUR1QABwAACQgAAABAAAAAAAAAAGEA" }, "test": false }
  • 消息结构体介绍 表1 message_type为target_data时,data结构体如下 字段名 类型 说明 device_id String 设备ID:正常情况下不为空,必传 channel_id String 通道ID:正常情况下不为空,必传 report_time String 上报告警时间:示例:2020-09-26T14:28:00+08:00 data_id String 数据ID:正常情况下不为空,必传。可用于查询智能图片数据,参考链接:智能图片下载 itgt_type Int 智能业务场景 枚举值: 1 目标属性检测 2 目标识别 20 一拖N 22 特征协同 itgt_version String 目标识别算法版本号 quality_score Int 目标识别目标抠图质量分 age Int 年龄:取值范围[0,99](0为未知年龄) age_group String 年龄区间 枚举值: 0 未知 1 少年 2 青年 3 老年 4 儿童 5 中年 gender String 性别,当检测到目标属性传该值 枚举值: male 男性 female 女性 unknown 未知 glasses String 是否戴眼镜,当检测到目标属性传该值 枚举值: true 戴眼镜 false 不戴眼镜 unknown 未知 hair String 发型,当检测到目标属性传该值 枚举值: long 长头发 short 短头发 unknown 未知 hat String 是否戴帽子,当检测到目标属性传该值 枚举值: true 戴帽子 false 不戴帽子 unknown 未知 mouth_mask String 是否带口罩,当检测到目标属性传该值 枚举值: true 戴口罩 false 不戴口罩 unknown 未知 target_id Int 目标ID global_obj_id Int64 全局ID,设备传入的唯一标识 target_expression String 目标表情,当检测到目标属性传该值 枚举值: smile 微笑 anger 愤怒 sad 悲伤 normal 正常 surprised 惊讶 unknown 未知 target_url String 目标抠图的 URL target_all_pic_url String 目标整体抠图的 URL panorama_url String 目标全景的 URL target_pos RectCor object 目标检测框,位置万分比,当设备发送目标图 human_pos RectCor object 人体检测框,位置万分比,当设备发送目标整体图 target_cap_feature String 目标特征值,base64编码的字符串,当设备具有目标识别能力,上层业务可根据两个特征值进行比较,得出目标相似度 target_pic_time Int64 目标抠图产生时间目标抠图产生时间 common Common object 通用数据定义 target Target object 目标:设备上传TLV时的设备的原始数据,该字段是设备上传的原始数据的解析,不同的业务场景传入的字段会不相同。 表2 RectCor 字段名 类型 说明 x_cor Int x坐标:上层业务检测框左上角坐标点计算方式,x1 = x_cor *全景图像素宽度/ 10000 y_cor Int y坐标:上层业务检测框左上角坐标点计算方式,y1 = y_cor *全景图像素高度/ 10000 width Int 像素高度:上层业务检测框宽度计算方式 widht1 = widht *全景图像素宽度/ 10000 height Int 像素宽度:上层业务检测框长度计算方式 height1 = height *全景图像素高度/ 10000 表3 Common 字段名 类型 说明 channel_id Int64 通道ID channel_id_ex Int64 相机扩展通道ID pts Int64 时间戳 sdc_device_id String 主从机设备ID sdc_uuid String 摄像机视频源通道号 target_type Int 智能业务场景 枚举值: 1 目标属性检测 2 目标识别 20 一拖N 22 特征协同 trecord_type Int 告警类型,见附录告警类型 vehicle_type Int 机非人类型,当检测到机非人属性时传该值,见附录机非人类型 vehicle_type_ext Int 机非人扩展类型,当检测到机非人属性时传该值,见附录机非人类型,例如机非人类型为轿车,扩展类型为两厢轿车 intelligence_type Int 智能类型 image_height Int 图片高度 image_width Int 图片宽度 meta_type_mask Int 元数据类型掩码 枚举值: 1 框数据 2 图数据 8 保活数据 16 告警数据 表4 Target 字段名 类型 说明 taget_age Int 年龄:取值范围[0,99](0为未知年龄) target_expression String 目标表情,当检测到目标属性传该值 枚举值: smile 微笑 anger 愤怒 sad 悲伤 normal 正常 surprised 惊讶 unknown 未知 target_feature TargetAtrrubites object 目标属性对象 target_gender String 性别 枚举值: male 男性 female 女性 unknown 未知 target_glass String 是否带眼镜 枚举值: true 戴眼镜 false 不戴眼镜 unknown 未知 target_glass_type Int 眼镜 枚举值: 0 无 1 普通眼镜 2 太阳眼镜 target_hair String 发型 枚举值: long 长头发 short 短头发 unknown 未知 target_hat String 是否戴帽子 枚举值: true 戴帽子 false 不戴帽子 unknown 未知 target_id Int 目标ID target_lib_type Int 目标库类型 枚举值: 0 默认库 1 黑名单 2 白名单 target_lib_name String 目标库名称 target_lib_recordid Int 目标库中的目标ID,用来维持特征 record的一致性 target_mouth_mask String 是否戴口罩 枚举值: true 戴口罩 false 不戴口罩 unknown 未知 target_mustache Int 是否有胡子 枚举值: 0 没有胡子 1 有胡子 target_panopic_size Int 大图码流的长度 target_panorama String 大图码流,已经转化为图片下载url target_pic String 目标抠图码流,已转化为图片下载url target_pic_kps Int 目标抠图kps质量过滤标志位 target_pic_position Rect object 目标抠图小框位置(万分比) target_pic_time Int64 目标抠图产生时间 target_pic_tzone Int64 目标抠图设备时区:单位毫秒/ms 东区为+ 西区为-,例如:东八区为28800000 body_panopic_size Int64 人体全景大图码流长度 global_object_id Int64 智能目标全局ID human_pic String 目标整体抠图码流,已转化为图片下载url human_pic_kps Int 目标整体抠图kps质量过滤标志位 human_pic_roi Rect object 目标整体抠图中的目标整体目标框 human_rect_position Rect object 目标整体抠图中的目标整体目标框位置 obj_appear_timems Int64 目标起始出现时间:单位毫秒/ms pic_snapshot_dst_offset Int64 夏令时偏移时间:单位秒/s pic_snapshot_time Int 抓拍时间:unix时间戳 pic_snapshot_tzone Int64 抓拍时区:单位毫秒/ms 东区为+ 西区为-,支持夏令时 target_type Int 智能业务场景 枚举值: 1 目标属性检测 2 目标识别 20 一拖N 22 特征协同 trecord_type Int 告警类型,见附录告警类型 vehicle_type Int 机非人类型,当检测到机非人属性时传该值,见附录机非人类型枚举值 vehicle_type_ext Int 机非人扩展类型,当检测到机非人属性时传该值,见附录机非人类型枚举值,例如机非人类型为轿车,扩展类型为两厢轿车 target_recog_box_colour Int 目标识别框颜色 match_type Int 目标识别是否比对成功 枚举值 0 失败 1 成功 snap_matchrate_million Int 发送给元数据网关的匹配率,6位有效数字 target_rec_version String 目标识别算法版本号 target_quality_score Int 目标识别目标抠图质量分 visitor_type Int 访客类型 枚举值 0 社区居民 1 访客 target_match String 目标匹配图 target_matchrate Int 目标匹配率 target_age_group Int 目标年龄人群 枚举值: 0 未知 1 少年 2 青年 3 老年 4 儿童 5 中年 id_cardmd5 String 身份证MD5 total_snap_num Int 抓拍总数 snap_target_num Int 抓拍目标数量 表5 Rect 字段名 类型 说明 x Int x坐标:上层业务检测框左上角坐标点计算方式,x1 = x *全景图像素宽度/ 10000 y Int y坐标:上层业务检测框左上角坐标点计算方式,y1 = y *全景图像素高度/ 10000 width Int 像素高度:上层业务检测框宽度计算方式 widht1 = widht *全景图像素宽度/ 10000 height Int 像素宽度:上层业务检测框长度计算方式 height1 = height *全景图像素高度/ 10000 表6 TargetAtrrubites 字段名 类型 说明 glasses Int 眼镜: 枚举值: 0 戴眼镜 1 不戴眼镜 gender Int 性别 枚举值: 1 女性 2 男性 其他值 未知 age Int 年龄:取值范围[0,99](0为未知年龄) mouth_mask Int 是否戴口罩 枚举值: 0 不戴口罩 1 戴口罩 expression Int 目标表情 枚举值: 0 微笑 1 愤怒 2 悲伤 3 正常 4 惊讶 示例一、目标属性检测 { "message_id": 1676512199147779269, "message_type": "target_data", "data": { "device_id": "219123456CYP***219123456CYP***", "channel_id": "4", "report_time": "2023-02-16T09:49:56+08:00", "data_id": "167651219912500100070000kcxdq120", "itgt_type": 1, "age_group": "2", "gender": "male", "glasses": "false", "hair": "short", "hat": "false", "mouth_mask": "false", "target_id": 403056, "global_obj_id": 7197546666114033264, "human_pos": { "height": 9222, "width": 5000, "x_cor": 3312, "y_cor": 250 }, "target_url": "https://www.example.com/v1/holo/tlv_219123456CYP***_4_20230216_tlv_167651219912500100010000kcxdq120.jpg/static", "target_all_pic_url": "https://www.example.com/v1/holo/tlv_219123456CYP***_4_20230216_tlv_167651219912500100020000kcxdq120.jpg/static", "panorama_url": "https://www.example.com/v1/holo/tlv_219123456CYP***_4_20230216_tlv_167651219912500100040000kcxdq120.jpg/static", "target_pos": { "x_cor": 1500, "y_cor": 3120, "width": 473, "height": 1000 }, "target_pic_time": 1676512196331, "common": { "channel_id": 101, "channel_id_ex": 101, "image_height": 1080, "image_width": 1920, "meta_type_mask": 2, "pts": 731629820465, "sdc_device_id": "30833dda-60af-9050-d0ee-7b1408902***", "sdc_uuid": "30833dda-60af-9050-d0ee-7b1408902***" }, "target": { "target_age_group": 2, "target_feature": { "glasses": 1, "gender": 2, "age": 0, "mouth_mask": 1, "expression": 0 }, "target_gender": "male", "target_glass": "false", "target_glass_type": 1, "target_hair": "short", "target_hat": "false", "target_id": 403056, "target_mouth_mask": "false", "target_mustache": 1, "target_panopic_size": 136954, "target_panorama": "https://www.example.com/v1/holo/tlv_219123456CYP***_4_20230216_tlv_167651219912500100040000kcxdq120.jpg/static", "target_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_4_20230216_tlv_167651219912500100010000kcxdq120.jpg/static", "target_pic_kps": 1, "target_pic_position": { "x": 1500, "y": 3120, "width": 473, "height": 1000 }, "target_pic_time": 1676512196331, "target_pic_tzone": 28800000, "body_panopic_size": 28187, "global_object_id": 7197546666114033264, "human_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_4_20230216_tlv_167651219912500100020000kcxdq120.jpg/static", "human_pic_kps": 1, "human_pic_roi": { "x": 0, "y": 109, "width": 10000, "height": 9796 }, "human_pic_roi": { "x": 3312, "y": 250, "width": 5000, "height": 9222 }, "obj_appear_timems": 1676512196331, "pic_snapshot_dst_offset": 0, "pic_snapshot_time": 1676512196, "pic_snapshot_tzone": 28800000, "target_type": 1, "trecord_type": 3, "vehicle_type": 9, "vehicle_type_ext": 9 } }, "test": false } 示例二、目标识别 { "message_id": 1676373406883530016, "message_type": "target_data", "data": { "device_id": "210123456SML***", "channel_id": "0", "report_time": "2023-02-14T19:16:40+08:00", "data_id": "167637340686100110050000boayq020", "itgt_type": 2, "itgt_version": "SDC_FR V1.8.1b030s001", "age": 45, "age_group": "2", "gender": "female", "glasses": "true", "hair": "short", "hat": "true", "mouth_mask": "false", "quality_score": 87, "target_id": 1206, "global_obj_id": 7199914494412322202, "target_cap_feature": "uhQAAAAAAABiAwAAQggAAKICAABW/f//oRoAABHy//+0GgAA9fb//+PZ//8a6f//6gAAAAnO//8b6f//Ix8AAFUCAAAQ/P//Nfj//8Hz//+88P//weT//9cHAACY/P//+fz//7EGAABq+///wuz//8YGAABI////B/X//+36//8zFwAAXQEAAIkXAABH8///UPH//5fx///oEQAA3QgAAOkJAAA+FQAA3R0AAKDj//8O8P//qgQAAIni//+J5v//yQkAABQSAABjGAAAwf3//5YEAABNFwAApgMAAIYHAAC9EQAAbhEAAPDq//+m+///UQkAAKIUAADkHwAAMwEAAKHs//+O8///o+b//zslAACvKQAAlg8AABLu//8d8///TO///8Dy//+z+///ffz//3UFAADE5P//JxAAANjx//858v//Iw4AAMYCAADz9v//IhAAAC/5//9LLgAALOX//4QLAADSEgAAkQwAAJHs//9OBwAADQ8AABj6//9e/v//G93//5YIAAAmAAAAau7//5YBAABbDgAAYPz//yrS//9OLL4///I////hez//0L4//8j9///IgkAAK0DAAAhDAAA++z//yAUAAA9/f//xgwAAPr9//844f//CPb//+/4//959///UPX//8T///8fAwAAfwoAAO4FAABy6v//ZP7//3z7///h////jAcAAJj0//9tDQAAR+r//4IRAABZ9P//K/L//ycIAABlEgAA5fP//wHi///iFwAAwwUAADLr///bDwAAoBUAAJsHAAAk/f//0P7//7b5///C9f//nO7//y33//+M7f//Cf7//+QDAADd9P//xvz//7L9//9g4v//TQcAAGMHAACI7f//QBMAAHv0//9OGAAAsw0AAH3g//9NKgAAzwwAAHIJAAAhIAAAoPf//ynp//+Y/P//8/v//+UWAADK+f//+wUAALz4//8wDwAAoPf//xMTAAABGAAAURgAANAMAAC/HQAAaCkAAOD3//87CQAAlBkAAOjv//8r/P//NQYAAOQ2AAA8EwAALQoAAF0KAABwBAAAaQQAAB/u///7/f//", "target_expression": "normal", "target_url": "https://api-ivm.myhuaweicloud.com/v1/holo/tlv_210123456SMY***_0_20230214_tlv_167637340686100110010000boxyq020.jpg/static", "panorama_url": "https://api-ivm.myhuaweicloud.com/v1/holo/tlv_210123456SMY***_0_20230214_tlv_167637340686100110040000boxyq020.jpg/static", "target_pos": { "x_cor": 7239, "y_cor": 4888, "width": 750, "height": 1453 }, "target_pic_time": 1676373400610, "common": { "channel_id": 101, "channel_id_ex": 101, "intelligence_type": 1, "meta_type_mask": 2, "pts": 41539402291, "sdc_uuid": "9c0d9984-e09f-477d-f123-f8b96aab5***", "target_type": 2 }, "target": { "target_age": 45, "target_age_group": 2, "target_cap_feature": "uhQAAAAAAABiAwAAQggAAKICAABW/f//oRoAABHy//+0GgAA9fb//+PZ//8a6f//6gAAAAnO//8b6f//Ix8AAFUCAAAQ/P//Nfj//8Hz//+88P//weT//9cHAACY/P//+fz//7EGAABq+///wuz//8YGAABI////B/X//+36//8zFwAAXQEAAIkXAABH8///UPH//5fx///oEQAA3QgAAOkJAAA+FQAA3R0AAKDj//8O8P//qgQAAIni//+J5v//yQkAABQSAABjGAAAwf3//5YEAABNFwAApgMAAIYHAAC9EQAAbhEAAPDq//+m+///UQkAAKIUAADkHwAAMwEAAKHs//+O8///o+b//zslAACvKQAAlg8AABLu//8d8///TO///8Dy//+z+///ffz//3UFAADE5P//JxAAANjx//858v//Iw4AAMYCAADz9v//IhAAAC/5//9LLgAALOX//4QLAADSEgAAkQwAAJHs//9OBwAADQ8AABj6//9e/v//G93//5YIAAAmAAAAau7//5YBAABbDgAAYPz//yrS//9OLL4///I////hez//0L4//8j9///IgkAAK0DAAAhDAAA++z//yAUAAA9/f//xgwAAPr9//844f//CPb//+/4//959///UPX//8T///8fAwAAfwoAAO4FAABy6v//ZP7//3z7///h////jAcAAJj0//9tDQAAR+r//4IRAABZ9P//K/L//ycIAABlEgAA5fP//wHi///iFwAAwwUAADLr///bDwAAoBUAAJsHAAAk/f//0P7//7b5///C9f//nO7//y33//+M7f//Cf7//+QDAADd9P//xvz//7L9//9g4v//TQcAAGMHAACI7f//QBMAAHv0//9OGAAAsw0AAH3g//9NKgAAzwwAAHIJAAAhIAAAoPf//ynp//+Y/P//8/v//+UWAADK+f//+wUAALz4//8wDwAAoPf//xMTAAABGAAAURgAANAMAAC/HQAAaCkAAOD3//87CQAAlBkAAOjv//8r/P//NQYAAOQ2AAA8EwAALQoAAF0KAABwBAAAaQQAAB/u///7/f//", "target_expression": "normal", "target_gender": "female", "target_glass": "true", "target_glass_type": 2, "target_hair": "short", "target_hat": "true", "target_id": 1206, "target_lib_name": "test", "target_lib_recordid": 1, "target_lib_type": 2, "target_match": "https://www.example.com/v1/holo/tlv_210123456SMY***_0_20230410_tlv_168110987103000110080000bdiol010.jpg/static", "target_matchrate": 0, "target_mouth_mask": "false", "target_mustache": 1, "target_panorama": "https://api-ivm.myhuaweicloud.com/v1/holo/tlv_210123456SMY***_0_20230214_tlv_167637340686100110010000boxyq020.jpg/static", "target_pic": "https://api-ivm.myhuaweicloud.com/v1/holo/tlv_210123456SMY***_0_20230214_tlv_167637340686100110010000boxyq020.jpg/static", "target_pic_position": { "x": 7239, "y": 4888, "width": 750, "height": 1453 }, "target_pic_time": 1676373400610, "target_pic_tzone": 28800000, "target_pic_uuid": "000000000000", "target_quality_score": 87, "target_rec_version": "SDC_FR V1.8.1b030s001", "target_recog_box_colour": 255, "global_object_id": 7199914494412322***, "id_cardmd5": "xxxxx", "match_type": false, "obj_appear_timems": 1681109824063, "pic_snapshot_dst_offset": 0, "pic_snapshot_time": 1676373400, "pic_snapshot_tzone": 28800000, "snap_matchrate_million": 0, "snap_target_num": 1, "target_type": 2, "total_snap_num": 1, "visitor_type": 0 } }, "test": false } 示例三、NVR800人脸特征元数据 { "message_id": 1676517738152255022, "message_type": "target_data", "data": { "device_id": "219123456CYP***", "channel_id": "10", "report_time": "2023-02-16T11:21:56+08:00", "data_id": "167651773814300130000000kcxdq140", "itgt_type": 20, "itgt_version": "SDC_FR V1.8.1b030s001", "target_cap_feature": "FAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", "target_pic_time": 1676517716849, "common": { "channel_id": 101, "intelligence_type": 1, "pts": 1676546516 }, "target": { "target_cap_feature": "FAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", "target_pic_time": 1676517716849, "target_pic_tzone": 28800000, "target_rec_version": "SDC_FR V1.8.1b030s001", "pic_snapshot_dst_offset": 0, "pic_snapshot_time": 1676517716, "pic_snapshot_tzone": 28800000, "target_type": 20 } }, "test": false } 示例四、目标特征协同 { "message_id": 1676517170860820696, "message_type": "target_data", "data": { "device_id": "219123456CYP***", "channel_id": "4", "report_time": "2023-02-16T11:12:46+08:00", "data_id": "167651717084000120050000kcxdq120", "itgt_type": 22, "itgt_version": "SDC_FR V1.8.1b030s001", "quality_score": 71, "age_group": "2", "gender": "male", "glasses": "true", "hair": "short", "hat": "false", "mouth_mask": "false", "target_id": 4059**, "target_cap_feature": "oTEGAAAAAAD46f//HfP//yb9//9F+///m////wMCAAB3CwAAifj//+P5//9w/P//3gAAAMj6//97/f//w/7//135///N9P//gAUAABf8//9C+v//HwQAAN7n//8JCgAA7AQAAGD6//+TAAAA+wAAAOcAAAA7+v//uwgAAEQNAAAE9P//v/////D///8c+f//rgAAAHQKAACcBAAAWQ8AAL0KAAAfCQAAlvz//xD3//9uDQAAnQ8AAFD5//+z/v//jwgAAJMPAAAtAAAAaRIAABj4//8O7P//7AsAAGn9//+pCwAAV/j//9YTAACJ////uwkAAPQPAAC6CQAAL/n//wrq//82CgAAkRIAAFz////Z/v//Qfv//4kMAACp/v//UPb//20AAAB0CgAAmfv//7j9//+tAgAAogMAAFj+//8E+v// RAM AAFT+//8s9///EgYAAEn+//+p////aPT//5YFAAA1/v//TQAAAEIJAACsAwAAevL//yTu///58v//bwEAAAv3//8H9P//Off//3MDAADi8P//7/j//yTs//9D+f//DwMAALb6//9BAwAAxBIAAEn0//849///yf7//4P5//9VAAAAa/z//+wEAAA+AAAAmvn//4nt//8z+///Mff//2b5//8sDwAAyQgAANMKAAAA/v//CfH//7APAADVCwAAiAIAAJQOAAAGAwAAv/r//z36//+FAwAAbxIAAM4MAADE+P//Hfb//yoDAADIBAAAXvn//3sBAADLBQAAX/f//5////+E+v//PgAAAGIGAABTBgAAVP3//8oOAABM9P//bAIAALTq//+AAgAANwoAAOf4///HGAAADgsAANEBAACsBQAAFAYAAMcHAAC7AgAAb+///yYOAADG9P//Jvz//0X8///dBQAA/wIAAAcBAAA0/P//Iv///zcJAABf8f//0PX//7QCAACw9///QP3//ygHAAD6////Mfz//zP7//938///EP3//2v4//85BwAAKAMAAGH3//9cDQAAWg8AADcMAADeDwAATwUAAD0HAAC/9v//uAMAAFQMAACMBgAAGAYAAAH7//92AAAASv3//6Xw///B////S/j//8n8//989v//BOr//wMMAADq8P//nPX//0UHAABP/v//hP///9gIAADpBwAAefL//3D7//+z+v//AAMAAEz///8q+f//1gcAAK/8//8d+///lP3//3cBAABC9v//pPn///L7//+PBAAAK/n//2ACAACK/v//agsAALX9//8TEQAA/PX///L7//+8FwAA2QYAADwKAAA6BwAAUwsAAJz0//8VAAAA9gEAADD4//9QFAAAVvz//wP9//8v+///tgYAAGEFAACF9v//", "target_url": "https://www.example.com/v1/holo/tlv_219123456CYP***_4_20230216_tlv_167651717084000120010000kcxdq120.jpg/static", "panorama_url": "https://www.example.com/v1/holo/tlv_219123456CYP***_4_20230216_tlv_167651717084000120040000kcxdq120.jpg/static", "target_pos": { "x_cor": 1687, "y_cor": 2694, "width": 270, "height": 620 }, "target_pic_time": 1676517166963, "common": { "channel_id": 101, "channel_id_ex": 101, "intelligence_type": 1, "meta_type_mask": 2, "pts": 736600801653, "sdc_device_id": "30833dda-60af-9050-d0ee-7b1408902***", "sdc_uuid": "30833dda-60af-9050-d0ee-7b1408902***" }, "target": { "target_age_group": 2, "target_cap_feature": "oTEGAAAAAAD46f//HfP//yb9//9F+///m////wMCAAB3CwAAifj//+P5//9w/P//3gAAAMj6//97/f//w/7//135///N9P//gAUAABf8//9C+v//HwQAAN7n//8JCgAA7AQAAGD6//+TAAAA+wAAAOcAAAA7+v//uwgAAEQNAAAE9P//v/////D///8c+f//rgAAAHQKAACcBAAAWQ8AAL0KAAAfCQAAlvz//xD3//9uDQAAnQ8AAFD5//+z/v//jwgAAJMPAAAtAAAAaRIAABj4//8O7P//7AsAAGn9//+pCwAAV/j//9YTAACJ////uwkAAPQPAAC6CQAAL/n//wrq//82CgAAkRIAAFz////Z/v//Qfv//4kMAACp/v//UPb//20AAAB0CgAAmfv//7j9//+tAgAAogMAAFj+//8E+v//RAMAAFT+//8s9///EgYAAEn+//+p////aPT//5YFAAA1/v//TQAAAEIJAACsAwAAevL//yTu///58v//bwEAAAv3//8H9P//Off//3MDAADi8P//7/j//yTs//9D+f//DwMAALb6//9BAwAAxBIAAEn0//849///yf7//4P5//9VAAAAa/z//+wEAAA+AAAAmvn//4nt//8z+///Mff//2b5//8sDwAAyQgAANMKAAAA/v//CfH//7APAADVCwAAiAIAAJQOAAAGAwAAv/r//z36//+FAwAAbxIAAM4MAADE+P//Hfb//yoDAADIBAAAXvn//3sBAADLBQAAX/f//5////+E+v//PgAAAGIGAABTBgAAVP3//8oOAABM9P//bAIAALTq//+AAgAANwoAAOf4///HGAAADgsAANEBAACsBQAAFAYAAMcHAAC7AgAAb+///yYOAADG9P//Jvz//0X8///dBQAA/wIAAAcBAAA0/P//Iv///zcJAABf8f//0PX//7QCAACw9///QP3//ygHAAD6////Mfz//zP7//938///EP3//2v4//85BwAAKAMAAGH3//9cDQAAWg8AADcMAADeDwAATwUAAD0HAAC/9v//uAMAAFQMAACMBgAAGAYAAAH7//92AAAASv3//6Xw///B////S/j//8n8//989v//BOr//wMMAADq8P//nPX//0UHAABP/v//hP///9gIAADpBwAAefL//3D7//+z+v//AAMAAEz///8q+f//1gcAAK/8//8d+///lP3//3cBAABC9v//pPn///L7//+PBAAAK/n//2ACAACK/v//agsAALX9//8TEQAA/PX///L7//+8FwAA2QYAADwKAAA6BwAAUwsAAJz0//8VAAAA9gEAADD4//9QFAAAVvz//wP9//8v+///tgYAAGEFAACF9v//", "target_feature": { "glasses": 2, "gender": 2, "age": 0, "mouth_mask": 1, "expression": 0 }, "target_gender": "male", "target_glass": "true", "target_glass_type": 2, "target_hair": "short", "target_hat": "false", "target_id": 405***, "target_mouth_mask": "false", "target_mustache": 1, "target_panorama": "https://www.example.com/v1/holo/tlv_219123456CYP***_4_20230216_tlv_167651717084000120040000kcxdq120.jpg/static", "target_pic": "https://www.example.com/v1/holo/tlv_219123456CYP***_4_20230216_tlv_167651717084000120010000kcxdq120.jpg/static", "target_pic_position": { "x": 1687, "y": 2694, "width": 270, "height": 620 }, "target_pic_time": 1676517166963, "target_pic_tzone": 28800000, "target_quality_score": 71, "target_rec_version": "SDC_FR V1.8.1b030s001", "obj_appear_timems": 1676517166963, "pic_snapshot_dst_offset": 0, "pic_snapshot_time": 1676517166, "pic_snapshot_tzone": 28800000, "target_type": 22 } }, "test": false }
  • 功能介绍 目标及目标整体业务:处理一些与目标识别相关的智能数据。 目标及目标整体业务消息体的message_type值为target_data。 目前行业视频管理服务会处理以下场景: itgt_type/target_type枚举值: 1 目标属性检测(摄像机SDC开启目标抓拍,对出现在区域内的人进行抓拍,获取抓拍到目标的特征信息,如:年龄人群、男性还是女性、是否戴眼镜、是否戴帽子、是否戴口罩等) 2 目标识别(摄像机SDC在开启目标属性检测的基础上,开启目标识别,对抓拍到的人与提前在摄像机设置好的白名单、黑名单目标库进行对比识别,得到识别的结果,结果包括白名单、黑名单、陌生人,当然还会有目标的特征信息) 20 NVR800人脸特征元数据(摄像机SDC开启目标属性检测的基础上,开启多机互助作为智能主机,连接多台摄像机从机,接入NVR800,主机会对主机和从机出现在区域内的人进行抓拍,获取抓拍到目标的特征值) 22 NVR800人脸特征协同元数据(摄像机SDC接入NVR800,NVR800开启目标抓拍和目标识别特征协同功能,对进入区域的人进行抓拍和获取特征信息)
  • 功能介绍 设备智能数据:设备安装相关算法后,在相应场景触发时,设备推送的算法结果消息。客户可根据算法结果实现自己的业务。 设备智能数据包含多种业务,每种业务的消息结构体都有差异,以下章节会对不同业务的消息结构体进行讲解。 设备智能数据消息体的message_type值为以下枚举值: target_data 智能业务中的目标及目标整体业务 third_data 第三方智能业务,目前是提供整个数据包,使用方需自行解析。订阅时需要和第三方智能告警数据区分开,一个是第三方TLV智能数据,一个是第三方智能告警 vehicle_data 智能业务中的机非人业务 head_shoulder_data 智能业务中的头肩业务 behavior_analysis_data 智能业务中的行为分析与人车物分离 micro_checkpoint_data 智能业务中的微卡口业务 备注:随着设备算法的升级可能会有出现文档中未描述的字段
  • 消息结构体介绍 表1 message_type为device_unbind时,data结构体如下: 字段名 类型 说明 message_type(Json内层) String 消息类型 枚举值: DELETE_DEVICE 设备删除 UNBIND_DEVICE 设备解绑 UNBIND_MANAGE 接入调阅解绑 UNBIND_MOTION 动检云存储解绑 UNBIND_NORMAL 连续云存储解绑 UNBIND_DATAFLOW 行业数据流解绑 devices Array of Device Objects 设备对象,包含一或多个设备的对象 表2 Device 字段名 类型 说明 device_id String 设备ID channel_id String 通道ID message Message Object 套餐解绑时的详细信息 表3 Message 字段名 类型 说明 resource_id String 套餐ID 示例一、删除设备 { "message_id": 1676624636867660931, "message_type": "device_unbind", "data": { "message_type": "DELETE_DEVICE", "devices": [ { "device_id": "11111111111111111111", "channel_id": "", "message": null } ] }, "test": false } 示例二、解绑套餐 { "message_id": 1676624334098133709, "message_type": "device_unbind", "data": { "message_type": "UNBIND_MANAGE", "devices": [ { "device_id": "210123456SMY***", "channel_id": "0", "message": { "resource_id": "791afbac769f4edea98fea92bc5fcc7d" } } ] }, "test": false }
  • 功能介绍 设备异常告警消息:设备状态变更(例如设备、通道上下线,升级等)时推送的消息 设备异常告警消息的message_type值为device_status。 表1 message_type为device_status时,data结构体如下: 字段名 类型 是否可为空 说明 method String 不为空 设备状态变更方法。 枚举值 logout 设备离线 login 设备上线 channel_state_notice 通道离线/上线(根据channel_state字段来区分) channel_name_notice 通道名称变更 upgrade_result 设备升级结果上报 offline_reason_notice 离线原因上报 param Param object 不为空 异常设备数据 表2 Param 字段名 类型 说明 device_id String 设备ID device_name String 设备名称 channel_id String 通道ID time String 设备告警时间 video_channel VideoChannel object 设备视频通道信息,数组对象 onine_time Int 上次在线时长:单位为秒/s last_login_time String 上次上线时间 alarm_uuid String 告警UUID:告警唯一标识,当method为设备升级失败/成功时,可通过该字段去查询设备升级失败/成功的详细信息。 overall_upgrade_status String 设备升级状态 device_type String 设备类型 offline_reason_type String 设备离线原因 枚举值: NORMAL 正常离线,例如重启或者掉电 NETWORK 网络异常离线 qos Float64 网络质量 time_delay Float64 时延 packet_loss_rate Float64 丢包率 push_time String 上报时间 表3 VideoChannel 字段名 类型 说明 channel_id String 通道ID channel_name String 通道名称 channel_state Int 通道状态,0:通道离线,1:通道上线 channel_ability String 视频通道能力。取值为 [ptz、talk、intelligent、soundlightalarm、algorithm] 中的零或多种,分别代表 [云台,对讲,智能分析,声光警戒,长尾算法] device_type String 视频通道的设备类型 manufacture String 通道接入设备的通道厂商 firmware String 通道接入设备的固件版本 model String 通道接入设备的型号 status_list Array of UpgradeStatusList objects 升级状态,如果method不是upgrade_result,该字段为null alarm_uuid String 告警UUID:告警唯一标识,当method为设备升级失败/成功时,可通过该字段去查询设备升级失败/成功的详细信息 表4 UpgradeStatusList 字段名 类型 说明 file_type Int 文件类型 枚举值: 0 基础软件包 1 目标和目标整体检测算法 2 目标识别算法包 4 违停检测算法包 8 机非人算法包 16 海外车牌检测算法包 32 场景自适应算法包 33 人群密度/排队长度算法包 64 三方APP包 65 4G软件包 66 D芯片升级包 67 D芯片算法包 68 周界算法包 69 星图算法包 70 星图1+2人像算法包 71 复杂行为算法包 75 热成像行为分析算法包 80 电梯电瓶车算法包 81 全结构化算法包 82 行为分析算法包 83 行为分析算法包,备注:82和83均为行为分析算法包 84 目标检测算法包 85 目标识别算法包 file_name String 文件名称:文件的名称,例如XXXXX.bin文件 package_name String 升级包名称:该升级文件所属的类型名,该名称与文件类型相对应,例如基础升级包、目标和目标整体检测算法, status String 升级状态 枚举值: preparing 准备中 unstart 未开始 starting 开始中 downloading 下载固件中 upgrading 升级固件中 success 升级成功 failure 升级失败 not_required 无需升级 示例一、设备上线 { "message_id": 1676292308043441909, "message_type": "device_status", "data": { "method": "login", "param": { "device_id": "219123456CYP***", "device_name": "MicroEdge", "channel_id": "", "time": "2023-02-13T20:43:47+08:00", "video_channel": [ { "channel_id": "7", "channel_name": "SDC", "channel_state": 1, "channel_ability": [ "talk", "intelligent", "soundlightalarm", "sdcardformat", "alarmsound", "abilityauth" ], "device_type": "IPC-CONCH", "manufacture": "huawei", "firmware": "SDC 10.0.RC11.SPC100", "model": "D3250-10-SIU", "status_list": null, "alarm_uuid": "" } ], "overall_upgrade_status": "", "device_type": "MEdge", "offline_reason_type": "", "qos": 0, "time_delay": 0, "packet_loss_rate": 0, "push_time": "2023-02-13 20:45:07" } }, "test": false } 示例二、设备离线 { "message_id": 1676293195851991937, "message_type": "device_status", "data": { "method": "logout", "param": { "device_id": "021123456MKR***", "device_name": "HoloSens SDC", "channel_id": "", "time": "2023-02-13T20:59:55+08:00", "video_channel": null, "online_time": 1077, "last_login_time": "2023-02-13 20:41:58", "alarm_uuid": "021RMK2202091846_device_offline_2023-02-13T20:59:55+08:00", "overall_upgrade_status": "", "device_type": "IPC-BOX", "offline_reason_type": "TMOUT", "qos": 0, "time_delay": 0, "packet_loss_rate": 0, "push_time": "2023-02-13 20:59:55" } }, "test": false } 示例三、设备通道离线 { "message_id": 1676294530831471492, "message_type": "device_status", "data": { "method": "channel_state_notice", "param": { "device_id": "219123456CYP***", "device_name": "FX_3.2.9.9_B016", "channel_id": "", "time": "2023-02-13T21:17:09+08:00", "video_channel": [ { "channel_id": "14", "channel_name": "${time@sys: YYYY-MM-DD}", "channel_state": 0, "channel_ability": [], "device_type": "IPC-BOX", "manufacture": "huawei", "firmware": "SDC 8.0.T2002", "model": "M2120-10-EI", "status_list": null, "alarm_uuid": "219123456CYP***_14_channel_offline_2023-02-13T21:17:09+08:00" } ], "overall_upgrade_status": "", "device_type": "", "offline_reason_type": "", "qos": 0, "time_delay": 0, "packet_loss_rate": 0, "push_time": "2023-02-13 21:22:07" } }, "test": false }
  • 基本消息结构体 推送消息给企业ISV平台时,各参数定义如下: 请求头header,当用户设置auth_key的值,会携带这两个请求头 字段名 类型 是否可为空 说明 X-Ivm-Timestamp Int64/long整型 不为空 UNIX时间戳,整形正数,固定长度10,1970年1月1日以来的秒数,表示回调请求发起时间。 X-Ivm-Signature String 不为空 接口请求token,token生成方式,为将callback_url,X-Ivm-Timestamp,auth_key三个字段进行拼接,字段中间以竖线(|)分割,后计算sha256值。即 X-Ivm-Signature = sha256(callback_url|X-Ivm-Timestamp|auth_key),回调消息接收端接收请求后可自行计算该值并做比较,若不相等,则请求非法 结构体req 字段名 类型 是否可为空 说明 message_id Int64/long整型 不为空 消息ID:该消息的唯一标识,根据时间戳生成(18到32位的数字),无重复 message_type String 可能为空 消息类型:分为设备智能告警消息、设备异常告警消息、设备解绑消息和设备智能数据消息四大类 枚举值: 设备智能告警消息: device_alarm 智能告警消息,包含目标智能告警,口罩告警,周界告警,人群态势告警及第三方智能告警消息等 设备异常告警消息: device_status 设备异常消息,包含设备/通道上下线告警,通道名称修改,以及设备升级失败 设备解绑消息: device_unbind 设备解绑和套餐解绑的消息 设备智能数据消息: target_data 智能业务中的目标及目标整体业务 third_data 第三方智能业务,目前是提供整个数据包,使用方需自行解析。订阅时要和第三方智能告警数据区分开 vehicle_data 智能业务中的机非人业务 head_shoulder_data 智能业务中的头肩业务 behavior_analysis_data 智能业务中的行为分析与人车物分离 micro_checkpoint_data 智能业务中的微卡口业务 data Object 可能为空 智能告警信息: 当 message_type 不同时,data 格式不同,可参考message_type里各种类型的介绍; 当智能类型算法升级时,可能会在推送的结构体里添加新字段; test Boolean 不为空 当test字段为true时,表示这是配置回调URL时测试是否可访问的消息,被调用方需要返回响应码为200。注意,此时message_type和data字段不传。 当test字段为false时,表示这是一条推送消息,message_type和data字段正常传入。 父主题: 告警推送消息体结构
  • 响应示例 当URL存在时: { "callback_url": "http://xxxxxx:xx", "subscription_type": "DEVICE_ALARM", "create_time": "2021-03-30 14:34:50", "update_time": "2021-03-30 15:34:50", "auth_key": "xxxxxxx" } 当URL不存在时: {}
  • URI GET /v1/{user_id}/messages/callback 表1 路径参数 参数 是否必选 参数类型 描述 user_id 是 String 用户ID:由数字组成,长度范围[15,25],获取方式参考获取user ID与下载AK/SK章节 表2 Query参数 参数 是否必选 参数类型 描述 subscription_type 是 String 订阅类型字段 枚举值: DEVICE_ALARM 智能告警消息(含第三方告警),该消息的数据推送结构体设备智能告警消息结构体 DEVICE_EXCEPTION 设备异常消息,该消息的数据推送结构体设备异常告警消息结构体 DEVICE_UNBIND 设备解绑、套餐解绑数据,该消息的数据推送结构体设备解绑消息结构体 TARGET_DATA 目标TLV数据,该消息的数据推送结构体目标数据消息结构体 THIRD_DATA 第三方TLV数据,该消息的数据推送结构体三方数据消息结构体 VEHICLE_DATA 机非人TLV数据,该消息的数据推送结构体机非人消息结构体 HEAD_SHOULDER_DATA 头肩业务TLV数据,该消息的数据推送结构体头肩业务消息结构体 BEHAVIOR_ANALYSIS_DATA 行为分析TLV数据,该消息的数据推送结构体行为分析与人车物分离消息结构体 MICRO_CHECKPOINT_DATA 微卡口TLV数据,该消息的数据推送结构体微卡口数据推送结构体
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 callback_url String 支持http/https协议,最大长度为256英文字符 create_time String 创建时间 update_time String 更新时间 subscription_type String 订阅类型字段, 枚举值: DEVICE_ALARM 智能告警消息(含第三方告警),该消息的数据推送结构体设备智能告警消息结构体 DEVICE_EXCEPTION 设备异常消息,该消息的数据推送结构体设备异常告警消息结构体 DEVICE_UNBIND 设备解绑、套餐解绑数据,该消息的数据推送结构体设备解绑消息结构体 TARGET_DATA 目标TLV数据,该消息的数据推送结构体目标数据消息结构体 THIRD_DATA 第三方TLV数据,该消息的数据推送结构体三方数据消息结构体 VEHICLE_DATA 机非人TLV数据,该消息的数据推送结构体机非人消息结构体 HEAD_SHOULDER_DATA 头肩业务TLV数据,该消息的数据推送结构体头肩业务消息结构体 BEHAVIOR_ANALYSIS_DATA 行为分析TLV数据,该消息的数据推送结构体行为分析与人车物分离消息结构体 MICRO_CHECKPOINT_DATA 微卡口TLV数据,该消息的数据推送结构体微卡口数据推送结构体 auth_key String 鉴权密钥
  • URI DELETE /v1/{user_id}/messages/callback 表1 路径参数 参数 是否必选 参数类型 描述 user_id 是 String 用户ID:由数字组成,长度范围[15,25],获取方式参考获取user ID与下载AK/SK章节 表2 Query参数 参数 是否必选 参数类型 描述 subscription_type 是 String 订阅类型字段 枚举值: DEVICE_ALARM 智能告警消息(含第三方告警),该消息的数据推送结构体设备智能告警消息结构体 DEVICE_EXCEPTION 设备异常消息,该消息的数据推送结构体设备异常告警消息结构体 DEVICE_UNBIND 设备解绑、套餐解绑数据,该消息的数据推送结构体设备解绑消息结构体 TARGET_DATA 目标TLV数据,该消息的数据推送结构体目标数据消息结构体 THIRD_DATA 第三方TLV数据,该消息的数据推送结构体三方数据消息结构体 VEHICLE_DATA 机非人TLV数据,该消息的数据推送结构体机非人消息结构体 HEAD_SHOULDER_DATA 头肩业务TLV数据,该消息的数据推送结构体头肩业务消息结构体 BEHAVIOR_ANALYSIS_DATA 行为分析TLV数据,该消息的数据推送结构体行为分析与人车物分离消息结构体 MICRO_CHECKPOINT_DATA 微卡口TLV数据,该消息的数据推送结构体微卡口数据推送结构体
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 subscription_type String 订阅类型字段 枚举值: DEVICE_ALARM 智能告警消息(含第三方告警),该消息的数据推送结构体设备智能告警消息结构体 DEVICE_EXCEPTION 设备异常消息,该消息的数据推送结构体设备异常告警消息结构体 DEVICE_UNBIND 设备解绑、套餐解绑数据,该消息的数据推送结构体设备解绑消息结构体 TARGET_DATA 目标TLV数据,该消息的数据推送结构体目标数据消息结构体 THIRD_DATA 第三方TLV数据,该消息的数据推送结构体三方数据消息结构体 VEHICLE_DATA 机非人TLV数据,该消息的数据推送结构体机非人消息结构体 HEAD_SHOULDER_DATA 头肩业务TLV数据,该消息的数据推送结构体头肩业务消息结构体 BEHAVIOR_ANALYSIS_DATA 行为分析TLV数据,该消息的数据推送结构体行为分析与人车物分离消息结构体 MICRO_CHECKPOINT_DATA 微卡口TLV数据,该消息的数据推送结构体微卡口数据推送结构体
共100000条