Contact Management in a Serverless Peer-to-Peer System
First Claim
1. A method for managing contact information for use in a peer-to-peer system, the method comprising, at one or more peer computing systems associated with a user entity:
- storing, in a contact store on the one or more peer computing systems associated with the user entity, contact information associated with a plurality of other entities, wherein the contact information for each of the plurality of other entities includes;
a secure unique identifier,a human readable alias,a presence publication indicator, the presence publication indicator to indicate whether the one or more peer computing systems associated with the user entity are to transmit presence information of the user entity to one or more peer computing systems associated with each of the plurality of other entities, anda presence subscription indicator, the presence subscription indicator to indicate whether the one or more peer computing systems associated with the user entity are to receive presence information of each of the plurality of other entities from the one or more peer computing systems associated with each of the plurality of other entities; and
providing a set of contacts application program interfaces (APIs) to access the stored contact information, the set of contacts APIs including;
an add contact API, a delete contact API, an update contact API, a get contact API, an export contact API, and an enumerate contacts API.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods are described that facilitate the management of contact information, at least some of the contact information related to entities in a serverless, peer-to-peer system. A contact store may store information regarding which other entities of a plurality of other entities are authorized to monitor presence of a user entity. Presence of an entity may generally indicate the willingness and/or ability of the entity to communicate and/or collaborate with other entities, for example. The contact store may also store information regarding which other entities of the plurality of other entities the presence of which should be monitored by the system. A user entity may be able to add contacts to and/or delete contacts from the contact store, for example. The user entity may also be able to modify the contact store to modify which other entities are authorized to monitor presence of the user entity and/or which other entities the presence information of which should be monitored by the system, for example.
-
Citations
20 Claims
-
1. A method for managing contact information for use in a peer-to-peer system, the method comprising, at one or more peer computing systems associated with a user entity:
-
storing, in a contact store on the one or more peer computing systems associated with the user entity, contact information associated with a plurality of other entities, wherein the contact information for each of the plurality of other entities includes; a secure unique identifier, a human readable alias, a presence publication indicator, the presence publication indicator to indicate whether the one or more peer computing systems associated with the user entity are to transmit presence information of the user entity to one or more peer computing systems associated with each of the plurality of other entities, and a presence subscription indicator, the presence subscription indicator to indicate whether the one or more peer computing systems associated with the user entity are to receive presence information of each of the plurality of other entities from the one or more peer computing systems associated with each of the plurality of other entities; and providing a set of contacts application program interfaces (APIs) to access the stored contact information, the set of contacts APIs including;
an add contact API, a delete contact API, an update contact API, a get contact API, an export contact API, and an enumerate contacts API. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method for managing contact information for use in a peer-to-peer system, the method comprising, at one or more peer computing systems associated with a user entity:
-
determining one or more endpoints of each of a plurality of other entities; storing, in a presence store on the one or more peer computing systems associated with the user entity, presence information associated with each of the plurality of other entities, the presence information including a human readable alias of the one or more endpoints and at least one of an address or a port number of the one or more endpoints; providing a set of presence application program interfaces (APIs) to access the stored presence information, the set of presence application program interfaces including;
a get endpoint information API, a get name API, a set name API, a get addresses API, and a get presence information API;storing, in a capabilities store on the one or more computing systems associated with the user entity, capabilities information associated with each of the plurality of other entities, the capabilities information including at least one of;
an indication of a capability of a configuration of a computing system of each of the plurality of other entities to execute a particular software application, an indication of a presence of a particular hardware component on the computing system of each of the plurality of other entities, or a real-time capability of each of the plurality of other entities with respect to a currently executing software application;providing a set of capabilities APIs to access the stored capabilities information, the set of capabilities APIs including a get capabilities API; storing, in an objects store on the one or more computing systems associated with the user entity, objects information associated with each of the plurality of other entities, the objects information including at least one of;
a data object, a file, a structure, a picture, a sound, a description, a meta-data, a name-value pair, information specific to the currently executing software application, or real-time information;providing a set of objects APIs to access the stored objects information, the set of objects APIs including a get objects API; and publishing at least a portion of the presence information, at least a portion of the capabilities information, and at least a portion of the objects information associated with at least one of the plurality of other entities. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A peer computing system comprising:
-
a presence system at a computing device corresponding to a user entity, wherein the presence system; is enabled to monitor a presence, a capability and an object associated with one or more other entities; is communicatively coupled to each of;
a presence store including presence information corresponding to the presence of the one or more other entities, a capabilities store including capabilities information corresponding to the capability associated with the one or more other entities, and an objects store including objects information corresponding to the object associated with the one or more other entities; andincludes; a set of presence application program interfaces (APIs) to access the presence information, the set of presence APIs including;
a get endpoint information API, a get name API, a set name API, a get addresses API, and a get presence information API;a set of capabilities APIs including capabilities information to access the capabilities information, the set of capabilities APIs including a get capabilities API; and a set of objects APIs to access the objects information, the set of objects APIs including;
a get objects API, a publish objects API, and a delete objects API;a contact manager communicatively coupled to the presence system and to a contact store, the contact store being enabled to store contact information for each of the one or more other entities, and the contact information including; a secure unique identifier for each of the one or more other entities, a human readable alias for each of the one or more other entities, an indication of at least one property of each of the one or more other entities, including at least one of an indication of an authorization of the user entity to monitor the at least one property of each of the one or more other entities or an indication of an authorization of each of the one or more other entities to monitor at least one property of the user entity, the at least one property being selected from a presence property, a capabilities property, or an objects property, and a set of contact APIs for accessing the contact store, including an add contact API, a delete contact API, an update contact API, a get contact API, an export contact API, and an enumerate contacts API; and a communications module that is communicatively coupled to each of the one or more other entities. - View Dependent Claims (20)
-
Specification