终端管理类接口主要实现:entity的创建、更新、删除、查询。例如:添加一辆车、删除一辆车、更新车辆的属性信息(如:车辆所属运营区)等。
entity 管理类接口实现 entity 的创建、更新、删除、查询。包括四个接口:
模块 | 接口名称 | 功能说明 |
---|---|---|
entity | add | 创建entity,并赋属性信息 |
update | 更新entity属性信息 | |
delete | 删除entity | |
list | 检索符合过滤条件的entity,返回entity属性信息和最新位置,可用于列出entity,也可用于批量查询多个entitiy的位置。 |
目前中国主要有以下三种坐标系:
wgs84:为一种大地坐标系,也是目前广泛使用的gps全球卫星定位系统使用的坐标系
gcj02:是由中国国家测绘局制订的地理信息系统的坐标系统。由wgs84坐标系经加密后的坐标系
bd09:为百度坐标系,在gcj02坐标系基础上再次加密。其中bd09ll表示百度经纬度坐标,bd09mc表示百度墨卡托米制坐标
非中国地区地图,统一使用wgs84坐标
开发者在百度地图鹰眼自行上传数据与百度地图开放平台无关,开发者应对上传数据的合法性负责,并确保不侵犯他人合法权益。若上传数据包含用户隐私信息,包括但不限于用户名、手机号、身份id等,请开发者确保已获取用户的授权同意并由开发者自行加密以保障用户隐私安全,百度地图开放平台不对开发者自行上传的用户数据进行校验和加密。
添加一个新的entity。一个entity代表现实中的一个终端用户,可以是一个人、车或任何运动的物体。
https://yingyan.baidu.com/api/v3/entity/add
//post请求
参数名称 | 字段含义 | 数据类型 | 是否必填 | 备注 |
---|---|---|---|---|
ak | 用户的ak | string | 是 | |
service_id | service的id,service 的唯一标识 | int | 是 | 在轨迹管理台创建鹰眼服务时,系统返回的 service_id |
entity_name | entity名称,作为其唯一标识 | string(128) | 是 | 同一service服务中entity_name不可重复。一旦创建entity_name 不可更新。 命名规则:仅支持中文、英文大小字母、英文下划线"_"、英文横线"-"和数字。 entity_name 和 entity_desc 支持联合模糊检索。 注意:一个service最多创建100万个entity,达到上限后将无法再创建新的entity。 |
entity_desc | entity 的可读性描述 | string(128) | 否 | 命名规则:仅支持中文、英文大小字母、英文下划线"_"、英文横线"-"和数字。entity_name 和 entity_desc 支持联合模糊检索。 |
column-key | 开发者自定义字段 | string(128) | 是否 | |
sn | 用户的权限签名,若用户所用ak的校验方式为sn校验时该参数必须。sn计算方法 | string | 否 |
参数名 | 字段含义 | 类型 | 备注 |
---|---|---|---|
status | 状态码 | int | 返回状态,0为成功 |
message | 响应信息 | string | 对status的中文描述 |
输入ak可生成包含ip/sn校验方式的代码
<?php// 此处填写你在控制台-应用管理-创建应用后获取的ak$ak ='您的ak';// 发起一个http post请求,并返回请求的结果// $url字段为请求的地址// $param字段为请求的参数functionrequest_post($url ='', $param =array()){if(empty($url)||empty($param)){returnfalse;}$curl =curl_init();// 初始化curlcurl_setopt($curl,curlopt_url, $url);// 设置指定urlcurl_setopt($curl,curlopt_timeout,1000);// 设置超时时间1秒curl_setopt($curl,curlopt_returntransfer,1);// curl不直接输出到屏幕curl_setopt($curl,curlopt_header,0);// 设置header// 以下两行不对https做证书及服务器校验,真实项目中请根据实际情况调整。curl_setopt($curl,curlopt_ssl_verifypeer,0);curl_setopt($curl,curlopt_ssl_verifyhost,0);curl_setopt($curl,curlopt_post,1);// 设置postcurl_setopt($curl,curlopt_postfields, $param);$data =curl_exec($curl);// 运行curlif(!$data){print("an error occured in function request_post(): ".curl_error($curl). "");}curl_close($curl);return $data;}// 请求地址$url ='https://yingyan.baidu.com/api/v3/entity/add';// 接口地址$param['ak']= $ak;$param['service_id']='您的service';$param['entity_name']='entity_1';$param['entity_desc']='zhangsan';// 只支持x-www-form-urlencoded格式的请求$param =http_build_query($param);// 发送请求$res =request_post($url, $param);// 将原始返回的结果打印出来print("请求的原始返回结果为:");print($res . "");?>
注意:拷贝示例代码后,请在代码中填入您的serviceid再运行;
假设开发者使用自定义字段管理功能为entity创建了两个属性字段:city 和 district
{"status":0,"message":"成功"}
更新 entity 的属性信息,如 entity 的描述、entity自定义属性字段的值。
https://yingyan.baidu.com/api/v3/entity/update
//post请求
参数名称 | 字段含义 | 数据类型 | 是否必填 | 备注 |
---|---|---|---|---|
ak | 用户的ak,授权使用 | string | 是 | |
service_id | service的id,service 的唯一标识 | int | 是 | service 的唯一标识。在轨迹管理台创建鹰眼服务时,系统返回的 service_id |
entity_name | entity名称,作为其唯一标识 | string(128) | 是 | 不可更新 |
entity_desc | entity 的可读性描述 | string(128) | 否 | 可更新 |
column-key | 开发者自定义字段 | string(128) | 否 | 可更新 |
sn | 用户的权限签名,若用户所用ak的校验方式为sn校验时该参数必须。sn计算方法 | string | 否 |
参数名 | 字段含义 | 类型 | 备注 |
---|---|---|---|
status | 状态码 | int | 返回状态,0为成功 |
message | 响应信息 | string | 对status的中文描述 |
假设开发者为 entity 创建了两个自定义字段:city 和 district
{"status":0,"message":"成功"}
根据entity_name删除一个entity。
https://yingyan.baidu.com/api/v3/entity/delete
//post请求
参数名称 | 字段含义 | 数据类型 | 是否必填 | 备注 |
---|---|---|---|---|
ak | 用户的ak | string | 是 | |
service_id | service的id,service 的唯一标识 | int | 是 | 在轨迹管理台创建鹰眼服务时,系统返回的 service_id |
entity_name | entity名称,作为其唯一标识 | string(128) | 是 | 同一service服务中entity_name不可重复。一旦创建entity_name 不可更新。 命名规则:仅支持中文、英文大小字母、英文下划线"_"、英文横线"-"和数字。 entity_name 和 entity_desc 支持联合模糊检索。 注意:一个service最多创建100万个entity,达到上限后将无法再创建新的entity。 |
entity_desc | entity 的可读性描述 | string(128) | 否 | 命名规则:仅支持中文、英文大小字母、英文下划线"_"、英文横线"-"和数字。entity_name 和 entity_desc 支持联合模糊检索。 |
column-key | 开发者自定义字段 | string(128) | 是否 | |
sn | 用户的权限签名,若用户所用ak的校验方式为sn校验时该参数必须。sn计算方法 | string | 否 |
参数名 | 字段含义 | 类型 | 备注 |
---|---|---|---|
status | 状态码 | int | 返回状态,0为成功 |
message | 响应信息 | string | 对status的中文描述 |
{"status":0,"message":"成功"}
根据entity_name、自定义字段或活跃时间,查询符合条件的entity。
https://yingyan.baidu.com/api/v3/entity/list
//get请求
参数名称 | 字段含义 | 数据类型 | 是否必填 | 备注 |
---|---|---|---|---|
ak | 用户的ak,授权使用 | string | 是 | |
service_id | service的id,service 的唯一标识 | int | 是 | service 的唯一标识。在轨迹管理台创建鹰眼服务时,系统返回的 service_id |
filter | 过滤条件 | string | 否 | 支持根据多个条件筛选,多个条件用竖线分隔(active_time 和 inactive_time 不可同时输入)
规则:filter=key1:value1|key2:value2。
示例:"filter=entity_names:张三,李四|active_time:1471708800|team:北京"
目前,支持的筛选字段为:
1)entity_names: entity_name列表,多个entity用逗号分隔,精确筛选。示例:"entity_names:张三,李四"
2)active_time:unix时间戳,查询在此时间之后有定位信息上传的entity(loc_time>=active_time)。如查询2016-8-21 00:00:00之后仍活跃的entity,示例:"active_time:1471708800"
3)inactive_time:unix时间戳,查询在此时间之后无定位信息上传的entity(loc_time |
coord_type_output | 返回结果的坐标类型 | string | 否 | 默认值:bd09ll 该字段用于控制返回结果中坐标的类型。可选值为: bd09ll:百度经纬度坐标 gcj02:国测局加密坐标 注:该字段在国外无效,国外均返回 wgs84坐标 |
page_index | 分页索引 | int(1到2^32-1) | 否 | 默认值为1。page_index与page_size一起计算从第几条结果返回,代表返回第几页。 |
page_size | 分页大小 | int(1-1000) | 否 | 默认值为100。page_size与page_index一起计算从第几条结果返回,代表返回结果中每页有几条记录。 |
sn | 用户的权限签名,若用户所用ak的校验方式为sn校验时该参数必须。sn计算方法 | string | 否 |
参数名 | 字段含义 | 类型 | 备注 | ||
---|---|---|---|---|---|
status | 状态码 | int | 返回状态,0为成功 | ||
message | 响应信息 | string | 对status的中文描述 | ||
total | 本次检索总结果条数 | int | 代表符合本次检索条件的结果总数 | ||
size | 本页返回的结果条数 | int | 代表本页返回了多少条符合条件的entity | ||
entities | entity详细信息列表 | ||||
entity_name | entity名称,其唯一标识 | string | |||
entity_desc | entity 可读性描述 | string | |||
modify_time | entity属性修改时间 | 格式化时间 | 该时间为服务端时间 | ||
create_time | entity创建时间 | 格式化时间 | 该时间为服务端时间 | ||
开发者自定义的entity属性信息 | string | 只有当开发者为entity创建了自定义属性字段,且赋过值,才会返回。 | |||
latest_location | 最新的轨迹点信息 | ||||
latitude | 纬度 | double | 根据coord_type_output 返回相应的坐标 | ||
longitude | 经度 | double | 根据coord_type_output 返回相应的坐标 | ||
radius | 定位精度 | double | 单位:m | ||
loc_time | 该entity最新定位时间 | unix时间戳 | 该entity最新定位时间(定位时设备的时间) | ||
direction | 方向 | int | 范围为[0,359],0度为正北方向,顺时针 | ||
speed | 速度 | double | 单位:km/h | ||
height | 高度 | double | 单位: m | ||
floor | 楼层 | string | 若处于百度支持室内定位的区域,则将返回楼层信息,默认 null | ||
object_name | 对象数据名称 | string | 若无值则不返回该字段 | ||
开发者自定义track的属性 | unix时间戳 | 只有当开发者为track创建了自定义属性字段,且赋过值,才会返回。 |
输入ak可生成包含ip/sn校验方式的代码
<?php// 此处填写你在控制台-应用管理-创建应用后获取的ak$ak ='您的ak';// 此处填写您在鹰眼轨迹管理平台创建的service_id// 发起一个http get请求,并返回请求的结果// $url字段为请求的地址// $param字段为请求的参数functionrequest_get($url ='', $param =array()){if(empty($url)||empty($param)){returnfalse;}$geturl = $url ."?".http_build_query($param);$curl =curl_init();// 初始化curlcurl_setopt($curl,curlopt_url, $geturl);// 抓取指定网页curl_setopt($curl,curlopt_timeout,1000);// 设置超时时间1秒curl_setopt($curl,curlopt_returntransfer,1);// curl不直接输出到屏幕curl_setopt($curl,curlopt_header,0);// 设置header$data =curl_exec($curl);// 运行curlif(!$data){print("an error occured in function request_get(): ".curl_error($curl)."\n");}curl_close($curl);return $data;}// 请求地址$url ='https://yingyan.baidu.com/api/v3/entity/list';// 此处设置过滤条件$param['ak']= $ak;$param['service_id']='您的service';$param['filter']='entity_names:entity_1';$res =request_get($url, $param);// 将原始返回的结果打印出来print("请求的原始返回结果为:\n");print($res ."\n");?>
注意:拷贝示例代码后,请在代码中填入您的serviceid再运行;
{"status":0,"message":"成功","size":2,"total":2,"entities":[{"entity_name":"小王","create_time":"2016-11-01 11:56:32","modify_time":"2016-11-01 13:27:59","latest_location":{"loc_time":1477978078,"longitude":116.3189288575,"latitude":40.04780579193,"direction":64,"height":53,"radius":4,"speed":37.73},"city":"北京","district":"海淀","entity_desc":"小王_01"},{"entity_name":"小明","create_time":"2017-03-15 15:56:04","modify_time":"2017-06-01 14:01:31","latest_location":{"loc_time":1488785466,"longitude":116.45644006808,"latitude":39.929082990815,"direction":12,"height":113.76,"radius":3,"speed":15.23},"city":"北京","district":"海淀","entity_desc":"小明_01"}]}
上一篇
下一篇
本篇文章对您是否有帮助?