数据服务接口
本服务仅适用于已部署阿里云Vlog基础设施的场景,开发者可以基于此API查询Vlog的运行统计数据,用以展示或分析。
接口说明
接入方式
SDK依赖
本例提供java sdk pom依赖示例,更多语言SDK详情请参考API调用对接指引
<dependency>
<groupId>com.aliyun.api.gateway</groupId>
<artifactId>sdk-core-java</artifactId>
<version>1.1.0</version>
</dependency>
示例代码
HttpClientBuilderParams builderParams =newHttpClientBuilderParams();
builderParams.setAppKey("${appKey}");// 请填写正确的AppKey
builderParams.setAppSecret("${appSecret}");// 请填写正确的AppSecret
ApacheHttpClient apacheHttpClient =newApacheHttpClient(builderParams);
IoTApiRequest request =newIoTApiRequest();
//设置api的版本
request.setApiVer("1.0.0");
//如果需要登录,设置当前的会话的token
//设置参数
request.putParam("model","xxxxxx");
request.putParam("projectId","yyyyy");
Map<String,Object> param =newHashMap<>(8);
param.put("startTime","2019-01-01");
param.put("endTime","2019-01-31");
param.put("limit",10);
request.putParam("paramJson",JSONObject.toJSONString(param));
//请求参数域名、path、request
String host ="api.link.aliyun.com";
String path ="/tourism/statistics/query";
System.out.println(JSON.toJSONString(request));
ApiRequest apiRequest =newApiRequest(HttpScheme.HTTP, host,
HttpMethod.POST_BODY, path, JSON.toJSONBytes(request));
apiRequest.setHttpConnectionMode(HttpConnectionModel.MULTIPLE_CONNECTION);
ApiResponse response = apacheHttpClient.sendSyncRequest(apiRequest);
System.out.println(request.getId());
System.out.println(
"response code = "+ response.getCode()+" response message = "+ response.getMessage()
+" response content = "+newString(response.getBody(),
"utf-8"));
接口说明
API 名称 | API 描述 | 使用场景 | path |
离线统计查询 | 查询离线统计数据,包括游客、景点信息等 | 查询vlog使用的相关离线统计数据 | /vlog/open/statistics/list |
本API仅有统计类事件数据,用以产品运行效能监测和优化分析,不涉及任何个体数据
接口详情
API定义
path | 说明 | 版本 |
/vlog/open/statistics/list | 离线统计查询 | 1.0.0 |
请求参数
属性 | 类型 | 是否必填 | 说明 |
projectId | String | 是 | 项目id |
cameraId | String | 否 | 查询摄像头的客流时,必须填写该字段(摄像头列表不需要该字段) |
modelId | String | 是 | 模型id,区分具体返回什么内容,参看请求对应列表 |
paramJson | JSON | 是 | 时间段,[startTime. endTime),包含startTime,不包含endTime (查询摄像头列表时不做格式限制,随意) |
-startTime | String | 是 | 开始时间 格式:“2020121802”表示查询2020年12月18日02:00:00开始的数据(严格按照该格式填写yymmddhh,长度10) |
-endTime | String | 是 | 结束时间 格式:“2020121802”表示查询2020年12月18日02:00:00截止的数据(严格按照该格式填写yymmddhh,长度10) (endTime > startTime) |
当startTime和endTime相差小于等于24小时,返回查询中每个小时的数据列表;
当startTime和endTime相差大于24小时,返回当前查询中每天(全天)的数据列表。
查询项目摄像头列表时,paramJson保持格式一致,取值随意。
具体日期格式如下,根据格式不同查询不同内容——趋势(时间段)、小时(小时级)
“paramJson”:{ // 时间差<=24小时,
// 小时级,
// 代表查询12月18日中22:00:00到12月19日中01:59:59之间的每个小时的数据
"startTime":"2020121822",
"endTime":"2020121902"
}
“paramJson”:{ // 时间差>24小时,
// 指定时间段,
// 代表查询12月18日(包含18)到12月19日(不包含19)的全天数据,即返回12月18日当天数据
"startTime":"2020121802",
"endTime":"2020121904"
}
返回值
属性 | 子属性 | 类型 | 说明 |
id | String | request id | |
code | int | 错误码,成功时返回200 | |
message | String | 错误描述,成功时返回"success" | |
localizedMsg | String | 本地语言错误消息 | |
data | JSON | ||
series | JSONArray | 结果数据集合,每个JSON元素代表一系列数据 | |
-name | String | 结果数据系列名称 | |
-values | JSONArray | 结果数据系列值 |
请求列表数据
列出不同modelId对应的返回内容,具体返回参看“调用示例”
modelId | 说明 |
IOTXAI_VLOG_PROJECT_REALTIME_STAT | 项目流量概览 |
IOTXAI_VLOG_PROJECT_CAMERA_LIST | 项目摄像头列表 |
IOTXAI_VLOG_CAMERA_TOURIST_OVERVIEW | 单摄像头客流统计 |
调用示例
项目概览
请求示例
{
"projectId":"a1240oTzoxy5QFFO",
"modelId":"IOTXAI_VLOG_PROJECT_REALTIME_STAT",
"paramJson": {
"startTime": "2020121100",
"endTime": "2020121301" // 查询2020年12月11日(包含)-12月13(不包含)的数据
},
"version":"1.0.0"
}
返回示例
{
"id":"246da69e-40ad-4f44-955e-ac880f9867d8",
"code":200,
"message":"success",
"localizedMsg":"success",
"data":{
"series":[
{
"name":"date", // 日期
"values":[
"20201211",
"20201212"
]
},
{
"name":"touristNum", // 游客数量
"values":[
"402",
"150"
]
},
{
"name":"appUerUV", // 小程序访问人数UV
"values":[
"163",
"27"
]
},
{
"name":"generateNumUV", // 生成视频人数UV
"values":[
"73",
"1"
]
},
{
"name":"playNumUV", // 观看人数UV
"values":[
"72",
"0"
]
},
{
"name":"downloadNumUV", // 下载人数点击UV
"values":[
"54",
"0"
]
},
{
"name":"paidNumUV", // 支付人数
"values":[
"0",
"0"
]
},
{
"name":"shareNum", // 分享人数
"values":[
"43",
"0"
]
},
{
"name":"appUserPV", // 小程序打开次数PV
"values":[
"435",
"51"
]
},
{
"name":"generateNumPV", // 生成视频量PV
"values":[
"137",
"1"
]
},
{
"name":"playNumPV", // 观看次数PV
"values":[
"363",
"7"
]
},
{
"name":"downloadNumPV", // 下载次数PV
"values":[
"94",
"0"
]
},
{
"name":"paidOrderNum", // 支付笔数
"values":[
"0",
"0"
]
}
]
}
}
获取摄像头列表
请求示例
{
"projectId":"a1240oTzoxy5QFFO",
"modelId":"IOTXAI_VLOG_PROJECT_CAMERA_LIST",
“paramJson”:{ // 查询摄像头列表,paramJson格式保持一致、取值随意
"startTime": "2020121802",
"endTime": "2020121803"
}
"version":"1.0.0"
}
返回示例
{
"id":"246da69e-40ad-4f44-955e-ac880f9867d8",
"code":200,
"message":"success",
"localizedMsg":"success",
"data":{
"series":[
{
"name":"cameraId", // 摄像头iot_id
"values":[
"2HtXcZGqgPfMbNiX4HxW", "F4FXcZG4kdYbNiX423g", "F4FXcZGqgPfMbNasdf34g"
]
}
]
}
}
单摄像头客流量统计
请求示例
{
"projectId":"a1240oTzoxy5QFFO",
"modelId":"IOTXAI_VLOG_CAMERA_TOURIST_OVERVIEW",
"cameraId":"2HtXcZGqgPfMbNiX4HxW",
“paramJson”:{
"startTime": "2020121802",
"endTime": "2020121804" // 查询2020年12月18日02:00:00到03:59:59的数据
},
"version":"1.0.0"
}
返回示例
{
"id":"246da69e-40ad-4f44-955e-ac880f9867d8",
"code":200,
"message":"success",
"localizedMsg":"success",
"data":{
"series":[
{
"name":"date", // 日期
"values":[
"2020121802",
"2020121803"
]
},
{
"name":"touristsNum", // 游客数量
"values":[
"453",
"234"
]
}
]
}
}