[630][adas] 新增连接状态和证书认证状态

This commit is contained in:
xinfengkun
2024-02-28 08:55:26 +08:00
parent db084b39ef
commit 6371ed33c4
2 changed files with 77 additions and 16 deletions

View File

@@ -1,7 +1,7 @@
syntax = "proto3";
package mogo.telematics;
enum ParamSetType
enum ParamSetType
{
ParamSetTypeNone = 0;
ParamSetTypeBlindArea = 1; //bool, 0:off 1:on

View File

@@ -2,25 +2,26 @@ syntax = "proto3";
package com.zhjt.mogo.adas.data;
//MAP系统参数类型
//MAP系统参数类型 以下全部除了9全部支持设置以下全部除了17可以查询但是是否有意义需要询问pnc相关人员全部支持查询
enum MapSystemParamType{
DEFAULT_TYPE = 0;
DETOURING = 1;//绕障类功能开关
DETOURING_SPEED = 2;//变道绕障的目标障碍物速度阈值
AEB = 3;//AEB开关
LANE_CHANGE_RESTRAIN_VALID = 4;//限制绕障开关
STOP_YIELD_VALID = 5;//停车让行线前避让等待开关
HADMAP_SPEED_LIMIT_VALID = 6;//地图限速功能开关
RAMP_THETA_VALID = 7;//环岛模式开关
WEAK_NET_SLOW_DOWN = 8;//弱网减速停车策略开关
M1_STITCHED_VIDEO_SELF_VEHICLE_PARAM = 9;//m1拼接视频自车位置参数(string), 格式:x,y,width,height
BREAKDOWN_SLOW_DOWN = 10;//故障减速停车策开关
BLIND_AREA = 11;//盲区开关(bool) 0: off 1:on /telematics/sensor/blindarea_flag
V2N_TO_PNC = 12;//融合v2n开关(bool) 0:不发给PnC 1:发给Pnc /telematics/fusion/v2n_flag
V2I_TO_PNC = 13;//融合v2i开关(bool) 0:不发给PnC和鹰眼 1:发给Pnc和鹰眼默认0 /telematics/fusion/v2i_flag
FUSION_MODE = 14;//融合模式(int) 1:全融合模式 2:盲区模式 3:超视距模式 4:透传模式 5:纯路侧模式默认1 /telematics/fusion/fusion_mode
DETOURING = 1;//1:绕障类功能开关(bool)
DETOURING_SPEED = 2;//2:变道绕障的目标障碍物速度阈值(double, m/s)
AEB = 3;//3:AEB开关(bool) 0:关闭自动紧急制动功能 1:启用自动紧急制动功能
LANE_CHANGE_RESTRAIN_VALID = 4;//4:限制绕障开关(bool) 0:正常绕障 1限制绕障 默认0
STOP_YIELD_VALID = 5;//5:停车让行线前避让等待开关(bool) 0:停车让行线前无需等待 1:停车让行线前需要等待 默认0
HADMAP_SPEED_LIMIT_VALID = 6;//6:地图限速功能开关(bool) 0:不使用地图限速功能 1:使用地图限速功能 默认0
RAMP_THETA_VALID = 7;//7:环岛模式开关(bool) 0:普通模式 1:环岛模式 默认0
WEAK_NET_SLOW_DOWN = 8;//8:弱网减速停车策略开关(bool) 0:关闭弱网减速停车策略 1:使用弱网减速停车策略 默认1
M1_STITCHED_VIDEO_SELF_VEHICLE_PARAM = 9;//9:m1拼接视频自车位置参数(string), 格式:x,y,width,height
BREAKDOWN_SLOW_DOWN = 10;//10:故障减速停车策开关(bool) 0:关闭故障减速停车策略 1:使用故障减速停车策略 默认1
BLIND_AREA = 11;//11: 盲区开关(bool) 0: off 1:on /telematics/sensor/blindarea_flag
V2N_TO_PNC = 12;//12: 融合v2n开关(bool) 0:不发给PnC 1:发给Pnc /telematics/fusion/v2n_flag
V2I_TO_PNC = 13;//13: 融合v2i开关(bool) 0:不发给PnC和鹰眼 1:发给Pnc和鹰眼默认0 /telematics/fusion/v2i_flag
FUSION_MODE = 14;//14: 融合模式(int) 1:全融合模式 2:盲区模式 3:超视距模式 4:透传模式 5:纯路侧模式默认1 /telematics/fusion/fusion_mode
SEAT_STATE = 15;//15: 座椅状态(int) 0:表示仅主驾位有人,1:表示仅副驾位有人,2:表示主驾和副驾同时有人,3:表示仅后排有人,4:表示主驾有人+后排有人,5:表示副驾有人+后排有人,6:表示主驾和副驾同时有人+后排有人,7: 所有座位都无人, 255:缺省
OVERTAKE_MAX_SPEED = 16;//16: 超车的最大速度阈值(double, m/s, 范围[3, 12.5])
FAULT_SIMULATION_CMD = 17;//17: 故障模拟指令(int) default:0(do nothing), 1:线控失效
}
/**
@@ -42,3 +43,63 @@ enum SsmSource{
SSM_VER2 = 2;//版本2定频回调
}
/**
* 域控连接状态
*/
enum IpcConnectionStatus{
DISCONNECTED = 0;//未连接或主动断开连接(未连接:鹰眼首次启动时未调用连接函数;主动断开连接:主动调用断开连接函数;)
CONNECTED = 1;//已连接(表示鹰眼与域控成功建立连接)
CONNECTING = 2;//连接中( 表示鹰眼正在与域控进行连接)
RECONNECTING_TIMER = 3;//重连中(定时器)【表示鹰眼与工控机连接失败,正在尝试建立新的连接】
RECONNECTING_NETWORK = 4;//重连中(网络监听)【表示鹰眼与工控机连接失败,正在尝试建立新的连接】
CONNECT_EXCEPTION = 5;//连接异常( 表示鹰眼与域控连接失败、无法连接、非正常断开等,会给出具体的异常原因【提示原因为英文】)
ILLEGAL_ADDRESS = 6;//非法地址连接模式为指定地址时表示当前鹰眼调用连接时传入的域控地址错误或不符合规则【不修改默认配置不会出现此问题】连接模式为PING模式时表示传入的PING地址列表存在问题
SEARCH_ADDRESS = 7;//正在搜索域控地址(表示当前鹰眼正在查找是否有可用的域控地址)
NOT_FOUND_ADDRESS = 8;//找不到可用地址当前鹰眼配置的域控地址列表中的全部地址均无法PING通【不修改默认配置的情况下需要排查PAD是否连接车载路由器、工控机是否连接车载路由器、工控机是否开机等】
CERTIFICATION_FAILED = 9;//认证异常表示鹰眼端或鹰眼端和域控端启用认证后认证出现异常。具体认证异常状态详情见下方认证状态CertificationStatus【鹰眼端验证域控证书失败会断开连接不进行重连域控端验证鹰眼端证书失败会断开连接但是由于域控断开并没有发送断开的原因所以鹰眼会自动重连重连次数可配置为用不重连、无限重连、指定次数重连】
HEARTBEAT_TIMEOUT = 10;//心跳超时表示连接域控成功后在一段时间内未收到域控任何数据默认4秒【可以配置】
PROTOCOL_MISMATCH = 11;//協議不匹配表示被连接的服务端非WebSocket协议【可能性非常低】
SERVER_DISCONNECTED = 12;//服务端主动断开连接表示域控主动发起断开WebSocket连接目前主要原因有1.证书认证失败2.老版本MAP不支持多连接的情况下会踢掉客户端
}
/**
* 证书认证状态
*/
enum CertificationStatus{
NOT_ENABLED = 0;//未开启认证(鹰眼中未启用证书认证功能)
CERTIFICATE_CHAIN_SUCCESS = 1;//域控证书链校验成功(鹰眼校验域控证书失败)
ROOT_CRT_ERROR = 2;//ROOT证书异常表示未传递证书没有拿到ROOT证书
IPC_CRT_ERROR = 3;//工控机证书异常表示域控发送了BasicInfoReq接口的数据但是未传递证书或证书解码失败【失败的可能性很低】
CERTIFICATE_CHAIN_FAILED = 4;//域控证书链校验失败(表示证书链未验证通过。证书不匹配、证书格式不正确)
TIMEOUT = 5;//认证超时表示域控未发送BasicInfoReq接口的数据【这种情况可能是连接出现了问题】
}
/**
* 环境
*/
enum Environment{
NOTHING = 0;//无需给域控传环境时传递用此值
DEVELOP = 1;//研发
TEST = 2;//测试
PRODUCTION = 3;//生产
DEMO = 4;//演示
}
/**
* 终端角色类型
*/
enum TerminalRole {
DRIVER = 0;//司机端
PASSENGER = 1;//乘客端
DEBUG = 2;//调试端
}
/**
* 接口订阅类型
*/
enum SubscribeType {
DEFAULT_SUBSCRIBE_TYPE = 0;//无用,不要调用
SUBSCRIBE = 1;//订阅
UNSUBSCRIBE = 2;//取消订阅
}