Lync Extensibility Enumerations

Use the AutomationModalities and AutomationModalitySettings enumerations in the Microsoft Lync 2010 SDK to specify conversation modes and context types.

Classes and members that relate to extensibility appear in the following sections. For more information about class members, see Lync 2010 API Class Library.

AutomationModalities Enumeration

Use the AutomationModalities enumeration to specify conversation modes.

AutomationModalities enumeration

Description of the specified conversation mode

ApplicationSharing

Conversation shares one of the following: desktop, screen, process, or window.

Audio

Voice conversation.

FileTransfer

File-sharing conversation.

InstantMessage

Instant messaging (IM) conversation.

Video

Video conversation.

AutomationModalitySettings Enumeration

Use the AutomationModalitySettings enumeration as a property bag to specify conversation context types. The BeginStartConversation method expects a set (IEnumerable) of KeyValuePair objects, where the key is the type, specified by AutomationModalitySettings. The following example passes the conversation mode and type to BeginStartConversation. In the next table the Enumeration column lists keys, and the Value column describes the matching values for the keys.

// Create the major API automation objects.
Automation _Automation = LyncClient.GetAutomation();

// Create a generic List object to contain the URI to call.
// Edit this value to provide a valid URI.
List<string> inviteeList = new List<string>();
Dictionary<AutomationModalitySettings,Object> myContextData = new Dictionary<AutomationModalitySettings, Object>();
inviteeList.Add("elise@contoso.com");

// Add a context enumeration and the associated data.
myContextData.Add(AutomationModalitySettings.Subject, "your subject string");

// Start the conversation.
IAsyncResult ar = _Automation.BeginStartConversation(AutomationModalities.Audio, inviteeList, myContextData);

// UI thread blocks until conversation window is opened and call into EndStartConversation is completed.
ConversationWindow myWindow = _Automation.EndStartConversation(ar);

Enumeration

Description of the specified conversation mode

Value

SharedDesktop

Share a desktop.

An integer that specifies the desktop ID.

SharedMonitor

Share a monitor screen.

An integer that specifies the screen ID.

SharedProcess

Share a process.

An integer that specifies the process.

SharedWindow

Share a window.

A HWND that specifies the window handle.

ApplicationData

Share data.

A string that specifies the application data.

ApplicationId

Application ID that is used to start the contextual conversation.

A GUID that specifies the application ID.

ContextualLink

URL shared by the conversation.

A string that specifies the URL.

ToastString

String appearing on the toast.

A string displayed on the custom toast.

DataObjectForFileTransfer

Conversation will pass a file.

An IDataObject that contains the drag-and-drop file object.

FileHistoryLink

History file for the conversation.

A string that specifies the file path.

FileIsShared

Specifies whether the file passed in the conversation is shared.

A Boolean value that specifies whether the file is shared.

FilePathToTransfer

Path to the file shared in the conversation.

A string that specifies the file path.

FirstInstantMessage

Text of the first IM in the conversation.

A string that specifies the message text.

OutlookEntryId

Microsoft Outlook message ID that is shared in the conversation.

A string that specifies the message ID.

PreviousConversation

Previous conversation that is shared in the current conversation.

A string that specifies the message.

SendFirstInstantMessageImmediately

Specifies whether the IM text is sent immediately.

A Boolean value that specifies whether the IM text is sent immediately.

StartConferenceByCallingMeAt

Phone number that is used to start the conference.

A string that specifies the telephone number.

Subject

Subject line for the conversation.

A string that specifies the subject text.

ParentWindow

HWND for the parent window of the conversation window.

An HWND that specifies the window handle.

Pairings Between Modes and Types

The AutomationModalities and AutomationModalitySettings enumerations combine into pairs, and must correspond. A given AutomationModalitySettings may be used with more than one AutomationModalities. The possible pairings appear in the next table.

AutomationModalities enumeration

AutomationModalitySettings enumerations

ApplicationSharing

SharedDesktop, SharedMonitor, SharedProcess, SharedWindow

Audio

StartConferenceByCallingMeAt

FileTransfer

DataObjectForFileTransfer, FileHistoryLink, FileIsShared, FilePathToTransfer

InstantMessaging

ApplicationData, ApplicationId, ContextualLink, FileHistoryLink, FirstInstantMessage, OutlookEntryId, SendFirstInstantMessageImmediately, ToastString

Video

ApplicationData, ApplicationId, ContextualLink, OutlookEntryId, ParentWindow, StartConferenceByCallingMeAt, ToastString Subject

See Also

Other Resources

Lync Extensibility API Programming Elements (Lync 2010 SDK)