修复mediaserverId未存入导致的问题

This commit is contained in:
648540858 2021-12-03 17:03:35 +08:00
parent 241804f5f8
commit 52656bb893
3 changed files with 37 additions and 3 deletions

View File

@ -143,9 +143,13 @@ public class ProxyServletConfig {
MediaServerItem mediaInfo = getMediaInfoByUri(requestURI); MediaServerItem mediaInfo = getMediaInfoByUri(requestURI);
String url = super.rewriteUrlFromRequest(servletRequest); String url = super.rewriteUrlFromRequest(servletRequest);
if (mediaInfo == null) { if (mediaInfo == null) {
logger.error("[ZLM服务访问代理]错误处理url信息时未找到流媒体信息=>{}", requestURI);
return url; return url;
} }
return url.replace(mediaInfo.getId() + "/", "").replace("default/", ""); if (!StringUtils.isEmpty(mediaInfo.getId())) {
url = url.replace(mediaInfo.getId() + "/", "");
}
return url.replace("default/", "");
} }
} }
@ -258,9 +262,13 @@ public class ProxyServletConfig {
MediaServerItem mediaInfo = getMediaInfoByUri(requestURI); MediaServerItem mediaInfo = getMediaInfoByUri(requestURI);
String url = super.rewriteUrlFromRequest(servletRequest); String url = super.rewriteUrlFromRequest(servletRequest);
if (mediaInfo == null) { if (mediaInfo == null) {
logger.error("[录像服务访问代理]错误处理url信息时未找到流媒体信息=>{}", requestURI);
return url; return url;
} }
return url.replace(mediaInfo.getId() + "/", "").replace("default/", ""); if (!StringUtils.isEmpty(mediaInfo.getId())) {
url = url.replace(mediaInfo.getId() + "/", "");
}
return url.replace("default/", "");
} }
} }

View File

@ -324,6 +324,9 @@ public class MediaServerServiceImpl implements IMediaServerService, CommandLineR
} }
if (StringUtils.isEmpty(serverItem.getId())) { if (StringUtils.isEmpty(serverItem.getId())) {
serverItem.setId(zlmServerConfig.getGeneralMediaServerId()); serverItem.setId(zlmServerConfig.getGeneralMediaServerId());
mediaServerMapper.updateByHostAndPort(serverItem);
}else {
mediaServerMapper.update(serverItem);
} }
if (redisUtil.get(VideoManagerConstants.MEDIA_SERVER_PREFIX + userSetup.getServerId() + "_" + serverItem.getId()) == null) { if (redisUtil.get(VideoManagerConstants.MEDIA_SERVER_PREFIX + userSetup.getServerId() + "_" + serverItem.getId()) == null) {
SsrcConfig ssrcConfig = new SsrcConfig(serverItem.getId(), null, sipConfig.getDomain()); SsrcConfig ssrcConfig = new SsrcConfig(serverItem.getId(), null, sipConfig.getDomain());
@ -332,7 +335,6 @@ public class MediaServerServiceImpl implements IMediaServerService, CommandLineR
} }
serverItem.setStatus(true); serverItem.setStatus(true);
mediaServerMapper.update(serverItem);
resetOnlineServerItem(serverItem); resetOnlineServerItem(serverItem);
setZLMConfig(serverItem); setZLMConfig(serverItem);

View File

@ -88,6 +88,30 @@ public interface MediaServerMapper {
" </script>"}) " </script>"})
int update(MediaServerItem mediaServerItem); int update(MediaServerItem mediaServerItem);
@Update(value = {" <script>" +
"UPDATE media_server " +
"SET updateTime='${updateTime}'" +
"<if test=\"id != null\">, id='${id}'</if>" +
"<if test=\"hookIp != null\">, hookIp='${hookIp}'</if>" +
"<if test=\"sdpIp != null\">, sdpIp='${sdpIp}'</if>" +
"<if test=\"streamIp != null\">, streamIp='${streamIp}'</if>" +
"<if test=\"httpSSlPort != null\">, httpSSlPort=${httpSSlPort}</if>" +
"<if test=\"rtmpPort != null\">, rtmpPort=${rtmpPort}</if>" +
"<if test=\"rtmpSSlPort != null\">, rtmpSSlPort=${rtmpSSlPort}</if>" +
"<if test=\"rtpProxyPort != null\">, rtpProxyPort=${rtpProxyPort}</if>" +
"<if test=\"rtspPort != null\">, rtspPort=${rtspPort}</if>" +
"<if test=\"rtspSSLPort != null\">, rtspSSLPort=${rtspSSLPort}</if>" +
"<if test=\"autoConfig != null\">, autoConfig=${autoConfig}</if>" +
"<if test=\"streamNoneReaderDelayMS != null\">, streamNoneReaderDelayMS=${streamNoneReaderDelayMS}</if>" +
"<if test=\"rtpEnable != null\">, rtpEnable=${rtpEnable}</if>" +
"<if test=\"rtpPortRange != null\">, rtpPortRange='${rtpPortRange}'</if>" +
"<if test=\"sendRtpPortRange != null\">, sendRtpPortRange='${sendRtpPortRange}'</if>" +
"<if test=\"secret != null\">, secret='${secret}'</if>" +
"<if test=\"recordAssistPort != null\">, recordAssistPort=${recordAssistPort}</if>" +
"WHERE ip='${ip}' and httpPort=${httpPort}"+
" </script>"})
int updateByHostAndPort(MediaServerItem mediaServerItem);
@Select("SELECT * FROM media_server WHERE id='${id}'") @Select("SELECT * FROM media_server WHERE id='${id}'")
MediaServerItem queryOne(String id); MediaServerItem queryOne(String id);