From 269ad8cedbb07ca207a6f33af23085894dab4aa6 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期日, 23 四月 2023 14:36:13 +0800
Subject: [PATCH] 修身目录刷新,优化公网下远程IP端口的获取

---
 src/main/java/com/genersoft/iot/vmp/service/IMediaServerService.java |   56 ++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 48 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/service/IMediaServerService.java b/src/main/java/com/genersoft/iot/vmp/service/IMediaServerService.java
index f65a155..495b009 100644
--- a/src/main/java/com/genersoft/iot/vmp/service/IMediaServerService.java
+++ b/src/main/java/com/genersoft/iot/vmp/service/IMediaServerService.java
@@ -1,8 +1,10 @@
 package com.genersoft.iot.vmp.service;
 
-import com.genersoft.iot.vmp.gb28181.bean.Device;
+import com.genersoft.iot.vmp.common.CommonCallback;
 import com.genersoft.iot.vmp.media.zlm.ZLMServerConfig;
 import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem;
+import com.genersoft.iot.vmp.media.zlm.dto.ServerKeepaliveData;
+import com.genersoft.iot.vmp.service.bean.MediaServerLoad;
 import com.genersoft.iot.vmp.service.bean.SSRCInfo;
 
 import java.util.List;
@@ -20,22 +22,36 @@
 
     MediaServerItem getOne(String generalMediaServerId);
 
-    MediaServerItem getOneByHostAndPort(String host, int port);
+    void syncCatchFromDatabase();
 
     /**
      * 鏂扮殑鑺傜偣鍔犲叆
      * @param zlmServerConfig
      * @return
      */
-    void handLeZLMServerConfig(ZLMServerConfig zlmServerConfig);
+    void zlmServerOnline(ZLMServerConfig zlmServerConfig);
 
-    MediaServerItem getMediaServerForMinimumLoad();
+    /**
+     * 鑺傜偣绂荤嚎
+     * @param mediaServerId
+     * @return
+     */
+    void zlmServerOffline(String mediaServerId);
 
-    void setZLMConfig(MediaServerItem mediaServerItem);
+    MediaServerItem getMediaServerForMinimumLoad(Boolean hasAssist);
 
-    SSRCInfo openRTPServer(MediaServerItem mediaServerItem, String streamId);
+    void setZLMConfig(MediaServerItem mediaServerItem, boolean restart);
 
-    void closeRTPServer(Device device, String channelId);
+    void updateVmServer(List<MediaServerItem>  mediaServerItemList);
+
+    SSRCInfo openRTPServer(MediaServerItem mediaServerItem, String streamId, String ssrc, boolean ssrcCheck,
+                           boolean isPlayback, Integer port, Boolean reUsePort, Integer tcpMode);
+
+    void closeRTPServer(MediaServerItem mediaServerItem, String streamId);
+
+    void closeRTPServer(MediaServerItem mediaServerItem, String streamId, CommonCallback<Boolean> callback);
+
+    void closeRTPServer(String mediaServerId, String streamId);
 
     void clearRTPServer(MediaServerItem mediaServerItem);
 
@@ -45,11 +61,35 @@
 
     void removeCount(String mediaServerId);
 
-    void releaseSsrc(MediaServerItem mediaServerItem, String ssrc);
+    void releaseSsrc(String mediaServerItemId, String ssrc);
 
     void clearMediaServerForOnline();
 
     void add(MediaServerItem mediaSerItem);
 
+    int addToDatabase(MediaServerItem mediaSerItem);
+
+    int updateToDatabase(MediaServerItem mediaSerItem);
+
     void resetOnlineServerItem(MediaServerItem serverItem);
+
+    MediaServerItem checkMediaServer(String ip, int port, String secret);
+
+    boolean checkMediaRecordServer(String ip, int port);
+
+    void delete(String id);
+
+    void deleteDb(String id);
+
+    MediaServerItem getDefaultMediaServer();
+
+    void updateMediaServerKeepalive(String mediaServerId, ServerKeepaliveData data);
+
+    boolean checkRtpServer(MediaServerItem mediaServerItem, String rtp, String stream);
+
+    /**
+     * 鑾峰彇璐熻浇淇℃伅
+     * @return
+     */
+    MediaServerLoad getLoad(MediaServerItem mediaServerItem);
 }

--
Gitblit v1.8.0