From 7aaab3ab7dced339bec4d82187cbde3753cbd293 Mon Sep 17 00:00:00 2001 From: yangyakun Date: Tue, 27 Aug 2024 20:18:27 +0800 Subject: [PATCH] =?UTF-8?q?[6.6.0]=20[b1=20b2=20tts=20=E7=AD=96=E7=95=A5?= =?UTF-8?q?=E5=8F=98=E6=9B=B4]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/mogo/och/bus/model/OrderModel.java | 2 +- .../mogo/och/bus/presenter/BusPresenter.java | 6 - .../com/mogo/och/bus/util/BusVoiceManager.kt | 108 +++++++++++++++--- .../ui/BusPassengerBaseFragment.java | 5 +- .../mogo/och/shuttle/model/OrderModel.java | 27 ----- .../com/mogo/och/shuttle/model/TicketModel.kt | 5 - .../och/shuttle/util/ShuttleVoiceManager.kt | 80 +++++++++++-- .../mogo/och/weaknet/database/MyDataBase.kt | 2 +- .../database/repository/TaskRepository.kt | 6 +- .../och/weaknet/util/ShuttleVoiceManager.kt | 38 ++++-- 10 files changed, 197 insertions(+), 82 deletions(-) diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/model/OrderModel.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/model/OrderModel.java index 48c5a1cdf5..c9de30993d 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/model/OrderModel.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/model/OrderModel.java @@ -1058,7 +1058,7 @@ public class OrderModel { OCHSocketMessageManager.INSTANCE.pushAppOperationalMsgBox( DateTimeUtil.getCurrentTimeStamp(), tips,OCHSocketMessageManager.OPERATION_SYSTEM); - BusVoiceManager.INSTANCE.leafTime(tips); + BusVoiceManager.INSTANCE.showLeafTime(tips); } Runnable tip1Runnable = () -> { diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java index 13f5b32262..7296f87782 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java @@ -290,12 +290,6 @@ public class BusPresenter extends Presenter @Override public void playPassenger(WriteOffPassenger passenger) { int passengerNum = passenger.passengerSize; - if (passengerNum > 1) { //多人播报 "x人" ---》x人核验通过 - OrderModel.getInstance().sendWriteOffNumToClient(passengerNum + "人核验通过"); - } else { //是 1 播放 "滴" 2022.11.09 改为: "核验通过" -// mView.playDI(); - OrderModel.getInstance().sendWriteOffNumToClient("核验通过"); - } BusVoiceManager.INSTANCE.writeOffCount(passengerNum); } diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/util/BusVoiceManager.kt b/OCH/bus/driver/src/main/java/com/mogo/och/bus/util/BusVoiceManager.kt index b012ede9f4..fcd34525ae 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/util/BusVoiceManager.kt +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/util/BusVoiceManager.kt @@ -5,6 +5,9 @@ import com.mogo.commons.voice.AIAssist import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.och.bus.R +import com.mogo.och.common.module.manager.socket.lan.LanSocketManager +import com.mogo.och.common.module.manager.socket.lan.bean.AppConnectMsg +import com.mogo.och.common.module.utils.ResourcesUtils import com.mogo.och.common.module.voice.VoiceNotice import com.mogo.tts.base.LangTtsEntity import com.mogo.tts.base.LanguageType @@ -12,14 +15,6 @@ import java.util.ArrayList object BusVoiceManager { - fun writeOffCount(successNum:Int){ - if(successNum<=1){ - VoiceNotice.showNotice("核验通过", AIAssist.LEVEL3); - }else{ - VoiceNotice.showNotice("$successNum 人核验通过", AIAssist.LEVEL3); - } - } - fun arrivedStationBus(siteNameCN: String?, siteNameKR: String?) { val context = AbsMogoApplication.getApp() val list: MutableList = ArrayList() @@ -33,15 +28,31 @@ object BusVoiceManager { LanguageType.ENGLISH ) val koreanTTS = LangTtsEntity( - context.getString(R.string.bus_arrived_station_korean_tip, siteNameKR?:it), + context.getString(R.string.bus_arrived_station_korean_tip, siteNameKR ?: it), LanguageType.KOREAN ) list.add(chineseTTS) list.add(engTTS) list.add(koreanTTS) + } - VoiceNotice.showNotice(list, AIAssist.LEVEL1,null) + if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) { + VoiceNotice.showNotice(list, AIAssist.LEVEL1, null) + } else if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) { + siteNameCN?.let { + sendArrivedStationToClient(it) + } + } + } + + private fun sendArrivedStationToClient(arriveStation: String) { + val arrivedMsg = AppConnectMsg( + isViewShow = false, + isPlay = true, + msg = ResourcesUtils.getString(R.string.bus_arrived_station_tip, arriveStation), + ) + LanSocketManager.sendMsgToClient(arrivedMsg) } fun leaveStationBus(siteNameCN: String?, siteNameKR: String?) { @@ -63,26 +74,89 @@ object BusVoiceManager { context.getString(R.string.bus_leave_station_korean_tip, siteNameKR ?: it), LanguageType.KOREAN ) + list.add(koreanTTS) } - VoiceNotice.showNotice(list, AIAssist.LEVEL1,null) + + if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) { + VoiceNotice.showNotice(list, AIAssist.LEVEL1, null) + } else if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) { + siteNameCN?.let { + sendStartStationToClient(it) + } + } + } + + private fun sendStartStationToClient(nextStation: String) { + val startMsg = AppConnectMsg( + isViewShow = false, + isPlay = true, + msg = ResourcesUtils.getString(R.string.bus_leave_station_tip, nextStation), + ) + LanSocketManager.sendMsgToClient(startMsg) } fun endOrderBus() { val context = AbsMogoApplication.getApp() val list: MutableList = ArrayList() - val chineseTTS = LangTtsEntity(context.getString(R.string.bus_end_task_tip), LanguageType.CHINESE) - val engTTS = LangTtsEntity(context.getString(R.string.bus_end_task_english_tip), LanguageType.ENGLISH) - val koreanTTS = LangTtsEntity(context.getString(R.string.bus_end_task_korean_tip), LanguageType.KOREAN) + val chineseTTS = + LangTtsEntity(context.getString(R.string.bus_end_task_tip), LanguageType.CHINESE) + val engTTS = LangTtsEntity( + context.getString(R.string.bus_end_task_english_tip), + LanguageType.ENGLISH + ) + val koreanTTS = + LangTtsEntity(context.getString(R.string.bus_end_task_korean_tip), LanguageType.KOREAN) list.add(chineseTTS) list.add(engTTS) list.add(koreanTTS) - VoiceNotice.showNotice(list, AIAssist.LEVEL0,null) + + if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) { + VoiceNotice.showNotice(list, AIAssist.LEVEL0, null) + } else if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) { + sendEndTaskToClient() + } + } - fun leafTime(tips: String) { + private fun sendEndTaskToClient() { + val endMsg = AppConnectMsg( + isViewShow = false, + isPlay = true, + msg = ResourcesUtils.getString(R.string.bus_end_task_tip), + ) + LanSocketManager.sendMsgToClient(endMsg) + } + + + fun writeOffCount(successNum: Int) { + if (successNum <= 1) { + VoiceNotice.showNotice("核验通过", AIAssist.LEVEL3) + //sendWriteOffNumToClient("核验通过") + } else { + VoiceNotice.showNotice("$successNum 人核验通过", AIAssist.LEVEL3) + //sendWriteOffNumToClient("$successNum 人核验通过") + } + } + + private fun sendWriteOffNumToClient(msg: String?) { + val passengerMsg = AppConnectMsg( + isViewShow = false, + isPlay = true, + msg = msg!!, + ) + LanSocketManager.sendMsgToClient(passengerMsg) + } + + + // 距离发车还有1分钟 + fun showLeafTime(tips: String) { //语音提示 - VoiceNotice.showNotice(tips); + VoiceNotice.showNotice(tips) + } + + fun writeOffFaile(reaseon: String) { + VoiceNotice.showNotice(reaseon, AIAssist.LEVEL3) } } \ No newline at end of file diff --git a/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPassengerBaseFragment.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPassengerBaseFragment.java index ff7cee2e26..2cd6bd2a61 100644 --- a/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPassengerBaseFragment.java +++ b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPassengerBaseFragment.java @@ -19,6 +19,8 @@ import com.mogo.eagle.core.function.hmi.ui.widget.RomaPassengerView; import com.mogo.eagle.core.function.view.MapBizView; import com.mogo.eagle.core.utilcode.util.DeviceUtils; import com.mogo.och.bus.passenger.R; +import com.mogo.och.common.module.manager.socket.lan.LanSocketManager; +import com.mogo.och.common.module.manager.socket.lan.bean.DPMsgType; /** * Created on 2022/3/31 @@ -56,7 +58,7 @@ public abstract class BusPassengerBaseFragment openOrCloseLiveVideo()); - + LanSocketManager.INSTANCE.registerSocketMessageListener(DPMsgType.TYPE_COMMON.getType(),LanSocketManager.INSTANCE.getCommonListener()); CallerTelematicListenerManager.INSTANCE.addListener(TAG, new IReceivedMsgListener() { @Override public void onDemoMode(boolean isDemoMode) { @@ -132,6 +134,7 @@ public abstract class BusPassengerBaseFragment LanSocketManager.sendMsgToClient(startMsg), BusConst.DELAY_10S); - } - - private void sendEndTaskToClient() { - AppConnectMsg endMsg = new AppConnectMsg(false,true,mContext - .getString(R.string.bus_end_task_tip),-1); - LanSocketManager.sendMsgToClient(endMsg); - } - - /** * 离站上报 */ @@ -1086,7 +1060,6 @@ public class OrderModel { queryBusRoutes();// 重新获取任务 removeTipRunnables(); ShuttleVoiceManager.INSTANCE.endOrderBus(); - sendEndTaskToClient(); } } diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/shuttle/model/TicketModel.kt b/OCH/shuttle/driver/src/main/java/com/mogo/och/shuttle/model/TicketModel.kt index 22e036ce1a..e02dd0144a 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/shuttle/model/TicketModel.kt +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/shuttle/model/TicketModel.kt @@ -202,11 +202,6 @@ object TicketModel : IReceivedMsgListener, IOchOnMessageListener 1) { //多人播报 "x人" ---》x人核验通过 - ShuttleVoiceManager.sendWriteOffNumToClient(ticketSize.toString() + "人核验通过") - } else { //是 1 播放 "滴" 2022.11.09 改为: "核验通过" - ShuttleVoiceManager.sendWriteOffNumToClient("核验通过") - } ShuttleVoiceManager.writeOffCount(ticketSize) var tempPhone = phone diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/shuttle/util/ShuttleVoiceManager.kt b/OCH/shuttle/driver/src/main/java/com/mogo/och/shuttle/util/ShuttleVoiceManager.kt index 77e85a4594..123b7ca541 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/shuttle/util/ShuttleVoiceManager.kt +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/shuttle/util/ShuttleVoiceManager.kt @@ -2,8 +2,11 @@ package com.mogo.och.shuttle.util import com.mogo.commons.AbsMogoApplication import com.mogo.commons.voice.AIAssist -import com.mogo.och.common.module.manager.socket.lan.LanSocketManager.sendMsgToClient +import com.mogo.eagle.core.data.config.FunctionBuildConfig +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils +import com.mogo.och.common.module.manager.socket.lan.LanSocketManager import com.mogo.och.common.module.manager.socket.lan.bean.AppConnectMsg +import com.mogo.och.common.module.utils.ResourcesUtils import com.mogo.och.common.module.voice.VoiceNotice import com.mogo.och.shuttle.R import com.mogo.tts.base.LangTtsEntity @@ -11,12 +14,6 @@ import com.mogo.tts.base.LanguageType object ShuttleVoiceManager { - fun sendWriteOffNumToClient(msg: String?) { - val passengerMsg = AppConnectMsg(false, true, msg!!, -1) - sendMsgToClient(passengerMsg) - } - - fun arrivedStationBus(siteNameCN: String?, siteNameKR: String?) { val context = AbsMogoApplication.getApp() val list: MutableList = ArrayList() @@ -36,9 +33,25 @@ object ShuttleVoiceManager { list.add(chineseTTS) list.add(engTTS) list.add(koreanTTS) + } - VoiceNotice.showNotice(list, AIAssist.LEVEL1,null) + if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) { + VoiceNotice.showNotice(list, AIAssist.LEVEL1,null) + } else if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) { + siteNameCN?.let { + sendArrivedStationToClient(it) + } + } + } + + private fun sendArrivedStationToClient(arriveStation: String) { + val arrivedMsg = AppConnectMsg( + isViewShow = false, + isPlay = true, + msg = ResourcesUtils.getString(R.string.bus_arrived_station_tip,arriveStation), + ) + LanSocketManager.sendMsgToClient(arrivedMsg) } fun leaveStationBus(siteNameCN: String?, siteNameKR: String?) { @@ -60,9 +73,26 @@ object ShuttleVoiceManager { context.getString(R.string.bus_leave_station_korean_tip, siteNameKR ?: it), LanguageType.KOREAN ) + list.add(koreanTTS) } - VoiceNotice.showNotice(list, AIAssist.LEVEL1,null) + + if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) { + VoiceNotice.showNotice(list, AIAssist.LEVEL1,null) + } else if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) { + siteNameCN?.let { + sendStartStationToClient(it) + } + } + } + + private fun sendStartStationToClient(nextStation: String) { + val startMsg = AppConnectMsg( + isViewShow = false, + isPlay = true, + msg = ResourcesUtils.getString(R.string.bus_leave_station_tip,nextStation), + ) + LanSocketManager.sendMsgToClient(startMsg) } fun endOrderBus() { @@ -74,17 +104,45 @@ object ShuttleVoiceManager { list.add(chineseTTS) list.add(engTTS) list.add(koreanTTS) - VoiceNotice.showNotice(list, AIAssist.LEVEL0,null) + + if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) { + VoiceNotice.showNotice(list, AIAssist.LEVEL0,null) + } else if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) { + sendEndTaskToClient() + } + } + private fun sendEndTaskToClient() { + val endMsg = AppConnectMsg( + isViewShow = false, + isPlay = true, + msg = ResourcesUtils.getString(R.string.bus_end_task_tip), + ) + LanSocketManager.sendMsgToClient(endMsg) + } + + fun writeOffCount(successNum:Int){ if(successNum<=1){ - VoiceNotice.showNotice("核验通过", AIAssist.LEVEL3); + VoiceNotice.showNotice("核验通过", AIAssist.LEVEL3) + //sendWriteOffNumToClient("核验通过") }else{ VoiceNotice.showNotice("$successNum 人核验通过", AIAssist.LEVEL3) + //sendWriteOffNumToClient("$successNum 人核验通过") } } + private fun sendWriteOffNumToClient(msg: String?) { + val passengerMsg = AppConnectMsg( + isViewShow = false, + isPlay = true, + msg = msg!!, + ) + LanSocketManager.sendMsgToClient(passengerMsg) + } + + // 距离发车还有1分钟 fun showLeafTime(tips: String) { //语音提示 diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/database/MyDataBase.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/database/MyDataBase.kt index 09d6bcf5ca..7d0635d452 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/database/MyDataBase.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/database/MyDataBase.kt @@ -50,7 +50,7 @@ abstract class MyDataBase : RoomDatabase() { companion object { private const val DATABASE_NAME = "shuttle_db" val ROOT_PATH = - Environment.getExternalStorageDirectory().absolutePath + File.separator + "MLog" + File.separator + "APP_cache" + File.separator //程序外部存储跟目录 + Environment.getExternalStorageDirectory().absolutePath + File.separator + "Mogo" + File.separator + "APP_cache" + File.separator //程序外部存储跟目录 val instance: MyDataBase //结合单例模式完成数据库实例创建 diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/database/repository/TaskRepository.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/database/repository/TaskRepository.kt index 20ddf811bd..eb6fd40462 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/database/repository/TaskRepository.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/database/repository/TaskRepository.kt @@ -4,6 +4,7 @@ package com.mogo.och.weaknet.database.repository import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.util.TAG import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager +import com.mogo.och.common.module.manager.loop.BizLoopManager import com.mogo.och.weaknet.database.MyDataBase import com.mogo.och.weaknet.database.bean.TaskDataBean import com.mogo.och.weaknet.database.dao.TaskDataDao @@ -65,7 +66,7 @@ object TaskRepository { } fun startTask(taskId: Long, lineId: Long,lineName:String,callback: TaskStatusCallback){ - DbThreadUtils.runInIoThread { + BizLoopManager.postDelayed({ var updateCount:Int? = 0 var startTime = System.currentTimeMillis() try { @@ -105,8 +106,7 @@ object TaskRepository { } } - } - + },0) } fun queryRunningTaskByLineId(lineId: Long): List? { diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/util/ShuttleVoiceManager.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/util/ShuttleVoiceManager.kt index 9941faa9a2..3ebf0377ed 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/util/ShuttleVoiceManager.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/util/ShuttleVoiceManager.kt @@ -2,6 +2,8 @@ package com.mogo.och.weaknet.util import com.mogo.commons.AbsMogoApplication import com.mogo.commons.voice.AIAssist +import com.mogo.eagle.core.data.config.FunctionBuildConfig +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.och.common.module.manager.socket.lan.LanSocketManager import com.mogo.och.common.module.manager.socket.lan.bean.AppConnectMsg import com.mogo.och.common.module.utils.ResourcesUtils @@ -31,12 +33,16 @@ object ShuttleVoiceManager { list.add(chineseTTS) list.add(engTTS) list.add(koreanTTS) - sendArrivedStationToClient(it) + } - VoiceNotice.showNotice(list, AIAssist.LEVEL1,null) - - + if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) { + VoiceNotice.showNotice(list, AIAssist.LEVEL1,null) + } else if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) { + siteNameCN?.let { + sendArrivedStationToClient(it) + } + } } private fun sendArrivedStationToClient(arriveStation: String) { @@ -67,10 +73,17 @@ object ShuttleVoiceManager { context.getString(R.string.bus_leave_station_korean_tip, siteNameKR ?: it), LanguageType.KOREAN ) - sendStartStationToClient(it) + list.add(koreanTTS) } - VoiceNotice.showNotice(list, AIAssist.LEVEL1,null) + + if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) { + VoiceNotice.showNotice(list, AIAssist.LEVEL1,null) + } else if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) { + siteNameCN?.let { + sendStartStationToClient(it) + } + } } private fun sendStartStationToClient(nextStation: String) { @@ -91,8 +104,13 @@ object ShuttleVoiceManager { list.add(chineseTTS) list.add(engTTS) list.add(koreanTTS) - sendEndTaskToClient() - VoiceNotice.showNotice(list, AIAssist.LEVEL0,null) + + if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) { + VoiceNotice.showNotice(list, AIAssist.LEVEL0,null) + } else if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) { + sendEndTaskToClient() + } + } private fun sendEndTaskToClient() { @@ -108,10 +126,10 @@ object ShuttleVoiceManager { fun writeOffCount(successNum:Int){ if(successNum<=1){ VoiceNotice.showNotice("核验通过", AIAssist.LEVEL3) - sendWriteOffNumToClient("核验通过") + //sendWriteOffNumToClient("核验通过") }else{ VoiceNotice.showNotice("$successNum 人核验通过", AIAssist.LEVEL3) - sendWriteOffNumToClient("$successNum 人核验通过") + //sendWriteOffNumToClient("$successNum 人核验通过") } }