Everyone knows that SIP headers like R-URI, To, From, P-Asserted-Identity, Path, Route and others contain Uniform Resource Identifiers (URI) – sip uri or tel uri. But do you know what formats we can use, with what parameters? As URI is one of the IP communication’s corner stones, it worth to have some better understanding.
Let’s start from the beginning. SIP URI is defined in RFC 3261, TEL URI in RFC 3966 (this RFC defines also modem and fax URL schemes).
SIP URI has a similar form to an email address. It contains typically a username and a hostname, for example email@example.com, where realtimecommunication.info is the domain of a SIP service provider. TEL URI is simply a telephone (landline or mobile) number as tel:+611234567890. It is needed mainly to support CS related scenarios and Mobile Number Portability (MNP). In practice we can see various forms of sip-uris:
sip:+firstname.lastname@example.org sip:+email@example.com sip:ims.mnc000.mcc000.3gppnetwork.org tel:+611234567890 sip:+firstname.lastname@example.org;user=phone;npdi tel:4567890;phone-context=+61123 tel:7890;phone-context=operator.com sip:email@example.com:5060;transport=udp
Last but not least we have also a SIPS URI, which specifies that the resource is to be contacted securely. For that we use TLS as a transport layer protocol. The format for a SIPS URI is the same, except that the scheme is “sips” instead of sip. Note, that any resource described by a SIP URI can be “upgraded” to a SIPS URI by just changing the scheme, if it is desired to communicate with that resource securely.