Voice call routing by dynamic personal profile
First Claim
1. A method of routing a telephone call dynamically to a user comprising:
- initiating a voice call session on a data communication network in response to an incoming telephone call directed to the user, said data communication network having one or more computing devices coupled thereto;
dynamically determining whether the user is online via the selected computing device associated with the user and coupled to the data communication network, said dynamically determining comprising dynamically determining whether the user is online based on a user context corresponding to a log-in sub-state presence of the user and indicating that the user is currently online via selected computing devices connected to the data communications network or whether the user is online based on a binary presence indicating that the selected computing device is connected to the data communications network while the user is not logged in, said log-in sub-state presence comprising;
an online state, a busy state, an away state, and an offline state;
in response to the determination of log in sub-state presence, executing a set of routing rules for routing the incoming telephone call associated with the user, the execution of the routing rules including;
in response to a determination that the log in sub-state corresponds to an online state;
selecting a computing device associated with the online state,generating an alert message by an alert service, the alert service configured to receive Hypertext Transfer Protocol (HTTP) requests from a Session Initiation Protocol (SIP) server,routing an alert message by a messaging service, the messaging service configured to receive requests from the alerts service,displaying the alert at the selected computing device, wherein the alert displays an indication of a timeout and information about the caller based on data within an address book;
in response to a determination that the log-in sub-state does not correspond to an online state;
determining a schedule associated with the user,determining a location associated with the schedule and a current time and a day of week, andselecting a computing device based on the location of the user; and
completing the voice call session to the selected computing device.
2 Assignments
0 Petitions
Accused Products
Abstract
Dynamic telephone call routing. A voice service initiates a voice call session on a data communication network in response to an incoming telephone call directed to a user and generates a notification of the telephone call. An alerts service receiving and responsive to the notification executes a set of routing rules to select a computing device associated with the user. The alerts service also generates an alert directed to the computing device. If the computing device is online, a messaging service sends the alert to the computing device and receives a user request from the computing device in response thereto. The messaging service communicates the user request to the voice service for completing the voice call session to the computing device if specified by the user request. If the computing device is not online, the telephone call is routed to a telephone device.
-
Citations
45 Claims
-
1. A method of routing a telephone call dynamically to a user comprising:
-
initiating a voice call session on a data communication network in response to an incoming telephone call directed to the user, said data communication network having one or more computing devices coupled thereto; dynamically determining whether the user is online via the selected computing device associated with the user and coupled to the data communication network, said dynamically determining comprising dynamically determining whether the user is online based on a user context corresponding to a log-in sub-state presence of the user and indicating that the user is currently online via selected computing devices connected to the data communications network or whether the user is online based on a binary presence indicating that the selected computing device is connected to the data communications network while the user is not logged in, said log-in sub-state presence comprising;
an online state, a busy state, an away state, and an offline state;in response to the determination of log in sub-state presence, executing a set of routing rules for routing the incoming telephone call associated with the user, the execution of the routing rules including; in response to a determination that the log in sub-state corresponds to an online state; selecting a computing device associated with the online state, generating an alert message by an alert service, the alert service configured to receive Hypertext Transfer Protocol (HTTP) requests from a Session Initiation Protocol (SIP) server, routing an alert message by a messaging service, the messaging service configured to receive requests from the alerts service, displaying the alert at the selected computing device, wherein the alert displays an indication of a timeout and information about the caller based on data within an address book; in response to a determination that the log-in sub-state does not correspond to an online state; determining a schedule associated with the user, determining a location associated with the schedule and a current time and a day of week, and selecting a computing device based on the location of the user; and completing the voice call session to the selected computing device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A system for routing a telephone call dynamically to a user comprising:
-
a voice service initiating a voice call session on a data communication network in response to an incoming telephone call directed to the user, said telephone call originating from a public switched telephone network external to the data communication network, said voice service further generating a notification of the telephone call, wherein the voice service is implemented on a Session Initiation Protocol (SIP) server; an alerts service receiving and responsive to the notification generated by the voice service for executing a set of routing rules to dynamically select a computing device associated with the user based on user preferences, said user preferences defining an online presence indicating a user context according to a log-in sub-state presence and indicating that the user is currently online or indicating a binary presence based on the computing device being connected to the communication network and for generating an alert directed to the selected computing device, wherein the log-in sub-state comprises an online state, a busy state, an away state and an offline state, said computing device being coupled to the data communication network, wherein the alerts service responds to a Hypertext Transfer Protocol (HTTP) request from the voice service by generating an alert indicating a time to respond and the alert includes address book data associated with a caller; and a messaging service for sending the alert to the selected computing device when the selected computing device is online based on the log-in sub-state in accordance with the user preferences and not based on the binary presence and for receiving a user request from the selected computing device in response thereto, said messaging service communicating the user request to the voice service for completing the voice call session to the selected computing device if the user request specifies receiving the telephone call via the data communication network and at the computing device. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. A method of routing a telephone call dynamically to a user comprising:
-
initiating a voice call session on a data communication network in response to an incoming telephone call directed to the user, said data communication network having one or more computing devices coupled thereto, wherein the voice call session is initiated on a Session Initiation Protocol (SIP) server; receiving a request to generate a notification via Hypertext Transfer Protocol (HTTP) from the SIP server, and generating the notification of the telephone call; dynamically determining whether a selected computing device associated with the user is available to receive the notification based on the user'"'"'s availability, said user'"'"'s availability depending on a user context corresponding to a log-in sub-state presence of the user and indicating that the user is currently online at the selected computing device while connecting to the data communications network or depending on a binary presence indicating that the selected computing device is connected to the data communication network;
wherein the log-in sub-state presence comprises an online state, a busy state, an away state and an offline state;sending the notification to the selected computing device associated with the user and coupled to the data communication network when the user'"'"'s availability is based on the log-in sub-state presence and not based on the binary presence, said notification being sent via the data communication network, wherein the notification includes a timeout and data associated with a caller identity, the data read from an address book; receiving a user request via the data communication network for routing the telephone call in response to the notification; and responsive to the user request, either completing the voice call session to the selected computing device via the data communication network or routing the telephone call to a selected telephone device via a telephone network. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38)
-
-
39. One or more computer-readable media having computer-executable components for routing a telephone call dynamically to a user, said computer-readable media comprising:
-
a voice component for initiating a voice call session on a data communication network in response to an incoming telephone call directed to the user and generating session information related to the telephone call, said data communication network having one or more computing devices coupled thereto, wherein the voice component is executed by a Session Initiation Protocol (SIP) server; an alert component receiving the session information via Hypertext Transfer Protocol (HTTP) and responsive to the session information, sending a notification to a selected computing device associated with the user and coupled to the data communication network based on a user context corresponding to a log-in sub-state presence of the user indicating that the user is currently online at the selected computing device or based on a binary presence indicating that the selected computing device is connected to the data communication network, wherein the log-in sub-state presence comprises an online state, a busy state, an away state and an offline state, said alert component sending the notification to the selected computing device via the data communication network when the selected computing device is online based on the log-in sub-state presence and not based on the binary presence, wherein the notification includes a timeout and address book data associated with the caller number; and a routing component for receiving a user request via the data communication network and routing the telephone call in response to the user request, said routing component either completing the voice call session to the selected computing device via the data communication network or routing the telephone call to a selected telephone device via a telephone network. - View Dependent Claims (40, 41, 42, 43, 44, 45)
-
Specification