Patent ID: 8495140

Claim:
A method of routing calls in a communications system, comprising: providing an agent for each type of a member of a community, wherein the community is organized around a space that is a distributed, persistent store having a publish and subscribe capability and a notification service and into which objects can be inserted without loss of attributes, and wherein the space allows decoupling of associations between applications, clients, servers, and proxies; receiving a telephone call from a calling telephone device of a first type; using a first agent of the first type to translate the telephone call into an object insertable into the space, the object having characteristics independent of an interface of the telephone device of the first type; inserting the object into the space; using the notification service to notify a second agent that had previously registered to be notified of insertion of objects with particular attributes; responsive to a determination that the object is resolvable by a member of the community, using the second agent to translate the object to a receiving telephone call and to contact a receiving telephone device for the receiving telephone call; responsive to a determination that the object is not resolvable by any member of the community because of the called user is a member of another community, using a non-space specific agent to transfer the object to a second space in another community; and providing a community service for registering persistent stores and agents within the community, wherein agents and services within the community are monitored, stopped, re-started, and cloned by the community service without administrative intervention.