From ab81136765f1b641223b982b2baef13e06307fe4 Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期三, 08 十二月 2021 16:45:50 +0800 Subject: [PATCH] 优化适配zlm的hook保活 --- src/main/java/com/genersoft/iot/vmp/service/IMediaServerService.java | 31 +++++++++++++++++++++++++++++-- 1 files changed, 29 insertions(+), 2 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 f9e3ebf..fcba07f 100644 --- a/src/main/java/com/genersoft/iot/vmp/service/IMediaServerService.java +++ b/src/main/java/com/genersoft/iot/vmp/service/IMediaServerService.java @@ -1,9 +1,11 @@ package com.genersoft.iot.vmp.service; +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.MediaServerItem; import com.genersoft.iot.vmp.service.bean.SSRCInfo; +import com.genersoft.iot.vmp.vmanager.bean.WVPResult; import java.util.List; @@ -13,6 +15,8 @@ public interface IMediaServerService { List<MediaServerItem> getAll(); + + List<MediaServerItem> getAllFromDatabase(); List<MediaServerItem> getAllOnline(); @@ -25,13 +29,22 @@ * @param zlmServerConfig * @return */ - void handLeZLMServerConfig(ZLMServerConfig zlmServerConfig); + void zlmServerOnline(ZLMServerConfig zlmServerConfig); + + /** + * 鑺傜偣绂荤嚎 + * @param mediaServerId + * @return + */ + void zlmServerOffline(String mediaServerId); MediaServerItem getMediaServerForMinimumLoad(); void setZLMConfig(MediaServerItem mediaServerItem); SSRCInfo openRTPServer(MediaServerItem mediaServerItem, String streamId); + + SSRCInfo openRTPServer(MediaServerItem mediaServerItem, String streamId, boolean isPlayback); void closeRTPServer(Device device, String channelId); @@ -47,7 +60,21 @@ void clearMediaServerForOnline(); - void add(MediaServerItem mediaSerItem); + 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 zlmServerConfig, JSONObject data); } -- Gitblit v1.8.0