648540858
2022-06-15 dbe6ece653823a9487a04cbf69428119fd4011c4
优化播放中zlm离线判断
2个文件已修改
9 ■■■■■ 已修改文件
src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRTPServerFactory.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/media/zlm/event/ZLMKeepliveTimeoutListener.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRTPServerFactory.java
@@ -283,10 +283,10 @@
     */
    public int totalReaderCount(MediaServerItem mediaServerItem, String app, String streamId) {
        JSONObject mediaInfo = zlmresTfulUtils.getMediaInfo(mediaServerItem, app, "rtmp", streamId);
        Integer code = mediaInfo.getInteger("code");
        if (mediaInfo == null) {
            return 0;
        }
        Integer code = mediaInfo.getInteger("code");
        if ( code < 0) {
            logger.warn("查询流({}/{})是否有其它观看者时得到: {}", app, streamId, mediaInfo.getString("msg"));
            return -1;
src/main/java/com/genersoft/iot/vmp/media/zlm/event/ZLMKeepliveTimeoutListener.java
@@ -61,13 +61,12 @@
        // 发起http请求验证zlm是否确实无法连接,如果确实无法连接则发送离线事件,否则不作处理
        MediaServerItem mediaServerItem = mediaServerService.getOne(mediaServerId);
        JSONObject mediaServerConfig = zlmresTfulUtils.getMediaServerConfig(mediaServerItem);
        if (mediaServerConfig == null || mediaServerConfig.getInteger("code") == -2) {
            publisher.zlmOfflineEventPublish(mediaServerId);
        }else {
        if (mediaServerConfig != null && mediaServerConfig.getInteger("code") == 0) {
            logger.info("[zlm心跳到期]:{}验证后zlm仍在线,恢复心跳信息", mediaServerId);
            // 添加zlm信息
            mediaServerService.updateMediaServerKeepalive(mediaServerId, mediaServerConfig);
        }else {
            publisher.zlmOfflineEventPublish(mediaServerId);
        }
    }
}