SIP, which stands for Session Initiation Protocol, is a set of commands and protocols in order to facilitate voice and/or video communication. As part of the protocol, a SIP proxy server makes requests, also called queries, to another server. The following is a list of some of the possible queries
INVITE: An invitation to a call
ACK: Short for “acknowledged.” The client has confirmed the INVITE request
PRACK: A provisional acknowledgment. Not related to VoIP provisioning, PRACK refers to a less reliable confirmation.
CANCEL: Cancel any pending requests
BYE: The call has been completed
REFER: Asks the client to issue a SIP query. This is most often a call transfer
REGISTER: Communicates user location
MESSAGE: Sending Business SMS over SIP
SUBSCRIBE: Subscribes to events
PUBLISH: Publishes an event to a server
NOTIFY: Notifies all subscribers of an event
INFO: Sends mid-session information that does not modify the session’s state
OPTIONS: Queries for information about the capabilities of the calling and receiving SIP phones
SIP Requests are then answered with SIP responses. There are 6 classes of SIP responses:
1xx = informational responses (Examples: 100 Trying, 180 Ringing, 181 Call is Being Forwarded)
2xx = success responses (Examples: 200 OK 202 Accepted)
3xx = redirection responses (Examples: 300 Multiple Choices, 301 Moved Permanently, 32 Moved Temporarily)
4xx = request failures (Examples: 403 Forbidden, 404 Not Found, 406 Not Accepted)
5xx = server errors (Examples: 502 Bad Gateway, 504 Server Time Out)
6xx = global failure (Examples: 600 Busy Everywhere, 604 Does Not Exist Anywhere)