LocalOwnerPresence Class

Definition

LocalOwnerPresence allows the publication and subscription to presence categories and management of access control lists. It also provides access to a list of subscribers and delegates.

public ref class LocalOwnerPresence : Microsoft::Rtc::Collaboration::Presence::PublishSubscribeSession
public class LocalOwnerPresence : Microsoft.Rtc.Collaboration.Presence.PublishSubscribeSession
type LocalOwnerPresence = class
    inherit PublishSubscribeSession
Public Class LocalOwnerPresence
Inherits PublishSubscribeSession
Inheritance
LocalOwnerPresence

Remarks

This is the main class for managing the presence of the endpoint owner. Here, the application can publish presence categories, subscribe to presence notifications, and assign and manage access control lists. Both UserEndpoint and ApplicationEndpoint instances can publish presence, although they do so in different ways. An ApplicationEndpoint cannot use the grammar-based method in which container IDs and instance values are automatically generated. Instead, this endpoint type must explicitly specify these values. Presence categories are well defined types recognized by the server such as state, note, device, contact card etc.

Container management enables an application to add specific URIs, domain names, and network flags to containers, as well as to remove them from containers. These operations permit an application to control subscriber access to presence categories published in these containers. The network flags consist of sameEnterprise, publicCloud, and federated.

Calling BeginSubscribe on a LocalOwnerPresence instance enables an endpoint to receive notifications about changes made to presence categories, container memberships, and subscriber and delegate lists. This is especially useful in an multiple points of presence (MPOP) scenario to keep all endpoints of a unified communications entity synchronized.

Bootstrapping is another process unique to UserEndpoints. Here, the newly created containers can be initialized with default container memberships and publications decided by the Microsoft Lync Server administrator.

Properties

AutomaticPublicationState

Gets the status of automatic presence publication that occurs along with endpoint establish.

CategoryPublicationManifest

Gets the serialized version of the category publication manifest.

ContainerManifest

Gets the serialized version of the container manifest.

CurrentState

Gets the state of the subscription.

(Inherited from PublishSubscribeSession)
IsSubscriptionActive
Obsolete.

Gets whether the session has an active underlying subscription.

(Inherited from PublishSubscribeSession)
SubscriberEndpoint

Gets the endpoint that the subscription belongs to.

(Inherited from PublishSubscribeSession)

Methods

BeginAcknowledgeSubscriber(String, AsyncCallback, Object)

Begins an asynchronous operation to acknowledge a subscriber.

BeginDeletePresence(ICollection<PresenceCategory>, AsyncCallback, Object)

Begins an asynchronous operation to delete the given list of categories.

BeginDeletePresence(ICollection<PresenceCategoryWithMetaData>, AsyncCallback, Object)

Begins an asynchronous operation to delete the given list of categories.

BeginPublishPresence(ICollection<PresenceCategory>, AsyncCallback, Object)

Begins an asynchronous operation to publish a given list of categories.

BeginPublishPresence(ICollection<PresenceCategoryWithMetaData>, AsyncCallback, Object)

Begins an asynchronous operation to publish a given list of categories.

BeginRefresh(AsyncCallback, Object)

Begins an asynchronous operation to refresh the underlying subscription.

(Inherited from PublishSubscribeSession)
BeginSubscribe(AsyncCallback, Object)

Begins an asynchronous operation to subscribe to the presence session.

(Inherited from PublishSubscribeSession)
BeginUnsubscribe(AsyncCallback, Object)

Begins an asynchronous operation to unsubscribe the underlying subscription.

(Inherited from PublishSubscribeSession)
BeginUpdateContainerMembership(ICollection<ContainerUpdateOperation>, AsyncCallback, Object)

Begins an asynchronous operation to update the container memberships.

EndAcknowledgeSubscriber(IAsyncResult)

Ends the asynchronous operation initiated by BeginAcknowledgeSubscriber.

EndDeletePresence(IAsyncResult)

Ends the asynchronous operation initiated by BeginDeletePresence.

EndPublishPresence(IAsyncResult)

Ends the asynchronous operation initiated by BeginPublishPresence.

EndRefresh(IAsyncResult)

Ends the Refresh Operation initiated by BeginRefresh.

(Inherited from PublishSubscribeSession)
EndSubscribe(IAsyncResult)

Ends the Subscribe operation initiated by BeginSubscribe.

(Inherited from PublishSubscribeSession)
EndUnsubscribe(IAsyncResult)

Ends the asynchronous operation started by BeginUnsubscribe method.

(Inherited from PublishSubscribeSession)
EndUpdateContainerMembership(IAsyncResult)

Ends the asynchronous operation initiated by BeginUpdateContainerMembership.

Events

AutomaticPublicationStateChanged

Raised when the state of automatic publications changes.

CategoryNotificationReceived
Obsolete.

Raised when notification for presence categories is received.

ContainerNotificationReceived

Raised when notification for container memberships is received.

DelegateNotificationReceived

Raised when notification for delegates is received.

PresenceNotificationReceived

Raised when notification for presence categories is received.

SubscriberNotificationReceived

Raised when notification for a pending subscriber is received.

SubscriptionStateChange

Raised when there are changes in the underlying subscription state.

(Inherited from PublishSubscribeSession)

Extension Methods

AddPrivacyModeChangedHandler(LocalOwnerPresence, EventHandler<PrivacyModeChangedEventArgs>)
BeginAddUserACE(LocalOwnerPresence, String, Int32, SourceNetwork, AsyncCallback, Object)
BeginDeletePresence(LocalOwnerPresence, ICollection<PresenceCategory>, String, String, AsyncCallback, Object)
BeginDeleteUserACE(LocalOwnerPresence, String, AsyncCallback, Object)
BeginPublishPresence(LocalOwnerPresence, ICollection<PresenceCategory>, String, String, AsyncCallback, Object)
EndAddUserACE(LocalOwnerPresence, IAsyncResult)
EndDeleteUserACE(LocalOwnerPresence, IAsyncResult)
GetAllAcesForUser(LocalOwnerPresence, RealTimeAddress)
GetDefaultRelationshipLevelBasedOnContainerManifest(LocalOwnerPresence, SourceNetwork)
GetPresenceRelationshipLevel(LocalOwnerPresence, RealTimeAddress, SourceNetwork)
RemovePrivacyModeChangedHandler(LocalOwnerPresence, EventHandler<PrivacyModeChangedEventArgs>)

Applies to