import 'package:flutter_easyloading/flutter_easyloading.dart'; import 'package:get/get.dart'; import 'package:star_lock/talk/startChart/entity/scp_message.dart'; import 'package:star_lock/talk/startChart/handle/scp_message_base_handle.dart'; import 'package:star_lock/talk/startChart/handle/scp_message_handle.dart'; import 'package:star_lock/talk/startChart/proto/gateway_reset.pb.dart'; import 'package:star_lock/talk/startChart/proto/generic.pb.dart'; import '../../start_chart_manage.dart'; class UdpTalkHangUpHandler extends ScpMessageBaseHandle implements ScpMessageHandler { @override void handleReq(ScpMessage scpMessage) { // 通话中挂断请求 print('收到通话中挂断请求'); startChartManage.sendGenericRespSuccessMessage( ToPeerId: scpMessage.FromPeerId!, FromPeerId: scpMessage.ToPeerId!, PayloadType: scpMessage.PayloadType!, ); // 停止发送通话保持的命令 startChartManage.stopTalkPingMessageTimer(); startChartManage.stopTalkExpectMessageTimer(); talkStatus.setHangingUpDuring(); talkStatus.setEnd(); stopRingtone(); } @override void handleResp(ScpMessage scpMessage) { print('收到通话中挂断回复'); // 停止发送通话保持的命令 startChartManage.stopTalkPingMessageTimer(); startChartManage.stopTalkExpectMessageTimer(); talkStatus.setHangingUpDuring(); talkStatus.setEnd(); stopRingtone(); } @override void handleInvalidReq(ScpMessage scpMessage) { } @override void handleRealTimeData(ScpMessage scpMessage) { } }