CALL ROUTING USING INFORMATION IN SESSION INITIATION PROTOCOL MESSAGES
A system and method for efficient and accurate establishment of SIP sessions between calling and called end-points. A calling endpoint creates a SIP INVITE request including a header portion and a body portion. The header portion includes standard routing information and the body portion includes additional information about the user and relevant to caller's intent. A SIP server receives a SIP INVITE request and determines an address of the called end-point as a function of the standard routing information contained in the header and the additional caller information contained in the body. The SIP server routes the session to the determined address.
1 . A method for establishing an Internet Protocol (IP) telephony session between a first device and a second device, the method comprising:
receiving at a server a Session Initiation Protocol (SIP) call establishment message from the first device, the SIP call establishment message including a first routing information in a header portion of the SIP call establishment message and a second routing information in a body portion of the SIP call establishment message;
examining, by the server, the first and second routing information to determine an address of second device;
using the address for routing the IP telephony session to the second device; and
enabling the second device to communicate additional information related to the IP telephony session to the first device for use by the first device in generating routing information in the body portion of future call establishment messages of future IP telephony sessions initiated by the first device.
2 . The method of claim 1 , wherein the enabling the second device to communicate additional information further includes:
receiving at the server the additional information related to the IP telephony session from the second device; and
transmitting, by the server, the additional information related to the IP telephony session to the first device.
3 . The method of claim 1 , wherein the second routing information further includes information gathered about a user of the first device.
4 . The method of claim 1 , wherein the second routing information further includes caller intent information.
5 . The method of claim 4 , wherein the caller intent information includes information related to an intent of a user of the first device in initiating the IP telephony session.
6 . The method of claim 1 , wherein the second routing information includes transaction information related to a previous transaction between the first device and a third party associated with the second device.
7 . A method for establishing an Internet Protocol (IP) telephony session between a first device and a second device, the method comprising:
retrieving caller intent information from a data store on the first device;
creating a first Session Initiation Protocol (SIP) call establishment message including a header and a body, the body including the caller intent information;
transmitting the first SIP call establishment message to a server;
receiving, from the server, an address of the second device determined by the server using at least the caller intent information;
creating a new SIP call establishment message including the address of the second device;
transmitting the new SIP call establishment message to the server for routing the IP telephony session to the second device;
receiving additional information related to the IP telephony session from the second device for use by the first device in generating routing information in the body of future call establishment messages of future IP telephony session initiated by the first device.
8 . The method of claim 7 , wherein the receiving the additional information related to the IP telephony session further includes:
receiving the additional information related to the IP telephony session from the second device via the server.
9 . The method of claim 7 , wherein the caller intent information includes information related to an intent of a user of the first device in initiating the IP telephony session.
10 . The method of claim 7 , wherein the caller intent information includes transaction information related to a previous transaction between the first device and a third party associated with the second device.
11 . An Internet Protocol (IP) telephony system comprising:
a first device configured to create a Session Initiation Protocol (SIP) call establishment message for an IP telephony session between the first device and a second device, the SIP call establishment message including a header and a body, the body including caller intent information, wherein the first device is further configured to receive additional information related to the IP telephony session from the second device for use in generating routing information in the body of future call establishment messages when initiating subsequent IP telephony sessions; and
a server operative between the first device and the second device configured to use the caller intent information to determine an address of the second device and to route the IP telephony session to the second device based on the address.
12 . The system of claim 11 , further comprising the second device.
13 . The system of claim 11 , wherein the caller intent information includes information related to an intent of a user of the first device in initiating the IP telephony session.
14 . The system of claim 11 , wherein the server receives the additional information related to the IP telephony session from the second device and transmits the additional information related to the IP telephony session to the first device.
15 . The system of claim 11 , wherein the caller intent information includes transaction information related to a previous transaction between the first device and a third party associated with the second device.
16 . A server in an Internet Protocol (IP) telephony system operative between a first device and a second device, the server being configured for:
receiving a Session Initiation Protocol (SIP) call establishment message for an IP telephony session from the first device, the SIP call establishment message including a first routing information in a header portion of the SIP call establishment message and a second routing information in a body portion of the SIP call establishment message;
examining the first and second routing information to determine an address of the second device;
using the address for routing the IP telephony session to the second device; and
enabling the second device to communicate additional information related to the IP telephony session to the first device for use by the first device in generating routing information in the body portion of future call establishment messages of future IP telephony sessions initiated by the first device.
17 . The server of claim 16 , wherein the server is further configured for:
receiving the additional information related to the IP telephony session from the second device; and
transmitting the additional information related to the IP telephony session to the first device.
18 . The server of claim 16 , wherein the second routing information further includes caller intent information.
19 . The server of claim 18 , wherein the caller intent information includes information related to an intent of a user of the first device in initiating the IP telephony session.
20 . The server of claim 16 , wherein the second routing information includes transaction information related to a previous transaction between the first device and a third party associated with the second device.