This commit is contained in:
shikong 2023-12-18 21:40:11 +08:00
parent 091776c30e
commit 7ccb3db8bc

View File

@ -531,7 +531,7 @@ public class Gb28181DownloadService {
String toTag = item.getToTag();
String key = GenericSubscribe.Helper.getKey(Request.BYE, callId);
subscribe.getByeSubscribe().addPublisher(key);
subscribe.getByeSubscribe().addSubscribe(key, byeSubscriber(key,cacheKey, streamId, time, unit));
subscribe.getByeSubscribe().addSubscribe(key, byeSubscriber(key, device, cacheKey, streamId, time, unit));
return SipRequestBuilder.createAckRequest(Response.OK, ip, port, docking, device.getGbDeviceChannelId(), fromTag, toTag, callId);
}));
result.complete(new VideoInfo(streamId,videoUrl(streamId), callId, device));
@ -564,7 +564,7 @@ public class Gb28181DownloadService {
return subscriber;
}
public Flow.Subscriber<SIPRequest> byeSubscriber(String key,String cacheKey,String streamId, long time, TimeUnit unit){
public Flow.Subscriber<SIPRequest> byeSubscriber(String key,WvpProxyDevice device, String cacheKey,String streamId, long time, TimeUnit unit){
ScheduledFuture<?>[] schedule = new ScheduledFuture<?>[1];
Flow.Subscriber<SIPRequest> subscriber = new Flow.Subscriber<>() {
@Override
@ -583,6 +583,7 @@ public class Gb28181DownloadService {
String callId = request.getCallId().getCallId();
String infoKey = CacheUtil.getKey(MediaSdpHelper.Action.PLAY.getAction(), callId);
RedisUtil.KeyOps.delete(infoKey);
realtimeManager.removePlaying(device.getDeviceCode());
}
sender.getProvider(transport,ip)