syntax = "proto3"; package org.jeecg.defsDetails.grpc; option java_multiple_files = true; option java_package = "org.jeecg.defsDetails.model"; option java_outer_classname = "Vehicle"; enum VehicleStatus{ STATUS_UNKOWN = 0; STATUS_MANUAL = 1; STATUS_AUTO = 2; STATUS_REMOTE = 3; STATUS_EMERGENCY_STOP = 4; STATUS_ERROR = 5; } enum ShiftStatus{ SHIFT_UNKOWN = 0; SHIFT_ERROR = 1; SHIFT_INTERVAL = 2; SHIFT_PARKING = 3; SHIFT_REVERSE = 4; SHIFT_NEUTRAL = 5; SHIFT_DRIVE = 6; SHIFT_SPORT = 7; SHIFT_LOW = 10; SHIFT_LEVEL1 = 11; SHIFT_LEVEL2 = 12; SHIFT_LEVEL3 = 13; SHIFT_LEVEL4 = 14; SHIFT_LEVEL5 = 15; SHIFT_LEVEL6 = 16; SHIFT_LEVEL7 = 17; SHIFT_LEVEL8 = 18; SHIFT_LEVEL9 = 19; SHIFT_LEVEL10 = 20; } message GPSPoint{ double latitude = 1; double longitude = 2; double height = 3; } enum UseStatus{ DEACTIVATING = 0;//停用中 ENABLING = 1;//启用中 IN_THE_MISSION = 2;//ÈÎÎñ;ÖÐ REMOTE_CTRL = 3;//È˹¤½Ó¹Ü״̬ BACK_TO_WAIT_STATION = 4;//»Øµ½´ýÃüµã;ÖÐ BACK_TO_MAINTAIN_STATION = 5;//»Øµ½³äµçµã;ÖÐ } enum VehicleClass{ RUN_ERRANDS = 0;//跑腿车 GUIDE = 1;//导览车 CLEAN = 2;//清扫车 } message UplinkRequest { string id = 1; int64 timeStamp = 2; double SOC = 3; //0.0-100.0% VehicleStatus statusFeedback = 4; double mileage = 5; // kilometer double speed = 6; // m/s ShiftStatus shiftFeedback = 7; double steeringWheelAngleFeedback = 8; //+/-540 degree double throttleFeedback = 9; double brakeFeedback = 10; int32 GPSRTKStatus = 11; //GPS-RTK status 0-6 6 is best GPSPoint positionFeedback = 12; double pitch = 13; double roll = 14; double heading = 15;//0北,90东,180南,270西 bytes cameraImageFront = 16; bytes cameraImageRear = 17; bytes cameraImageLeft = 18; bytes cameraImageRight = 19; bool sensorStatusGPSIMU = 20; //0 GPS-IMU ok 1 GPS-IMU error bool sensorStatusLidar = 21; bool sensorStatusRadar = 22; bool sensorStatusCamFront = 23; bool sensorStatusCamRear = 24; bool sensorStatusCamLeft = 25; bool sensorStatusCamRight = 26; int32 isArrived = 27; //0 no destination 1 not arrived 2 arrived string plateNumber = 28; CtrlMode modeFeedback = 29; //mode Feedback UseStatus useStatusFeedback = 30; //使用状态 double remainPathLength = 31; //剩余路径长度,没有目的地时为0 VehicleClass classFeedback = 32; //车类别 } enum CtrlMode{ CMD_AUTO = 0; CMD_REMOTE = 1; CMD_EMERGENCY_STOP = 2; CMD_CLOUD_PLATFORM = 3; // 云平台控制模式 merge into remote mode } message Empty { string id = 1; } message ResponseMessage{ GPSPoint destinationPosition = 1; //in auto mode } message MapPoint{ int64 index = 1; GPSPoint mapPoint = 2; } message UploadPathRequest{ string id = 1; // 车辆 SIM 码 string patrolPathID = 2; //对应巡逻路径的ID repeated MapPoint pathPoints = 3; double arrivedTime = 4; //到达路径终点预计耗时 单位为秒 by Samuel double waitTime = 5; //到达目的地后原地待命的时间 double totalPathLength = 6; //路径总长度 单位 米 }