[6.9.0]OTA升级和数据闭环需求开发
This commit is contained in:
@@ -38,6 +38,7 @@ import com.zhjt.service.chain.ChainLog
|
||||
import com.zhjt.service_biz.BizConfig
|
||||
import kotlinx.coroutines.launch
|
||||
import mogo.yycp.paralleldriving.protocol.ParallelDrivingRequest
|
||||
import system_master.SsmInfo
|
||||
import java.lang.StringBuilder
|
||||
import kotlin.random.Random
|
||||
|
||||
@@ -1063,4 +1064,33 @@ object CallerAutoPilotControlManager {
|
||||
return providerApi?.sendSimulationWireFailure(isTrigger)?:false
|
||||
}
|
||||
|
||||
/**
|
||||
* SSM发送OTA升级提示请求响应
|
||||
* @param token 域控发送OTA升级请求中的Token {@link SsmInfo.OtaDownloadRequest#getOtaToken()}
|
||||
* @param ifUpgrade {@link SsmInfo.IfUpgrade#IMMEDIATELY}:立即
|
||||
* {@link SsmInfo.IfUpgrade#DELAY}:推迟
|
||||
*/
|
||||
fun sendSsmFuncOtaDownloadResponse(token: String,ifUpgrade: SsmInfo.IfUpgrade): Boolean{
|
||||
return providerApi?.sendSsmFuncOtaDownloadResponse(token,ifUpgrade)?:false
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询OTA状态
|
||||
* @param token 域控发送OTA升级请求中的Token {@link SsmInfo.OtaDownloadRequest#getOtaToken()}
|
||||
* 如果没有可以传null或""
|
||||
*/
|
||||
fun sendSsmFuncOtaStatusQuery(token: String): Boolean{
|
||||
return providerApi?.sendSsmFuncOtaStatusQuery(token)?:false
|
||||
}
|
||||
|
||||
/**
|
||||
* 人工接管时获取前方和后方摄像头数据
|
||||
* 一次请求域控回调次两次摄像头数据 根据{@link MessagePad.CaptureImgOnTakeOver#getUuid()}进行区分是否是哪次请求
|
||||
* 例如下发uuid = 1 域控正常会回调两次响应接口 两次的uuid都是1,通过isFront区分是前方还是后方摄像头
|
||||
* 域控响应接口{@link OnAdasListener#onCaptureImgOnTakeOver(MessagePad.Header, boolean, MessagePad.CaptureImgOnTakeOver)}
|
||||
*/
|
||||
fun sendCaptureImgReqOnTakeOver(uuid: Int): Boolean{
|
||||
return providerApi?.sendCaptureImgReqOnTakeOver(uuid)?:false
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package com.mogo.eagle.core.function.call.devatools
|
||||
|
||||
import com.mogo.eagle.core.function.api.devatools.ICaptureImgListener
|
||||
import com.mogo.eagle.core.function.call.base.CallerBase
|
||||
import mogo.telematics.pad.MessagePad
|
||||
|
||||
/**
|
||||
* 接管时前方和后方摄像头数据请求响应回调管理
|
||||
*/
|
||||
object CallerCaptureImgManager: CallerBase<ICaptureImgListener>() {
|
||||
|
||||
/**
|
||||
* 接管时前方和后方摄像头数据请求的响应
|
||||
*/
|
||||
fun invokeCaptureImgOnTakeOver(isFront: Boolean, data: MessagePad.CaptureImgOnTakeOver){
|
||||
M_LISTENERS.forEach{
|
||||
val listener = it.value
|
||||
listener.onCaptureImgOnTakeOver(isFront, data)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
package com.mogo.eagle.core.function.call.devatools
|
||||
|
||||
import com.mogo.eagle.core.function.api.devatools.IOTAListener
|
||||
import com.mogo.eagle.core.function.call.base.CallerBase
|
||||
import system_master.SsmInfo
|
||||
|
||||
/**
|
||||
* OTA升级接口回调管理
|
||||
*/
|
||||
object CallerOTAManager: CallerBase<IOTAListener>() {
|
||||
|
||||
/**
|
||||
* SSM发送OTA升级提示请求
|
||||
* @param request SSM发送OTA升级提示内容
|
||||
*/
|
||||
fun invokeOtaDownloadRequest(request: SsmInfo.OtaDownloadRequest){
|
||||
M_LISTENERS.forEach {
|
||||
val listener = it.value
|
||||
listener.onOtaDownloadRequest(request)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* SSM上报OTA下载进度, 开始升级后定频上报
|
||||
* @param progress 下载进度
|
||||
*/
|
||||
fun invokeOtaLoadingProgress(progress: SsmInfo.OtaLoadingProgess){
|
||||
M_LISTENERS.forEach {
|
||||
val listener = it.value
|
||||
listener.onOtaLoadingProgress(progress)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* SSM上报OTA状态和查询OTA状态
|
||||
* 冷启动状态变更上报以及查询状态
|
||||
* 如果是查询到的结果,{@link SsmInfo.OtaStatus#getOtaInfo()}
|
||||
* 中的{@link SsmInfo.OtaDownloadRequest#getOtaToken()}==""表示不存在升级任务
|
||||
* @param status 冷启动状态变更上报以及查询状态
|
||||
*/
|
||||
fun invokeOtaStatus(status: SsmInfo.OtaStatus){
|
||||
M_LISTENERS.forEach {
|
||||
val listener = it.value
|
||||
listener.onOtaStatus(status)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -469,4 +469,11 @@ object CallerHmiManager {
|
||||
hmiProviderApi?.showColdStartProcessView()
|
||||
}
|
||||
|
||||
/**
|
||||
* 展示OTA升级弹窗
|
||||
*/
|
||||
fun showOTAUpgradeDialog(){
|
||||
hmiProviderApi?.showOTAUpgradeDialog()
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user