User presence aggregation at a server
First Claim
1. A method in a server system for aggregating presence across multiple endpoints of a publisher, the method comprising:
- providing a collection of presence state publications for the publisher, each presence state publication having an availability value and an activity, the presence state publications including a user state publication and other state publications, the user state publication representing availability of the publisher as manually specified by the publisher and the other state publications representing availability of the publisher as derived from monitoring events indicating use of endpoints of the publisher, each presence state publication having a publication time;
receiving at the server system from each of the multiple endpoints an indication of a presence state publication of the publisher; and
upon detecting a change in the publisher'"'"'s state by the server system,identifying a user state publication with the latest publication time;
identifying other state publications such that user state publications with a publication time that is earlier than the publication time of the identified user state publication are eliminated from being identified;
identifying from the availability value of the identified user state publication and the identified other state publications a least available state; and
generating an aggregated state of the publisher indicating overall availability of the publisher from the collection of presence state publications based on the identified least available state so that the aggregated state is derived from the identified user state publication and the identified other state publications but not from other state publications with a publication time that is earlier than the publication time of the identified user state publication; and
publishing the aggregated state of the publisher.
2 Assignments
0 Petitions
Accused Products
Abstract
A presence aggregation system provides a presence aggregation server that allows for the publication of presence state of a publisher from the publisher'"'"'s multiple endpoints. A presence state includes an availability value and an activity. An activity may include an activity token and/or a custom string. When any one of the publisher'"'"'s endpoints makes a presence state publication on the presence aggregation server, the presence aggregation server generates an aggregated state of the publisher (i.e., the availability of the publisher aggregated across all of the publisher'"'"'s endpoints) and publishes the generated aggregated state to each of the publisher'"'"'s endpoints. The presence aggregation server may also provide the publisher'"'"'s aggregated state to the subscribers of the publisher'"'"'s aggregated state information.
-
Citations
18 Claims
-
1. A method in a server system for aggregating presence across multiple endpoints of a publisher, the method comprising:
-
providing a collection of presence state publications for the publisher, each presence state publication having an availability value and an activity, the presence state publications including a user state publication and other state publications, the user state publication representing availability of the publisher as manually specified by the publisher and the other state publications representing availability of the publisher as derived from monitoring events indicating use of endpoints of the publisher, each presence state publication having a publication time; receiving at the server system from each of the multiple endpoints an indication of a presence state publication of the publisher; and upon detecting a change in the publisher'"'"'s state by the server system, identifying a user state publication with the latest publication time; identifying other state publications such that user state publications with a publication time that is earlier than the publication time of the identified user state publication are eliminated from being identified; identifying from the availability value of the identified user state publication and the identified other state publications a least available state; and generating an aggregated state of the publisher indicating overall availability of the publisher from the collection of presence state publications based on the identified least available state so that the aggregated state is derived from the identified user state publication and the identified other state publications but not from other state publications with a publication time that is earlier than the publication time of the identified user state publication; and publishing the aggregated state of the publisher. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A computer-readable storage device containing instructions for facilitating at a server system aggregation of presence across multiple endpoints, by a method comprising:
-
providing a collection of presence state publications for a publisher, each presence state publication having an availability value and an activity, the presence state publications including a user state publication and other state publications, each presence state publication having a publication time; subscribing subscribers to receive notifications of aggregated state of the publisher; receiving from each of the multiple endpoints an indication of a presence state publication of the publisher; and upon detecting a change in a presence state publication of the publisher, generating an aggregated state of the publisher indicating overall availability of the publisher from the collection of presence state publications based on the availability values of the user state publication with the latest publication time and the other state publications identified as having a publication time that is earlier than the publication time of the user state publication with the latest publication time such that other state publications with a publication time that is earlier than the publication time of the user state publication with the latest publication time are eliminated from being used in generating the aggregated state of the publisher; sending a notification of the aggregated state of the publisher to each of the publisher'"'"'s endpoints; and sending a notification of the aggregated state to each subscriber of the aggregated state of the publisher. - View Dependent Claims (16)
-
-
17. A system for aggregating presence across multiple endpoints, the system comprising:
-
a computer memory containing computer-readable instructions that provide; a component that receives from endpoints presence state publications for publishers, the presence state publications including a user state publication and other state publications that form a collection of presence state publications, each presence state publication having a publication time; and a component that monitors the presence state publications to detect a change in a state, and upon detecting a change in a state of a publisher, generates an aggregated state of the publisher indicating overall availability of the publisher from the collection of presence state publications including the user state publication with the latest publication time and the other state publications identified as having a publication time that is not earlier than the publication time of the user state publication with the latest publication time such that the aggregated state is generated only from the user state publication with the latest publication time when no other state publication has a later publication time and is generated from the user state publication with the latest publication time and any other state publication with a later publication time when another state publication has a later publication time; and publishes the aggregated state of the publisher; and a processor for executing the computer executable instructions stored in the computer memory. - View Dependent Claims (18)
-
Specification