From c6e9730b43424db6efb8c1f7624884c823955f94 Mon Sep 17 00:00:00 2001 From: liyi Date: Tue, 10 Dec 2024 17:32:06 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E8=B0=83=E6=95=B4=E6=8C=82=E6=96=AD?= =?UTF-8?q?=E3=80=81=E6=8B=92=E7=BB=9D=E5=90=8E=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../handle/impl/udp_talk_hangup_handler.dart | 7 +++++++ .../handle/impl/udp_talk_reject_handler.dart | 15 +++++++++++++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/lib/talk/startChart/handle/impl/udp_talk_hangup_handler.dart b/lib/talk/startChart/handle/impl/udp_talk_hangup_handler.dart index dc4b8964..09899649 100644 --- a/lib/talk/startChart/handle/impl/udp_talk_hangup_handler.dart +++ b/lib/talk/startChart/handle/impl/udp_talk_hangup_handler.dart @@ -19,13 +19,20 @@ class UdpTalkHangUpHandler extends ScpMessageBaseHandle FromPeerId: scpMessage.ToPeerId!, PayloadType: scpMessage.PayloadType!, ); + // 停止发送通话保持的命令 + startChartManage.stopTalkPingMessageTimer(); + startChartManage.stopTalkExpectMessageTimer(); talkStatus.setEnd(); } @override void handleResp(ScpMessage scpMessage) { print('收到通话中挂断回复'); + // 停止发送通话保持的命令 + startChartManage.stopTalkPingMessageTimer(); + startChartManage.stopTalkExpectMessageTimer(); talkStatus.setEnd(); + } @override diff --git a/lib/talk/startChart/handle/impl/udp_talk_reject_handler.dart b/lib/talk/startChart/handle/impl/udp_talk_reject_handler.dart index e501272a..6a5411d4 100644 --- a/lib/talk/startChart/handle/impl/udp_talk_reject_handler.dart +++ b/lib/talk/startChart/handle/impl/udp_talk_reject_handler.dart @@ -12,14 +12,25 @@ class UdpTalkRejectHandler extends ScpMessageBaseHandle implements ScpMessageHandler { @override void handleReq(ScpMessage scpMessage) { - // TODO: 收到接听拒绝请求 + // 收到接听拒绝请求 + print('收到接听拒绝请求'); + startChartManage.sendGenericRespSuccessMessage( + ToPeerId: scpMessage.FromPeerId!, + FromPeerId: scpMessage.ToPeerId!, + PayloadType: scpMessage.PayloadType!, + ); + startChartManage.stopTalkPingMessageTimer(); + startChartManage.stopTalkExpectMessageTimer(); + talkStatus.setRejected(); } @override void handleResp(ScpMessage scpMessage) { + print('收到接听拒绝回复'); // 收到接听拒绝回复 talkStatus.setRejected(); - print('收到接听拒绝回复'); + startChartManage.stopTalkPingMessageTimer(); + startChartManage.stopTalkExpectMessageTimer(); } @override