From 416f65d76a00121f1cf38bbc6912a28318c85250 Mon Sep 17 00:00:00 2001 From: hcj <1224667075@qq.com> Date: Thu, 9 Jan 2025 17:21:42 +0800 Subject: [PATCH] =?utf8?q?=E4=BF=AE=E6=94=B9=E8=93=9D=E7=89=99=E8=80=B3?= =?utf8?q?=E6=9C=BA=E5=A4=84=E7=90=86=E7=94=B5=E8=AF=9D=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../nativeui/callerlog/src/CallerLogModel.cpp | 2 +- .../phoneservice/src/PhoneAGService.cpp | 1 + .../msg_center/src/msg_center_customer.cpp | 42 +++++++++++-------- .../slip/cat1Service/cat1_server.cpp | 9 ++-- 4 files changed, 33 insertions(+), 21 deletions(-) diff --git a/code/sdk/application/wearable/fd230app/nativeui/callerlog/src/CallerLogModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/callerlog/src/CallerLogModel.cpp index b2beeb6be..c6f0621a4 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/callerlog/src/CallerLogModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/callerlog/src/CallerLogModel.cpp @@ -148,7 +148,7 @@ void StatusReset(void) if(CallerLogModel::GetInstance()->GetCallSource()==CallerLogModel::CallSourceCat1) { #ifdef SUPPORT_CAT1_HFP_AG_SERV - if(volte_voice_state()==2 && headset_Is_connect()) + if(headset_SCO_Is_connect()) { do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_CAT_HFP_DIS_SCO_CONNECT, nullptr, 0); } diff --git a/code/sdk/application/wearable/fd230app/nativeui/phoneservice/src/PhoneAGService.cpp b/code/sdk/application/wearable/fd230app/nativeui/phoneservice/src/PhoneAGService.cpp index 0fe30a1c1..dae05df84 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/phoneservice/src/PhoneAGService.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/phoneservice/src/PhoneAGService.cpp @@ -956,6 +956,7 @@ int cat1_ag_send_call_event( uint32_t event_topic, const char* info) ret=ERRCODE_BT_FAIL; break; } + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"hfp_ag_send_answer_call_event %d %d\n",event_topic,ret); return ret; } diff --git a/code/sdk/application/wearable/service/msg_center/src/msg_center_customer.cpp b/code/sdk/application/wearable/service/msg_center/src/msg_center_customer.cpp index 27dbc7736..28a0f8e14 100644 --- a/code/sdk/application/wearable/service/msg_center/src/msg_center_customer.cpp +++ b/code/sdk/application/wearable/service/msg_center/src/msg_center_customer.cpp @@ -1083,6 +1083,7 @@ void MsgCenterNotifyCatIncomingCallProc(const Topic topic, Request* req) //uapi_hfp_disconnect(); //来电 #ifdef SUPPORT_CAT1_HFP_AG_SERV + if(headset_Is_connect()) cat1_ag_send_call_event(TOPIC_EVENT_CAT1_INCOMMING,call_data); #endif @@ -1146,21 +1147,19 @@ void MsgCenterNotifyCat1CallConnectedProc(const Topic topic, Request* req) return; } AlarmClockModel::GetInstance()->AlarmPlayerStop(); - //AlarmViewEventListener::GetInstance()->CancelAlarmRing(); #ifdef SUPPORT_CAT1_HFP_AG_SERV if(headset_Is_connect()) { - do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_CAT_HFP_SCO_CONNECT, nullptr, 0); + cat1_ag_send_call_event(TOPIC_EVENT_CAT1_CALLCONNTED,NULL); + do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_CAT_HFP_SCO_CONNECT, nullptr, 0); + } else #endif { - do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_CAT1_AUDIO_START, nullptr, 0); + do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_CAT1_AUDIO_START, nullptr, 0); } - #ifdef SUPPORT_CAT1_HFP_AG_SERV - cat1_ag_send_call_event(TOPIC_EVENT_CAT1_CALLCONNTED,NULL); - #endif SetMicMutecat1(false); @@ -1198,21 +1197,24 @@ void MsgCenterNotifyCat1dialProc(const Topic topic, Request* req) } cat1_call_dial(call_data); - #ifdef SUPPORT_CAT1_HFP_AG_SERV - cat1_ag_send_call_event(TOPIC_EVENT_CAT1_CALLDIAL,NULL); - #endif + CallerLogModel::GetInstance()->SetoperateNumber(call_data,req->len); cat1_phone_state_change_cb(OPERATE_DIALING); - #ifdef SUPPORT_CAT1_HFP_AG_SERV + + #ifdef SUPPORT_CAT1_HFP_AG_SERV if(headset_Is_connect()) - { - do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_CAT_HFP_SCO_CONNECT, nullptr, 0); + { + + cat1_ag_send_call_event(TOPIC_EVENT_CAT1_CALLDIAL,NULL); + do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_CAT_HFP_SCO_CONNECT, nullptr, 0); + + } else #endif { - do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_CAT1_AUDIO_START, nullptr, 0); + do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_CAT1_AUDIO_START, nullptr, 0); } } @@ -1248,8 +1250,10 @@ void MsgCenterNotifyCat1CallEndedProc(const Topic topic, Request* req) cat1_call_hungup(); cat1_phone_state_change_cb(OPERATE_WATCH_FINISH); + #ifdef SUPPORT_CAT1_HFP_AG_SERV - cat1_ag_send_call_event(TOPIC_EVENT_CAT1_CALLENDED,NULL); + if(headset_Is_connect()) + cat1_ag_send_call_event(TOPIC_EVENT_CAT1_CALLENDED,NULL); #endif CustomEventPublish(TOPIC_EVENT_CAT1_CALL_FAIL,NULL,0); @@ -1276,8 +1280,8 @@ void MsgCenterNotifyCat1CallEndedProc(const Topic topic, Request* req) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "no OPERATE_WATCH_FINISH"); - #ifdef SUPPORT_CAT1_HFP_AG_SERV - cat1_ag_send_call_event(TOPIC_EVENT_CAT1_CALLENDED,NULL); + #ifdef SUPPORT_CAT1_HFP_AG_SERV + // cat1_ag_send_call_event(TOPIC_EVENT_CAT1_CALLENDED,NULL); #endif } else @@ -1285,7 +1289,11 @@ void MsgCenterNotifyCat1CallEndedProc(const Topic topic, Request* req) WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "OPERATE_WATCH_FINISH"); cat1_phone_state_change_cb(OPERATE_WATCH_FINISH); #ifdef SUPPORT_CAT1_HFP_AG_SERV - cat1_ag_send_call_event(TOPIC_EVENT_CAT1_CALLENDED,NULL); + if(headset_Is_connect()) + { + cat1_ag_send_call_event(TOPIC_EVENT_CAT1_CALLENDED,NULL); + } + #endif } diff --git a/code/sdk/drivers/peripheral/slip/cat1Service/cat1_server.cpp b/code/sdk/drivers/peripheral/slip/cat1Service/cat1_server.cpp index dd3d63639..7ee7bf7f6 100644 --- a/code/sdk/drivers/peripheral/slip/cat1Service/cat1_server.cpp +++ b/code/sdk/drivers/peripheral/slip/cat1Service/cat1_server.cpp @@ -1403,6 +1403,7 @@ static int udp_packet_parse(char *rx_buffer, int len) uapi_save_runtime_log(RUNTIME_LOG_CAT1_UDP_MSG_TIME); break; case UDP_MSG_CALL_CONNECTED: + if(g_timer_time_answer) osTimerStop(g_timer_time_answer); @@ -1469,9 +1470,11 @@ static int udp_packet_parse(char *rx_buffer, int len) } if(strstr(msg_buffer,"callanswer_success")!=NULL) { - osTimerStop(g_timer_time_answer); - incomedcall_event_sendmsg_toUI("callanswer_success"); - + if(osTimerIsRunning(g_timer_time_answer)) + { + osTimerStop(g_timer_time_answer); + incomedcall_event_sendmsg_toUI("callanswer_success"); + } } if(strstr(msg_buffer,"callcmd_fail")!=NULL) { -- 2.17.1