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();
}
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);
}
Aggregations