| | |
| | | } |
| | | }, userSetting.getPlatformPlayTimeout()); |
| | | // |
| | | redisRpcService.waitePushStreamOnline(sendRtpItem, (sendRtpItemKey) -> { |
| | | long key = redisRpcService.waitePushStreamOnline(sendRtpItem, (sendRtpItemKey) -> { |
| | | dynamicTask.stop(sendRtpItem.getCallId()); |
| | | if (sendRtpItemKey == null) { |
| | | logger.warn("[级联点播] 等待推流得到结果未空: {}/{}", sendRtpItem.getApp(), sendRtpItem.getStream()); |
| | |
| | | } |
| | | }); |
| | | // 添加回复的拒绝或者错误的通知 |
| | | // redis消息例如: PUBLISH VM_MSG_STREAM_PUSH_RESPONSE '{"code":1,"msg":"失败","app":"1","stream":"2"}' |
| | | redisPushStreamResponseListener.addEvent(sendRtpItem.getApp(), sendRtpItem.getStream(), response -> { |
| | | if (response.getCode() != 0) { |
| | | dynamicTask.stop(sendRtpItem.getCallId()); |
| | | redisRpcService.stopWaitePushStreamOnline(sendRtpItem); |
| | | redisRpcService.removeCallback(key); |
| | | try { |
| | | responseAck(request, Response.TEMPORARILY_UNAVAILABLE, response.getMsg()); |
| | | } catch (SipException | InvalidArgumentException | ParseException e) { |