API
SIP Messages
This page describes data structures for SIP packets: Incoming Messages, Incoming Requests, Incoming Responses, and Outgoing Requests. While each has its own constructor, they share much similar structure, properties, and methods. As such, they are all documented together below.
Instance Variables
logger
Logger
- The outlet for log messages.
ua
SIP.UserAgent
- The local User Agent the message is to or from.
headers
Object
- The internal data structure for header storage. Use the getter and setter methods instead of directly accessing this.
method
String
- The SIP method of the request or response.
body
String
- The body contained in the SIP message, if present.
from
SIP.NameAddrHeader
- The From header address of the SIP message.
to
SIP.NameAddrHeader
- The To header address of the SIP message.
callId
String
- The value of the Call-ID header field.
cseq
String
- The value of the CSeq header field.
ruri
IncomingRequest and OutgoingRequest only
String|SIP.URI
- The requested URI from the first line of the SIP request. For SIP.IncomingRequests, this is a String. For SIP.OutgoingRequests, it is a SIP.URI.
extraHeaders
OutgoingRequest only
Array
- An array of extra headers to be appended to the request.
statusCode
OutgoingRequest only
Integer
- The status code to include in a Reason header with the request.
statusCode
Incoming Response only
Integer
- The status code of the received response.
reasonPhrase
OutgoingRequest only
String
- The reason phrase to include in a Reason header with the request.
reasonPhrase
IncomingResponse only
String
- The reason phrase of the received response.
data
IncomingRequest and IncomingResponse only
String
- A raw string representation of the SIP message.
via
IncomingRequest and IncomingResponse only
Object
- The value of the Via header(s) of the SIP message.
viaBranch
IncomingRequest and IncomingResponse only
String
- The value of the first Via header’s branch parameter.
fromTag
IncomingRequest and IncomingResponse only
String
- The tag parameter of the From header, if present.
toTag
IncomingRequest and IncomingResponse only
String
- The tag parameter of the To header, if present.
transport
IncomingRequest only
SIP.Transport
- The transport the request was received on, for sending replies.
serverTransaction
IncomingRequest only
SIP.Transaction
- The transaction associated with the request.
Instance Methods
setHeader(name, value)
Sets the value of the header, overwriting any existing header with the same name.
addHeader(name, value)
IncomingRequest and IncomingResponse only
Sets the value of the header, appending it to the list of headers with that name.
getHeader(name)
Gets the value of the first header with the given name.
getHeaders(name)
Gets the array of values for the headers with the given name.
hasHeader(name)
Tests for the existence of a given header.
parseHeader(name, idx)
IncomingRequest and IncomingResponse only. Meant for internal use.
Parses the given header from a raw string based on the Grammar.
s(name, idx)
IncomingRequest and IncomingResponse only. Meant for internal use.
Alias for parseHeader
.
toString()
Returns the SIP message as a String.
reply(code, reason, extraHeaders, body, onSuccess, onFailure)
IncomingRequest only.
Reply to the incoming request.
reply_sl(code, reason)
IncomingRequest only.
Reply statelessly to the incoming request, bypassing any server transaction.
OutgoingRequest
Construction
function (method, ruri, ua, params, extraHeaders, body)
Dependencies
- UA.C
- SIP.NameAddrHeader
- SIP.Utils.createRandomToken
- SIP.Utils.headerize
- SIP.C
Injected
- UA.getLogger
- UA.configuration.displayName
- UA.configuration.uri
- UA.configuration.sipjsId
- UA.configuration.userAgentString
IncomingMessage
Construction
function ()
Dependencies
- SIP.Utils.headerize
- SIP.Grammar
IncomingRequest
Construction
function (ua)
Dependencies
- SIP.Utils.newTag
- SIP.C
Injected
- UA.getLogger
- UA.contact
- UA.configuration.rel100
- Transaction.receiveResponse
- Transport.send
IncomingResponse
Construction
function (ua)
Dependencies
- Injected: UA