瀏覽代碼

修复级联点播

648540858 4 年之前
父節點
當前提交
21eef022b5

+ 6 - 2
src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/InviteRequestProcessor.java

@@ -385,7 +385,9 @@ public class InviteRequestProcessor extends SIPRequestAbstractProcessor {
 		Response response = getMessageFactory().createResponse(statusCode, evt.getRequest());
 		ServerTransaction serverTransaction = getServerTransaction(evt);
 		serverTransaction.sendResponse(response);
-		if (serverTransaction.getDialog() != null) serverTransaction.getDialog().delete();
+		if (statusCode >= 200) {
+			if (serverTransaction.getDialog() != null) serverTransaction.getDialog().delete();
+		}
 	}
 
 	private void responseAck(RequestEvent evt, int statusCode, String msg) throws SipException, InvalidArgumentException, ParseException {
@@ -393,7 +395,9 @@ public class InviteRequestProcessor extends SIPRequestAbstractProcessor {
 		response.setReasonPhrase(msg);
 		ServerTransaction serverTransaction = getServerTransaction(evt);
 		serverTransaction.sendResponse(response);
-		if (serverTransaction.getDialog() != null) serverTransaction.getDialog().delete();
+		if (statusCode >= 200) {
+			if (serverTransaction.getDialog() != null) serverTransaction.getDialog().delete();
+		}
 	}
 
 	/**

+ 1 - 0
src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRTPServerFactory.java

@@ -229,6 +229,7 @@ public class ZLMRTPServerFactory {
      */
     public int totalReaderCount(MediaServerItem mediaServerItem, String app, String streamId) {
         JSONObject mediaInfo = zlmresTfulUtils.getMediaInfo(mediaServerItem, app, "rtmp", streamId);
+        if (mediaInfo == null) return 0;
         return mediaInfo.getInteger("totalReaderCount");
     }