[code_opt_3.3.0] fix plugin bug and add trace
This commit is contained in:
@@ -348,7 +348,6 @@ class MoGoAutopilotControlProvider :
|
||||
parentNodeAliasCode = ChainConstant.CHAIN_CODE_EAGLE_START_AUTOPILOT,
|
||||
nodeAliasCode = ChainConstant.CHAIN_CODE_EAGLE_START_AUTOPILOT_RESULT,
|
||||
paramIndexes = [0]
|
||||
|
||||
)
|
||||
private fun invokeAutoPilotResult(status: String) {
|
||||
CallerLogger.e("$M_ADAS_IMPL$TAG", status)
|
||||
|
||||
@@ -100,10 +100,10 @@ class CheckSystemView @JvmOverloads constructor(
|
||||
CallerAutoPilotStatusListenerManager.removeListener(TAG)
|
||||
}
|
||||
|
||||
override fun onAutopilotConnectInfo(connectInfo: Boolean) {
|
||||
super.onAutopilotConnectInfo(connectInfo)
|
||||
override fun onAutopilotIpcConnectStatusChanged(status: Int, reason: String?) {
|
||||
super.onAutopilotIpcConnectStatusChanged(status, reason)
|
||||
ThreadUtils.runOnUiThread {
|
||||
setViewStatus(connectInfo)
|
||||
setViewStatus(status == 0x00)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -29,8 +29,8 @@ class MapBizProvider :IMoGoFunctionServerProvider, IMogoRoma {
|
||||
CallerVisualAngleManager.init()
|
||||
}
|
||||
|
||||
override fun trigger(romaStatus: Boolean,requestSuccess:((Boolean) -> Unit)?) {
|
||||
aiCloudIdentifyDataManager.trigger(romaStatus,requestSuccess)
|
||||
override fun trigger(romaStatus: Boolean) {
|
||||
aiCloudIdentifyDataManager.trigger(romaStatus)
|
||||
}
|
||||
|
||||
override fun onDestroy() {
|
||||
|
||||
@@ -1,14 +1,25 @@
|
||||
package com.mogo.eagle.core.function.business.ai
|
||||
|
||||
import android.content.Context
|
||||
import android.os.Handler
|
||||
import com.mogo.aicloud.services.socket.IMogoOnMessageListener
|
||||
import com.mogo.aicloud.services.socket.MogoAiCloudSocketManager
|
||||
import com.mogo.commons.debug.DebugConfig
|
||||
import com.mogo.commons.module.status.MogoStatusManager
|
||||
import com.mogo.eagle.core.data.config.FunctionBuildConfig
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ROMA_CLICK
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ROMA_CLICK_END
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ROMA_CLOUD_ERROR
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ROMA_MAP_END
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ROMA_MAP_START
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ROMA_REQUEST
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ROMA_REQUEST_ERROR
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ROMA_REQUEST_OK
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ROMA_ROUTE_MODE
|
||||
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
|
||||
import com.mogo.eagle.core.function.api.autopilot.IMoGoPlanningRottingListener
|
||||
import com.mogo.eagle.core.function.api.map.roma.IMoGoRomaListener
|
||||
import com.mogo.eagle.core.function.business.ai.net.AiCloudIdentifyNetWorkModel.Companion.aiCloudIdentifyNetWorkModel
|
||||
import com.mogo.eagle.core.function.business.identify.MapIdentifySubscriber
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
|
||||
@@ -18,18 +29,17 @@ import com.mogo.eagle.core.function.call.map.CallerMapRomaListener
|
||||
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager
|
||||
import com.mogo.eagle.core.function.call.map.CallerVisualAngleManager.updateLongSightLevel
|
||||
import com.mogo.eagle.core.function.utils.MapBizTrace
|
||||
import com.mogo.eagle.core.utilcode.util.GsonUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.map.MogoMapUIController
|
||||
import com.mogo.map.listener.IMogoMapListener
|
||||
import com.mogo.map.listener.MogoMapListenerHandler
|
||||
import com.mogo.map.uicontroller.VisualAngleMode
|
||||
import com.zhjt.service.chain.ChainLog
|
||||
import mogo.telematics.pad.MessagePad
|
||||
import mogo.yycp.api.proto.SocketDownData
|
||||
import java.util.concurrent.atomic.AtomicBoolean
|
||||
|
||||
class AiCloudIdentifyDataManager : IMogoMapListener,
|
||||
IMoGoPlanningRottingListener, IMoGoAutopilotStatusListener {
|
||||
class AiCloudIdentifyDataManager : IMoGoPlanningRottingListener,
|
||||
IMoGoAutopilotStatusListener, IMoGoRomaListener {
|
||||
|
||||
companion object {
|
||||
private const val TAG = "AiCloudIdentifyData"
|
||||
@@ -45,10 +55,29 @@ class AiCloudIdentifyDataManager : IMogoMapListener,
|
||||
|
||||
private var showAiCloud = AtomicBoolean(false)
|
||||
|
||||
private var aiCloudDataChange = AtomicBoolean(false)
|
||||
|
||||
private val handler = Handler {
|
||||
if (it.what == 1) {
|
||||
if (!aiCloudDataChange.get()) {
|
||||
MapBizTrace.log(
|
||||
CHAIN_CODE_ROMA_MAP_START, CHAIN_CODE_ROMA_CLOUD_ERROR, TAG, GsonUtils.toJson(
|
||||
mutableMapOf(
|
||||
"msg" to "云端5秒内无感知数据下发",
|
||||
"socketStatus" to MogoStatusManager.getInstance().isSocketOnLine,
|
||||
"cityCode" to CallerChassisLocationWGS84ListenerManager.getChassisLocationWGS84().cityCode
|
||||
)
|
||||
)
|
||||
)
|
||||
}
|
||||
}
|
||||
true
|
||||
}
|
||||
|
||||
fun initServer(mContext: Context) {
|
||||
MogoMapListenerHandler.mogoMapListenerHandler.registerHostMapListener(TAG, this)
|
||||
CallerAutoPilotStatusListenerManager.addListener(TAG, this)
|
||||
CallerPlanningRottingListenerManager.addListener(TAG,this)
|
||||
CallerPlanningRottingListenerManager.addListener(TAG, this)
|
||||
CallerMapRomaListener.addListener(TAG, this)
|
||||
MogoAiCloudSocketManager.getInstance(mContext)
|
||||
.registerOnMessageListener(
|
||||
0x040003, //低频数据
|
||||
@@ -66,6 +95,9 @@ class AiCloudIdentifyDataManager : IMogoMapListener,
|
||||
override fun onMsgReceived(obj: SocketDownData.SocketDownDataProto?) {
|
||||
obj?.let {
|
||||
obj.data?.let {
|
||||
if (it.allListList != null && it.allListList.size > 0) {
|
||||
aiCloudDataChange.set(true)
|
||||
}
|
||||
if (showAiCloud.get()) {
|
||||
if (it.allListList == null || it.allListList.size == 0) {
|
||||
MapIdentifySubscriber.instance.clearAiCloudRoma()
|
||||
@@ -79,8 +111,13 @@ class AiCloudIdentifyDataManager : IMogoMapListener,
|
||||
})
|
||||
}
|
||||
|
||||
fun trigger(romaStatus: Boolean,connectError: ((Boolean) -> Unit)?) {
|
||||
MapBizTrace.log(TAG, "trigger")
|
||||
fun trigger(romaStatus: Boolean) {
|
||||
MapBizTrace.log(
|
||||
"",
|
||||
CHAIN_CODE_ROMA_CLICK,
|
||||
TAG,
|
||||
GsonUtils.toJson(mutableMapOf("trigger" to romaStatus))
|
||||
)
|
||||
// 乘客司机屏屏各自单独控制漫游
|
||||
if (romaStatus) {
|
||||
// 开启roma,当前非漫游,开启
|
||||
@@ -103,52 +140,105 @@ class AiCloudIdentifyDataManager : IMogoMapListener,
|
||||
MapIdentifySubscriber.instance.clearAiCloudRoma()
|
||||
// 主动关闭roma,回到中景视角
|
||||
if (manual) {
|
||||
MapBizTrace.logEnd(CHAIN_CODE_ROMA_CLICK, CHAIN_CODE_ROMA_CLICK_END, TAG, "")
|
||||
MogoMapUIController.getInstance()
|
||||
.changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null)
|
||||
}
|
||||
}
|
||||
|
||||
fun requestRangeOfIdentify(dataReceive: Boolean) {
|
||||
val status = MogoStatusManager.getInstance().isSocketOnLine
|
||||
val gnss = CallerChassisLocationWGS84ListenerManager.getChassisLocationWGS84().gnssInfo
|
||||
MapBizTrace.log(TAG,"开启请求,data:$dataReceive , socketStatus:$status , lon:${gnss.longitude} , lat:${gnss.latitude} , heading:${gnss.heading}")
|
||||
aiCloudIdentifyNetWorkModel.requestIdentifyRange(dataReceive, gnss.longitude,gnss.latitude,{
|
||||
MapBizTrace.log(
|
||||
TAG,
|
||||
"requestIdentifyRange ok startRange:$START_METRE, endRange:$END_METRE , dataReceive:$dataReceive"
|
||||
// false,改变父节点信息
|
||||
MapBizTrace.log(
|
||||
if (dataReceive) CHAIN_CODE_ROMA_CLICK else "", CHAIN_CODE_ROMA_REQUEST, TAG,
|
||||
GsonUtils.toJson(
|
||||
mutableMapOf(
|
||||
"dataReceive" to dataReceive,
|
||||
"lon" to gnss.longitude,
|
||||
"lat" to gnss.latitude,
|
||||
"heading" to gnss.heading,
|
||||
"socketStatus" to MogoStatusManager.getInstance().isSocketOnLine,
|
||||
"cityCode" to CallerChassisLocationWGS84ListenerManager.getChassisLocationWGS84().cityCode
|
||||
)
|
||||
)
|
||||
if (dataReceive) {
|
||||
// 请求地图开始漫游
|
||||
MogoMapUIController.getInstance().setRomaMode(FunctionBuildConfig.romaModeStyle)
|
||||
CallerMapRomaListener.invokeMapRoma(true)
|
||||
} else {
|
||||
)
|
||||
aiCloudIdentifyNetWorkModel.requestIdentifyRange(
|
||||
dataReceive,
|
||||
gnss.longitude,
|
||||
gnss.latitude,
|
||||
{
|
||||
// false,改变父节点信息
|
||||
MapBizTrace.log(
|
||||
if (dataReceive) CHAIN_CODE_ROMA_REQUEST else "",
|
||||
CHAIN_CODE_ROMA_REQUEST_OK,
|
||||
TAG,
|
||||
GsonUtils.toJson(
|
||||
mutableMapOf(
|
||||
"dataResult" to dataReceive,
|
||||
"startRange" to START_METRE,
|
||||
"endRange" to END_METRE,
|
||||
)
|
||||
)
|
||||
)
|
||||
if (dataReceive) {
|
||||
// 请求地图开始漫游
|
||||
MogoMapUIController.getInstance().setRomaMode(FunctionBuildConfig.romaModeStyle)
|
||||
CallerMapRomaListener.invokeMapRoma(true)
|
||||
} else {
|
||||
CallerMapRomaListener.invokeMapRoma(false)
|
||||
}
|
||||
},
|
||||
{ errorMsg ->
|
||||
// false,改变父节点信息
|
||||
MapBizTrace.logEnd(
|
||||
if (dataReceive) CHAIN_CODE_ROMA_REQUEST else "",
|
||||
CHAIN_CODE_ROMA_REQUEST_ERROR,
|
||||
TAG,
|
||||
GsonUtils.toJson(
|
||||
mutableMapOf(
|
||||
"errorMsg" to errorMsg,
|
||||
"dataResult" to dataReceive,
|
||||
"startRange" to START_METRE,
|
||||
"endRange" to END_METRE
|
||||
)
|
||||
)
|
||||
)
|
||||
updateLongSightLevel(false)
|
||||
CallerMapRomaListener.invokeMapRoma(false)
|
||||
}
|
||||
}, {
|
||||
MapBizTrace.log(
|
||||
TAG,
|
||||
"requestIdentifyRange error : $it , startRange:$START_METRE, endRange:$END_METRE, dataReceive:$dataReceive"
|
||||
)
|
||||
updateLongSightLevel(false)
|
||||
CallerMapRomaListener.invokeMapRoma(false)
|
||||
if(DebugConfig.isDebug()){
|
||||
ToastUtils.showShort("漫游请求异常,msg:$it")
|
||||
}
|
||||
})
|
||||
if (DebugConfig.isDebug()) {
|
||||
ToastUtils.showShort("漫游请求异常,msg:$errorMsg")
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
override fun onMapVisualAngleChanged(visualAngleMode: VisualAngleMode) {
|
||||
super.onMapVisualAngleChanged(visualAngleMode)
|
||||
when {
|
||||
// 解除漫游限制
|
||||
visualAngleMode.isRoma -> {
|
||||
MapBizTrace.log(TAG, "onMapVisualAngleChanged, invoke roma , socketStatus: ${ MogoStatusManager.getInstance().isSocketOnLine}")
|
||||
//status 0:进入漫游模式成功 1;进入漫游模式失败 2:正常结束漫游 3:切换视角结束漫游
|
||||
override fun mapRomaStatus(status: Int, msg: String) {
|
||||
super.mapRomaStatus(status, msg)
|
||||
MapBizTrace.log(
|
||||
CHAIN_CODE_ROMA_REQUEST_OK,
|
||||
CHAIN_CODE_ROMA_MAP_START,
|
||||
TAG,
|
||||
GsonUtils.toJson(mutableMapOf("mapStatus" to status, "mapRomaMsg" to msg))
|
||||
)
|
||||
when (status) {
|
||||
0 -> {
|
||||
showAiCloud.set(true)
|
||||
FunctionBuildConfig.isDrawIdentifyData = false
|
||||
// 5秒没有触发 则预警日志写入
|
||||
handler.sendEmptyMessageDelayed(1, 5_000L)
|
||||
}
|
||||
else -> {
|
||||
1 -> {
|
||||
if (DebugConfig.isDebug()) {
|
||||
ToastUtils.showShort("进入漫游模式失败,msg:$msg")
|
||||
}
|
||||
}
|
||||
2, 3 -> {
|
||||
if (showAiCloud.get()) {
|
||||
MapBizTrace.log(TAG, "onMapVisualAngleChanged, invoke close roma")
|
||||
MapBizTrace.logEnd(
|
||||
CHAIN_CODE_ROMA_MAP_START, CHAIN_CODE_ROMA_MAP_END, TAG, GsonUtils.toJson(
|
||||
mutableMapOf("romaEnd" to "地图结束回调,状态:$status")
|
||||
)
|
||||
)
|
||||
showAiCloud.set(false)
|
||||
closeRoma(false)
|
||||
FunctionBuildConfig.isDrawIdentifyData = true
|
||||
@@ -181,7 +271,12 @@ class AiCloudIdentifyDataManager : IMogoMapListener,
|
||||
}
|
||||
|
||||
private fun updateRomaStyle(auto: Boolean, route: String? = null) {
|
||||
MapBizTrace.log(TAG, "updateRomaStyle auto status:$auto, route:${route?:"reset null"}")
|
||||
MapBizTrace.log(
|
||||
"",
|
||||
CHAIN_CODE_ROMA_ROUTE_MODE,
|
||||
TAG,
|
||||
"updateRomaStyle auto status:$auto, route:${route ?: "reset null"}"
|
||||
)
|
||||
route?.let {
|
||||
CallerMapUIServiceManager.getMapUIController()?.setRoamTrajectory(route)
|
||||
}
|
||||
|
||||
@@ -143,7 +143,4 @@ public class MogoRouteOverlayManager implements
|
||||
public void onAutopilotDockerInfo(@NonNull String dockerVersion) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAutopilotConnectInfo(boolean connectInfo) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,18 +5,30 @@ import com.mogo.eagle.core.data.deva.chain.ChainConstant
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_MAP
|
||||
import com.zhjt.service.chain.ChainLog
|
||||
import com.zhjt.service.chain.ChildNodeAlias
|
||||
import com.zhjt.service.chain.ParentNodeAlias
|
||||
|
||||
class MapBizTrace {
|
||||
|
||||
companion object {
|
||||
@ChainLog(
|
||||
linkChainLog = ChainConstant.CHAIN_TYPE_HD_MAP,
|
||||
linkCode = ChainConstant.CHAIN_SOURCE_MAP,
|
||||
paramIndexes = [2, 3],
|
||||
endPoint = false
|
||||
)
|
||||
fun log(@ParentNodeAlias pN: String, @ChildNodeAlias cN: String, data: Any, data1: Any) {
|
||||
if (DebugConfig.isDebug()) {
|
||||
CallerLogger.d("$M_MAP${data.toString()}", data1)
|
||||
}
|
||||
}
|
||||
|
||||
@ChainLog(
|
||||
linkChainLog = ChainConstant.CHAIN_TYPE_HD_MAP,
|
||||
linkCode = ChainConstant.CHAIN_SOURCE_MAP,
|
||||
nodeAliasCode = ChainConstant.CHAIN_CODE_HD_MAP_BIZ,
|
||||
paramIndexes = [0, 1]
|
||||
paramIndexes = [2, 3]
|
||||
)
|
||||
fun log(data: Any, data1: Any) {
|
||||
fun logEnd(@ParentNodeAlias pN: String, @ChildNodeAlias cN: String, data: Any, data1: Any) {
|
||||
if (DebugConfig.isDebug()) {
|
||||
CallerLogger.d("$M_MAP${data.toString()}", data1)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user