[6.5.0] refactor: 通用弹框增加tts 文案设置;

This commit is contained in:
aibingbing
2024-07-10 09:53:01 +08:00
parent f95c7b4bd4
commit 1ca1a97aff
5 changed files with 21 additions and 4 deletions

View File

@@ -170,6 +170,10 @@ object PassBusStationEventManager : IMoGoChassisLocationWGS84Listener {
it.notifyDistance
),
isDriverScreen,
String.format(
EventTypeEnumNew.getWarningTts(EventTypeEnumNew.TYPE_USECASE_ROAD_BUS_STATION.poiType),
it.notifyDistance
),
UriUtils.res2Uri(
EventTypeEnumNew.getPoiTypeBg(
EventTypeEnumNew.TYPE_USECASE_ROAD_BUS_STATION.poiType,

View File

@@ -203,7 +203,7 @@ internal object V2NIdentifyDrawer: IEventDismissListener {
}
}
val alert = sb.toString()
CallerRoadV2NEventWindowListenerManager.showLiveVideo("${itx.longitude}-${itx.latitude}", itx.systemTime.toLong(), EventTypeEnumNew.getUpdateIconRes(poiType), alert, isDriver, itx.cameraIp, itx.longitude, itx.latitude)
CallerRoadV2NEventWindowListenerManager.showLiveVideo("${itx.longitude}-${itx.latitude}", itx.systemTime.toLong(), EventTypeEnumNew.getUpdateIconRes(poiType), alert, isDriver, alert, itx.cameraIp, itx.longitude, itx.latitude)
}
}
//消息埋点
@@ -350,6 +350,7 @@ internal object V2NIdentifyDrawer: IEventDismissListener {
EventTypeEnumNew.getUpdateIconRes(EventTypeEnumNew.TYPE_SOCKET_ROAD_OTHER_RETROGRADE_VEHICLE.poiType),
String.format(EventTypeEnumNew.getAlarmContent(EventTypeEnumNew.TYPE_SOCKET_ROAD_OTHER_RETROGRADE_VEHICLE.poiType), distance.toInt()),
isDriver,
String.format(EventTypeEnumNew.getWarningTts(EventTypeEnumNew.TYPE_SOCKET_ROAD_OTHER_RETROGRADE_VEHICLE.poiType), distance.toInt()),
cameraIp.toString(),
event.longitude,
event.latitude)
@@ -410,6 +411,7 @@ internal object V2NIdentifyDrawer: IEventDismissListener {
EventTypeEnumNew.getUpdateIconRes(EventTypeEnumNew.TYPE_SOCKET_ROAD_PEOPLE_CROSS.poiType),
String.format(EventTypeEnumNew.getAlarmContent(EventTypeEnumNew.TYPE_SOCKET_ROAD_PEOPLE_CROSS.poiType), distance.toInt()),
isDriver,
String.format(EventTypeEnumNew.getWarningTts(EventTypeEnumNew.TYPE_SOCKET_ROAD_PEOPLE_CROSS.poiType), distance.toInt()),
cameraIp.toString(),
data.longitude,
data.latitude)

View File

@@ -2,6 +2,7 @@ package com.mogo.eagle.core.function.hmi.ui.v2n
import android.content.Context
import android.graphics.Color
import android.text.TextUtils
import android.util.AttributeSet
import android.util.TypedValue
import android.view.LayoutInflater
@@ -283,7 +284,7 @@ class RoadV2NEventWindowView @JvmOverloads constructor(
tvV2XHintContent.text = dataBean.hintStr
tvV2XTimeStr.text =
"更新时间:${DateTimeUtils.getTimeText(dataBean.timestamp, DateTimeUtils.HH_mm_ss)}"
if (dataBean.isNeedTTS) {
if (dataBean.isNeedTTS && !TextUtils.isEmpty(dataBean.ttsStr)) {
AIAssist.getInstance(context)
.speakTTSVoiceWithLevel(dataBean.hintStr, AIAssist.LEVEL0)
}

View File

@@ -10,13 +10,14 @@ data class RoadV2NEventWindowBean(
var iconResId: Int, //事件icon res id
var hintStr: String, //事件提示文案
var isNeedTTS: Boolean = false, //事件文案是否需要同步tts
var ttsStr: String = "", //TTS的文案
var contentImageUrl: String, // Image 类型时图片 url
var cameraIp: String, // 路侧camera ip,用于请求获取拉流地址
var lon: Double, //事件坐标-经度
var lat: Double, //事件坐标-纬度
) {
override fun toString(): String {
return "RoadV2NEventWindowBean(eventType=$eventType, eventId='$eventId', timestamp=$timestamp, iconResId='$iconResId', hintStr='$hintStr', isNeedTTS=$isNeedTTS, contentImageUrl='$contentImageUrl', cameraIp='$cameraIp', lon=$lon, lat=$lat)"
return "RoadV2NEventWindowBean(eventType=$eventType, eventId='$eventId', timestamp=$timestamp, iconResId=$iconResId, hintStr='$hintStr', isNeedTTS=$isNeedTTS, ttsStr='$ttsStr', contentImageUrl='$contentImageUrl', cameraIp='$cameraIp', lon=$lon, lat=$lat)"
}
}

View File

@@ -21,13 +21,15 @@ object CallerRoadV2NEventWindowListenerManager : CallerBase<IRoadV2NEventWindowL
* @param iconResId 事件icon drawable id
* @param hintStr 事件提示str
* @param isNeedTTS show时是否需要同步tts
* @param ttsStr tts的文案
*/
fun showText(
eventId: String,
timestamp: Long,
iconResId: Int,
hintStr: String,
isNeedTTS: Boolean
isNeedTTS: Boolean,
ttsStr: String = ""
) {
val data = RoadV2NEventWindowBean(
RoadV2NEventType.TEXT,
@@ -36,6 +38,7 @@ object CallerRoadV2NEventWindowListenerManager : CallerBase<IRoadV2NEventWindowL
iconResId,
hintStr,
isNeedTTS,
ttsStr,
"",
"",
0.0,
@@ -55,6 +58,7 @@ object CallerRoadV2NEventWindowListenerManager : CallerBase<IRoadV2NEventWindowL
* @param iconResId 事件icon drawable id
* @param hintStr 事件提示str
* @param isNeedTTS show时是否需要同步tts
* @param ttsStr tts的文案
* @param contentImageUrl 内容部分图片 url
*/
fun showImage(
@@ -63,6 +67,7 @@ object CallerRoadV2NEventWindowListenerManager : CallerBase<IRoadV2NEventWindowL
iconResId: Int,
hintStr: String,
isNeedTTS: Boolean,
ttsStr: String = "",
contentImageUrl: String
) {
val data = RoadV2NEventWindowBean(
@@ -72,6 +77,7 @@ object CallerRoadV2NEventWindowListenerManager : CallerBase<IRoadV2NEventWindowL
iconResId,
hintStr,
isNeedTTS,
ttsStr,
contentImageUrl,
"",
0.0,
@@ -91,6 +97,7 @@ object CallerRoadV2NEventWindowListenerManager : CallerBase<IRoadV2NEventWindowL
* @param iconResId 事件icon drawable id
* @param hintStr 事件提示str
* @param isNeedTTS show时是否需要同步tts
* @param ttsStr tts的文案
* @param cameraIp 摄像头 IP
* @param lon 事件发生经度
* @param lat 事件发生维度
@@ -101,6 +108,7 @@ object CallerRoadV2NEventWindowListenerManager : CallerBase<IRoadV2NEventWindowL
iconResId: Int,
hintStr: String,
isNeedTTS: Boolean,
ttsStr: String = "",
cameraIp: String,
lon: Double,
lat: Double
@@ -112,6 +120,7 @@ object CallerRoadV2NEventWindowListenerManager : CallerBase<IRoadV2NEventWindowL
iconResId,
hintStr,
isNeedTTS,
ttsStr,
"",
cameraIp,
lon,