From 4438b6c2000fbfd9244f68e0c8f134dcb2112561 Mon Sep 17 00:00:00 2001 From: tongchenfei Date: Wed, 21 Oct 2020 20:53:34 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=95=85=E9=9A=9C=E6=B1=82?= =?UTF-8?q?=E5=8A=A9=E5=9F=8B=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/mogo/module/share/VoiceCmdService.kt | 2 +- .../share/dialog/GridFixableShareDialog.kt | 2 +- .../share/dialog/LaucherShareDialog.java | 2 +- .../module/share/manager/SeekHelpManager.kt | 19 ++++++++++++++----- 4 files changed, 17 insertions(+), 8 deletions(-) diff --git a/modules/mogo-module-share/src/main/java/com/mogo/module/share/VoiceCmdService.kt b/modules/mogo-module-share/src/main/java/com/mogo/module/share/VoiceCmdService.kt index ae1c6924c9..ff2b90c445 100644 --- a/modules/mogo-module-share/src/main/java/com/mogo/module/share/VoiceCmdService.kt +++ b/modules/mogo-module-share/src/main/java/com/mogo/module/share/VoiceCmdService.kt @@ -42,7 +42,7 @@ class VoiceCmdService:Service() { if (intent.getIntExtra(ShareConstants.VOICE_CMD_SERVICE_EVENT_KEY,0) == ShareConstants.VOICE_CMD_SERVICE_SEEK_HELP) { // 收到语音指令,准备上报求助 Logger.i(TAG, "收到语音指令,准备上报求助") - SeekHelpManager.seekHelp(this,seekListener) + SeekHelpManager.seekHelp(this,seekListener,"2") } } return super.onStartCommand(intent, flags, startId) diff --git a/modules/mogo-module-share/src/main/java/com/mogo/module/share/dialog/GridFixableShareDialog.kt b/modules/mogo-module-share/src/main/java/com/mogo/module/share/dialog/GridFixableShareDialog.kt index c3d16fe965..9c623aa55a 100644 --- a/modules/mogo-module-share/src/main/java/com/mogo/module/share/dialog/GridFixableShareDialog.kt +++ b/modules/mogo-module-share/src/main/java/com/mogo/module/share/dialog/GridFixableShareDialog.kt @@ -63,7 +63,7 @@ class GridFixableShareDialog(context: Context) : BaseFloatDialog(context) { if (it.poiType == IMogoTanluProvider.TYPE_SEEK_HELP) { // 发起故障求助 Logger.d(TAG, "发起故障求助====") - seekHelp(context, seekListener, true) + seekHelp(context, seekListener, "1", true) } else { // 上报道路事件 Logger.d(TAG, "上报道路事件=====") diff --git a/modules/mogo-module-share/src/main/java/com/mogo/module/share/dialog/LaucherShareDialog.java b/modules/mogo-module-share/src/main/java/com/mogo/module/share/dialog/LaucherShareDialog.java index bf5bcf8365..1d1aa71708 100644 --- a/modules/mogo-module-share/src/main/java/com/mogo/module/share/dialog/LaucherShareDialog.java +++ b/modules/mogo-module-share/src/main/java/com/mogo/module/share/dialog/LaucherShareDialog.java @@ -161,7 +161,7 @@ public class LaucherShareDialog extends BaseFloatDialog implements View.OnClickL } else if (id == R.id.ivSeekHelp) { // 故障求助 Logger.d(TAG,"点击求助"); - SeekHelpManager.INSTANCE.seekHelp(mContext,seekListener,true); + SeekHelpManager.INSTANCE.seekHelp(mContext, seekListener, "1", true); dismiss(); } else if (id == R.id.ivAccident) { // 事故 diff --git a/modules/mogo-module-share/src/main/java/com/mogo/module/share/manager/SeekHelpManager.kt b/modules/mogo-module-share/src/main/java/com/mogo/module/share/manager/SeekHelpManager.kt index e55988e46c..8eb55c6bf3 100644 --- a/modules/mogo-module-share/src/main/java/com/mogo/module/share/manager/SeekHelpManager.kt +++ b/modules/mogo-module-share/src/main/java/com/mogo/module/share/manager/SeekHelpManager.kt @@ -3,6 +3,8 @@ package com.mogo.module.share.manager import android.annotation.SuppressLint import android.content.Context import android.os.SystemClock +import android.util.ArrayMap +import com.mogo.commons.analytics.AnalyticsUtils import com.mogo.commons.data.BaseData import com.mogo.commons.network.SubscribeImpl import com.mogo.commons.network.Utils @@ -61,7 +63,7 @@ object SeekHelpManager { Logger.d(TAG, "onSpeakEnd: $it") if (it == VOICE_WILL_SEEK_HELP) { // 请求帮助语音播放完成,开始真正寻求帮助 - realSeekHelp() + realSeekHelp("1") } } } @@ -76,8 +78,10 @@ object SeekHelpManager { * 由于当前需求仅需要提供这一个方法,所以context的初始化放到了此方法,后面如果有增加,需要把这部分提出去 * * @param useLocalVoiceNotice 使用自己的语音播报,如果是从语音助手过来的请求,语音助手可能会走自己的播报,默认是使用自己的播报 + * + * @param from 1 - 手动发起求助 2 - 语音发起求助 */ - fun seekHelp(context: Context, seekHelpListener: ISeekHelpListener, useLocalVoiceNotice: Boolean = true) { + fun seekHelp(context: Context, seekHelpListener: ISeekHelpListener,from:String = "1", useLocalVoiceNotice: Boolean = true) { Logger.d(TAG, "seekHelp: $isSeeking") if(!isSeeking) { isSeeking = true @@ -110,10 +114,10 @@ object SeekHelpManager { // 语音说完再请求,要不然可能请求的太快 Logger.d(TAG, "使用本地播报: $aiAssist") aiAssist?.speakTTSVoice(VOICE_WILL_SEEK_HELP) - realSeekHelp() + realSeekHelp(from) } else { Logger.d(TAG, "不使用本地语音播报,直接开始发起求助") - realSeekHelp() + realSeekHelp(from) } } } @@ -149,12 +153,17 @@ object SeekHelpManager { /** * 真正开始寻求帮助,实际就是请求接口 */ - private fun realSeekHelp() { + private fun realSeekHelp(from:String) { Logger.d(TAG, "realSeekHelp") // 请求故障求助接口 val seekRequest = SeekRequest(Utils.getSn()) val param = mutableMapOf("data" to seekRequest.getJson()) + val properties: MutableMap = ArrayMap() + properties["type"] = 9999 + properties["from"] = from + AnalyticsUtils.track("v2x_share_type", properties) + ServiceApisManager.serviceApis.networkApi.create(ShareApiService::class.java, HttpConstant.getNetHost()).sendHelpSignal(param).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(object : SubscribeImpl(RequestOptions.create(context)) { override fun onSuccess(o: BaseData?) { super.onSuccess(o)