From e45b44366453dd2064ae94517244a6ef8aa3762e Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期三, 11 十月 2023 01:33:36 +0800
Subject: [PATCH] 测试提交
---
src/main/java/com/genersoft/iot/vmp/service/impl/PlatformServiceImpl.java | 25 ++++++++++++++++++++-----
1 files changed, 20 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/service/impl/PlatformServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/service/impl/PlatformServiceImpl.java
old mode 100644
new mode 100755
index 0e6ca5f..067329d
--- a/src/main/java/com/genersoft/iot/vmp/service/impl/PlatformServiceImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/service/impl/PlatformServiceImpl.java
@@ -251,7 +251,6 @@
// 璁剧疆骞冲彴绂荤嚎锛屽苟閲嶆柊娉ㄥ唽
logger.info("[鍥芥爣绾ц仈] 涓夋蹇冭烦瓒呮椂, 骞冲彴{}({})绂荤嚎", parentPlatform.getName(), parentPlatform.getServerGBId());
offline(parentPlatform, false);
-
}
}else {
@@ -266,6 +265,7 @@
platformCatch.setKeepAliveReply(0);
redisCatchStorage.updatePlatformCatchInfo(platformCatch);
}
+ logger.info("[鍙戦�佸績璺砞 鍥芥爣绾ц仈 鍙戦�佸績璺�, code锛� {}, msg: {}", eventResult.statusCode, eventResult.msg);
});
} catch (SipException | InvalidArgumentException | ParseException e) {
logger.error("[鍛戒护鍙戦�佸け璐 鍥芥爣绾ц仈 鍙戦�佸績璺�: {}", e.getMessage());
@@ -293,7 +293,7 @@
eventResult.statusCode, eventResult.msg);
offline(parentPlatform, false);
}, null);
- } catch (InvalidArgumentException | ParseException | SipException e) {
+ } catch (Exception e) {
logger.error("[鍛戒护鍙戦�佸け璐 鍥芥爣绾ц仈瀹氭椂娉ㄥ唽: {}", e.getMessage());
}
}
@@ -422,7 +422,6 @@
}
InviteInfo inviteInfo = inviteStreamService.getInviteInfoByDeviceAndChannel(InviteSessionType.PLAY, platform.getServerGBId(), channelId);
-
if (inviteInfo != null && inviteInfo.getStreamInfo() != null) {
// 濡傛灉zlm涓嶅瓨鍦ㄨ繖涓祦锛屽垯鍒犻櫎鏁版嵁鍗冲彲
MediaServerItem mediaServerItemForStreamInfo = mediaServerService.getOne(inviteInfo.getStreamInfo().getMediaServerId());
@@ -547,7 +546,23 @@
}
@Override
- public void stopBroadcast(ParentPlatform platform, String channelId, String stream) throws InvalidArgumentException, ParseException, SsrcTransactionNotFoundException, SipException {
- commanderForPlatform.streamByeCmd(platform, channelId, stream, null, null);
+ public void stopBroadcast(ParentPlatform platform, DeviceChannel channel, String stream, boolean sendBye, MediaServerItem mediaServerItem) {
+
+ try {
+ if (sendBye) {
+ commanderForPlatform.streamByeCmd(platform, channel.getChannelId(), stream, null, null);
+ }
+ } catch (InvalidArgumentException | SipException | ParseException | SsrcTransactionNotFoundException e) {
+ logger.warn("[娑堟伅鍙戦�佸け璐 鍋滄璇煶瀵硅锛� 骞冲彴锛歿}锛岄�氶亾锛歿}", platform.getId(), channel.getChannelId() );
+ } finally {
+ mediaServerService.closeRTPServer(mediaServerItem, stream);
+ InviteInfo inviteInfo = inviteStreamService.getInviteInfo(null, platform.getServerGBId(), channel.getChannelId(), stream);
+ if (inviteInfo != null) {
+ // 閲婃斁ssrc
+ mediaServerService.releaseSsrc(mediaServerItem.getId(), inviteInfo.getSsrcInfo().getSsrc());
+ inviteStreamService.removeInviteInfo(inviteInfo);
+ }
+ streamSession.remove(platform.getServerGBId(), channel.getChannelId(), stream);
+ }
}
}
--
Gitblit v1.8.0