车辆信息接口文档
1. 概述
- 连接方式:WebSocket
- 数据格式:JSON
- 交互逻辑:客户端建立 WebSocket 连接成功后,服务端会自动推送数据。
2. 接口详情
2.1 VehicleOrderInfo - 任务信息
- 接口地址:
ws://ip:port/ws/at_manager
- 用途:GUI 根据该消息刷新页面任务信息
- 推送频率:数据变化推送
- Message Name:
VehicleOrderInfo
输出参数
| 参数名 |
参数说明 |
是否必填 |
字段类型 |
备注说明 |
| messageName |
消息名称 |
是 |
str |
固定值 VehicleOrderInfo |
| businessKey |
任务id |
是 |
str |
任务的唯一标识 |
| vehicleId |
车号 |
是 |
str |
车号 |
| jobStatus |
任务状态 |
是 |
int |
0:未开始, 1:执行中, 4:终止, 9:完成 |
| abortBy |
取消来源 |
否 |
str |
描述任务是被谁终止的 |
| cancelReason |
取消原因 |
否 |
str |
描述任务取消的原因 |
| jobStage |
任务进度 |
是 |
str |
|
| jobStageTag |
任务进度标签 |
是 |
str |
|
| origin |
任务来源 |
是 |
str |
GUI客户端发送的任务 |
| jobType |
收送类型 |
是 |
str |
作业类型 |
| passingLocation |
任务必经点 |
否 |
str |
|
| isNeedToTs |
是否经过锁站 |
否 |
int |
|
| movementType |
作业类型 |
否 |
str |
|
| offset |
引导值 |
否 |
str |
|
| vesselVisitID |
船id |
否 |
str |
|
| uniqueOrderIDOrigin |
原始任务ID |
否 |
str |
重派的任务该字段为原始任务ID |
| destination |
目的位置 |
是 |
dict |
|
| └ logicalLocation |
目的位置 |
是 |
dict |
|
| ├ area |
目标区域类型 |
是 |
str |
固定值 YARD |
| ├ block |
目标区域 |
是 |
str |
|
| ├ lane |
车道 |
是 |
str |
|
| ├ stack |
贝位 |
是 |
str |
|
| points |
指定点位 |
否 |
dict |
该值不为空时系统使用该坐标导航(如GUI选点) |
| └ x |
x坐标 |
否 |
float |
|
| └ y |
y坐标 |
否 |
float |
|
| └ heading |
航向角 |
否 |
float |
|
| jobContent |
任务内容 |
否 |
dict |
结构同 destination |
| workflowNodes |
流程节点记录 |
是 |
list |
|
| └ node |
节点名字 |
是 |
str |
|
| └ time |
记录时间戳 |
是 |
float |
|
| └ origin |
来源 |
是 |
str |
AUTO:系统, GUI:人工 |
| └ state |
节点状态 |
是 |
bool |
open:当前节点打开, close:已完成 |
代码示例
{
"data": {
"messageName": "VehicleOrderInfo",
"businessKey": "1767666776611",
"tenantId": "UpHang",
"processDefKey": "UpHang",
"vehicleId": "AET01",
"jobStatus": 1,
"abortBy": null,
"orderStatus": "",
"cancelReason": null,
"jobStage": "HANG_UP",
"jobStageTag": "WORKING",
"jobStageVehicle": 0,
"origin": "FMS",
"jobType": "UpHang",
"qctpCranId": "",
"craneID": null,
"passingLocation": "",
"isNeedToTs": -1,
"isNeedReshuffGate": 0,
"movementType": "ProcessTask",
"vesselVisitID": null,
"loadable": false,
"executeTogether": false,
"doubleYardSpecialStack": null,
"uniqueOrderIDOrigin": "",
"firstJobId": "",
"destination": {
"logicalLocation": {
"area": "BackUp",
"block": "BU01",
"lane": "01",
"stack": "001",
"tier": ""
},
"portLocation": {
"fmsX": null,
"fmsY": null,
"fmsZ": null,
"orientation": null
}
},
"points": {},
"isSecondBox": false,
"boxBelongsJob": null,
"trainId": "",
"mainId": 1134,
"createOn": "2026-01-06T02:32:56.685437+00:00",
"updateOn": "2026-01-06T02:32:56.685437+00:00",
"plannedContainerDestinationList": [],
"jobExtra": {
"hangType": "large",
"hangNum": "4",
"uploadNum": "0"
},
"jobAdd": [
{
"destPointType": "gateDestination",
"destination": {
"area": "GateCheck",
"block": "GC01",
"lane": "01",
"stack": "001"
}
}
]
}
}
2.2 VehicleDetails - 车辆列表/类型
- 接口地址:
ws://ip:port/ws/at_manager
- 用途:GUI 根据该数据展示车辆模型
- 推送频率:数据发生变化推送
- Message Name:
VehicleDetails
输出参数
| 参数名 |
参数说明 |
是否必填 |
字段类型 |
备注说明 |
| messageName |
消息名称 |
是 |
str |
固定值 VehicleDetails |
| vehicleId |
车号 |
是 |
str |
|
| vehicleType |
车辆类型 |
是 |
str |
例如:QTRUCK |
代码示例
{
"messageName": "VehicleDetails",
"vehicleId": "AET01",
"vin": null,
"manufacturer": null,
"vehicleType": "QTRUCK",
"createAt": "2025-08-05T07:54:09.721537+00:00",
"updateAt": "2025-11-06T07:40:30.789366+00:00",
"color": null,
"engineType": null
}
2.3 VehicleLoginStatus - 车辆上线/下线消息
- 接口地址:
ws://ip:port/ws/at_manager
- 用途:GUI 根据该数据展示上线/下线的车
- 推送频率:数据发生变化推送
- Message Name:
VehicleLoginStatus
输出参数
| 参数名 |
参数说明 |
是否必填 |
字段类型 |
备注说明 |
| messageName |
消息名称 |
是 |
str |
固定值 VehicleLoginStatus |
| vehicleId |
车号 |
是 |
str |
|
| loginStatus |
上线下线状态 |
是 |
str |
login:在线, logout:离线 |
代码示例
{
"messageName": "VehicleLoginStatus",
"vehicleId": "AET01",
"loginStatus": "login"
}
2.4 VehicleChassisInfo - 单车底盘信息
- 接口地址:
ws://ip:port/ws/at_manager
- 用途:GUI 显示速度、电量、里程、底盘模式、胎压等
- 推送频率:数据发生变化推送
- Message Name:
VehicleChassisInfo
输出参数
| 参数名 |
参数说明 |
是否必填 |
字段类型 |
备注说明 |
| messageName |
消息名称 |
是 |
str |
固定值 VehicleChassisInfo |
| vehicleId |
车号 |
是 |
str |
|
| sys_info |
系统信息 |
否 |
dict |
|
| └ i_driving_mode |
驾驶模式 |
否 |
str |
|
| └ state_info |
状态信息 |
否 |
dict |
|
| ├ d_speed_kmph |
速度 |
是 |
Float |
单位: KM/小时 |
| ├ i_vehicle_miles_traveled |
里程表 |
否 |
str |
底盘记录总路程,单位 m |
| ├ d_battery_available |
电量 |
否 |
str |
剩余电量百分比 |
| ├ i_gear_position |
档位 |
否 |
int |
1:N, 2:D, 3:P, 4:R, 5:未知 |
代码示例
{
"messageName": "VehicleChassisInfo",
"vehicleId": "AET01",
"reportAt": 1767667344.8743727,
"sys_info": {
"i_at_id": "AET01",
"i_driving_mode": "1",
"overweight_speed_limit": 0,
"state_info": {
"d_speed_kmph": 0,
"d_battery_available": "0.0",
"d_battery_soh": "0.0"
}
}
}
2.5 VehicleSuspendReport - 车辆紧停状态
- 接口地址:
ws://ip:port/ws/at_manager
- 用途:GUI 操作紧停/恢复按钮状态,或展示当前车辆是否紧停
- 推送频率:数据发生变化推送
- Message Name:
VehicleSuspendReport
输出参数
| 参数名 |
参数说明 |
是否必填 |
字段类型 |
备注说明 |
| messageName |
消息名称 |
是 |
str |
固定值 VehicleSuspendReport |
| vehicleId |
车号 |
是 |
str |
|
| suspendStatus |
当前车辆状态 |
是 |
int |
0:恢复行驶, 1:紧急急停, 2:缓停 |
代码示例
{
"messageName": "VehicleSuspendReport",
"vehicleId": "AET01",
"suspendStatus": 0,
"origin": "device"
}
2.6 VehicleTailerNum - 拖挂数量
- 接口地址:
ws://ip:port/ws/at_manager
- 用途:推送单车拖挂数量
- 推送频率:N/A (通常为变化推送)
- Message Name:
VehicleTailerNum
输出参数
| 参数名 |
参数说明 |
是否必填 |
字段类型 |
备注说明 |
| messageName |
消息名称 |
是 |
str |
固定值 VehicleTailerNum |
| vehicleId |
车号 |
是 |
str |
|
| tailerNum |
拖挂数量 |
是 |
str |
0或空表示无挂,其他数字表示有挂 |
代码示例
{
"messageName": "VehicleTailerNum",
"vehicleId": "AET01",
"tailerNum": "0"
}
2.7 VehiclePositionInfo - 车辆位置信息
- 接口地址:
ws://ip:port/ws/at_manager_bsm
- 用途:GUI 根据该数据展示车辆位置信息
- 推送频率:数据发生变化推送
- Message Name:
VehiclePositionInfo
输出参数
| 参数名 |
参数说明 |
是否必填 |
字段类型 |
备注说明 |
| messageName |
消息名称 |
是 |
str |
固定值 VehiclePositionInfo |
| vehicleId |
车号 |
是 |
str |
|
| x |
车辆X坐标 |
是 |
float |
|
| y |
车辆Y坐标 |
是 |
float |
|
| theta |
车辆航向角 |
是 |
float |
弧度:正东0, 正北1.57, 正西3.14, 正南-1.57 |
| direction |
行驶方向 |
是 |
int |
1:正向行驶, 2:反向行驶 |
| trailer |
拖挂信息 |
是 |
dict |
|
| └ x |
拖挂x坐标 |
是 |
float |
不准,是车头坐标 |
| └ y |
拖挂Y坐标 |
是 |
float |
不准,是车头坐标 |
| └ theta |
拖挂角度 |
是 |
float |
弧度定义同上 |
代码示例
{
"messageName": "VehiclePositionInfo",
"vehicleId": "AET01",
"updateAt": "20260106T024227963Z",
"update_at": "20260106T024227963Z",
"reportAt": 1767667348.1297243,
"report_at": 1767667348.1297243,
"action": 0,
"z": 0,
"x": 6.12613,
"y": 101.70456,
"direction": 0,
"v": 0,
"theta": -1.5224342,
"trailer": {
"x": 3.555143,
"y": 111.36841,
"theta": 100000
}
}
2.8 NaviShortPathReport - 车辆短路径信息
- 接口地址:
ws://ip:port/ws/at_manager_path
- 用途:GUI 根据该数据展示车辆路径规划
- 推送频率:数据发生变化推送
- Message Name:
NaviShortPathReport
输出参数
| 参数名 |
参数说明 |
是否必填 |
字段类型 |
备注说明 |
| messageName |
消息名称 |
是 |
str |
固定值 NaviShortPathReport |
| vehicleId |
车号 |
是 |
str |
|
| vehicleMissionId |
任务ID |
是 |
str |
(注:原文此处类型标注为float有误,示例为str) |
| destinationType |
目的地类型 |
是 |
int |
|
| path |
路径信息 |
是 |
list |
|
| └ x |
路径点x坐标 |
是 |
float |
UTM坐标 |
| └ y |
路径点y坐标 |
是 |
float |
UTM坐标 |
| └ theta |
路径点角度 |
是 |
float |
弧度定义同上 |
代码示例
{
"vehicleId": "AET01",
"vehicleMissionId": "04078d1e-eaa8-11f0-8723-fa30eca52200",
"destinationType": "",
"shortNavi": false,
"path": [
{
"x": 6.126130111981183,
"y": 101.70455933734775,
"theta": -1.5224548170138026
},
{
"x": 6.138059945020359,
"y": 101.45796921849251,
"theta": -1.5224956618374788
},
{
"x": 6.650000399346166,
"y": 50.25839266739786,
"theta": -1.570796333683315
}
],
"messageName": "NaviShortPathReport"
}
2.9 GetFmsMessage - 系统和单车告警信息
- 接口地址:
ws://ip:port/ws/at_manager
- 用途:推送系统和单车的告警信息
- 推送频率:数据发生变化推送
- Message Name:
GetFmsMessage
输出参数
| 参数名 |
参数说明 |
是否必填 |
字段类型 |
备注说明 |
| messageName |
消息名称 |
是 |
str |
固定值 GetFmsMessage |
| vehicleID |
车号 |
是 |
str |
|
| description |
描述 |
否 |
str |
|
| code |
告警码 |
否 |
str |
|
| level |
告警等级 |
是 |
int |
|
| type |
来源 |
是 |
int |
1:单车, 2:系统告警 |
| ts |
告警时间 |
是 |
str |
时间戳 |
代码示例
{
"vehicleID": "AET01",
"code": "4119010",
"type": 1,
"level": 4,
"isActive": 1,
"longTermDisplayMessage": false,
"description": "里程计信息超时",
"ts": "2026-01-06T03:36:09.637195+00:00",
"messageName": "GetFmsMessage"
}