From f1d079f9c0b3d384090477ca54e0548373d62b57 Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Thu, 16 Jan 2025 11:56:39 +0800
Subject: [PATCH] 配置修改
---
src/main/java/com/genersoft/iot/vmp/service/IStreamPushService.java | 109 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 109 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/service/IStreamPushService.java b/src/main/java/com/genersoft/iot/vmp/service/IStreamPushService.java
new file mode 100644
index 0000000..5dbba92
--- /dev/null
+++ b/src/main/java/com/genersoft/iot/vmp/service/IStreamPushService.java
@@ -0,0 +1,109 @@
+package com.genersoft.iot.vmp.service;
+
+import com.genersoft.iot.vmp.gb28181.bean.GbStream;
+import com.genersoft.iot.vmp.media.zlm.ZLMServerConfig;
+import com.genersoft.iot.vmp.media.zlm.dto.MediaItem;
+import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem;
+import com.genersoft.iot.vmp.media.zlm.dto.StreamPushItem;
+import com.genersoft.iot.vmp.service.bean.StreamPushItemFromRedis;
+import com.genersoft.iot.vmp.vmanager.bean.StreamPushExcelDto;
+import com.github.pagehelper.PageInfo;
+
+import java.util.List;
+import java.util.Map;
+
+public interface IStreamPushService {
+
+ List<StreamPushItem> handleJSON(String json, MediaServerItem mediaServerItem);
+
+ /**
+ * 将应用名和流ID加入国标关联
+ * @param stream
+ * @return
+ */
+ boolean saveToGB(GbStream stream);
+
+ /**
+ * 将应用名和流ID移出国标关联
+ * @param stream
+ * @return
+ */
+ boolean removeFromGB(GbStream stream);
+
+ /**
+ * 获取
+ */
+ PageInfo<StreamPushItem> getPushList(Integer page, Integer count, String query, Boolean pushing, String mediaServerId);
+
+ List<StreamPushItem> getPushList(String mediaSererId);
+
+ StreamPushItem transform(MediaItem item);
+
+ StreamPushItem getPush(String app, String streamId);
+
+ /**
+ * 停止一路推流
+ * @param app 应用名
+ * @param streamId 流ID
+ */
+ boolean stop(String app, String streamId);
+
+ /**
+ * 新的节点加入
+ */
+ void zlmServerOnline(String mediaServerId);
+
+ /**
+ * 节点离线
+ */
+ void zlmServerOffline(String mediaServerId);
+
+ /**
+ * 清空
+ */
+ void clean();
+
+
+ boolean saveToRandomGB();
+
+ /**
+ * 批量添加
+ */
+ void batchAdd(List<StreamPushItem> streamPushExcelDtoList);
+
+ /**
+ * 中止多个推流
+ */
+ boolean batchStop(List<GbStream> streamPushItems);
+
+ /**
+ * 导入时批量增加
+ */
+ void batchAddForUpload(List<StreamPushItem> streamPushItems, Map<String, List<String[]>> streamPushItemsForAll);
+
+ /**
+ * 全部离线
+ */
+ void allStreamOffline();
+
+ /**
+ * 推流离线
+ */
+ void offline(List<StreamPushItemFromRedis> offlineStreams);
+
+ /**
+ * 推流上线
+ */
+ void online(List<StreamPushItemFromRedis> onlineStreams);
+
+ /**
+ * 增加推流
+ */
+ boolean add(StreamPushItem stream);
+
+ /**
+ * 获取全部的app+Streanm 用于判断推流列表是新增还是修改
+ * @return
+ */
+ List<String> getAllAppAndStream();
+}
--
Gitblit v1.9.3