代码拉取完成,页面将自动刷新
package vehicleprotocol
type TMsgType string
type TServiceType string
const (
MT_DEVICE_REQ TMsgType = "deviceReq" //设备 --(上报)--> 云端 ”deviceReq”
MT_DEVICE_RSP TMsgType = "deviceRsp" //设备 <--(响应)-- 云端 ”deviceRsp”
MT_CLOUD_REQ TMsgType = "cloudReq" //云端 --(下发)--> 设备 ”cloudReq”
MT_CLOUD_RSP TMsgType = "cloudRsp" //云端 <--(响应)-- 设备 ”cloudRsp”
)
const (
ST_OBU_STATUS TServiceType = "obu-status" // 状态上报
ST_ACK TServiceType = "ACK" // 车辆确认收到消息
ST_DISTRIBUTE_COMMAND TServiceType = "distribute-command" // 发送控制指令
ST_DISTRIBUTE_ROUTE TServiceType = "distribute-route" // 下发园区路线
ST_DISTRIBUTE_MAP TServiceType = "distribute-map" // 下发地图
ST_RSI TServiceType = "RSI" // 下发rsi
)
type MsgData[T any] struct {
MsgId string `json:"msgId"` //消息ID
MsgType TMsgType `json:"msgType"` //消息类型
EncryptFlag int16 `json:"encryptFlag"` //加密方式:0-不加密 1 -SM4加密
ReportTime string `json:"reportTime"` //设备数据上报时间,毫秒时间戳
ServiceType TServiceType `json:"serviceType"` //服务类型
ServiceData T `json:"serviceData"` //具体通信的数据,类型由泛型T定义
}
type Point3D struct {
Lon float64 `json:"lon"` // 经度
Lat float64 `json:"lat"` // 纬度
Ele float64 `json:"ele"` // 高度
}
// 车辆信息上报
type VehicleStatusData struct {
CollectTime string `json:"collectTime"` // 数据采集时间,毫秒时间戳
DeviceSn string `json:"deviceSn,omitempty"` // 终端设备序列号,可选
DeviceStatus int16 `json:"deviceStatus"` // 设备状态:0-离线 1-在线
DrivingMode int16 `json:"drivingMode"` // 自动驾驶状态:0-自动驾驶,1-人工驾驶,2-远程驾驶
Longitude float64 `json:"longitude"` // 位置信息经度,14位小数,厘米级定位精度
Latitude float64 `json:"latitude"` // 位置信息纬度,14位小数,厘米级定位精度
Elevation float64 `json:"elevation"` // 高程,单位米
Speed float32 `json:"speed"` // 速度,单位:m/s
EnduranceMileage float32 `json:"enduranceMileage,omitempty"` // 续航里程,单位km,可选
Heading float32 `json:"heading"` // 航向角度,与正北方向顺时针方向夹角[0,360)
DoorStatus string `json:"doorStatus,omitempty"` // 车门状态,可选
LightStatus string `json:"lightStatus"` // 车灯状态
SensorAcceEffect int16 `json:"sensorAcceEffect,omitempty"` // 传感器加速度有效性,可选
LongitudinalAcce float32 `json:"longitudinalAcce,omitempty"` // 纵加速度,m/s²,可选
TransverseAcce float32 `json:"transverseAcce,omitempty"` // 横加速度,m/s²,可选
VerticalAcce float32 `json:"verticalAcce,omitempty"` // 垂直加速度,m/s²,可选
YawAcce float32 `json:"yawAcce,omitempty"` // 横摆角速度,rad/s²
RollAcce float32 `json:"rollAcce,omitempty"` // 横滚角速度
PitchAcce float32 `json:"pitchAcce,omitempty"` // 俯仰角速度
CarWidth float32 `json:"carWidth,omitempty"` // 车辆宽度 m
CarLength float32 `json:"carLength,omitempty"` // 车辆长度 m
CarHeight float32 `json:"carHeight,omitempty"` // 车辆高度 m
CarClass float32 `json:"carClass,omitempty"` // 车辆类型 0:乘用车 1:商用车 2:特殊车辆
PlateNumber string `json:"plateNumber"` // 车的第三方唯一标识,或车牌号
Gear int16 `json:"gear"` // 档位0-neutral,1-park,2-forwardGears,3-reverseGear,7-unavailable
WheelAngleEffect int16 `json:"wheelAngleEffect,omitempty"` // 方向盘转角有效性,可选
WheelAngle float32 `json:"wheelAngle,omitempty"` // 方向盘转角,正值表示向右,负值表示向左,(-126..127),分辨率为1.5°,可选
Brake int `json:"brake,omitempty"` // 刹车力度 (0-100%)
Epb int `json:"epb,omitempty"` // 辅助刹车 0:松开 1:拉上
Soc float32 `json:"soc"` // 电池电量
Mileage float32 `json:"mileage"` // 当前行驶里程
Lane int `json:"lane"` // 车辆换道状态(0: 左转;1: 右转;2: 直行)
DrivingStatus string `json:"drivingStatus"` // 车辆行驶状态(STANDBY: 待机,无规划状态 REDAY:有规划,坐标启 STARTING: 启动中 RUNNING: 行驶中ARRIVING:即将到站 WATCHING:车辆处于观察状态,观察路口,红绿灯,障碍物等 PAUSING: 即将停车 PAUSED: 停车 DESTINATION ARRIVED: 到达目的地 MANUAL: 人工驾驶 AVOIDOBS:避障 STOPOBS:停障)
WarnClassi int `json:"warnClassi"` // 故障分类
WarnLevel int `json:"warnLevel"` // 故障预警级别,无故障时为0
WarnCode int `json:"warnCode"` // 故障码,无故障时为0
Direction int `json:"direction"` // 路线状态:0 上行 1下行
CarColor int `json:"carColor"` // 车身颜色
PlateColor int `json:"plateColor"` // 牌照颜色
WazaNum int `json:"wazaNum"` // 荷载人数
AccumTime int `json:"accumTime"` // 行驶时长(分钟)
TestType int `json:"testType"` // 测试类型
TestMode int `json:"testMode"` // 测试模式
StopId int `json:"stopId"` // 站点ID
ArrivedTime string `json:"arrivedTime"` // 到达时间
ArriveOntime int `json:"arriveOntime"` // 是否准时到达
}
// 车辆回复已收到
type VehicleAck struct {
DeviceSn string `json:"deviceSn"` // 终端设备序列号
TargetMsgId string `json:"targetMsgId"` // 命令ID
Ack int16 `json:"ack"` // 命令结果
}
// 车辆控制命令
type DistributeCommand struct {
DeviceSn string `json:"deviceSn"` // 设备序列号
Command string `json:"command"` // 车辆控制命令
ExtData any `json:"extData,omitempty"` // 车辆控制命令
}
// 收到地图数据
type ReceivedMapData struct {
DeviceSn string `json:"deviceSn"` // 设备序列号
ParkList []ParkObject `json:"parkList"` // 园区编号1-65535
}
// 下发路线
type DistributeRoute struct {
DeviceSn string `json:"deviceSn"` // 设备序列号
Park string `json:"park"` // 园区编号1-65535
Route string `json:"route"` // 路线编号1-65535
IsCircle int `json:"isCircle"` // 循环次数,0无限循环,1循环一次
}
// 下发地图
type DistributeMap struct {
DeviceSn string `json:"deviceSn"` // 设备序列号
Url string `json:"url"` // 地图URL
}
// RSI event
type RsiEvent struct {
EventId int `json:"eventId"` // 接受设备的序列号
EventType int `json:"eventType"` // 设备位置
PlacePosition Point3D `json:"placePosition"` // 路线编号1-65535
}
// 下发RSI
type RSI struct {
DeviceSn string `json:"deviceSn"` // 接受设备的序列号
RefPos Point3D `json:"refPos"` // 设备位置
Events []RsiEvent `json:"events"` // 事件
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。