Presence Category

This content is no longer actively maintained. It is provided as is, for anyone who may still be using these technologies, with no warranties or claims of accuracy with regard to the most recent product version or service release.

Categories are data types, introduced in Office Communications Server 2007, to represent presence information and other application-defined data. An instance of category is uniquely defined by its name, holding container, URI, instance identifier, version number, expiry type, and expiration time. It can also hold an XML blob as the value. Unified Communications Enhanced Presence Schemas describe the formats of the XML blobs representing the enhanced presence supported by Office Communicator 2007 and Office Communication Server.

To publish a presence data, a category must be created. The following attributes must be specified for each category instance when it is created by the publishing client:

  • categoryName. The category attribute names that the presence category encapsulated within the publication; in other words, the state.
  • uri. The URI of the user of the published data; as in sip:user@domain.com.
  • instance. A non-negative integer that identifies the specific instance of a category being published. This attribute might indicate a specific device or any other attribute that allows the publisher to reference the category being updated, such as multiple instances for different device status. The instance ID might also be the same across publishing endpoints if the target being described is identical, for instance if multiple endpoints are trying to publish the same calendar data.
  • version. Enforces ordering.
  • container. Specifies the target ACL container for the publication. The container attribute must be in the form of a positive integer.
  • expireType. Specifies the expiration type of the publication. Values defined in Office Communications Server are:
    • static**.** Never expires. Publication must be removed manually or overridden.
    • device**.** Expires when the device goes away (such as when the registration state expires or the connection is lost).
    • user**.** Expires when all devices belonging to the user are offline.
    • time**.** Expires based on the expires attribute. Categories published by endpoints that are not registered or by third parties should use expireType = 'time'. If the expireType attribute is omitted, it is defaulted to 'time'.
  • expires(MAY). A positive integer in seconds, which dictates the time to live for the published category. This attribute must be present if and only if the expireType attribute is set to time. If it is not refreshed within the expire time, the published category is removed by the server.