|
|
@@ -1,19 +1,40 @@
|
|
|
package com.genersoft.iot.vmp.service.impl;
|
|
|
|
|
|
+import java.math.BigDecimal;
|
|
|
+import java.math.RoundingMode;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Objects;
|
|
|
+import java.util.UUID;
|
|
|
+
|
|
|
+import javax.sip.ResponseEvent;
|
|
|
+
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.http.HttpStatus;
|
|
|
+import org.springframework.http.ResponseEntity;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.web.context.request.async.DeferredResult;
|
|
|
+
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.genersoft.iot.vmp.common.StreamInfo;
|
|
|
import com.genersoft.iot.vmp.conf.DynamicTask;
|
|
|
import com.genersoft.iot.vmp.conf.UserSetting;
|
|
|
-import com.genersoft.iot.vmp.gb28181.bean.*;
|
|
|
+import com.genersoft.iot.vmp.gb28181.bean.Device;
|
|
|
+import com.genersoft.iot.vmp.gb28181.bean.DeviceChannel;
|
|
|
+import com.genersoft.iot.vmp.gb28181.bean.InviteStreamCallback;
|
|
|
+import com.genersoft.iot.vmp.gb28181.bean.InviteStreamInfo;
|
|
|
+import com.genersoft.iot.vmp.gb28181.bean.ParentPlatform;
|
|
|
+import com.genersoft.iot.vmp.gb28181.bean.SendRtpItem;
|
|
|
+import com.genersoft.iot.vmp.gb28181.bean.SsrcTransaction;
|
|
|
import com.genersoft.iot.vmp.gb28181.event.SipSubscribe;
|
|
|
import com.genersoft.iot.vmp.gb28181.session.VideoStreamSessionManager;
|
|
|
import com.genersoft.iot.vmp.gb28181.transmit.callback.DeferredResultHolder;
|
|
|
import com.genersoft.iot.vmp.gb28181.transmit.callback.RequestMessage;
|
|
|
import com.genersoft.iot.vmp.gb28181.transmit.cmd.impl.SIPCommander;
|
|
|
import com.genersoft.iot.vmp.gb28181.transmit.cmd.impl.SIPCommanderFroPlatform;
|
|
|
-import com.genersoft.iot.vmp.utils.DateUtil;
|
|
|
import com.genersoft.iot.vmp.media.zlm.AssistRESTfulUtils;
|
|
|
import com.genersoft.iot.vmp.media.zlm.ZLMHttpHookSubscribe;
|
|
|
import com.genersoft.iot.vmp.media.zlm.ZLMRESTfulUtils;
|
|
|
@@ -27,23 +48,11 @@ import com.genersoft.iot.vmp.service.bean.PlayBackResult;
|
|
|
import com.genersoft.iot.vmp.service.bean.SSRCInfo;
|
|
|
import com.genersoft.iot.vmp.storager.IRedisCatchStorage;
|
|
|
import com.genersoft.iot.vmp.storager.IVideoManagerStorage;
|
|
|
+import com.genersoft.iot.vmp.utils.DateUtil;
|
|
|
import com.genersoft.iot.vmp.vmanager.bean.WVPResult;
|
|
|
import com.genersoft.iot.vmp.vmanager.gb28181.play.bean.PlayResult;
|
|
|
-import gov.nist.javax.sip.stack.SIPDialog;
|
|
|
-import org.slf4j.Logger;
|
|
|
-import org.slf4j.LoggerFactory;
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.http.HttpStatus;
|
|
|
-import org.springframework.http.ResponseEntity;
|
|
|
-import org.springframework.stereotype.Service;
|
|
|
-import org.springframework.util.ResourceUtils;
|
|
|
-import org.springframework.web.context.request.async.DeferredResult;
|
|
|
|
|
|
-import javax.sip.ResponseEvent;
|
|
|
-import java.io.FileNotFoundException;
|
|
|
-import java.math.BigDecimal;
|
|
|
-import java.math.RoundingMode;
|
|
|
-import java.util.*;
|
|
|
+import gov.nist.javax.sip.stack.SIPDialog;
|
|
|
|
|
|
@SuppressWarnings(value = {"rawtypes", "unchecked"})
|
|
|
@Service
|
|
|
@@ -531,14 +540,6 @@ public class PlayServiceImpl implements IPlayService {
|
|
|
StreamInfo streamInfo = onPublishHandler(inviteStreamInfo.getMediaServerItem(), inviteStreamInfo.getResponse(), deviceId, channelId);
|
|
|
streamInfo.setStartTime(startTime);
|
|
|
streamInfo.setEndTime(endTime);
|
|
|
- if (streamInfo == null) {
|
|
|
- logger.warn("录像下载API调用失败!");
|
|
|
- wvpResult.setCode(-1);
|
|
|
- wvpResult.setMsg("录像下载API调用失败");
|
|
|
- downloadResult.setCode(-1);
|
|
|
- hookCallBack.call(downloadResult);
|
|
|
- return ;
|
|
|
- }
|
|
|
redisCatchStorage.startDownload(streamInfo, inviteStreamInfo.getCallId());
|
|
|
wvpResult.setCode(0);
|
|
|
wvpResult.setMsg("success");
|