添加故障求助埋点

This commit is contained in:
tongchenfei
2020-10-21 20:53:34 +08:00
parent 8cb48df542
commit 4438b6c200
4 changed files with 17 additions and 8 deletions

View File

@@ -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)

View File

@@ -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, "上报道路事件=====")

View File

@@ -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) {
// 事故

View File

@@ -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<String, Any> = 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<BaseData>(RequestOptions.create(context)) {
override fun onSuccess(o: BaseData?) {
super.onSuccess(o)