public interface OutgoingSipResponse extends SipResponse
IncomingSipRequest
.UAS services do not need to specify a To-tag or Contact header when sending a dialog-creating response. These will be generated by the RA when the response is sent. The RA-generated Contact header will ensure that subsequent requests on the dialog will be routed back to the service correctly.
If an application is proxying an initial request and decides to send it's
own responses, the behaviour is described in the javadoc for Proxy
.
SC_ACCEPTED, SC_ADDRESS_INCOMPLETE, SC_ALTERNATIVE_SERVICE, SC_AMBIGUOUS, SC_BAD_EXTENSION, SC_BAD_GATEWAY, SC_BAD_REQUEST, SC_BUSY_EVERYWHERE, SC_BUSY_HERE, SC_CALL_BEING_FORWARDED, SC_CALL_LEG_DONE, SC_CALL_QUEUED, SC_DECLINE, SC_DOES_NOT_EXIT_ANYWHERE, SC_EXTENSION_REQUIRED, SC_FORBIDDEN, SC_GONE, SC_INTERVAL_TOO_BRIEF, SC_LOOP_DETECTED, SC_MESSAGE_TOO_LARGE, SC_METHOD_NOT_ALLOWED, SC_MOVED_PERMANENTLY, SC_MOVED_TEMPORARILY, SC_MULTIPLE_CHOICES, SC_NOT_ACCEPTABLE, SC_NOT_ACCEPTABLE_ANYWHERE, SC_NOT_ACCEPTABLE_HERE, SC_NOT_FOUND, SC_NOT_IMPLEMENTED, SC_OK, SC_PAYMENT_REQUIRED, SC_PROXY_AUTHENTICATION_REQUIRED, SC_REQUEST_ENTITY_TOO_LARGE, SC_REQUEST_PENDING, SC_REQUEST_TERMINATED, SC_REQUEST_TIMEOUT, SC_REQUEST_URI_TOO_LONG, SC_RINGING, SC_SERVER_INTERNAL_ERROR, SC_SERVER_TIMEOUT, SC_SERVICE_UNAVAILABLE, SC_SESSION_PROGRESS, SC_TEMPORARLY_UNAVAILABLE, SC_TOO_MANY_HOPS, SC_TRYING, SC_UNAUTHORIZED, SC_UNDECIPHERABLE, SC_UNSUPPORTED_MEDIA_TYPE, SC_UNSUPPORTED_URI_SCHEME, SC_USE_PROXY, SC_VERSION_NOT_SUPPORTED
Modifier and Type | Method and Description |
---|---|
IncomingSipRequest |
getRequest() |
void |
send() |
void |
sendReliably()
Send a provisional response reliably using RFC 3262 procedures.
|
getReasonPhrase, getStatus, setStatus, setStatus
addAcceptLanguage, addAddressHeader, addHeader, addHeaderGeneric, addParameterableHeader, getAcceptLanguage, getAcceptLanguages, getAddressHeader, getAddressHeaders, getCallId, getCharacterEncoding, getContent, getContentLanguage, getContentLength, getContentType, getExpires, getFrom, getHeader, getHeaderGeneric, getHeaderNames, getHeaders, getHeadersGeneric, getLocalAddr, getLocalPort, getMethod, getParameterableHeader, getParameterableHeaders, getProtocol, getRawContent, getRemoteAddr, getRemotePort, getRemoteUser, getSequenceNumber, getSession, getSession, getTo, getTransport, getUserPrincipal, isCommitted, isExtensionRequired, isExtensionSupported, isSecure, isUserInRole, removeHeader, setAcceptLanguage, setAddressHeader, setCharacterEncoding, setContent, setContentLanguage, setContentType, setExpires, setHeader, setHeaderGeneric, setParameterableHeader
IncomingSipRequest getRequest()
getRequest
in interface SipResponse
void send() throws IOException
IOException
void sendReliably() throws IOException, Rel100Exception
This method will automatically populate the RSeq and Require headers. The UAS must be prepared to subsequently receive PRACKs acknowledging this reliable provisional response, and it must respond to PRACKs with "200 OK".
Sending a reliable provisional response automatically creates a new early dialog if one does not already exist.
IOException
- if an I/O error occursRel100Exception
- if any of the following conditions are true:
IncomingSipRequest.getProxy()
IllegalStateException
- if the UAS is still awaiting the PRACK for the first reliable provisional
response, or the session is not in a valid state for sending reliable responses (ie. the call setup has
finished)