From 710600db6f3bd6f72a83ef75cca30953fd0f375f Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期三, 21 九月 2022 18:18:37 +0800 Subject: [PATCH] 优化sip消息,去除自动dialog创建 --- src/main/java/com/genersoft/iot/vmp/gb28181/bean/SubscribeInfo.java | 64 +++++++++++++------------------- 1 files changed, 26 insertions(+), 38 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/bean/SubscribeInfo.java b/src/main/java/com/genersoft/iot/vmp/gb28181/bean/SubscribeInfo.java index 1958b44..2c80c62 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/bean/SubscribeInfo.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/bean/SubscribeInfo.java @@ -1,7 +1,10 @@ package com.genersoft.iot.vmp.gb28181.bean; import com.genersoft.iot.vmp.utils.SerializeUtils; +import gov.nist.javax.sip.message.SIPRequest; +import gov.nist.javax.sip.message.SIPResponse; +import javax.sip.ClientTransaction; import javax.sip.Dialog; import javax.sip.RequestEvent; import javax.sip.ServerTransaction; @@ -11,30 +14,24 @@ public class SubscribeInfo { - public SubscribeInfo(RequestEvent evt, String id) { + public SubscribeInfo(ServerTransaction serverTransaction, String id) { this.id = id; - Request request = evt.getRequest(); - ExpiresHeader expiresHeader = (ExpiresHeader)request.getHeader(ExpiresHeader.NAME); - this.expires = expiresHeader.getExpires(); + SIPRequest request = (SIPRequest)serverTransaction.getRequest(); + this.request = request; + this.expires = request.getExpires().getExpires(); EventHeader eventHeader = (EventHeader)request.getHeader(EventHeader.NAME); this.eventId = eventHeader.getEventId(); this.eventType = eventHeader.getEventType(); - this.transaction = evt.getServerTransaction(); - this.dialog = evt.getDialog(); - CallIdHeader callIdHeader = (CallIdHeader)evt.getRequest().getHeader(CallIdHeader.NAME); - this.callId = callIdHeader.getCallId(); - } - public SubscribeInfo() { } private String id; + + private SIPRequest request; private int expires; - private String callId; private String eventId; private String eventType; - private ServerTransaction transaction; - private Dialog dialog; + private SIPResponse response; /** * 浠ヤ笅涓哄彲閫夊瓧娈� @@ -43,29 +40,28 @@ private String sn; private int gpsInterval; - public String getId() { return id; - } - - public int getExpires() { - return expires; - } - - public String getCallId() { - return callId; } public void setId(String id) { this.id = id; } - public void setExpires(int expires) { - this.expires = expires; + public SIPRequest getRequest() { + return request; } - public void setCallId(String callId) { - this.callId = callId; + public void setRequest(SIPRequest request) { + this.request = request; + } + + public int getExpires() { + return expires; + } + + public void setExpires(int expires) { + this.expires = expires; } public String getEventId() { @@ -84,20 +80,12 @@ this.eventType = eventType; } - public ServerTransaction getTransaction() { - return transaction; + public SIPResponse getResponse() { + return response; } - public void setTransaction(ServerTransaction transaction) { - this.transaction = transaction; - } - - public Dialog getDialog() { - return dialog; - } - - public void setDialog(Dialog dialog) { - this.dialog = dialog; + public void setResponse(SIPResponse response) { + this.response = response; } public String getSn() { -- Gitblit v1.8.0