From 66eda32ab97d6e94e9f274d6faa4df586c452dfb Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期日, 25 六月 2023 10:18:29 +0800 Subject: [PATCH] 优化端口预占用 --- src/main/java/com/genersoft/iot/vmp/gb28181/task/SipRunner.java | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/task/SipRunner.java b/src/main/java/com/genersoft/iot/vmp/gb28181/task/SipRunner.java index 9fcb9d7..4b92443 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/task/SipRunner.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/task/SipRunner.java @@ -5,6 +5,7 @@ import com.genersoft.iot.vmp.gb28181.bean.Device; import com.genersoft.iot.vmp.gb28181.bean.ParentPlatform; import com.genersoft.iot.vmp.gb28181.bean.SendRtpItem; +import com.genersoft.iot.vmp.gb28181.session.SSRCFactory; import com.genersoft.iot.vmp.gb28181.transmit.cmd.ISIPCommanderForPlatform; import com.genersoft.iot.vmp.media.zlm.ZLMRESTfulUtils; import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem; @@ -38,6 +39,9 @@ private IRedisCatchStorage redisCatchStorage; @Autowired + private SSRCFactory ssrcFactory; + + @Autowired private UserSetting userSetting; @Autowired @@ -61,9 +65,9 @@ for (Device device : deviceList) { if (deviceService.expire(device)){ - deviceService.offline(device.getDeviceId()); + deviceService.offline(device.getDeviceId(), "娉ㄥ唽宸茶繃鏈�"); }else { - deviceService.online(device); + deviceService.online(device, null); } } // 閲嶇疆cseq璁℃暟 @@ -96,6 +100,7 @@ MediaServerItem mediaServerItem = mediaServerService.getOne(sendRtpItem.getMediaServerId()); redisCatchStorage.deleteSendRTPServer(sendRtpItem.getPlatformId(),sendRtpItem.getChannelId(), sendRtpItem.getCallId(),sendRtpItem.getStream()); if (mediaServerItem != null) { + ssrcFactory.releaseSsrc(sendRtpItem.getMediaServerId(), sendRtpItem.getSsrc()); Map<String, Object> param = new HashMap<>(); param.put("vhost","__defaultVhost__"); param.put("app",sendRtpItem.getApp()); -- Gitblit v1.8.0