Techniques for setting up calls between two or more parties are described. A scheduler, operating in combination with a telecommunications network, may set up calls between two or more parties based on a queue of prioritized and/or communication mode required requests. The calls may be set up when all of the required parties are deemed to be available, based on prior scheduled events, and/or based on presence information. In one embodiment, available modes of communication, such as text, audio, data, video, of each party may be considered based on requested parameters for the call.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A method for placing a call between a caller and a callee, comprising: creating a plurality of call requests, each of the call requests specifying a caller, a callee, a priority level of the call request, and at least one desired mode of communication, each of the call requests being created in response to a failed attempt to make an initial call between the respective specified caller and callee; storing the call requests in a database; acquiring, for each of the specified callers and callees, information indicating a current availability to communicate via each of the desired modes of communication; selecting a first call request having a highest priority level among the stored call requests; determining a desired mode of communication via which the specified caller and callee of the first selected call request are both currently available to communicate; and directing a communications network to place a call between the specified caller and callee of the first selected call request via the determined mode of communication.
2. The method of claim 1 , further comprising: determining whether the call was successfully placed; and updating the database.
3. The method of claim 2 , wherein upon determining that the call was successfully placed, the database is updated by removing the first selected call request from the database.
4. The method of claim 2 , wherein upon determining that the call was not successfully placed, the database is updated by changing a designation of the first selected call request.
5. The method of claim 1 , wherein acquiring the information corresponding to a current availability to communicate includes: determining presence data corresponding to the caller and the callee; and determining state data corresponding to the caller and the callee, wherein the information corresponding to a current availability to communicate includes the determined presence data and the determined state data.
6. The method of claim 1 , wherein the acquired information includes user defined information.
7. A system for placing a call between a caller and a callee, comprising: a database which stores a plurality of call requests, each of the call requests specifying a caller, a callee, a priority level of the call request, and at least one desired mode of communication, each of the call requests being created in response to a failed attempt to make an initial call between the respective specified caller and callee; a scheduler which is configured to: acquire, for each of the specified callers and callees, information indicating a current availability to communicate via each of the desired modes of communication; select a first call request having a highest priority level among the stored call requests; and determine a desired mode of communication via which the specified caller and callee of the first selected call request are both currently available to communicate; and a call setup module which is configured to direct a communications network to place a call between the specified caller and callee of the first selected call request via the determined mode of communication.
8. The method of claim 1 , further comprising: selecting a second stored call request having a highest priority level among the remaining stored call requests, if at least one of the specified caller and the specified callee of the first selected call request is not currently available to communicate; determining whether the specified caller and callee of the second selected call request are both currently available to communicate; and directing the communications network to place a call between the specified caller and callee of the second selected call request if the specified caller and callee are both currently available to communicate.
9. The system of claim 7 , further comprising: a calendar database configured to maintain a schedule of availability to communicate of the callees; and a calendar module, operatively connected to the calendar database and the scheduler, configured to update the calendar database and to provide data corresponding to the schedule of availability to communicate to the scheduler for use in selecting a call request.
10. The system of claim 7 , wherein the scheduler is further configured to: select a second stored call request having a highest priority level among the remaining stored call requests, if at least one of the specified caller and the specified callee of the first selected call request is not currently available to communicate; and determine whether the specified caller and callee of the second selected call request are both currently available to communicate; and the call setup module is further configured to direct the communications network to place a call between the specified caller and callee of the second selected call request if the specified caller and callee are both currently available to communicate.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
December 28, 2005
June 5, 2012
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.