[dev_arch_opt_3.0] 临时添加obu相关tts和消息的展示频率

This commit is contained in:
lixiaopeng
2023-02-24 18:36:30 +08:00
parent ae44ee9ba4
commit 891cdc97ca
2 changed files with 30 additions and 1 deletions

View File

@@ -27,13 +27,27 @@ object V2xObuEventManager : IMoGoObuSaveMessageListener {
CallerObuSaveMessageListenerManager.removeListener(TAG)
}
private val obuDataMap = mutableMapOf<String, Long>()
/**
* @param type 事件id类似与uuid
* @param content 事件内容
* @param tts 事件语音播报
* @param tts 事件语音播报 //30秒内同一个事件只出现一次 TODO 临时添加,后面宏宇统一在数据中心处理
*/
override fun onMoGoObuSaveMessage(type: String, content: String, tts: String, source: DataSourceType) {
if (content.isNotEmpty()) {
if (obuDataMap.containsKey(type)) {
var oldTime = obuDataMap[type]
var timeDiff = (System.currentTimeMillis() - oldTime!!) / 1000
if (timeDiff < 30) {
return
}
obuDataMap.remove(type)
obuDataMap[type] = System.currentTimeMillis()
} else {
obuDataMap[type] = System.currentTimeMillis()
}
CallerMsgBoxManager.saveMsgBox(
MsgBoxBean(
MsgBoxType.V2X,

View File

@@ -1037,6 +1037,8 @@ class MogoPrivateObuNewManager private constructor() : OnUpgradeListener {
)
}
private val ttsMap = mutableMapOf<String, Long>()
/**
* 消息盒子对应消息的语音播报
*/
@@ -1046,6 +1048,19 @@ class MogoPrivateObuNewManager private constructor() : OnUpgradeListener {
tts: String,
direction: WarningDirectionEnum
) {
//30秒内同一个事件只出现一次 TODO 临时添加,后面宏宇统一在数据中心处理
if (ttsMap.containsKey(type)) {
var oldTime = ttsMap[type]
var timeDiff = (System.currentTimeMillis() - oldTime!!) / 1000
if (timeDiff < 30) {
return
}
ttsMap.remove(type)
ttsMap[type] = System.currentTimeMillis()
} else {
ttsMap[type] = System.currentTimeMillis()
}
CallerHmiManager.warningV2X(
type,
content,