Search in sources :

Example 6 with Response

use of javax.sip.message.Response in project XobotOS by xamarin.

the class SipSessionGroup method extractExternalAddress.

private void extractExternalAddress(ResponseEvent evt) {
    Response response = evt.getResponse();
    ViaHeader viaHeader = (ViaHeader) (response.getHeader(SIPHeaderNames.VIA));
    if (viaHeader == null)
        return;
    int rport = viaHeader.getRPort();
    String externalIp = viaHeader.getReceived();
    if ((rport > 0) && (externalIp != null)) {
        mExternalIp = externalIp;
        mExternalPort = rport;
        Log.d(TAG, " got external addr " + externalIp + ":" + rport + " on " + mSipStack);
    }
}
Also used : Response(javax.sip.message.Response) SIPResponse(gov.nist.javax.sip.message.SIPResponse) ViaHeader(javax.sip.header.ViaHeader) ListeningPoint(javax.sip.ListeningPoint)

Example 7 with Response

use of javax.sip.message.Response in project XobotOS by xamarin.

the class SipHelper method sendRinging.

/**
     * @param event the INVITE request event
     */
public ServerTransaction sendRinging(RequestEvent event, String tag) throws SipException {
    try {
        Request request = event.getRequest();
        ServerTransaction transaction = getServerTransaction(event);
        Response response = mMessageFactory.createResponse(Response.RINGING, request);
        ToHeader toHeader = (ToHeader) response.getHeader(ToHeader.NAME);
        toHeader.setTag(tag);
        response.addHeader(toHeader);
        if (DEBUG)
            Log.d(TAG, "send RINGING: " + response);
        transaction.sendResponse(response);
        return transaction;
    } catch (ParseException e) {
        throw new SipException("sendRinging()", e);
    }
}
Also used : Response(javax.sip.message.Response) Request(javax.sip.message.Request) ToHeader(javax.sip.header.ToHeader) ParseException(java.text.ParseException) ServerTransaction(javax.sip.ServerTransaction) SipException(javax.sip.SipException)

Example 8 with Response

use of javax.sip.message.Response in project XobotOS by xamarin.

the class SipHelper method sendInviteRequestTerminated.

public void sendInviteRequestTerminated(Request inviteRequest, ServerTransaction inviteTransaction) throws SipException {
    try {
        Response response = mMessageFactory.createResponse(Response.REQUEST_TERMINATED, inviteRequest);
        if (DEBUG)
            Log.d(TAG, "send response: " + response);
        inviteTransaction.sendResponse(response);
    } catch (ParseException e) {
        throw new SipException("sendInviteRequestTerminated()", e);
    }
}
Also used : Response(javax.sip.message.Response) ParseException(java.text.ParseException) SipException(javax.sip.SipException)

Example 9 with Response

use of javax.sip.message.Response in project XobotOS by xamarin.

the class SipHelper method sendInviteBusyHere.

public void sendInviteBusyHere(RequestEvent event, ServerTransaction inviteTransaction) throws SipException {
    try {
        Request request = event.getRequest();
        Response response = mMessageFactory.createResponse(Response.BUSY_HERE, request);
        if (inviteTransaction == null) {
            inviteTransaction = getServerTransaction(event);
        }
        if (inviteTransaction.getState() != TransactionState.COMPLETED) {
            if (DEBUG)
                Log.d(TAG, "send BUSY HERE: " + response);
            inviteTransaction.sendResponse(response);
        }
    } catch (ParseException e) {
        throw new SipException("sendInviteBusyHere()", e);
    }
}
Also used : Response(javax.sip.message.Response) Request(javax.sip.message.Request) ParseException(java.text.ParseException) SipException(javax.sip.SipException)

Example 10 with Response

use of javax.sip.message.Response in project XobotOS by xamarin.

the class SipHelper method sendResponse.

public void sendResponse(RequestEvent event, int responseCode) throws SipException {
    try {
        Request request = event.getRequest();
        Response response = mMessageFactory.createResponse(responseCode, request);
        if (DEBUG && (!Request.OPTIONS.equals(request.getMethod()) || DEBUG_PING)) {
            Log.d(TAG, "send response: " + response);
        }
        getServerTransaction(event).sendResponse(response);
    } catch (ParseException e) {
        throw new SipException("sendResponse()", e);
    }
}
Also used : Response(javax.sip.message.Response) Request(javax.sip.message.Request) ParseException(java.text.ParseException) SipException(javax.sip.SipException)

Aggregations

Response (javax.sip.message.Response)21 SipException (javax.sip.SipException)10 Request (javax.sip.message.Request)9 ParseException (java.text.ParseException)8 SIPResponse (gov.nist.javax.sip.message.SIPResponse)6 ServerTransaction (javax.sip.ServerTransaction)5 SIPClientTransaction (gov.nist.javax.sip.stack.SIPClientTransaction)3 ResponseEvent (javax.sip.ResponseEvent)3 SipProvider (javax.sip.SipProvider)3 ToHeader (javax.sip.header.ToHeader)3 SipUri (gov.nist.javax.sip.address.SipUri)2 SIPRequest (gov.nist.javax.sip.message.SIPRequest)2 SIPDialog (gov.nist.javax.sip.stack.SIPDialog)2 SIPServerTransaction (gov.nist.javax.sip.stack.SIPServerTransaction)2 SIPTransaction (gov.nist.javax.sip.stack.SIPTransaction)2 ClientTransaction (javax.sip.ClientTransaction)2 Dialog (javax.sip.Dialog)2 InvalidArgumentException (javax.sip.InvalidArgumentException)2 SipURI (javax.sip.address.SipURI)2 CSeqHeader (javax.sip.header.CSeqHeader)2