From a42dda2bd3cc1cf8c20cc61e7ad9211eadecbaf3 Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期四, 24 二月 2022 16:55:06 +0800 Subject: [PATCH] 规范数据库,添加必要约束,优化通道批量导入功能 --- src/main/java/com/genersoft/iot/vmp/service/IMediaServerService.java | 58 +++++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 47 insertions(+), 11 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..ec2714f 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.alibaba.fastjson.JSONObject; import com.genersoft.iot.vmp.gb28181.bean.Device; 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.service.bean.SSRCInfo; +import com.genersoft.iot.vmp.vmanager.bean.WVPResult; import java.util.List; @@ -13,32 +14,67 @@ */ 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(); - void setZLMConfig(IMediaServerItem mediaServerItem); + void setZLMConfig(MediaServerItem mediaServerItem, boolean restart); - void init(); + SSRCInfo openRTPServer(MediaServerItem mediaServerItem, String streamId); + + SSRCInfo openRTPServer(MediaServerItem mediaServerItem, String streamId, boolean isPlayback); void closeRTPServer(Device device, String channelId); - void update(MediaConfig mediaConfig); + void clearRTPServer(MediaServerItem mediaServerItem); + + void update(MediaServerItem mediaSerItem); void addCount(String mediaServerId); void removeCount(String mediaServerId); + + void releaseSsrc(MediaServerItem mediaServerItem, String ssrc); + + void clearMediaServerForOnline(); + + WVPResult<String> add(MediaServerItem mediaSerItem); + + int addToDatabase(MediaServerItem mediaSerItem); + + int updateToDatabase(MediaServerItem mediaSerItem); + + void resetOnlineServerItem(MediaServerItem serverItem); + + WVPResult<MediaServerItem> checkMediaServer(String ip, int port, String secret); + + boolean checkMediaRecordServer(String ip, int port); + + void delete(String id); + + MediaServerItem getDefaultMediaServer(); + + void updateMediaServerKeepalive(String mediaServerId, JSONObject data); } -- Gitblit v1.8.0