| package com.genersoft.iot.vmp.media.zlm.dto; | 
|   | 
|   | 
| import com.genersoft.iot.vmp.gb28181.session.SsrcConfig; | 
| import com.genersoft.iot.vmp.media.zlm.ZLMServerConfig; | 
| import io.swagger.v3.oas.annotations.media.Schema; | 
| import org.springframework.util.ObjectUtils; | 
|   | 
| import java.util.HashMap; | 
|   | 
| @Schema(description = "流媒体服务信息") | 
| public class MediaServerItem{ | 
|   | 
|     @Schema(description = "ID") | 
|     private String id; | 
|   | 
|     @Schema(description = "IP") | 
|     private String ip; | 
|   | 
|     @Schema(description = "hook使用的IP(zlm访问WVP使用的IP)") | 
|     private String hookIp; | 
|   | 
|     @Schema(description = "SDP IP") | 
|     private String sdpIp; | 
|   | 
|     @Schema(description = "流IP") | 
|     private String streamIp; | 
|   | 
|     @Schema(description = "HTTP端口") | 
|     private int httpPort; | 
|   | 
|     @Schema(description = "HTTPS端口") | 
|     private int httpSSlPort; | 
|   | 
|     @Schema(description = "RTMP端口") | 
|     private int rtmpPort; | 
|   | 
|     @Schema(description = "RTMPS端口") | 
|     private int rtmpSSlPort; | 
|   | 
|     @Schema(description = "RTP收流端口(单端口模式有用)") | 
|     private int rtpProxyPort; | 
|   | 
|     @Schema(description = "RTSP端口") | 
|     private int rtspPort; | 
|   | 
|     @Schema(description = "RTSPS端口") | 
|     private int rtspSSLPort; | 
|   | 
|     @Schema(description = "是否开启自动配置ZLM") | 
|     private boolean autoConfig; | 
|   | 
|     @Schema(description = "ZLM鉴权参数") | 
|     private String secret; | 
|   | 
|     @Schema(description = "keepalive hook触发间隔,单位秒") | 
|     private Float hookAliveInterval; | 
|   | 
|     @Schema(description = "是否使用多端口模式") | 
|     private boolean rtpEnable; | 
|   | 
|     @Schema(description = "状态") | 
|     private boolean status; | 
|   | 
|     @Schema(description = "多端口RTP收流端口范围") | 
|     private String rtpPortRange; | 
|   | 
|     @Schema(description = "assist服务端口") | 
|     private int recordAssistPort; | 
|   | 
|     @Schema(description = "创建时间") | 
|     private String createTime; | 
|   | 
|     @Schema(description = "更新时间") | 
|     private String updateTime; | 
|   | 
|     @Schema(description = "上次心跳时间") | 
|     private String lastKeepaliveTime; | 
|   | 
|     @Schema(description = "是否是默认ZLM") | 
|     private boolean defaultServer; | 
|   | 
|     @Schema(description = "SSRC信息") | 
|     private SsrcConfig ssrcConfig; | 
|   | 
|     @Schema(description = "当前使用到的端口") | 
|     private int currentPort; | 
|   | 
|   | 
|     /** | 
|      * 每一台ZLM都有一套独立的SSRC列表 | 
|      * 在ApplicationCheckRunner里对mediaServerSsrcMap进行初始化 | 
|      */ | 
|     @Schema(description = "ID") | 
|     private HashMap<String, SsrcConfig> mediaServerSsrcMap; | 
|   | 
|     public MediaServerItem() { | 
|     } | 
|   | 
|     public MediaServerItem(ZLMServerConfig zlmServerConfig, String sipIp) { | 
|         id = zlmServerConfig.getGeneralMediaServerId(); | 
|         ip = zlmServerConfig.getIp(); | 
|         hookIp = ObjectUtils.isEmpty(zlmServerConfig.getHookIp())? sipIp: zlmServerConfig.getHookIp(); | 
|         sdpIp = ObjectUtils.isEmpty(zlmServerConfig.getSdpIp())? zlmServerConfig.getIp(): zlmServerConfig.getSdpIp(); | 
|         streamIp = ObjectUtils.isEmpty(zlmServerConfig.getStreamIp())? zlmServerConfig.getIp(): zlmServerConfig.getStreamIp(); | 
|         httpPort = zlmServerConfig.getHttpPort(); | 
|         httpSSlPort = zlmServerConfig.getHttpSSLport(); | 
|         rtmpPort = zlmServerConfig.getRtmpPort(); | 
|         rtmpSSlPort = zlmServerConfig.getRtmpSslPort(); | 
|         rtpProxyPort = zlmServerConfig.getRtpProxyPort(); | 
|         rtspPort = zlmServerConfig.getRtspPort(); | 
|         rtspSSLPort = zlmServerConfig.getRtspSSlport(); | 
|         autoConfig = true; // 默认值true; | 
|         secret = zlmServerConfig.getApiSecret(); | 
|         hookAliveInterval = zlmServerConfig.getHookAliveInterval(); | 
|         rtpEnable = false; // 默认使用单端口;直到用户自己设置开启多端口 | 
|         rtpPortRange = zlmServerConfig.getPortRange().replace("_",","); // 默认使用30000,30500作为级联时发送流的端口号 | 
|         recordAssistPort = 0; // 默认关闭 | 
|   | 
|     } | 
|   | 
|     public String getId() { | 
|         return id; | 
|     } | 
|   | 
|     public void setId(String id) { | 
|         this.id = id; | 
|     } | 
|   | 
|     public String getIp() { | 
|         return ip; | 
|     } | 
|   | 
|     public void setIp(String ip) { | 
|         this.ip = ip; | 
|     } | 
|   | 
|     public String getHookIp() { | 
|         return hookIp; | 
|     } | 
|   | 
|     public void setHookIp(String hookIp) { | 
|         this.hookIp = hookIp; | 
|     } | 
|   | 
|     public String getSdpIp() { | 
|         return sdpIp; | 
|     } | 
|   | 
|     public void setSdpIp(String sdpIp) { | 
|         this.sdpIp = sdpIp; | 
|     } | 
|   | 
|     public String getStreamIp() { | 
|         return streamIp; | 
|     } | 
|   | 
|     public void setStreamIp(String streamIp) { | 
|         this.streamIp = streamIp; | 
|     } | 
|   | 
|     public int getHttpPort() { | 
|         return httpPort; | 
|     } | 
|   | 
|     public void setHttpPort(int httpPort) { | 
|         this.httpPort = httpPort; | 
|     } | 
|   | 
|     public int getHttpSSlPort() { | 
|         return httpSSlPort; | 
|     } | 
|   | 
|     public void setHttpSSlPort(int httpSSlPort) { | 
|         this.httpSSlPort = httpSSlPort; | 
|     } | 
|   | 
|     public int getRtmpPort() { | 
|         return rtmpPort; | 
|     } | 
|   | 
|     public void setRtmpPort(int rtmpPort) { | 
|         this.rtmpPort = rtmpPort; | 
|     } | 
|   | 
|     public int getRtmpSSlPort() { | 
|         return rtmpSSlPort; | 
|     } | 
|   | 
|     public void setRtmpSSlPort(int rtmpSSlPort) { | 
|         this.rtmpSSlPort = rtmpSSlPort; | 
|     } | 
|   | 
|     public int getRtpProxyPort() { | 
|         return rtpProxyPort; | 
|     } | 
|   | 
|     public void setRtpProxyPort(int rtpProxyPort) { | 
|         this.rtpProxyPort = rtpProxyPort; | 
|     } | 
|   | 
|     public int getRtspPort() { | 
|         return rtspPort; | 
|     } | 
|   | 
|     public void setRtspPort(int rtspPort) { | 
|         this.rtspPort = rtspPort; | 
|     } | 
|   | 
|     public int getRtspSSLPort() { | 
|         return rtspSSLPort; | 
|     } | 
|   | 
|     public void setRtspSSLPort(int rtspSSLPort) { | 
|         this.rtspSSLPort = rtspSSLPort; | 
|     } | 
|   | 
|     public boolean isAutoConfig() { | 
|         return autoConfig; | 
|     } | 
|   | 
|     public void setAutoConfig(boolean autoConfig) { | 
|         this.autoConfig = autoConfig; | 
|     } | 
|   | 
|     public String getSecret() { | 
|         return secret; | 
|     } | 
|   | 
|     public void setSecret(String secret) { | 
|         this.secret = secret; | 
|     } | 
|   | 
|     public boolean isRtpEnable() { | 
|         return rtpEnable; | 
|     } | 
|   | 
|     public void setRtpEnable(boolean rtpEnable) { | 
|         this.rtpEnable = rtpEnable; | 
|     } | 
|   | 
|     public String getRtpPortRange() { | 
|         return rtpPortRange; | 
|     } | 
|   | 
|     public void setRtpPortRange(String rtpPortRange) { | 
|         this.rtpPortRange = rtpPortRange; | 
|     } | 
|   | 
|     public int getRecordAssistPort() { | 
|         return recordAssistPort; | 
|     } | 
|   | 
|     public void setRecordAssistPort(int recordAssistPort) { | 
|         this.recordAssistPort = recordAssistPort; | 
|     } | 
|   | 
|     public boolean isDefaultServer() { | 
|         return defaultServer; | 
|     } | 
|   | 
|     public void setDefaultServer(boolean defaultServer) { | 
|         this.defaultServer = defaultServer; | 
|     } | 
|   | 
|     public String getCreateTime() { | 
|         return createTime; | 
|     } | 
|   | 
|     public void setCreateTime(String createTime) { | 
|         this.createTime = createTime; | 
|     } | 
|   | 
|     public String getUpdateTime() { | 
|         return updateTime; | 
|     } | 
|   | 
|     public void setUpdateTime(String updateTime) { | 
|         this.updateTime = updateTime; | 
|     } | 
|   | 
|     public HashMap<String, SsrcConfig> getMediaServerSsrcMap() { | 
|         return mediaServerSsrcMap; | 
|     } | 
|   | 
|     public void setMediaServerSsrcMap(HashMap<String, SsrcConfig> mediaServerSsrcMap) { | 
|         this.mediaServerSsrcMap = mediaServerSsrcMap; | 
|     } | 
|   | 
|     public SsrcConfig getSsrcConfig() { | 
|         return ssrcConfig; | 
|     } | 
|   | 
|     public void setSsrcConfig(SsrcConfig ssrcConfig) { | 
|         this.ssrcConfig = ssrcConfig; | 
|     } | 
|   | 
|     public int getCurrentPort() { | 
|         return currentPort; | 
|     } | 
|   | 
|     public void setCurrentPort(int currentPort) { | 
|         this.currentPort = currentPort; | 
|     } | 
|   | 
|     public boolean isStatus() { | 
|         return status; | 
|     } | 
|   | 
|     public void setStatus(boolean status) { | 
|         this.status = status; | 
|     } | 
|   | 
|     public String getLastKeepaliveTime() { | 
|         return lastKeepaliveTime; | 
|     } | 
|   | 
|     public void setLastKeepaliveTime(String lastKeepaliveTime) { | 
|         this.lastKeepaliveTime = lastKeepaliveTime; | 
|     } | 
|   | 
|     public Float getHookAliveInterval() { | 
|         return hookAliveInterval; | 
|     } | 
|   | 
|     public void setHookAliveInterval(Float hookAliveInterval) { | 
|         this.hookAliveInterval = hookAliveInterval; | 
|     } | 
| } |