From 334627b3db7f34a26cee912a19643c47db995ed0 Mon Sep 17 00:00:00 2001 From: wangmingjun Date: Fri, 18 Nov 2022 20:27:21 +0800 Subject: [PATCH] =?UTF-8?q?[2.13.0]=20taxi/bus=E5=A2=9E=E5=8A=A0=E9=95=BF?= =?UTF-8?q?=E9=93=BE=E6=8E=A5msgType?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../passenger/model/BusPassengerModel.java | 13 ------ .../com/mogo/och/bus/model/BusOrderModel.java | 20 +++++++++ .../socketmessage/OCHSocketMessageManager.kt | 26 +++++++++++ .../data/OCHOperationalMessage.kt | 10 +++++ .../passenger/model/TaxiPassengerModel.java | 13 ------ .../com/mogo/och/taxi/model/TaxiModel.java | 44 +++++++++---------- 6 files changed, 77 insertions(+), 49 deletions(-) create mode 100644 OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/OCHSocketMessageManager.kt create mode 100644 OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/OCHOperationalMessage.kt diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java index 2be7474aeb..e38b96da14 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java @@ -242,8 +242,6 @@ public class BusPassengerModel { } private void initListeners() { - MogoAiCloudSocketManager.getInstance(mContext) - .registerLifecycleListener(10010, mSocketLifeCycleLisnter); // 2021.11.1重构自动驾驶 实现接口 IMoGoAutopilotStatusListener 注册监听 替换IMogoAdasOCHCallback接口 CallerAutoPilotStatusListenerManager.INSTANCE.addListener(TAG, mGoAutopilotStatusListener); @@ -311,17 +309,6 @@ public class BusPassengerModel { } }; - private final IMogoLifecycleListener mSocketLifeCycleLisnter = new IMogoLifecycleListener() { - @Override - public void onConnectFailure() { CallerLogger.INSTANCE.e(M_BUS_P + TAG,"socket onConnectFailure"); } - - @Override - public void onConnectSuccess() { CallerLogger.INSTANCE.e(M_BUS_P + TAG,"socket onConnectSuccess"); } - - @Override - public void onConnectLost() { CallerLogger.INSTANCE.e(M_BUS_P + TAG,"socket onConnectLost"); } - }; - // 自车定位 private final IMogoCarLocationChangedListener2 mCarLocationChangedListener2 = new IMogoCarLocationChangedListener2() { diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusOrderModel.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusOrderModel.java index cc1a76cebf..b86baeb6b8 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusOrderModel.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusOrderModel.java @@ -15,6 +15,7 @@ import androidx.annotation.NonNull; import com.alibaba.android.arouter.launcher.ARouter; import com.amap.api.maps.model.LatLng; import com.elegant.network.utils.GsonUtil; +import com.mogo.aicloud.services.socket.IMogoOnMessageListener; import com.mogo.cloud.commons.utils.CoordinateUtils; import com.mogo.commons.AbsMogoApplication; import com.mogo.commons.debug.DebugConfig; @@ -51,6 +52,8 @@ import com.mogo.och.bus.presenter.BusModelLoopManager; import com.mogo.och.bus.util.BusAnalyticsManager; import com.mogo.och.bus.util.BusSendTripInfoManager; import com.mogo.och.bus.util.BusTrajectoryManager; +import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager; +import com.mogo.och.common.module.biz.common.socketmessage.data.OCHOperationalMessage; import com.mogo.och.common.module.biz.constant.OchCommonConst; import com.mogo.och.common.module.biz.network.OchCommonServiceCallback; import com.mogo.och.common.module.biz.provider.LoginService; @@ -165,6 +168,10 @@ public class BusOrderModel { //开启自驾后 异常信息返回 OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(mAdasStartFailureListener); + + OCHSocketMessageManager.INSTANCE.registerSocketMessageListener( + OCHSocketMessageManager.INSTANCE.getMsgMonitorType(), + mMogoOnMessageListener); } //2022.1.28 @@ -205,6 +212,19 @@ public class BusOrderModel { }); } + private final IMogoOnMessageListener mMogoOnMessageListener = + new IMogoOnMessageListener() { + @Override + public Class target() { + return OCHOperationalMessage.class; + } + + @Override + public void onMsgReceived(OCHOperationalMessage obj) { + //todo 塞入消息盒子 + } + }; + public void setAdasStatusCallback(IBusADASStatusCallback callback){ this.mADASStatusCallback = callback; } diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/OCHSocketMessageManager.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/OCHSocketMessageManager.kt new file mode 100644 index 0000000000..a9107a81c6 --- /dev/null +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/OCHSocketMessageManager.kt @@ -0,0 +1,26 @@ +package com.mogo.och.common.module.biz.common.socketmessage + +import android.icu.lang.UCharacter.GraphemeClusterBreak.T +import com.mogo.aicloud.services.socket.IMogoOnMessageListener +import com.mogo.aicloud.services.socket.MogoAiCloudSocketManager +import com.mogo.commons.AbsMogoApplication +import com.mogo.och.common.module.biz.common.socketmessage.data.OCHOperationalMessage + +/** + * 统一管理业务长链消息推送 + */ +object OCHSocketMessageManager { + public val msgMonitorType:Int = 0X0601001 + public val msgWriteOffPassengerType:Int = 0X0601002 + + fun registerSocketMessageListener(msgType:Int, + mogoOnMessageListener : IMogoOnMessageListener){ + MogoAiCloudSocketManager.getInstance(AbsMogoApplication.getApp().applicationContext) + .registerOnMessageListener(msgType,mogoOnMessageListener) + } + + fun releaseSocketMessageListener(msgType:Int){ + MogoAiCloudSocketManager.getInstance(AbsMogoApplication.getApp().applicationContext) + .unregisterLifecycleListener(msgType) + } +} \ No newline at end of file diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/OCHOperationalMessage.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/OCHOperationalMessage.kt new file mode 100644 index 0000000000..5b5f2701d5 --- /dev/null +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/OCHOperationalMessage.kt @@ -0,0 +1,10 @@ +package com.mogo.och.common.module.biz.common.socketmessage.data + +/** + * 运营消息data类 + */ +data class OCHOperationalMessage ( + var message: String = "" ,//运营消息 + var messageType: Int = 0, // 运营消息类型 + var pushTimeStamp: Long = System.currentTimeMillis() // 消息下发时间戳 +) \ No newline at end of file diff --git a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.java b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.java index bcbe312e33..3ff4494dde 100644 --- a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.java +++ b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.java @@ -224,8 +224,6 @@ public class TaxiPassengerModel implements IOCHTaxiPassengerNaviChangedCallback } private void initListeners() { - MogoAiCloudSocketManager.getInstance(mContext) - .registerLifecycleListener(10010,mSocketLifeCycleLisnter); // 2021.11.1重构自动驾驶 实现接口 IMoGoAutopilotStatusListener 注册监听 替换IMogoAdasOCHCallback接口 CallerAutoPilotStatusListenerManager.INSTANCE.addListener(TAG, mGoAutopilotStatusListener); @@ -476,17 +474,6 @@ public class TaxiPassengerModel implements IOCHTaxiPassengerNaviChangedCallback } }; - private final IMogoLifecycleListener mSocketLifeCycleLisnter = new IMogoLifecycleListener() { - @Override - public void onConnectFailure() { CallerLogger.INSTANCE.e(M_TAXI_P + TAG,"socket onConnectFailure"); } - - @Override - public void onConnectSuccess() { CallerLogger.INSTANCE.e(M_TAXI_P + TAG,"socket onConnectSuccess"); } - - @Override - public void onConnectLost() { CallerLogger.INSTANCE.e(M_TAXI_P + TAG,"socket onConnectLost"); } - }; - // 自车定位 private final IMogoCarLocationChangedListener2 mCarLocationChangedListener2 = new IMogoCarLocationChangedListener2() { diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java index 3edd01769f..799a93ddc1 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java @@ -16,7 +16,7 @@ import androidx.annotation.Nullable; import com.alibaba.android.arouter.launcher.ARouter; import com.amap.api.maps.model.LatLng; import com.elegant.network.utils.GsonUtil; -import com.mogo.aicloud.services.socket.MogoAiCloudSocketManager; +import com.mogo.aicloud.services.socket.IMogoOnMessageListener; import com.mogo.cloud.commons.utils.CoordinateUtils; import com.mogo.eagle.core.data.BaseData; import com.mogo.eagle.core.data.autopilot.AutopilotControlParameters; @@ -34,6 +34,8 @@ import com.mogo.eagle.core.utilcode.util.ToastUtils; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; import com.mogo.map.navi.IMogoCarLocationChangedListener2; import com.mogo.module.common.MogoApisHandler; +import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager; +import com.mogo.och.common.module.biz.common.socketmessage.data.OCHOperationalMessage; import com.mogo.och.common.module.biz.constant.LoginStatusManager; import com.mogo.och.common.module.biz.constant.OchCommonConst; import com.mogo.och.common.module.biz.network.OchCommonServiceCallback; @@ -212,9 +214,6 @@ public class TaxiModel { } private void initListeners() { - MogoAiCloudSocketManager.getInstance(mContext) - .registerLifecycleListener(10010, mSocketLifeCycleLisnter); - // 2021.11.1重构自动驾驶 实现接口 IMoGoAutopilotStatusListener 注册监听 替换IMogoAdasOCHCallback接口 CallerAutoPilotStatusListenerManager.INSTANCE.addListener(TAG, mGoAutopilotStatusListener); MogoApisHandler.getInstance() @@ -236,8 +235,25 @@ public class TaxiModel { //开启自驾后 异常信息返回 OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(mAdasStartFailureListener); + + OCHSocketMessageManager.INSTANCE.registerSocketMessageListener( + OCHSocketMessageManager.INSTANCE.getMsgMonitorType(), + mMogoOnMessageListener); } + private final IMogoOnMessageListener mMogoOnMessageListener = + new IMogoOnMessageListener() { + @Override + public Class target() { + return OCHOperationalMessage.class; + } + + @Override + public void onMsgReceived(OCHOperationalMessage obj) { + //todo 塞入消息盒子 + } + }; + private void releaseListeners() { MogoApisHandler.getInstance() .getApis() @@ -250,8 +266,7 @@ public class TaxiModel { .getRegisterCenterApi() .unregisterCarLocationChangedListener(TAG, mCarLocationChangedListener2); - MogoAiCloudSocketManager.getInstance(mContext) - .unregisterLifecycleListener(10010); + OCHSocketMessageManager.INSTANCE.releaseSocketMessageListener(OCHSocketMessageManager.INSTANCE.getMsgMonitorType()); CallerAutoPilotStatusListenerManager.INSTANCE.removeListener(mGoAutopilotStatusListener); CallerAutopilotPlanningListenerManager.INSTANCE.removeListener(moGoAutopilotPlanningListener); @@ -1036,23 +1051,6 @@ public class TaxiModel { } }; - private final IMogoLifecycleListener mSocketLifeCycleLisnter = new IMogoLifecycleListener() { - @Override - public void onConnectFailure() { - CallerLogger.INSTANCE.e(M_TAXI + TAG, "socket onConnectFailure"); - } - - @Override - public void onConnectSuccess() { - CallerLogger.INSTANCE.e(M_TAXI + TAG, "socket onConnectSuccess"); - } - - @Override - public void onConnectLost() { - CallerLogger.INSTANCE.e(M_TAXI + TAG, "socket onConnectLost"); - } - }; - // 自车定位 private final IMogoCarLocationChangedListener2 mCarLocationChangedListener2 = new IMogoCarLocationChangedListener2() {