From 41616f726dafafe7c015bf4f3e02a7aa9488a3a2 Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期一, 07 三月 2022 10:47:06 +0800 Subject: [PATCH] 修复导入通道时无平台关联时的bug --- src/main/java/com/genersoft/iot/vmp/conf/SipPlatformRunner.java | 18 ++++++++++++++++++ 1 files changed, 18 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/conf/SipPlatformRunner.java b/src/main/java/com/genersoft/iot/vmp/conf/SipPlatformRunner.java index dd7c7a0..4ebaf0b 100644 --- a/src/main/java/com/genersoft/iot/vmp/conf/SipPlatformRunner.java +++ b/src/main/java/com/genersoft/iot/vmp/conf/SipPlatformRunner.java @@ -3,6 +3,8 @@ import com.genersoft.iot.vmp.gb28181.bean.ParentPlatform; import com.genersoft.iot.vmp.gb28181.bean.ParentPlatformCatch; import com.genersoft.iot.vmp.gb28181.event.EventPublisher; +import com.genersoft.iot.vmp.gb28181.transmit.cmd.ISIPCommanderForPlatform; +import com.genersoft.iot.vmp.media.zlm.ZLMRTPServerFactory; import com.genersoft.iot.vmp.storager.IRedisCatchStorage; import com.genersoft.iot.vmp.storager.IVideoManagerStorager; import org.springframework.beans.factory.annotation.Autowired; @@ -28,10 +30,20 @@ @Autowired private EventPublisher publisher; + @Autowired + private ISIPCommanderForPlatform sipCommanderForPlatform; + + @Override public void run(String... args) throws Exception { // 璁剧疆鎵�鏈夊钩鍙扮绾� storager.outlineForAllParentPlatform(); + + // 娓呯悊鎵�鏈夊钩鍙版敞鍐岀紦瀛� + redisCatchStorage.cleanPlatformRegisterInfos(); + + // 鍋滄鎵�鏈夋帹娴� +// zlmrtpServerFactory.closeAllSendRtpStream(); List<ParentPlatform> parentPlatforms = storager.queryEnableParentPlatformList(true); @@ -46,6 +58,12 @@ parentPlatformCatch.setId(parentPlatform.getServerGBId()); redisCatchStorage.updatePlatformCatchInfo(parentPlatformCatch); + // 鍙栨秷璁㈤槄 + sipCommanderForPlatform.unregister(parentPlatform, null, (eventResult)->{ + ParentPlatform platform = storager.queryParentPlatByServerGBId(parentPlatform.getServerGBId()); + sipCommanderForPlatform.register(platform, null, null); + }); + // 鍙戦�佸钩鍙版湭娉ㄥ唽娑堟伅 publisher.platformNotRegisterEventPublish(parentPlatform.getServerGBId()); } -- Gitblit v1.8.0