Patent ID: 8886722

Claim:
A system for establishing communications among users, the system comprising: a memory storing executable instructions including a controller; a processor coupled to the memory to execute the executable instructions, the controller executed within a call process server, the processor configured to monitor states of a plurality of users, each user associated with one or more devices, receive a communication request from a calling user for establishing a communication session between at least two users including the calling user and at least one target user, identify at least one associated devices of the at least one target user accessible for the communication session in view of preferences of the at least one target user, wherein the preferences indicate which one or more devices of the devices associated with the at least one target user can be accessed based on an identity of a caller user, sending an invitation message to the identified devices of the at least one target user for the communication session, in response to receiving an answer message for the invitation message from one of the identified devices, sending a disconnect message to the rest of the identified devices, leaving the one identified device selected for the communication session, establish the requested communication session among the at least two users when the at least two users are each in an appropriate state for participating in the communication session, including maintaining waiting communication data associated with a plurality of communication requests representing a plurality of waiting communication sessions pending to be established, transmitting a waiting communication notification with information about a modification to one of the waiting communication sessions or the waiting communication data to one of the at least two users that did not request the modification, responding to a waiting communication management request from a recipient of the waiting communication notification by updating the waiting communication data with the modification, and responding to a change of state for a user by selecting, based on the waiting communication data, at least one of the waiting communication sessions that can be established because corresponding users are each in an appropriate state for participating in the selected communication session, wherein the requested communication session is established for the at least one target user via the one identified accessible device associated with the at least one target user of the communication request, and sending, subsequent to completion of the communication session, a status message to one or more of the associated devices other than the one identified accessible device, the status message indicating the completion of the communication session.