Search in sources :

Example 6 with CallID

use of gov.nist.javax.sip.header.CallID in project XobotOS by xamarin.

the class SIPResponse method getDialogId.

/** Get a dialog identifier.
     * Generates a string that can be used as a dialog identifier.
     *
     * @param isServer is set to true if this is the UAS
     * and set to false if this is the UAC
     */
public String getDialogId(boolean isServer) {
    CallID cid = (CallID) this.getCallId();
    From from = (From) this.getFrom();
    To to = (To) this.getTo();
    StringBuffer retval = new StringBuffer(cid.getCallId());
    if (!isServer) {
        //retval.append(COLON).append(from.getUserAtHostPort());
        if (from.getTag() != null) {
            retval.append(COLON);
            retval.append(from.getTag());
        }
        //retval.append(COLON).append(to.getUserAtHostPort());
        if (to.getTag() != null) {
            retval.append(COLON);
            retval.append(to.getTag());
        }
    } else {
        //retval.append(COLON).append(to.getUserAtHostPort());
        if (to.getTag() != null) {
            retval.append(COLON);
            retval.append(to.getTag());
        }
        //retval.append(COLON).append(from.getUserAtHostPort());
        if (from.getTag() != null) {
            retval.append(COLON);
            retval.append(from.getTag());
        }
    }
    return retval.toString().toLowerCase();
}
Also used : CallID(gov.nist.javax.sip.header.CallID) From(gov.nist.javax.sip.header.From) To(gov.nist.javax.sip.header.To)

Example 7 with CallID

use of gov.nist.javax.sip.header.CallID in project XobotOS by xamarin.

the class ServerLog method logMessage.

/**
     * Log a message into the log directory.
     *
     * @param message a SIPMessage to log
     * @param from from header of the message to log into the log directory
     * @param to to header of the message to log into the log directory
     * @param status the status to log.
     * @param sender is the server the sender or receiver (true if sender).
     * @param time is the reception time.
     */
public void logMessage(SIPMessage message, String from, String to, String status, boolean sender, long time) {
    checkLogFile();
    CallID cid = (CallID) message.getCallId();
    String callId = null;
    if (cid != null)
        callId = cid.getCallId();
    String firstLine = message.getFirstLine().trim();
    String encoded = (logContent ? message.encode() : message.encodeMessage());
    String tid = message.getTransactionId();
    TimeStampHeader tshdr = (TimeStampHeader) message.getHeader(TimeStampHeader.NAME);
    long tsval = tshdr == null ? 0 : tshdr.getTime();
    logMessage(encoded, from, to, sender, callId, firstLine, status, tid, time, tsval);
}
Also used : TimeStampHeader(javax.sip.header.TimeStampHeader) CallID(gov.nist.javax.sip.header.CallID)

Aggregations

CallID (gov.nist.javax.sip.header.CallID)7 From (gov.nist.javax.sip.header.From)5 To (gov.nist.javax.sip.header.To)4 CSeq (gov.nist.javax.sip.header.CSeq)3 ContentLength (gov.nist.javax.sip.header.ContentLength)3 InReplyTo (gov.nist.javax.sip.header.InReplyTo)3 MaxForwards (gov.nist.javax.sip.header.MaxForwards)3 SIPHeader (gov.nist.javax.sip.header.SIPHeader)3 SIPHeaderList (gov.nist.javax.sip.header.SIPHeaderList)2 ParseException (java.text.ParseException)1 InvalidArgumentException (javax.sip.InvalidArgumentException)1 TimeStampHeader (javax.sip.header.TimeStampHeader)1