Presence states indicate the presence status of a presentity. There are a number of indicators reflecting the various presence states associated with the presentity. The presence states can be further classified into:
A presence state can have different components. In the multiple points of presence situation, a user logs on using multiple devices. The user state at each endpoint may be different: the user is active on one machine and inactive in another. For example, to route a call to a user, it is preferable to contact the user on the endpoint where the both user and machine states are available.
When multiple presence states are involved, the server aggregates the various presence states of a user into a single value and makes the aggregated presence state available for the user's contacts or subscribers. User states that can be aggregated are as follows:
This is a numerical value or a range of numerical values describing user availability. If the interoperability with Communicator is desired or required, your client must not change the semantics of the availability values supported by Communicator. For more information about Communicator-defined availability values, see User States.
This is a text string that further qualifies the user availability. If the interoperability with Communicator is desired or required, your client must not change the semantics of the activity strings supported by Communicator. For more information about Communicator-defined activity strings, see User States.
The Last Active Time
The last active time of the user is shown as when the user was last active and is indicated in a tooltip. The Communicator-defined last active time value can be zero and is visible in a tooltip. In Communicator, if the last active time is 0, it is omitted from the tooltip.
In addition, the server also aggregates the machine states, calendar states, and phone states.