From e48fa711a3664bece9b3e58840a75fe7c05bc47c Mon Sep 17 00:00:00 2001 From: panlinlin <648540858@qq.com> Date: 星期六, 08 五月 2021 17:14:05 +0800 Subject: [PATCH] 添加截图(快照)功能 --- src/main/java/com/genersoft/iot/vmp/gb28181/transmit/response/impl/InviteResponseProcessor.java | 20 +++++++------------- 1 files changed, 7 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/response/impl/InviteResponseProcessor.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/response/impl/InviteResponseProcessor.java index 93f533f..7368c36 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/response/impl/InviteResponseProcessor.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/response/impl/InviteResponseProcessor.java @@ -2,24 +2,19 @@ import java.text.ParseException; -import javax.sip.Dialog; -import javax.sip.InvalidArgumentException; -import javax.sip.ResponseEvent; -import javax.sip.SipException; +import javax.sip.*; import javax.sip.address.SipURI; import javax.sip.header.CSeqHeader; -import javax.sip.header.ViaHeader; import javax.sip.message.Request; import javax.sip.message.Response; -import gov.nist.javax.sip.header.CSeq; +import gov.nist.javax.sip.ResponseEventExt; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; import com.genersoft.iot.vmp.conf.SipConfig; import com.genersoft.iot.vmp.gb28181.SipLayer; -import com.genersoft.iot.vmp.gb28181.transmit.SIPProcessorFactory; import com.genersoft.iot.vmp.gb28181.transmit.response.ISIPResponseProcessor; @@ -31,7 +26,7 @@ @Component public class InviteResponseProcessor implements ISIPResponseProcessor { - private final static Logger logger = LoggerFactory.getLogger(InviteResponseProcessor.class); + private final static Logger logger = LoggerFactory.getLogger(InviteResponseProcessor.class); /** * 澶勭悊invite鍝嶅簲 @@ -50,16 +45,15 @@ // 鎴愬姛鍝嶅簲 // 涓嬪彂ack if (statusCode == Response.OK) { + ResponseEventExt event = (ResponseEventExt)evt; Dialog dialog = evt.getDialog(); CSeqHeader cseq = (CSeqHeader) response.getHeader(CSeqHeader.NAME); Request reqAck = dialog.createAck(cseq.getSeqNumber()); - SipURI requestURI = (SipURI) reqAck.getRequestURI(); - ViaHeader viaHeader = (ViaHeader) response.getHeader(ViaHeader.NAME); - requestURI.setHost(viaHeader.getHost()); - requestURI.setPort(viaHeader.getPort()); + requestURI.setHost(event.getRemoteIpAddress()); + requestURI.setPort(event.getRemotePort()); reqAck.setRequestURI(requestURI); - + logger.info("鍚� " + event.getRemoteIpAddress() + ":" + event.getRemotePort() + "鍥炲ack"); dialog.sendAck(reqAck); } } catch (InvalidArgumentException | SipException e) { -- Gitblit v1.8.0