Download presentation
Presentation is loading. Please wait.
Published byLizbeth Morgan Modified over 6 years ago
1
What’s New in the Lync Client SDK 9/8/2018 8:15 AM
© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
2
Session Objectives Recap Lync Client SDK functionality
Overview of new Application Sharing Modalities Future functionality
3
Agenda Overview Lync Client SDK Application Sharing Content Sharing
What’s New in the Lync Client SDK
4
Overview
5
The Lync Client SDK Introduced with Lync 2010 Managed .NET API
Lync controls for WPF and Silverlight Automate Lync client functionality Extend Lync client Develop Persistent Chat applications
6
Building Blocks Lync Controls Automation Lync Managed API WPF
Silverlight Automation Lync Managed API
7
Development Experience
WPF and Silverlight Silverlight No out-of-browser support Internet Explorer only Hosting site must be a trusted site Requires Lync client to be running on the machine Reuses endpoint as a connection to Lync server infrastructure
8
Agenda Overview Lync Client SDK Application Sharing Content Sharing
What’s New in the Lync Client SDK
9
Developing with the Lync Client SDK
10
Lync Controls Drag and drop Lync feature integration Presence
Contact information Contact list Contact search IM and audio click-to-communicate
11
Lync Controls XAML: <lync:PresenceIndicator /> <lync:PresenceIndicator Source="{Binding SipUri}" /> C#: presenceIndicator.Source = var contacts = new List<string>() { }; accountManagers.ItemsSource = contacts;
12
Lync Managed API Managed API for building communications applications
Productivity of IMessenger, but with more features Power of UCC API, but less complex Requires Lync client to be running
13
Lync Managed API – Signing In
// Get handle to running instance of Lync client _lyncClient = Microsoft.Lync.Model.LyncClient.GetClient(); // Sign in to the Lync client _lyncClient.BeginSignIn( userUri, domainAndUserName, password, signInResult => { _lyncClient.EndSignIn(signInResult); }, "Local user signing in" as object);
14
Lync Managed API – Conversations
// Conversation Manager Microsoft.Lync.Model.Conversation.ConversationManager _conversationManager = _lyncClient.ConversationManager; // Conversation Events _conversationManager.ConversationAdded += new EventHandler<ConversationManagerEventArgs> (Conversations_ConversationAdded); void Conversations_ConversationAdded(object sender, ConversationManagerEventArgs e) { … }
15
Contextual Conversations
Launch Link Context Launch applications from Lync conversations Conversation contains a “launch link” Startup parameters are embedded in the context User clicks launch link to open application Application processes startup parameters Application can receive additional context
16
Contextual Conversations
Extensibility Window Context Host Silverlight applications in Lync conversation window Scenarios Call center agent dashboard Conversation translator Can run multiple extensibility applications Can be combined with Launch Link context
17
Contextual Conversations
UI Suppression Hide the Lync client UI Build your own custom communication client Developer is responsible for handling everything
18
Agenda Overview Lync Client SDK Application Sharing Content Sharing
What’s New in the Lync Client SDK
19
Application Sharing
20
Application Sharing and Collaboration
What’s New APIs to support missing modalities from Lync 2010 New Sharing namespace in Microsoft.Lync.Model.Conversation Development experience Select applications to share Start/stop sharing Take/grant control
21
Lync Managed API – Application Sharing
// Acquire the user’s sharing modality _localModality = (ApplicationSharingModality) _conversation.Modalities[ModalityTypes.ApplicationSharing]; // Acquire the remote participant’s sharing modality foreach (Participant p in _conversation.Participants) { if (!p.IsSelf) _remoteModality = (ApplicationSharingModality) p.Modalities[ModalityTypes.ApplicationSharing]; break; }
22
Lync Managed API – Sharing
// Access shareable resources _localModality.ShareableResources // Share a resource if (_localModality.CanInvoke(ModalityAction.Connect)) { _localModality.BeginShareResources(new List<SharingResource>() { resource }, (ar) => try _localModality.EndShareResources(ar); } …
23
Application Sharing and Collaboration
24
Agenda Overview Lync Client SDK Application Sharing Content Sharing
What’s New in the Lync Client SDK
25
Content Sharing
26
Content Sharing What’s New Development experience
APIs to support content sharing modalities for PowerPoint presentations, native files, and whiteboard. New Sharing namespace in Microsoft.Lync.Model.Conversation Development experience Connect to Content Sharing modality Create shareable content Add to content bin Interact with shareable content Interact with Content sharing modality
27
Connect to the Content Sharing Modality
Check if you can connect to the Content Sharing modality Connect to the modality if (((Modality)_conversation.Modalities[ModalityTypes.ContentSharing]) .CanInvoke(ModalityAction.Connect)) ((Modality)_conversation.Modalities[ModalityTypes.ContentSharing]) .BeginConnect((ar) => { .EndConnect(ar); }, null);
28
Creating Shareable Content
The ShareableContentType enum defines types of content that can be shared with users in a conversation: PowerPoint NativeFile Whiteboard Content Sharing modality exposes methods to create shareable content: BeginCreateContent BeginCreateContentFromFile
29
Create PowerPoint Shareable Content
Check if action is available Create shareable content if (((ContentSharingModality)_conversation.Modalities [ModalityTypes.ContentSharing]) .CanInvoke(ModalityAction.CreateShareablePowerPointContent)) conversationSharingModality.BeginCreateContentFromFile( ShareableContentType.PowerPoint, contentTile, powerPointDeckName, false, // include native file callback, conversationSharingModality);
30
Content Bin Content is automatically added to “Content Bin”
Iterate through content Take action on content ActiveContent represents content currently being shared foreach (ShareableContent content in ((ContentSharingModality)_conversation.Modalities [ModalityTypes.ContentSharing]).ContentCollection) { // take action on shareable content }
31
Take Action on Content in the Content Bin
Invoke a ShareableContentAction Remove Present StopPresenting SyncWithPresenter DownloadFile TakeOverAsPresenter SaveAnnotation ClearAllAnnotations Add
32
Interact with Content PowerPoint shareable content type exposes methods to interact with deck: GoForward GoBackwards SyncWithPresenter IsInSyncWithPresenter Users can make annotations to shareable content ClearAllAnnotations SaveAnnotation
33
Interact with the Content Sharing Modality
Share control of shareable content Handle requests for control Accept Decline Grant control Take back control
34
Agenda Overview Lync Client SDK Application Sharing Content Sharing
What’s New in the Lync Client SDK
35
Key takeaways Most APIs remain intact
New application sharing and collaboration functionality New content sharing functionality
36
thank you
37
© 2011 Microsoft Corporation. All rights reserved
© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.