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