全部产品

车辆调度

本服务适用于景区巴士及轮船等园内交通工具停靠点的调度,本服务依赖交通工具GPS数据、排队处客流数据、售票及核销的动态数据接入,再结合路线、交通工具等静态信息,输出指定停靠点需要排队人数、排队预估时长和是否需要调度车辆进行疏导的结果。

1、服务介绍

本服务适用于景区巴士及轮船等园内交通工具停靠点的调度,本服务依赖交通工具GPS数据、排队处客流数据、售票及核销的动态数据接入,再结合路线、交通工具等静态信息,输出指定停靠点需要排队人数、排队预估时长和是否需要调度车辆进行疏导的结果。

2、API说明

本服务包含数据的接入和结果的输出,请务必注意,必须有数据输入,才可以有结果输出。

2.1 数据接入

2.1.1 接入方式

对接详情参考数据对接指引

2.1.2 接口说明

车辆数据

模型ID: PassengerVehicleLog

模型版本: 1.0

名称

属性

类型

必须

备注

车牌号

plateNumber

String

车牌号,如无车牌则为车辆唯一编号

位置经度

longitude

Double

位置经度-高德坐标系

位置经度

latitude

Double

位置经度-高德坐标系

位置

position

String

当前位置名称,例如:”江西庐山公安局附近19米”

路线

lineId

String

车辆线路(仅支持固定线路车辆)

座位总数

totalSeats

Integer

比如“10”

要求:

1、30秒上报一次车辆坐标数据。

2、车辆出发、每次到站及离站上报空余座位(可选)、当前站点、状态数据。

票务数据

模型ID: PassengerTicketingLog

模型版本:1.0

1、票务数据和入园票务保持一致,详情请参考智慧票务 1.2模块。

2、景点数据使用项目整体数据,详情请参考景区管理 1.1模块。

要求:买票和刷票后,分别上报一次票数数据

站点巴士/客流数据

模型ID:PassengerStationLog

模型版本:1.0

名称

属性

类型

必须

备注

站点ID

scenicSpotId

String

站点ID,文旅景点ID - scenicSpotId

排队人数

passengerQueueLength

Integer

客流排队人数

车辆总数

totalVehicle

Integer

可调度车辆总数

要求:30秒上报更新站点排队及可调度车辆数据

车辆核票数据

模型ID:PassengeCheckInRecord

模型版本:1.0

名称

属性

类型

必须

备注

站点ID

scenicSpotId

String

站点ID

车票ID

ticketId

String

车票ID

游客ID

touristId

String

游客ID

进入媒介

media

String

MANUAL-人工/FACEACCESS-人脸/PAPER-纸质/QRCODE-二维码

摄像头设备数据

模型ID:TourismDeviceInfo

模型版本:1.0

名称

属性

类型

必须

备注

产品Key

productKey

String

产品Key

设备名称

deviceName

String

设备名称

景点ID

scenicSpotId

String

景点ID

景区ID

scenicAreaId

String

景区ID

车辆路线数据(可选)

模型ID:PassengerVehiclePath

模型版本:1.1

名称

属性

类型

必须

备注

路线ID

lineId

String

线路ID

站点ID路径

stationIdPath

String

站点ID列表 :S1/S2/S3

站点名路径

stationNamePath

String

站点名列表:站点1/站点2/站点3

景区ID

scenicAreaId

String

景区ID

2.2 调度结果输出

2.2.1 接入方式

SDK依赖

本例提供java sdk pom依赖示例,更多语言SDK详情请参考API调用对接指引

<dependency>
<groupId>com.aliyun.api.gateway</groupId>
<artifactId>sdk-core-java</artifactId>
<version>1.6.0.3</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"));

2.2.2 接口说明

站点排队查询

Path

版本

是否登录

/tourism/scenicspot/passenger/dispatcher/query

1.0.0

入参

参数名

数据类型

是否必填

参数描述

scenicSpotIds

List<String>

站点ID列表

projectId

String

项目ID

出参

参数名

数据类型

参数描述

code

Integer

错误码,code=200表示正确,其他表示错误

message

String

结果信息,错误的时候是错误提示

data

JSONArray

结果数据

-queueLength

Integer

排队人数

-waitingTime

Integer

排队时长(秒)

-needVehicle

Integer

需要车辆

-scenicSpotId

String

站点ID

-scenicSpotName

String

站点名称

-nextVehicleArriveTime

Integer

下一辆车到达时间(秒),依赖车辆行驶固定路线

-nextVehiclePlateNumber

String

下一辆车到达车牌

-nextVehicleDistance

Double

下一辆车距离(公里)