Fully distributed, scalable infrastructure, communication system
First Claim
1. 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.
0 Assignments
0 Petitions
Accused Products
Abstract
A fully distributed, scalable infrastructure, communication system. The system comprises at least on Space, at least one double agent and at least one non-space specific double agent. Devices and applications that wish to communicate with other members of the Community or outside of the Community insert objects into the Space. The Space then publishes the presence of that object to subscribed members of the community. The double agents are capable of communicating with any desired protocols on one side and the Space protocol on the other. Non-space specific agents handle routing, administrative and other tasks, such as communication between Spaces and Communities.
67 Citations
11 Claims
-
1. 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. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer-readable non-transitory medium having stored thereon instructions that, when executed, cause the computer to:
-
provide 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; receive a telephone call from a calling telephone device of a first type; use 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; insert the object into the space; responsive to a determination that the object is resolvable by a member of the community, use the notification service to notify a second agent that had previously registered to be notified of insertion of objects with particular attributes; use 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 the called user is a member of another community, use a non-space specific agent to transfer the object to a second space in another community; and provide 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. - View Dependent Claims (10, 11)
-
Specification