UCM305 Embedding Communications with UCMA SDK 1.0 Chris D. Mayo Technical Evangelist

Slides:



Advertisements
Similar presentations
SIP and Instant Messaging. SIP Summit SIP and Instant Messaging What Does Presence Have to Do With SIP? How to Deliver.
Advertisements

Fall VoN 2000 SIP for IP Communications Jonathan Rosenberg Chief Scientist.
Technical Offerings Training, education and opportunities for personal advancement Christopher Kusek - Peters & Associates.
Name | Title | Microsoft Corporation
Security in VoIP Networks Juan C Pelaez Florida Atlantic University Security in VoIP Networks Juan C Pelaez Florida Atlantic University.
Microsoft Office System UK Developers Conference Radisson Edwardian, Heathrow 29 th & 30 th June 2005.
Thomas Kisner.  Unified Communications Architect at BNSF Railway  Board Member, DFW Unified Communications User Group ◦ Meets 4 th Thursday of Every.
Unified. Simplified. Unified Communications Launch 2007.
1 Migrating From LCS 2005 To OCS 2007 Tom Laciano Sr. Program Manager Microsoft UNC352.
BUILDING HYBRID APPS WITH DYNAMICS CRM & WINDOWS AZURE Guy Riddle & George Doubinski Dynamics CRM MVP’s SESSION CODE: DEV-DYN-MID306 (c) 2011 Microsoft.
Nikola Dudar Program Manager Microsoft Corporation Session Code: DTL 311.
CLI319 Windows Vista Application Compatibility Tools and Resources Peg McNicol Product manager, Windows Client Chris Jackson Senior consultant and technical.
System Center Operations Manager 2007 Dave Northey Microsoft Ireland.
UC Security with Microsoft Office Communication Server R1/R2 FRHACK Sept 8, 2009 Abhijeet Hatekar Vulnerability Research Engineer.
Report Management and Creation using Microsoft SQL Server 2008 Reporting Services Chris Testa-O’Neill Database Product Planner Remarc Group.
Microsoft Lync Server платформа для построения контакт-центров Vlad Eminovici Microsoft Corporation.
Using the WDK for Windows Logo and Signature Testing Craig Rowland Program Manager Windows Driver Kits Microsoft Corporation.
WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation.
OFC335 Microsoft Office Word 2007 XML Programmability: True Data/View Separation and Rich Eventing for Custom XML Tristan Davis Program Manager Microsoft.
OFC290 Information Rights Management in Microsoft Office 2003 Lauren Antonoff Group Program Manager.
Integrating NAV 2013R2 and Office 365 Office 365 Single Sign-on NAV as an app NAV online document store.
UCM201 – Unified Communications for Developers: Building Communications Into Your Applications Kirt Debique General Manager, Microsoft Office Communications.
Exchange Deployment Planning Services Exchange 2010 Complementary Products.
Enable every Application to be a Microsoft Unified Communications Endpoint.
Agenda Pattern Authenticate a user against UCWA Operations happen using the user’s identity Interact with the UCWA service endpoint Make HTTP requests.
Welcome. Welcome to this TechNet Event URL for on-line feedback is in your reminder No Planned Fire Drills Please turn your Mobile Phones off To.
Unlocking your CORE CAL with Lync Server 2010 Marc Perez Senior Consultant, Unified Communications Microsoft Corporation.
Patrick Ortiz Global SQL Solution Architect Dell Inc. BIN209.
Dynamic Languages Initiative Silverlight ASP.NET Web Services Summary.
Design To Blend Dale G. Jones Director of Creative Design IdentityMine, Inc.
My Sessions here at Tech Ed Mon, 16:00, TLA201, Auditorium A Tour of Visual Studio 2008 and the.NET Framework 3.5 Tue, 10:45, MED202, Room 113 Building.
DAT316 Implementing Microsoft SQL Server Express Steve Lasker Program Manager Microsoft blogs.msdn.com/SteveLasker.
Group Policy Preferences. Session Objectives And Agenda Group Policy Preferences High level Overview New Extensions details New Concepts Preferences Reporting.
BizTalk Damir Dobric Lead Architect. Agenda Microsoft BizTalk RFID Overview Architecture Application models Implementing Event Handlers Sensors.
Building Complete Web Application Using ASP.NET 3.5 & Visual Studio 2008 Omar Khan Group Program Manager Visual Studio.
TLA404 - MFC Updates for Visual Studio 2008 and Beyond Ale Contenti VC++ Libraries Dev Lead.
Chris Mayo Senior Technical Evangelist, UC Session Code: UNC304.
DES201 - Developers and Designers collaboration Level 200 Aude Mousset Artistic director i-Breed - France Dick Lantim User eXperience Advisor Microsoft.
XSLT ‘Extreme’ TLA327 Dave McMahon MCAD,MCDBA,MVP – Connected Systems Developer.
Building Complete Web Application Using ASP.NET 3.5 & Visual Studio 2008 Omar Khan Group Program Manager Visual Studio.
DAT303 - Entity Framework: Application Patterns Pablo Castro Technical Lead, Microsoft Corporation.
Reporting Services Futures: Report Authoring for Information Workers Ciprian Jichici Microsoft Regional Director for Romania General Manager, Genisoft.
How to be a SharePoint Developer
Developing Hybrid Apps on Microsoft Azure Stack
Microsoft /17/2018 4:24 AM BRK4012 Dive deep on Skype Web SDK & Skype for Business App SDK - Build apps across Web, IOS & Android Srividhya Chandrasekaran Amit.
Microsoft Lync 2010: In the Cloud
Microsoft Connect /2/ :38 AM
Excel Services Deployment and Administration
Overview of Social Computing in Microsoft SharePoint 2010
Integrating Microsoft SharePoint 2010 with Windows Azure
Implementing RESTful Services Using the Microsoft .NET Framework
11/19/2018 © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks.
Developer Patterns to Integrate Silverlight 4.0 with SharePoint 2010
Alan Shen Director Unify Square
11/23/2018 8:30 AM BRK3037 BRK3037: Dive deep on building apps and services with the Office 365 Communications Platform David Newman Senior Program Manager.
TechEd /4/2018 3:19 AM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Learn how to use and customize the Dynamics AX interactive help system
Tech Ed North America /1/ :36 AM Required Slide
TechEd /11/ :54 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered.
Visual Studio 2005 Tools For Office: Creating A Multi-tier Application
Pablo Castro Software Architect Microsoft Corporation
Developing for Windows Azure
Brandon Bray Principal Group Program Manager Microsoft Corporation
The complete developer's guide to the SkyDrive API
Microsoft Virtual Academy
Microsoft Virtual Academy
Office Communications Server 2007 R2 Group Chat
Microsoft Virtual Academy
Microsoft Virtual Academy
Microsoft Virtual Academy
Presentation transcript:

UCM305 Embedding Communications with UCMA SDK 1.0 Chris D. Mayo Technical Evangelist

Session Prerequisites.NET 2.0 Visual Studio 2005 Asynchronous programming Session Initiation Protocol (SIP) (RFC 3261)* Level 300

Session Objectives Learn the common development scenarios for building apps with UCMA 1.0 Learn the key classes in UCMA 1.0 development and their use Demonstrate some common programming tasks for UCMA 1.0 development

Session Agenda What is the UCMA 1.0 SDK? UCMA application architecture Building broadcast IM solutions Building IM Bot solutions Tips and Tricks Summary

What is the UCMA SDK 1.0 Building server side communications UCMA provides a managed code abstraction of SIP communications allowing developers to create communication-enabled solutions for Microsoft ® Office Communications Server 2007 A SIP protocol abstraction layer (SIP stack) to build communication-enabled business processes integrated with Communications Server 2007 A connection management layer to optimize server-to-server communications and take advantage of Communications Server 2007 trusted links permissions (server throttling, treat users as authenticated)

Development Scenarios Building server side communications Alert and IM Broadcast React to change very fast by fanning out alerts in a timely manner to a large number of recipients (members of a distribution group, v-team) Large-Scale Instant Messaging Robots (IM Bots) Query-response bots for information access, business process management Role agent / queue manager to route communications based on business process Role Agents Intercept and intelligently redirect communications for call routing Data Federation Exchange data across companies by taking advantage of the federation capabilities of Communications Server 2007

End to End UCMA Demo Chris D. Mayo Technical Evangelist Microsoft Corp.

UCMA 1.0 Usage in the UC Platform Building server side communications Examples of applications using UCMA 1.0: Microsoft ® Office Communications Server 2007 Mediation Server Audio Video Media Control Unit (MCU) Media Relay Authorization Service (MRAS) Microsoft ® Office Communicator Web Access Microsoft ® Speech Server 2007 Microsoft ® Exchange Unified Messaging SP1 Microsoft ® Web Conference Scheduler

Software Development Kit Requirements Production platform: Windows Server ® 2003 Service Pack 2 (SP2) (Recommended) and Office Communications Server 2007 Development platform: Windows ® XP, Windows Vista ® operating systems Prerequisites: Microsoft ®.NET Framework 2.0 and VS 2005 SP1 Two editions: 32- and 64-bit Each edition contains: Raw binaries: Microsoft.Rtc.Collaboration.dll, SIPEPS.dll Documentation:.chm file Performance counters: S4Perf.dll (native), S4Perf.h Redistributable: Microsoft ® Windows ® Installer (and MSM for ref counting) Samples: Broadcast IM and Interactive Bot SIP protocol tracing utilities: Communications Server 2007 Tracer, Communications Server 2007 Logger

Building a Broadcast IM Solution Putting it all together 1.Create a RealTimeConnectionManager to manage incoming/outgoing connections 2.Create a RealTimeEndpoint to create a routable entity in a SIP network 3.Create a SignalingSession to create a channel for exchanging SIP traffic 4.Use SignalingSession to send messages 5.Terminate the session All signaling is done asynchronously to provide scalability

UCMA Architecture Logical View Communication Server 2007 (SE Pool 1 ) Connection Manager Host,Port,Transport Pool1 2 : : Host,Port,Transport SipEndpoint SipPeerTo PeerEndpoint : Signaling Session Signaling Session Subscription Session Incoming Connections Corporate Local Area Network (LAN) Communication Server 2007 (SE Pool 2 )

Connection Management Manages the SIP stack and provides connection services to endpoints (routing and pooling, etc.) RealTimeConnectionManager RealTimeClientConnectionManager Single endpoint, outgoing connections only, like OC 2007 RealTimeServerConnectionManager Abstract class defines incoming/outgoing connections RealTimeServerTcpConnectionManager RealTimeServerTlsConnectionManager

Connection Management RealTimeServerTcpConnectionManager Listens for incoming TCP connections, less secure RealTimeServerTlsConnectionManager Supports Transport Layer Security where certificates are used to establish trust Mutual TLS listing hosts/domains that are trusted

Creating Endpoints Endpoints are addressable entities, like OC 2007, SIP phone RealTimeEndpoint SipEndPoint Registers with OCS2007 for presence Used with client and server connection managers Supports NTLM and Kerberos authentication Signaling Sessions, Publish/Subscribe SipPeerToPeerEndpoint Peer to peer, without registering with a registration server Used with RealTimeServerConnectionManager No authentication Used for large scale chat, alert messages Signaling Sessions, Page-Mode Messages

Managing Sessions Signaling session provides a channel to invite another endpoint to join session or negotiate media SignalingSession Methods SendMessage() BeginSendMessage()/EndSendMessage Events MessageReceived()

Building a Broadcast IM Solution Putting it all together 1.Create a RealTimeConnectionManager to manage incoming/outgoing connections 2.Create a RealTimeEndpoint to create a routable entity in a SIP network 3.Create a SignalingSession to create a channel for exchanging SIP traffic 4.Use SignalingSession to send messages 5.Terminate the session All signaling is done asynchronously to provide scalability

SignalingSession Alerts BeginParticipate() EndParticipate() BeginSendMessage() EndSendMessage()

Broadcast IM Demo Chris D. Mayo Technical Evangelist Microsoft Corp.

Building IM Bots Register your SipEndpoint with a server so it can receive connections, provide presence Handle the SessionReceived() event on the SipEndpoint to field new sessions Handle MessageReceived() to react to messages from client

IM Bots Demo Chris D. Mayo Technical Evangelist Microsoft Corp.

Summary UCMA 1.0 provides a managed code library SIP abstraction and connection management Use UCMA 1.0 to use communications to provide easy access to information or to remove human latency from business processes Start building broadcast IM, query/response IM Bots and SIP servers today!

Q&A

Resources Technical Communities, Webcasts, Blogs, Chats & User Groups Microsoft Learning and Certification Microsoft Developer Network (MSDN) & TechNet Trial Software and Virtual Labs ult.mspx ult.mspx New, as a pilot for 2007, the Breakout sessions will be available post event, in the TechEd Video Library, via the My Event page of the website Required slide: Please customize this slide with the resources relevant to your session MSDN Library Knowledge Base Forums MSDN Magazine User Groups Newsgroups E-learning Product Evaluations Videos Webcasts V-labs Blogs MVPs Certification Chats learn support connect subscribe Visit MSDN in the ATE Pavilion and get a FREE 180-day trial of MS Visual Studio Team System!

Complete your evaluation on the My Event pages of the website at the CommNet or the Feedback Terminals to win!

© 2007 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.