From 5cfcf840fffa9d49d1ccbf3ef865ff6ed1b5b5de Mon Sep 17 00:00:00 2001 From: zhongchao Date: Mon, 6 Nov 2023 11:32:23 +0800 Subject: [PATCH] [6.2.0] remove impl of real time and tanlu service , update socket of heart beat func --- config.gradle | 2 - .../autopilot/adapter/MoGoAdasListenerImpl.kt | 8 +++ .../startup/stageone/HttpDnsStartUp.kt | 19 ++++-- .../com/mogo/eagle/core/data/app/UrlConfig.kt | 5 +- .../core/data/deva/chain/ChainConstant.kt | 3 +- ...llerFaultManagementStateListenerManager.kt | 1 + .../mogo-aicloud-services-sdk/build.gradle | 6 -- .../services/locationinfo/RealTimeData.java | 68 ------------------- .../locationinfo/SpiRealTimeProvider.java | 61 ----------------- gradle.properties | 20 +++--- 10 files changed, 37 insertions(+), 156 deletions(-) delete mode 100644 foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/locationinfo/RealTimeData.java delete mode 100644 foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/locationinfo/SpiRealTimeProvider.java diff --git a/config.gradle b/config.gradle index ce60d69f5c..449a94ec7c 100644 --- a/config.gradle +++ b/config.gradle @@ -157,8 +157,6 @@ ext { mogoaicloudpassport : "com.mogo.cloud:passport:${MOGO_PASSPORT_VERSION}", mogoaicloudnetwork : "com.mogo.cloud:network:${MOGO_NETWORK_VERSION}", mogoaicloudlive : "com.mogo.cloud:live:${MOGO_LIVE_VERSION}", - mogoaicloudrealtime : "com.mogo.cloud:realtime:${MOGO_REALTIME_VERSION}", - mogoaicloudtanlu : "com.mogo.cloud:tanlu:${MOGO_TANLU_VERSION}", mogoaicloudtrafficlive : "com.mogo.cloud:trafficlive:${MOGO_TRAFFICLIVE_VERSION}", mogoaicloudlocation : "com.mogo.cloud:location:${MOGO_LOCATION_VERSION}", mogoaicloudtelematic : "com.mogo.cloud:telematic:${MOGO_TELEMATIC_VERSION}", diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt index e1ba0949fa..ab77257189 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt @@ -17,6 +17,7 @@ import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_AD import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ADAS_VEHICLE import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ADAS_CAR_CONFIG import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ADAS_CAR_LOC +import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ADAS_FM_MSG import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ADAS_MAP_PARAM import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ADAS_PARALLEL import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ADAS_P_ACTIONS @@ -449,6 +450,13 @@ class MoGoAdasListenerImpl : OnAdasListener { invokeSystemStatus(statusInf) } + //FM消息回调 + @ChainLog( + linkChainLog = CHAIN_TYPE_SOCKET_AUTOPILOT, + linkCode = CHAIN_SOURCE_ADAS, + nodeAliasCode = CHAIN_CODE_ADAS_FM_MSG, + paramIndexes = [0, 1] + ) override fun onFaultManagementState(header: MessagePad.Header?, fmInfo: FmInfo.FaultResultMsg) { CallerFaultManagementStateListenerManager.invokeFaultManagementState(fmInfo) } diff --git a/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/HttpDnsStartUp.kt b/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/HttpDnsStartUp.kt index e3e8d81c80..dec67b7966 100644 --- a/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/HttpDnsStartUp.kt +++ b/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/HttpDnsStartUp.kt @@ -129,7 +129,9 @@ class HttpDnsStartUp : AndroidStartup() { clientConfig.passportUrl = FunctionBuildConfig.urlJson.passportUrl clientConfig.socketBaseUrl = FunctionBuildConfig.urlJson.socketBaseUrl clientConfig.socketTechUrl = FunctionBuildConfig.urlJson.socketTechUrl - + if (FunctionBuildConfig.urlJson.heartBeatInterval.toLong() != 0L) { + clientConfig.heartBeatInterval = FunctionBuildConfig.urlJson.heartBeatInterval.toLong() + } // 设置是否是直播推流的主播 clientConfig.isAnchor = true when (DebugConfig.getCarMachineType()) { @@ -253,7 +255,8 @@ class HttpDnsStartUp : AndroidStartup() { if (FunctionBuildConfig.isSecure) { context?.let { val authStatus = - SharedPrefsMgr.getInstance(it).getBoolean("securityKey-${DebugConfig.getNetMode()}", false) + SharedPrefsMgr.getInstance(it) + .getBoolean("securityKey-${DebugConfig.getNetMode()}", false) if (authStatus) { // clientConfig设置auth值,并带入header clientConfig.authPubKey = SharedPrefsMgr.getInstance(it) @@ -278,8 +281,12 @@ class HttpDnsStartUp : AndroidStartup() { ) clientConfig.securityKey = securityKey SharedPrefsMgr.getInstance(it) - .putString("securityKey-${DebugConfig.getNetMode()}", securityKey) - SharedPrefsMgr.getInstance(it).putBoolean("securityKey-${DebugConfig.getNetMode()}", true) + .putString( + "securityKey-${DebugConfig.getNetMode()}", + securityKey + ) + SharedPrefsMgr.getInstance(it) + .putBoolean("securityKey-${DebugConfig.getNetMode()}", true) } @ChainLog( @@ -367,12 +374,12 @@ class HttpDnsStartUp : AndroidStartup() { nodeAliasCode = CHAIN_CODE_HTTP_DNS_ERROR_REASON, paramIndexes = [0] ) - private fun logError(pr: Map) { + private fun logError(pr: Map) { CallerLogger.e("$M_MAIN$TAG", "pr:$pr") } // 归一处理 - private fun getPrReason(msg: String): Map { + private fun getPrReason(msg: String): Map { val map = hashMapOf() map["lat"] = if (CallerChassisLocationGCJ02ListenerManager.getChassisLocationGCJ02().latitude != 0.0) diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/app/UrlConfig.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/app/UrlConfig.kt index 5ba45b9c79..cc6ddb0f6a 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/app/UrlConfig.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/app/UrlConfig.kt @@ -28,5 +28,8 @@ data class UrlConfig( @SerializedName("secure_refresh_url") val secureRefresh: String, @SerializedName("secure_auth_url") - val secureAuth: String + val secureAuth: String, + @SerializedName("heart_beat_interval") + val heartBeatInterval: Int + ) \ No newline at end of file diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/deva/chain/ChainConstant.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/deva/chain/ChainConstant.kt index dcf46ec4b5..5b88f85edd 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/deva/chain/ChainConstant.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/deva/chain/ChainConstant.kt @@ -24,7 +24,7 @@ class ChainConstant { //业务类型与下方文件名一一对应 const val CHAIN_TYPE_STATUS = 0 // 各个业务初始化信息,配置信息.链接状态,点击信息 const val CHAIN_TYPE_GNSS = 1 // 工控定位数据 - const val CHAIN_TYPE_SOCKET_AUTOPILOT = 2 // 包括自动驾驶状态,reportMsg,planning数据,全局路径数据 + const val CHAIN_TYPE_SOCKET_AUTOPILOT = 2 // 包括自动驾驶状态,reportMsg,planning数据,全局路径数据,FM const val CHAIN_TYPE_SOCKET_DATA_TRACKED = 3 // 感知数据,现阶段记录云端漫游 const val CHAIN_TYPE_SOCKET_TRAJECTORY = 4 // 前车引导线,用于调试 const val CHAIN_TYPE_SOCKET_VEHICLE = 5 // 底盘数据 @@ -57,6 +57,7 @@ class ChainConstant { const val CHAIN_CODE_ADAS_ABILITY = "CHAIN_CODE_ADAS_ABILITY" const val CHAIN_CODE_ADAS_STATUS = "CHAIN_CODE_ADAS_STATUS" const val CHAIN_CODE_ADAS_SEND = "CHAIN_CODE_ADAS_SEND" + const val CHAIN_CODE_ADAS_FM_MSG = "CHAIN_CODE_ADAS_FM_MSG" const val CHAIN_CODE_ADAS_ARRIVE = "CHAIN_CODE_ADAS_ARRIVE" const val CHAIN_CODE_ADAS_ROUTE = "CHAIN_CODE_ADAS_ROUTE" const val CHAIN_CODE_ADAS_ROUTE_REQ = "CHAIN_CODE_ADAS_ROUTE_REQ" diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerFaultManagementStateListenerManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerFaultManagementStateListenerManager.kt index 409ab7646c..0fae0d160c 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerFaultManagementStateListenerManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerFaultManagementStateListenerManager.kt @@ -10,6 +10,7 @@ import fault_management.FmInfo object CallerFaultManagementStateListenerManager : CallerBase() { + fun invokeFaultManagementState(fmInfo: FmInfo.FaultResultMsg) { M_LISTENERS.forEach { val listener = it.value diff --git a/foudations/mogo-aicloud-services-sdk/build.gradle b/foudations/mogo-aicloud-services-sdk/build.gradle index ac27706012..374662ab51 100644 --- a/foudations/mogo-aicloud-services-sdk/build.gradle +++ b/foudations/mogo-aicloud-services-sdk/build.gradle @@ -44,10 +44,6 @@ dependencies { api rootProject.ext.dependencies.mogoaicloudsocket implementation rootProject.ext.dependencies.mogoaicloudlocation - api rootProject.ext.dependencies.mogoaicloudrealtime - - annotationProcessor 'com.elegant.spi:compiler:1.0.3' - if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { implementation rootProject.ext.dependencies.mogo_core_utils implementation rootProject.ext.dependencies.mogo_core_data @@ -56,8 +52,6 @@ dependencies { implementation project(':core:mogo-core-utils') implementation project(':core:mogo-core-data') } - - annotationProcessor 'com.elegant.spi:compiler:1.0.3' } apply from: new File(rootProject.rootDir, "gradle/upload.gradle").toString() \ No newline at end of file diff --git a/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/locationinfo/RealTimeData.java b/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/locationinfo/RealTimeData.java deleted file mode 100644 index 9aef43bbdc..0000000000 --- a/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/locationinfo/RealTimeData.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.mogo.aicloud.services.locationinfo; - -public class RealTimeData { - - private static volatile RealTimeData realTimeData; - private static final byte[] bytes = new byte[0]; - - private double lat; - private double lon; - private double heading; - private int speed; - private long satelliteTime; - - private RealTimeData() { - - } - - public static RealTimeData getInstance() { - if (realTimeData == null) { - synchronized (bytes) { - if (realTimeData == null) { - realTimeData = new RealTimeData(); - } - } - } - return realTimeData; - } - - public void setLat(double lat) { - this.lat = lat; - } - - public void setLon(double lon) { - this.lon = lon; - } - - public void setHeading(double heading) { - this.heading = heading; - } - - public void setSpeed(int speed) { - this.speed = speed; - } - - public void setSatelliteTime(long satelliteTime) { - this.satelliteTime = satelliteTime; - } - - public double getLat() { - return lat; - } - - public double getLon() { - return lon; - } - - public double getHeading() { - return heading; - } - - public int getSpeed() { - return speed; - } - - public long getSatelliteTime() { - return satelliteTime; - } -} diff --git a/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/locationinfo/SpiRealTimeProvider.java b/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/locationinfo/SpiRealTimeProvider.java deleted file mode 100644 index 961fe0f189..0000000000 --- a/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/locationinfo/SpiRealTimeProvider.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.mogo.aicloud.services.locationinfo; - -import com.elegant.spi.annotations.Service; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; -import com.mogo.realtime.api.IRealTimeProvider; -import com.mogo.realtime.entity.SocketReceiveDataProto3; -import com.mogo.realtime.util.MortonCode; - -import static com.mogo.cloud.socket.SocketMsgType.MSG_TYPE_UPLINK_CAR_DATA; - -@Service(value = IRealTimeProvider.class) -public class SpiRealTimeProvider implements IRealTimeProvider { - - @Override - public SocketReceiveDataProto3.SocketReceiveDataProto getLocationMsg() { - - double lat = RealTimeData.getInstance().getLat(); - double lon = RealTimeData.getInstance().getLon(); - if (lat == 0.0f || lon == 0.0f) { - return null; - } - double heading = RealTimeData.getInstance().getHeading(); - int speed = RealTimeData.getInstance().getSpeed(); - long satelliteTime = RealTimeData.getInstance().getSatelliteTime(); - long mortonCode = MortonCode.encodeMorton(lon, lat); - - SocketReceiveDataProto3.LocationInfoProto locationInfoProto = - SocketReceiveDataProto3.LocationInfoProto.newBuilder() - .setLat(lat) - .setLon(lon) - .setHeading(heading) - .setSystemTime(System.currentTimeMillis()) - .setSatelliteTime(satelliteTime) - .setAlt(0) - .setDataAccuracy(1) - .setSpeed(speed) - .setMortonCode(mortonCode) - .setSn(MoGoAiCloudClientConfig.getInstance().getSn()) - .build(); - - SocketReceiveDataProto3.MyLocationReq myLocationReq = - SocketReceiveDataProto3.MyLocationReq.newBuilder() - .setLastCoordinate(locationInfoProto) - .setDataAccuracy(1) - .setMortonCode(mortonCode) - .setFromType(0) - .setSn(MoGoAiCloudClientConfig.getInstance().getSn()) - .build(); - - SocketReceiveDataProto3.OnePerSecondSendReqProto self = - SocketReceiveDataProto3.OnePerSecondSendReqProto.newBuilder() - .setSelf(myLocationReq) - .build(); - return SocketReceiveDataProto3.SocketReceiveDataProto.newBuilder() - .setIPCSn(MoGoAiCloudClientConfig.getInstance().getSn() + "xavier") - .setSn(MoGoAiCloudClientConfig.getInstance().getSn()) - .setData(self) - .setMsgType(MSG_TYPE_UPLINK_CAR_DATA.getMsgType()) - .setSeq(System.currentTimeMillis()).build(); - } -} diff --git a/gradle.properties b/gradle.properties index 6cd618bd86..ef897e5018 100644 --- a/gradle.properties +++ b/gradle.properties @@ -64,23 +64,21 @@ bytex.ASM_API=ASM7 LOGLIB_VERSION=1.9.18 ######## MogoAiCloudSDK Version ######## # 网络请求LOGLIB_VERSION -MOGO_NETWORK_VERSION=1.4.7.17 +MOGO_NETWORK_VERSION=1.4.7.19 # 鉴权 -MOGO_PASSPORT_VERSION=1.4.7.17 -# 常链接 -MOGO_SOCKET_VERSION=1.4.7.17 +MOGO_PASSPORT_VERSION=1.4.7.19 +# 长链接 +MOGO_SOCKET_VERSION=1.4.7.19 # 数据采集 -MOGO_REALTIME_VERSION=1.4.7.17 -# 探路,道路事件发布,获取 -MOGO_TANLU_VERSION=1.4.7.17 +MOGO_REALTIME_VERSION=1.4.7.19 # 直播推流 -MOGO_LIVE_VERSION=1.4.7.17 +MOGO_LIVE_VERSION=1.4.7.19 # 直播拉流 -MOGO_TRAFFICLIVE_VERSION=1.4.7.17 +MOGO_TRAFFICLIVE_VERSION=1.4.7.19 # 定位服务 -MOGO_LOCATION_VERSION=1.4.7.17 +MOGO_LOCATION_VERSION=1.4.7.19 # 远程通讯模块 -MOGO_TELEMATIC_VERSION=1.4.7.17 +MOGO_TELEMATIC_VERSION=1.4.7.19 ######## MogoAiCloudSDK Version ######## # 自研地图 MAP_SDK_VERSION=3.2.0.17