unified communications apis l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Unified Communications APIs PowerPoint Presentation
Download Presentation
Unified Communications APIs

Loading in 2 Seconds...

  share
play fullscreen
1 / 43
nitsa

Unified Communications APIs - PowerPoint PPT Presentation

158 Views
Download Presentation
Unified Communications APIs
An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Unified Communications APIs Beck Philipp Microsoft Innovation CenterRapperswil / HSR

  2. Agenda • UC – not just a word! • APIs and their possibilities • Overview • DeepDive Communicator Automation API • Client API • DeepDive Managed API • Server API • Future • Summary

  3. «Disconnected» Communication • > 60% of business calls are connected to the voicemail system • Gartner Group Report- March 2006- Mathew Cain • 67% of business IM conservations are escalated to voice • MS study Fall 04 • 50% of all outbound calls the number has been searched in Outlook • MS Study w/ Harris Interactive  2006 • The Information Worker gets 51 messages on 7 different devices each day • MS Study w/ Harris Interactive  2006

  4. UC – not just a word! One Identity Work Tel: (207) 555-1000 Tel: (207) 555-1000 Alex Hankin| Contoso, Ltd. Senior Director New York, NY Direct: (207) 555-1112 Direct: (207) 555-1112 Fax: (207) 555-9999 Fax: (207) 555-9999 Mobile: (775) 551-2345 Mobile: (775) 551-2345 Home (208) 555-5656 Home (208) 555-5656 Telex: 781-234 Telex: 781-234 Work E-mail: alexhankin@contoso.com Work E-mail: alexhankin@contoso.com Work IM: alexhankin@contoso.com Work IM: alexhankin@contoso.com Home E-mail: Alex@hotmail.com Home E-mail: Alex@hotmail.com Home IM: Alex@hotmail.com Home IM: Alex@hotmail.com Skype: AlexH Skype: AlexH Alex Hankin Senior DirectorContoso, Ltd. Alex Hankin Senior DirectorContoso, Ltd. Home alexhankin@contoso.com alexhankin@contoso.com alexhankin@contoso.com alexhankin@contoso.com alexhankin@contoso.com alexhankin@contoso.com alexhankin@contoso.com alexhankin@contoso.com alexhankin@contoso.com alexhankin@contoso.com alexhankin@contoso.com alexhankin@contoso.com alexhankin@contoso.com alexhankin@contoso.com alexhankin@contoso.com alexhankin@contoso.com alexhankin@contoso.com alexhankin@contoso.com alexhankin@contoso.com

  5. UC – not just a word! • Single Identity • Single Inbox E-Mail/Calendaring VoIP Inbox Across Devices Conferencing InstantMessaging Across Networks Team Workspaces Product Investment Areas Application Integration • Streamline Communications for End-Users Increase Operational Control Provide Software-Powered Communication Platform

  6. UC – not just a word!Simplify communication Click to Communicate innerhalb der Applikation • Präsenzbasiert, richtige Art, richtige Zeit • Nahtloser Übergang E-Mail, IM, Voice, und Video • Single Inbox für E-Mail/Voice Mail/Fax durch Unified Messaging • Integration in Line of Business Apps durch Presence Information “Anywhere Access” Mobile Devices • Gewohnte Outlook Umgebung auf allen Geräten (Exchange ActiveSync, OWA, OVA) • “VPN-less” Zugriff auf IM, Voice und Konf Video/Web Konferenz • Audio/Video/Web Konferenz aus Office • Zusammenarbeit innerhalb verteilter Teams

  7. UC – not just a word! demo How UC can fit in your day

  8. Microsoft VoiceCon Slide

  9. API Overview

  10. Client Automation API • Build Office Communicator 2007 R2 features into apps via automation • Used to provide Office Communicator 2007 R2 integration in Outlook 2007 • Free download/free distributable • Requires Office Communicator 2007/2007 R2, Office Communications Server 2007 • COM API • Unmanaged resources requires management

  11. Add Presence to a WPF App • XAML : • xmlns:presence="clr-namespace:Microsoft.Samples.Office.UnifiedCommunications.PresenceControls;assembly=WPFMOCPresenceControls„ • <presence:PersonaList x:Name="personaList1" • ShowContextMenu="True" • ShowDisplayName="True" • ShowAvailability="True" • ShowToolTip="True" • ShowDetailedToolTipText="True"/> • C# : • List<string> sipUris = new List<String>() • { • "pbeck@ins.hsr.ch" • }; • personaList1.SipUris = sipUris;

  12. WPF Controls demo

  13. Object Model Overview

  14. What Are the Key Objects, Interfaces and Methods?

  15. What Are the Key Events?

  16. Embedding Click-to-Communicate • Get your list of contacts (> 1 creates conference) • Start the conversation… • StartConversation() • CONVERSATION_TYPE • CONVERSATION_TYPE_IM • CONVERSATION_TYPE_AUDIO • CONVERSATION_TYPE_VIDEO

  17. Start a conversation demo

  18. Application Context Switch • Why do i need to tell my workmate what my problem is? • Context switch is a problem if I have to work on to much things. • Why can not the application do so for me?

  19. Application Context Switch • Use OnIMWindowCreated() compare the hWnds • If the hWnd is not yours, incoming conversation • Get the IM conversation content • IMessengerConversationWndAdvanced::History() • Strategies for “app data” • Regular expressions to match data structure • XML schema • Hide the conversation window and show UI • IMessengerConversationWndAdvanced::Close()

  20. Context Switching demo

  21. UCCA • Unified Communication Client API • Implemented in C++ • Interopperable with .NET • Microsoft.Office.Interop.UccApi • Used to build Attendant Console • You can build your own Communicator • Complex

  22. UCMA • Managed code platform to create communication and collaboration enabled services • Multi Layers of Abstraction: • SIP Abstraction (UCMA 1.0) • OCS Protocols (UCMA 2.0) • Enhanced Presence, Conferencing, Contacts and Groups, Call Control • Multi Modal • High Performance and Scalability • Asynchronous

  23. UCMA • Multimodal & Multiparty Call Management • IM & Audio built-in this version • Extensible for custom modalities • Enhanced Presence Services • Querying, Publishing, and Subscribing • Custom categories • Conference Scheduling • Connection Management • Contact Group Services

  24. Communication Server R2 UCMA Application Architecture Application Thread Pool Your Application Conversation Application Endpoint Conversation Collaboration Platform Conversation Application Endpoint OutgoingConnections UserEndpoint Conversation : IncomingConnections Your Process Microsoft.Rtc.Collaboration.dll Worker Thread Pool

  25. UCMA 2.0 Workflow • Add communication features to Windows Workflow • Supports IM and Speech • Communication control • Business Process Communications • Alerts and notifications • Information Access • Query/Response • New in UC R2 Platform

  26. UCMA 2.0 Workflow • Built on UCMA 2.0 Core SDK and MS Speech • Abstracts a subset of UCMA 2.0 Core SDK functionality • MS Speech provides TTS and ASR • Use UCMA 2.0 Core SDK via Code activity and custom activities to extend UCMA 2.0 WA • Requires .NET 3.5 SP1 • Speech Server Language Pack needed

  27. UCMA 2.0 Workflow Communication Sequence • Provide container for Activities • Provides Scoping for Commands and Communication Events • Provides calls to Communication Activities via CallProvider

  28. UCMA Deployment Requirements • Certificate • Local Port + Firewall • Identity • Does not need to be communications enabled • GRUU • Globally Routable User Agent URI • Created by Administrator, maps to an AD object • SIP Address • x64 on Vista or W2K3

  29. Deploying Your First UCMA App • Step 1: Create Project • Step 2: Create Local Certificate • Step 3: Provision AD Objects • Step 4: Update Project • Step 5: Update Contact (optional…)

  30. Unified Contact Center demo

  31. Server API • Repsonsible for SIP Message handling • Consist of two Parts • Microsoft SIP Programming Language • Managed Code • Routing functions and Filter Scripts can be done • Registers with OCS 2007 Server

  32. MSPL • Microsoft own Script Language • Is capable of looking into SIP Messages for filtering or rerouting • Complex actions need to dispatch MSPL <lc:splScript><![CDATA[ if (sipRequest) { if (sipRequest.Method == StandardMethod.Invite) { Dispatch("NameOfInviteHandlerMethodInApplicationHere"); } else if (sipRequest.Method == StandardMethod.Message) { Dispatch("NameofMessageHandlerMethodInApplicationHere"); } } ]]></lc:splScript>

  33. Server API Managed Code • Used to change SIP message more detailed • Additional Queries or Datasources possible C# Microsoft.Rtc.Sip Namespace ... ServerAgent myScriptOnlyServerAgent = newServerAgent(myAppManifest); ... public void NameOfInviteHandlerMethodInApplicationHere( object sender, RequestReceivedEventArgsrequestEventArgs) { }

  34. SIP Server SDK demo

  35. Future • Office Communicator not more needed for Application Integration • Workflow gets easier to manage • A short Demo of a Microsoft Application

  36. Summary • ISVs are important for Microsoft • Simple und straight forward Presence and Click-to-Call integration • Powerful API for H2M / M2H communication

  37. Resources • MSDN Unified Communications Developer Portal • http://msdn.microsoft.com/uc • Microsoft Office Communications Server 2007 R2 Trial Download • http://www.microsoft.com/downloads/details.aspx?FamilyID=67a3de72-7dbd-4e0b-92a5-29d0b46009a7 • Microsoft Office Communicator 2007 R2 Trial Download • http://www.microsoft.com/downloads/details.aspx?FamilyID=535637af-d92f-41b1-bf0c-54a526a88247 • Microsoft Office Communicator Automation API • http://www.microsoft.com/downloads/details.aspx?FamilyID=ed1cce45-cc22-46e1-bd50-660fe6d2c98c&DisplayLang=en • WPF Presence Controls for Microsoft Office Communicator 2007 - Microsoft Office Communicator 2007 SDK Sample • http://www.microsoft.com/downloads/details.aspx?FamilyID=5001d612-533a-4721-91ea-da990d94ff0f&DisplayLang=en • Microsoft Unified Communications Managed API 2.0 SDK (64-bit) • http://go.microsoft.com/fwlink/?LinkID=139195 • Microsoft Office Communications Server 2007 R2 Resource Kit • http://www.microsoft.com/learning/en/us/Books/13113.aspx • Programming for Unified Communications • http://www.microsoft.com/learning/en/us/Books/12956.aspx • Chris Mayo’s blog • http://blogs.msdn.com/cmayo (API URLs, etc.)

  38. Resources

  39. Your MSDN resourcescheck out these websites, blogs & more! PresentationsTechDays: www.techdays.chMSDN Events: http://www.microsoft.com/switzerland/msdn/de/presentationfinder.mspxMSDN Webcasts: http://www.microsoft.com/switzerland/msdn/de/finder/default.mspx MSDN EventsMSDN Events: http://www.microsoft.com/switzerland/msdn/de/events/default.mspxSave the date: Tech•Ed 2009 Europe, 9-13 November 2009, Berlin MSDN Flash (our by weekly newsletter)Subscribe: http://www.microsoft.com/switzerland/msdn/de/flash.mspx MSDN Team BlogRSS: http://blogs.msdn.com/swiss_dpe_team/Default.aspx Developer User Groups & CommunitiesMobile Devices: http://www.pocketpc.ch/Microsoft Solutions User Group Switzerland: www.msugs.ch.NET Managed User Group of Switzerland: www.dotmugs.chFoxPro User Group Switzerland: www.fugs.ch

  40. Your TechNet resourcescheck out these websites, blogs & more! PresentationsTechDays: www.techdays.ch TechNet EventsTechNet Events: http://technet.microsoft.com/de-ch/bb291010.aspx Save the date: Tech•Ed 2009 Europe, 9-13 November 2009, Berlin TechNet Flash (our by weekly newsletter)Subscribe: http://technet.microsoft.com/de-ch/bb898852.aspx Schweizer IT Professional und TechNet BlogRSS: http://blogs.technet.com/chitpro-de/ IT Professional User Groups & CommunitiesSwissITPro User Group: www.swissitpro.chNT Anwendergruppe Schweiz: www.nt-ag.chPASS (Professional Association for SQL Server): www.sqlpass.ch

  41. Save the date for tech·days nextyear! 7. – 8. April 2010Congress Center Basel

  42. Premium Sponsoring Partners Classic Sponsoring Partners Media Partner