浏览代码

Z991239-3726 #comment 优化连线失败告警信息

80274480 3 年之前
父节点
当前提交
e20cd37500

+ 11 - 10
Module/mod_counterconnector/ConnectorFSM.cpp

@@ -518,10 +518,17 @@ void ACMCallFSM::OnStateTrans(int iSrcState, int iDstState)
 					snprintf(strmsg, MAX_PATH,"Broadcast state from %d to %d", st1, st2);
 					DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)(strmsg);
 
-					int ierrcode = GetFailedErrorCode(iSrcState);
-					if (ierrcode >= 0 && ierrcode < sizeof(connect_failed_case_table)/ sizeof(char*)){
-						evt.errinfo = CSimpleStringA2W(connect_failed_case_table[ierrcode]);
-						DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)("connect failed for %s.", CSimpleStringW2A(evt.errinfo).GetData());
+					if (eState_Fail == st2){
+						int ierrcode = GetFailedErrorCode(iSrcState);
+						DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)("connect_failed_case_table size is %d, and ierrcode = %d.", sizeof(connect_failed_case_table)/ sizeof(char*), ierrcode);
+						if (ierrcode >= 0 && ierrcode < sizeof(connect_failed_case_table)/ sizeof(char*)){
+							evt.errinfo = CSimpleStringA2W(connect_failed_case_table[ierrcode]);
+							DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)("connect failed for %s.", CSimpleStringW2A(evt.errinfo).GetData());
+						}
+
+						char strerrmsg[MAX_PATH] = {0};
+						snprintf(strerrmsg, MAX_PATH, "connect failed for %s and last state is %d, and current src state is %d.",CSimpleStringW2A(evt.errinfo).GetData(), m_iFailedLastState, iSrcState);
+						LogWarn(Severity_Middle, Error_Debug, LOG_WARN_COUNTERCONNECT_CONNECT_FAILED, strerrmsg);
 					}
 
 					SpSendBroadcast(GetEntityBase()->GetFunction(), SP_MSG_OF(PhoneState), SP_MSG_SIG_OF(PhoneState), evt);
@@ -538,12 +545,6 @@ void ACMCallFSM::OnStateTrans(int iSrcState, int iDstState)
 						LogWarn(Severity_Low, Error_Debug, LOG_WARN_COUNTERCONNECT_CONNECT_SUCCESS, "connect success!");
 					}
 				}
-
-				if (eState_Fail == st1 && eState_Offline == st2){
-					char strmsg[MAX_PATH] = {0};
-					snprintf(strmsg, MAX_PATH, "connect failed for %s and last state is %d, and current src state is %d.",CSimpleStringW2A(evt.errinfo).GetData(), m_iFailedLastState, iSrcState);
-					LogWarn(Severity_Low, Error_Debug, LOG_WARN_COUNTERCONNECT_CONNECT_FAILED, strmsg);
-				}
 			}
 			SetCallState(st2);
 			GetEntityBase()->GetFunction()->SetUserDefineState(st2+USER_SIP_OFFLINE);      

+ 9 - 2
Module/mod_localmediaplay/mod_localmediaplay.cpp

@@ -479,7 +479,12 @@ void CLocalMediaPlayEntity::MediaPlayFinished(int iMediaType)
 		ret.AudioNames = m_lastPlayAudio.c_str();
 		ret.ret = true;
 		Dbg("stop play audio %s success.", ret.AudioNames.GetData());
-		SpSendBroadcast(GetFunction(), eMsg_AudioPlayRet, eMsgSig_AudioPlayRet, ret);
+		if (false == m_buserstopaudio) {
+			SpSendBroadcast(GetFunction(), eMsg_AudioPlayRet, eMsgSig_AudioPlayRet, ret);
+		}
+		else {
+			Dbg("user stop, not broadcast!");
+		}
 	}
 	else {
 		VideoPlayRet ret;
@@ -488,7 +493,6 @@ void CLocalMediaPlayEntity::MediaPlayFinished(int iMediaType)
 		Dbg("stop play video notice %s success.", ret.VideoNames.GetData());
 		SpSendBroadcast(GetFunction(), eMsg_VideoPlayRet, eMsgSig_VideoPlayRet, ret);
 	}
-
 }
 
 int CLocalMediaPlayEntity::GetMediaPlayerIcoPath(char* strPath, size_t uLen)
@@ -1227,6 +1231,8 @@ void CLocalMediaPlayEntity::StartAudio(const char *pAudioNames)
 		Dbg("create audio play thread failed.");
 	}
 
+	m_buserstopaudio = false;
+
 	auto audioRet = GetLocalAudioVolume();
 	m_pMediaAudioPlayer->SetVolume(audioRet.second);
 	Dbg("Succeed to set audio volume %d!", audioRet.second);
@@ -1284,6 +1290,7 @@ void CLocalMediaPlayEntity::StopAudio()
 	m_pAudioPlayer->Close();
 #else
 	m_pMediaAudioPlayer->Close();
+	m_buserstopaudio = true;
 #endif
 	Dbg("Succeed to StopAudio!");
 }

+ 1 - 0
Module/mod_localmediaplay/mod_localmediaplay.h

@@ -244,6 +244,7 @@ private:
 	char m_audiobuffer[RVC_AUDIO_BUFFER_LEN];
 	int m_leftlen;
 	int m_iseriesnumber;
+	bool m_buserstopaudio;
 #endif // RVC_OS_WIN
 };