fix:增加p2p代码,调整对讲页面的国际化内容

This commit is contained in:
liyi 2025-02-08 14:38:02 +08:00
parent f1c66ec95a
commit e13313bd31
10 changed files with 48 additions and 11 deletions

View File

@ -59,10 +59,15 @@ class UdpRbcuInfoHandler extends ScpMessageBaseHandle
@override
void handleResp(ScpMessage scpMessage) {
final RbcuInfo rbcuInfo = scpMessage.Payload;
final GenericResp genericResp = scpMessage.Payload;
if (checkGenericRespSuccess(genericResp)) {
//
startChartManage.stopSendingRbcuInfoMessages();
if (rbcuInfo.isResp) {
//
_handleResultRbcuInfo(rbcuInfo);
}
}
}
@ -70,5 +75,6 @@ class UdpRbcuInfoHandler extends ScpMessageBaseHandle
void _handleResultRbcuInfo(RbcuInfo rbcuInfo) {
startChartManage.rbcuInfo = rbcuInfo;
startChartManage.stopSendingRbcuInfoMessages();
startChartManage.startSendingRbcuProbeTMessages();
}
}

View File

@ -40,6 +40,9 @@ class UdpTalkAcceptHandler extends ScpMessageBaseHandle
//
talkeRequestOverTimeTimerManager.renew();
talkeRequestOverTimeTimerManager.cancel();
// rbcuInfo数据
startChartManage.startSendingRbcuInfoMessages(
ToPeerId: startChartManage.lockPeerId);
}
}

View File

@ -15,7 +15,9 @@ class UdpTalkDataHandler extends ScpMessageBaseHandle
factory UdpTalkDataHandler() {
return _instance;
}
UdpTalkDataHandler._internal();
static final UdpTalkDataHandler _instance = UdpTalkDataHandler._internal();
int _recentRecvDataRate = 0;
@ -157,7 +159,7 @@ class UdpTalkDataHandler extends ScpMessageBaseHandle
final TalkDataH264Frame talkDataH264Frame = TalkDataH264Frame();
talkDataH264Frame.mergeFromBuffer(talkData.content);
// AppLog.log('H264 TalkData :$talkDataH264Frame');
talkDataRepository.addTalkData(talkData);
// talkDataRepository.addTalkData(talkData);
}
///

View File

@ -34,6 +34,8 @@ class UdpTalkHangUpHandler extends ScpMessageBaseHandle
talkDataOverTimeTimerManager.cancel();
EasyLoading.showToast('已挂断'.tr);
startChartManage.stopSendingRbcuInfoMessages();
startChartManage.stopSendingRbcuProBeMessages();
Get.back();
}
}
@ -49,6 +51,8 @@ class UdpTalkHangUpHandler extends ScpMessageBaseHandle
talkeRequestOverTimeTimerManager.cancel();
talkePingOverTimeTimerManager.cancel();
talkDataOverTimeTimerManager.cancel();
startChartManage.stopSendingRbcuInfoMessages();
startChartManage.stopSendingRbcuProBeMessages();
}
@override

View File

@ -31,6 +31,8 @@ class UdpTalkRejectHandler extends ScpMessageBaseHandle
talkeRequestOverTimeTimerManager.cancel();
talkePingOverTimeTimerManager.cancel();
talkDataOverTimeTimerManager.cancel();
startChartManage.stopSendingRbcuInfoMessages();
startChartManage.stopSendingRbcuProBeMessages();
}
@override
@ -43,6 +45,8 @@ class UdpTalkRejectHandler extends ScpMessageBaseHandle
talkeRequestOverTimeTimerManager.cancel();
talkePingOverTimeTimerManager.cancel();
talkDataOverTimeTimerManager.cancel();
startChartManage.stopSendingRbcuInfoMessages();
startChartManage.stopSendingRbcuProBeMessages();
}
@override

View File

@ -33,6 +33,8 @@ class TalkDataOverTimeTimerManager {
StartChartManage().sendTalkHangupMessage();
StartChartManage().stopTalkPingMessageTimer();
StartChartManage().stopTalkExpectMessageTimer();
StartChartManage().stopSendingRbcuInfoMessages();
StartChartManage().stopSendingRbcuProBeMessages();
talkStatus.setNotTalkData();
talkStatus.setEnd();
AudioPlayerManager().stopRingtone();

View File

@ -37,6 +37,8 @@ class TalkePingOverTimeTimerManager {
StartChartManage().stopTalkExpectMessageTimer();
//
StartChartManage().sendTalkHangupMessage();
StartChartManage().stopSendingRbcuInfoMessages();
StartChartManage().stopSendingRbcuProBeMessages();
talkStatus.setNotTalkPing();
talkStatus.setEnd();
Get.back();

View File

@ -32,6 +32,8 @@ class TalkeRequestOverTimeTimerManager {
EasyLoading.showToast('通话未接通,已挂断'.tr, duration: 2000.milliseconds);
//
StartChartManage().sendTalkRejectMessage();
StartChartManage().stopSendingRbcuInfoMessages();
StartChartManage().stopSendingRbcuProBeMessages();
talkStatus.setInitializationCompleted();
Get.back();
}

View File

@ -314,9 +314,10 @@ class StartChartManage {
);
}
final info = rbcuInfo = RbcuInfo(address: ['119.137.55.161:62289']);
if (info != null && info.address != null && info.address.length > 0) {
info.address.forEach((element) {
if (rbcuInfo != null &&
rbcuInfo!.address != null &&
rbcuInfo!.address.length > 0) {
rbcuInfo!.address.forEach((element) {
// element
final parts = element.split(':');
final host = parts[0]; // IP
@ -345,6 +346,7 @@ class StartChartManage {
rbcuInfoTimer ??=
Timer.periodic(Duration(seconds: _defaultIntervalTime), (timer) {
// RbcuInfo
_log(text: '发送RbcuInfo 地址交换消息');
_sendRbcuInfoMessage(ToPeerId: ToPeerId);
});
}
@ -585,6 +587,8 @@ class StartChartManage {
stopTalkExpectMessageTimer();
stopTalkPingMessageTimer();
stopCallRequestMessageTimer();
stopSendingRbcuInfoMessages();
stopSendingRbcuProBeMessages();
//
talkePingOverTimeTimerManager.cancel();
@ -665,6 +669,8 @@ class StartChartManage {
stopTalkExpectMessageTimer();
stopTalkPingMessageTimer();
stopCallRequestMessageTimer();
stopSendingRbcuInfoMessages();
stopSendingRbcuProBeMessages();
//
talkePingOverTimeTimerManager.cancel();
talkDataOverTimeTimerManager.cancel();
@ -1101,7 +1107,7 @@ class StartChartManage {
bluetoothDeviceName: bluetoothDeviceName,
bleStructData: bleStructData,
);
await _sendMessage(message: message);
await _sendMessage(message: message);
}
///

View File

@ -58,6 +58,7 @@ class _TalkViewPageState extends State<TalkViewPage>
// _latencyStream = measureServerLatencyStream(F.apiPrefix); //
}
//
// Stream<int> measureServerLatencyStream(String url) async* {
// while (true) {
@ -155,7 +156,7 @@ class _TalkViewPageState extends State<TalkViewPage>
),
Obx(() => state.listData.value.isEmpty
? Positioned(
bottom: 300.h,
bottom: 310.h,
child: Text(
'正在创建安全连接...'.tr,
style: TextStyle(color: Colors.black, fontSize: 26.sp),
@ -509,13 +510,17 @@ class _TalkViewPageState extends State<TalkViewPage>
onLongPress: longPress,
onLongPressUp: longPressUp,
child: SizedBox(
height: 140.h,
height: 160.w,
width: 140.w,
child: Column(
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
Container(
width: wh,
height: wh,
constraints: BoxConstraints(
minWidth: wh,
),
decoration: BoxDecoration(
color: backgroundColor,
borderRadius: BorderRadius.circular((wh + 10.w * 2) / 2),
@ -524,10 +529,11 @@ class _TalkViewPageState extends State<TalkViewPage>
child: Image.asset(iconUrl, fit: BoxFit.fitWidth),
),
SizedBox(height: 20.w),
Expanded(
child: Text(name,
style: TextStyle(fontSize: 20.sp, color: Colors.white),
textAlign: TextAlign.center),
Text(
name,
style: TextStyle(fontSize: 20.sp, color: Colors.white),
textAlign: TextAlign.center, // 使
maxLines: 2, // 1
)
],
),