Commit 66aac4526b8fc63912e0015ff2fdfeabcec015ce

Authored by 648540858
1 parent d21a0041

修复推流关联平台的bug

src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMMediaListManager.java
@@ -128,15 +128,27 @@ public class ZLMMediaListManager { @@ -128,15 +128,27 @@ public class ZLMMediaListManager {
128 if (gbStreams.size() > 0) { 128 if (gbStreams.size() > 0) {
129 for (GbStream gbStream : gbStreams) { 129 for (GbStream gbStream : gbStreams) {
130 // 出现使用相同国标Id的视频流时,使用新流替换旧流, 130 // 出现使用相同国标Id的视频流时,使用新流替换旧流,
131 - gbStreamMapper.del(gbStream.getApp(), gbStream.getStream());  
132 - if (!gbStream.isStatus()) {  
133 - streamPushMapper.del(gbStream.getApp(), gbStream.getStream()); 131 + if (queryKey != null) {
  132 + Matcher matcherForStream = pattern.matcher(gbStream.getStream());
  133 + String queryKeyForStream = null;
  134 + if (matcherForStream.find()) { //此处find()每次被调用后,会偏移到下一个匹配
  135 + queryKeyForStream = matcherForStream.group();
  136 + }
  137 + if (queryKeyForStream == null || !queryKeyForStream.equals(queryKey)) {
  138 + // 此时不是同一个流
  139 + gbStreamMapper.del(gbStream.getApp(), gbStream.getStream());
  140 + if (!gbStream.isStatus()) {
  141 + streamPushMapper.del(gbStream.getApp(), gbStream.getStream());
  142 + }
  143 + }
134 } 144 }
135 } 145 }
136 } 146 }
137 StreamProxyItem streamProxyItem = gbStreamMapper.selectOne(transform.getApp(), transform.getStream()); 147 StreamProxyItem streamProxyItem = gbStreamMapper.selectOne(transform.getApp(), transform.getStream());
138 if (streamProxyItem != null) { 148 if (streamProxyItem != null) {
139 transform.setGbStreamId(streamProxyItem.getGbStreamId()); 149 transform.setGbStreamId(streamProxyItem.getGbStreamId());
  150 + transform.setPlatformId(streamProxyItem.getPlatformId());
  151 + transform.setCatalogId(streamProxyItem.getCatalogId());
140 gbStreamMapper.update(transform); 152 gbStreamMapper.update(transform);
141 }else { 153 }else {
142 transform.setCreateStamp(System.currentTimeMillis()); 154 transform.setCreateStamp(System.currentTimeMillis());
src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java
@@ -885,9 +885,9 @@ public class VideoManagerStoragerImpl implements IVideoManagerStorager { @@ -885,9 +885,9 @@ public class VideoManagerStoragerImpl implements IVideoManagerStorager {
885 List<ParentPlatform> parentPlatforms = parentPlatformMapper.selectAllAhareAllLiveStream(); 885 List<ParentPlatform> parentPlatforms = parentPlatformMapper.selectAllAhareAllLiveStream();
886 if (parentPlatforms.size() > 0) { 886 if (parentPlatforms.size() > 0) {
887 for (ParentPlatform parentPlatform : parentPlatforms) { 887 for (ParentPlatform parentPlatform : parentPlatforms) {
888 - StreamProxyItem streamProxyItems = platformGbStreamMapper.selectOne(streamPushItem.getApp(), streamPushItem.getStream(), 888 + StreamProxyItem streamProxyItem = platformGbStreamMapper.selectOne(streamPushItem.getApp(), streamPushItem.getStream(),
889 parentPlatform.getServerGBId()); 889 parentPlatform.getServerGBId());
890 - if (streamProxyItems == null) { 890 + if (streamProxyItem == null) {
891 streamPushItem.setCatalogId(parentPlatform.getCatalogId()); 891 streamPushItem.setCatalogId(parentPlatform.getCatalogId());
892 streamPushItem.setPlatformId(parentPlatform.getServerGBId()); 892 streamPushItem.setPlatformId(parentPlatform.getServerGBId());
893 platformGbStreamMapper.add(streamPushItem); 893 platformGbStreamMapper.add(streamPushItem);