Receiving in-band provisioning data

Lync 2013

Last modified: August 16, 2013

Applies to: Lync 2013 | Lync Server 2013

The enhanced presence publication and subscription infrastructure is also used to roam configuration data through in-band provisioning. The data includes server configuration, location profile, various policies, as well as user settings. It is stored on the server but is needed by a client at various stages in an application.

At the protocol level, receiving the provisioning data involves submitting a SUBSCRIBE request whose payload contains names of specified provisioning groups. The results are returned as the provisioning groups that contain the specified provisioning data.

Microsoft Unified Communications Managed API 4.0 exposes in-band provisioning data through various API objects. This section discusses how some of the in-band provisioning data can be processed by using UCMA.

In UCMA 4.0, the provisioning data are encapsulated by a LocalEndpoint object. You can obtain the publication grammars by reading the ContainerManifest and CategoryPublicationManifest properties on the LocalOwnerPresence instance of the established endpoint.

    LocalEndpoint endpoint = …;

    string cpm = localEndpoint.LocalOwnerPresence.CategoryPublicationManifest;
    string cm = localEndpoint.LocalOwnerPresence.ContainerManifest;

You can receive the cached values of the other provisioning data by calling the GetProvisioningData method on the LocalEndpoint instance.

    ProvisionData provData = endpoint.GetProvisioningData();

To query the latest provisioning data on the server, make an asynchronous call to BeginGetProvisioningData/EndGetProvisioningData.

    localEndpoint.EndGetProvisioningData(localEndpoint.BeginGetProvisioningData(null, null));