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 | 77 ++++++++++++++++++++++++++++++++------ 1 files changed, 64 insertions(+), 13 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 7a57bed..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,10 +1,11 @@ package com.genersoft.iot.vmp.service; -import com.genersoft.iot.vmp.conf.MediaConfig; -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.IMediaServerItem; 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; @@ -13,32 +14,82 @@ */ public interface IMediaServerService { - List<IMediaServerItem> getAll(); + List<MediaServerItem> getAll(); - IMediaServerItem getOne(String generalMediaServerId); + List<MediaServerItem> getAllFromDatabase(); - IMediaServerItem getOneByHostAndPort(String host, int port); + List<MediaServerItem> getAllOnline(); + + MediaServerItem getOne(String generalMediaServerId); + + void syncCatchFromDatabase(); /** * 鏂扮殑鑺傜偣鍔犲叆 * @param zlmServerConfig * @return */ - void handLeZLMServerConfig(ZLMServerConfig zlmServerConfig); + void zlmServerOnline(ZLMServerConfig zlmServerConfig); - void updateServerCatch(IMediaServerItem mediaServerItem, Integer count, Boolean b); + /** + * 鑺傜偣绂荤嚎 + * @param mediaServerId + * @return + */ + void zlmServerOffline(String mediaServerId); - IMediaServerItem getMediaServerForMinimumLoad(); + MediaServerItem getMediaServerForMinimumLoad(Boolean hasAssist); - void setZLMConfig(IMediaServerItem mediaServerItem); + void setZLMConfig(MediaServerItem mediaServerItem, boolean restart); - void init(); + void updateVmServer(List<MediaServerItem> mediaServerItemList); - void closeRTPServer(Device device, String channelId); + SSRCInfo openRTPServer(MediaServerItem mediaServerItem, String streamId, String ssrc, boolean ssrcCheck, + boolean isPlayback, Integer port, Boolean reUsePort, Integer tcpMode); - void update(MediaConfig mediaConfig); + 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); + + void update(MediaServerItem mediaSerItem); void addCount(String mediaServerId); void removeCount(String mediaServerId); + + 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