Commit dbe6ece653823a9487a04cbf69428119fd4011c4
1 parent
f7006e48
优化播放中zlm离线判断
Showing
2 changed files
with
4 additions
and
5 deletions
src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRTPServerFactory.java
| ... | ... | @@ -283,10 +283,10 @@ public class ZLMRTPServerFactory { |
| 283 | 283 | */ |
| 284 | 284 | public int totalReaderCount(MediaServerItem mediaServerItem, String app, String streamId) { |
| 285 | 285 | JSONObject mediaInfo = zlmresTfulUtils.getMediaInfo(mediaServerItem, app, "rtmp", streamId); |
| 286 | - Integer code = mediaInfo.getInteger("code"); | |
| 287 | 286 | if (mediaInfo == null) { |
| 288 | 287 | return 0; |
| 289 | 288 | } |
| 289 | + Integer code = mediaInfo.getInteger("code"); | |
| 290 | 290 | if ( code < 0) { |
| 291 | 291 | logger.warn("查询流({}/{})是否有其它观看者时得到: {}", app, streamId, mediaInfo.getString("msg")); |
| 292 | 292 | return -1; | ... | ... |
src/main/java/com/genersoft/iot/vmp/media/zlm/event/ZLMKeepliveTimeoutListener.java
| ... | ... | @@ -61,13 +61,12 @@ public class ZLMKeepliveTimeoutListener extends RedisKeyExpirationEventMessageLi |
| 61 | 61 | // 发起http请求验证zlm是否确实无法连接,如果确实无法连接则发送离线事件,否则不作处理 |
| 62 | 62 | MediaServerItem mediaServerItem = mediaServerService.getOne(mediaServerId); |
| 63 | 63 | JSONObject mediaServerConfig = zlmresTfulUtils.getMediaServerConfig(mediaServerItem); |
| 64 | - if (mediaServerConfig == null || mediaServerConfig.getInteger("code") == -2) { | |
| 65 | - publisher.zlmOfflineEventPublish(mediaServerId); | |
| 66 | - }else { | |
| 64 | + if (mediaServerConfig != null && mediaServerConfig.getInteger("code") == 0) { | |
| 67 | 65 | logger.info("[zlm心跳到期]:{}验证后zlm仍在线,恢复心跳信息", mediaServerId); |
| 68 | 66 | // 添加zlm信息 |
| 69 | 67 | mediaServerService.updateMediaServerKeepalive(mediaServerId, mediaServerConfig); |
| 68 | + }else { | |
| 69 | + publisher.zlmOfflineEventPublish(mediaServerId); | |
| 70 | 70 | } |
| 71 | - | |
| 72 | 71 | } |
| 73 | 72 | } | ... | ... |