From 335916f1f15eb9d0b34dea38cacee2300eac0606 Mon Sep 17 00:00:00 2001 From: 李防 <liguofang0703@126.com> Date: 星期一, 07 三月 2022 14:20:27 +0800 Subject: [PATCH] InviteRequestProcessor类中,channelid从invite消息的header subject获取,不再从第一行request line获取。原因是和第三方平台对接时,发送的invite消息第一行为国标平台编码而不是设备通道编码,导致报错通道不存在,返回404。 --- src/main/java/com/genersoft/iot/vmp/service/IMediaServerService.java | 41 ++++++++++++++++++++++++++++++++++++----- 1 files changed, 36 insertions(+), 5 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..8c12c78 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; @@ -14,26 +16,39 @@ List<MediaServerItem> getAll(); + List<MediaServerItem> getAllFromDatabase(); + List<MediaServerItem> getAllOnline(); MediaServerItem getOne(String generalMediaServerId); - MediaServerItem getOneByHostAndPort(String host, int port); + void syncCatchFromDatabase(); /** * 鏂扮殑鑺傜偣鍔犲叆 * @param zlmServerConfig * @return */ - void handLeZLMServerConfig(ZLMServerConfig zlmServerConfig); + void zlmServerOnline(ZLMServerConfig zlmServerConfig); + + /** + * 鑺傜偣绂荤嚎 + * @param mediaServerId + * @return + */ + void zlmServerOffline(String mediaServerId); MediaServerItem getMediaServerForMinimumLoad(); - void setZLMConfig(MediaServerItem mediaServerItem); + void setZLMConfig(MediaServerItem mediaServerItem, boolean restart); + + void updateVmServer(List<MediaServerItem> mediaServerItemList); SSRCInfo openRTPServer(MediaServerItem mediaServerItem, String streamId); - void closeRTPServer(Device device, String channelId); + SSRCInfo openRTPServer(MediaServerItem mediaServerItem, String streamId, boolean isPlayback); + + void closeRTPServer(String deviceId, String channelId, String ssrc); void clearRTPServer(MediaServerItem mediaServerItem); @@ -47,7 +62,23 @@ 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); + + void deleteDb(String id); + + MediaServerItem getDefaultMediaServer(); + + void updateMediaServerKeepalive(String mediaServerId, JSONObject data); } -- Gitblit v1.8.0