From c26176300bf2d58d364c2c0784c5f2ff16bee3a2 Mon Sep 17 00:00:00 2001 From: Tim Ruhland Date: Fri, 30 Aug 2019 13:48:55 +0000 Subject: [PATCH] =?UTF-8?q?Dateien=20hochladen=20nach=20=E2=80=9Esrc/model?= =?UTF-8?q?=E2=80=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/model/SIPACK.java | 81 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 src/model/SIPACK.java diff --git a/src/model/SIPACK.java b/src/model/SIPACK.java new file mode 100644 index 0000000..f0d6aa9 --- /dev/null +++ b/src/model/SIPACK.java @@ -0,0 +1,81 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package model; + +import java.util.ArrayList; +import java.util.logging.Level; +import java.util.logging.Logger; +import javax.sip.ResponseEvent; +import javax.sip.address.Address; +import javax.sip.address.AddressFactory; +import javax.sip.address.URI; +import javax.sip.header.AllowHeader; +import javax.sip.header.CSeqHeader; +import javax.sip.header.CallIdHeader; +import javax.sip.header.FromHeader; +import javax.sip.header.HeaderFactory; +import javax.sip.header.MaxForwardsHeader; +import javax.sip.header.SupportedHeader; +import javax.sip.header.ToHeader; +import javax.sip.header.ViaHeader; +import javax.sip.message.MessageFactory; +import javax.sip.message.Request; +import logger.OhmLogger; + +/** + * Erstellt den Trying Header, wird als erstes gesendet sobald man einen Anruf bekommt + * @author Jan + */ +public class SIPACK +{ + private Request ackRequest; + private static final Logger lgTry = OhmLogger.getLogger(); + + public SIPACK(MessageFactory messageFactory, ResponseEvent responseEvent, AddressFactory addressFactory, String sipaddresse, String proxyaddresse, String myname, + HeaderFactory headerFactory, long cSeq ) + { + try + { // + ArrayList via = new ArrayList(); + ViaHeader viaheader = (ViaHeader) responseEvent.getResponse().getHeader("Via"); + via.add(viaheader); + FromHeader from = (FromHeader) responseEvent.getResponse().getHeader("From"); + ToHeader to = (ToHeader) responseEvent.getResponse().getHeader("To"); + CallIdHeader callID = (CallIdHeader) responseEvent.getResponse().getHeader("Call-ID"); + MaxForwardsHeader maxForwardsHeader = headerFactory.createMaxForwardsHeader(70); + + Address addressto = addressFactory.createAddress("sip:" + myname+ "@" + proxyaddresse); + URI requestURI = addressto.getURI(); + CSeqHeader cSeqHeader = headerFactory.createCSeqHeader(cSeq, "ACK"); + + SupportedHeader supp = headerFactory.createSupportedHeader("replace,path,timer"); //nachschauen + AllowHeader allow = headerFactory.createAllowHeader("NOTIFY,INVITE,ACK,CANCEL,BYE,REFER,INFO,OPTIONS,MESSAGE"); + //ackRequest.addHeader(supp); + //ackRequest.addHeader(allow); + + ackRequest = messageFactory.createRequest(requestURI, "ACK", callID, cSeqHeader, from, to, via, maxForwardsHeader); + lgTry.info("100-Trying Header erstellt"); + } + catch (Exception ex) + { + lgTry.getLogger(SIPmodel.class.getName()).log(Level.SEVERE, null, ex); + } + + } + + /** + * @return the ackRequest + */ + public Request getAckRequest() + { + return ackRequest; + } + + /** + * @return the ackRequest + */ + +}