From d34be408d6f933586cdab190a6f78ff1a10a5820 Mon Sep 17 00:00:00 2001
From: lanss <7428909+lanss-01@user.noreply.gitee.com>
Date: 星期二, 25 一月 2022 21:50:22 +0800
Subject: [PATCH] update web_src/src/components/dialog/changePassword.vue.
---
src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java | 51 +++++++++++++++++++++++++++++++++++++++------------
1 files changed, 39 insertions(+), 12 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java
index c1f473d..5919619 100644
--- a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java
+++ b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java
@@ -1,5 +1,6 @@
package com.genersoft.iot.vmp.media.zlm;
+import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
@@ -8,6 +9,9 @@
import com.genersoft.iot.vmp.conf.MediaConfig;
import com.genersoft.iot.vmp.conf.UserSetup;
import com.genersoft.iot.vmp.gb28181.bean.Device;
+import com.genersoft.iot.vmp.gb28181.bean.GbStream;
+import com.genersoft.iot.vmp.gb28181.event.EventPublisher;
+import com.genersoft.iot.vmp.gb28181.event.subscribe.catalog.CatalogEvent;
import com.genersoft.iot.vmp.media.zlm.dto.*;
import com.genersoft.iot.vmp.service.*;
import com.genersoft.iot.vmp.service.bean.SSRCInfo;
@@ -65,7 +69,7 @@
private IMediaService mediaService;
@Autowired
- private ZLMRESTfulUtils zlmresTfulUtils;
+ private EventPublisher eventPublisher;
@Autowired
private ZLMMediaListManager zlmMediaListManager;
@@ -341,29 +345,52 @@
if (!"rtp".equals(app)){
String type = OriginType.values()[item.getOriginType()].getType();
MediaServerItem mediaServerItem = mediaServerService.getOne(mediaServerId);
+
if (mediaServerItem != null){
if (regist) {
+ StreamPushItem streamPushItem = null;
redisCatchStorage.addStream(mediaServerItem, type, app, streamId, item);
if (item.getOriginType() == OriginType.RTSP_PUSH.ordinal()
|| item.getOriginType() == OriginType.RTMP_PUSH.ordinal()
|| item.getOriginType() == OriginType.RTC_PUSH.ordinal() ) {
- zlmMediaListManager.addPush(item);
+ streamPushItem = zlmMediaListManager.addPush(item);
}
+ List<GbStream> gbStreams = new ArrayList<>();
+ if (streamPushItem == null || streamPushItem.getGbId() == null) {
+ GbStream gbStream = storager.getGbStream(app, streamId);
+ gbStreams.add(gbStream);
+ }else {
+ if (streamPushItem.getGbId() != null) {
+ gbStreams.add(streamPushItem);
+ }
+ }
+ if (gbStreams.size() > 0) {
+ eventPublisher.catalogEventPublishForStream(null, gbStreams, CatalogEvent.ON);
+ }
+
}else {
// 鍏煎娴佹敞閿�鏃剁被鍨嬩粠redis璁板綍鑾峰彇
MediaItem mediaItem = redisCatchStorage.getStreamInfo(app, streamId, mediaServerId);
- type = OriginType.values()[mediaItem.getOriginType()].getType();
+ if (mediaItem != null) {
+ type = OriginType.values()[mediaItem.getOriginType()].getType();
+ redisCatchStorage.removeStream(mediaServerItem.getId(), type, app, streamId);
+ }
+ GbStream gbStream = storager.getGbStream(app, streamId);
+ if (gbStream != null) {
+ eventPublisher.catalogEventPublishForStream(null, gbStream, CatalogEvent.OFF);
+ }
zlmMediaListManager.removeMedia(app, streamId);
- redisCatchStorage.removeStream(mediaServerItem.getId(), type, app, streamId);
}
- // 鍙戦�佹祦鍙樺寲redis娑堟伅
- JSONObject jsonObject = new JSONObject();
- jsonObject.put("serverId", userSetup.getServerId());
- jsonObject.put("app", app);
- jsonObject.put("stream", streamId);
- jsonObject.put("register", regist);
- jsonObject.put("mediaServerId", mediaServerId);
- redisCatchStorage.sendStreamChangeMsg(type, jsonObject);
+ if (type != null) {
+ // 鍙戦�佹祦鍙樺寲redis娑堟伅
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("serverId", userSetup.getServerId());
+ jsonObject.put("app", app);
+ jsonObject.put("stream", streamId);
+ jsonObject.put("register", regist);
+ jsonObject.put("mediaServerId", mediaServerId);
+ redisCatchStorage.sendStreamChangeMsg(type, jsonObject);
+ }
}
}
}
--
Gitblit v1.8.0