Developing Unified Communications Apps

Post on 03-Jan-2016

59 views 2 download

Tags:

description

Developing Unified Communications Apps. Kyle Marsh Principal Program Manager Unified Communications Microsoft Corporation Kyle.Marsh@microsoft.com. Communications Transformation. Network-Driven Communications. 1837. 1876. 1984. 2007. Software-Driven Communications. - PowerPoint PPT Presentation

Transcript of Developing Unified Communications Apps

Developing Unified Communications AppsKyle MarshPrincipal Program ManagerUnified CommunicationsMicrosoft CorporationKyle.Marsh@microsoft.com

Communications Transformation

1837 1876 1984 2007

Opportunity Software Brings

Software-Powered VoIP

Connect to the right people

and information

Click to Communicate

within MS Office and

other applications

Work Together in real-time

from anywhere

Streamlined CommunicationStreamlined CommunicationStreamlined CommunicationStreamlined CommunicationOperational ControlOperational ControlOperational ControlOperational Control

Extensible VoIP FoundationExtensible VoIP FoundationExtensible VoIP FoundationExtensible VoIP Foundation

How Enterprises Are Moving Forward

PBX / IP-PBXPBX / IP-PBXPBX / IP-PBXPBX / IP-PBXLCS / OCSLCS / OCSExchangeExchange

Office Office SystemSystem

LCS / OCSLCS / OCSExchangeExchange

Office Office SystemSystem

ADADADAD

Consistent ExperienceConsistent ExperienceConsistent ExperienceConsistent Experience

Communications PlatformCommunications PlatformValue-Added Feature ServersValue-Added Feature Servers

Communications PlatformCommunications PlatformValue-Added Feature ServersValue-Added Feature Servers

BusinessApps

Smart Unified ClientsSmart Unified ClientsSmart Unified ClientsSmart Unified Clients

Unified Communications

What Should Developers do?

• Contextual Collaborations• Communications Enable your Services and Business

Processes• Extend and Enhance Enterprise Communications

Communications Enable your Services and Business Processes

• Supply services over Unified Communications• Send an alert to a user that they need to call a customer.

Text and/or Voice• Start a conversation with a user when they become available

and have expense reports to approve. Show information from the reports and ask for approvals

• Use the IM Channel to send structured data– Control a PBX– Control an audio conference provider– Shared data and client coordination

Extend and Enhance Enterprise Communications

• Communications Server is the center of Enterprise Communications

• Communications Server Applications– Routing Applications– Authorization – Ethical Walls– Call Center Routing– Content Logging – Filtering/Virus Scanning– Billing– Translation

Contextual Collaboration

• Communicate with the right person at the right time• Your applications are the “Contact List”• Use the Standard Communications Experience via Office

Communicator Automation• Your application can be a first class communications client

– VoIP – 2 party and multiparty– Video – 2 party and multiparty– Drive Conferencing– Instant Messaging– Call Control of a desktop phone

Public Beta

Public Beta

Unified Communications Devices Specification

Interoperability Specification

Communicator Automation• Fastest and Easiest way to

add Communications to your Applications

• Used by Office and SharePoint

• COM control can be access from web pages, VB, .NET, C++

Communicator Automation Tools

• NameCtrl ActiveX that is installed by NameCtrl ActiveX that is installed by Microsoft Office 2003 and 2007 Office systemMicrosoft Office 2003 and 2007 Office system

• Presence Controls from MSDNPresence Controls from MSDN

ShortCuts (Shell Extensions)

tel: Brings up phone view but does not dial

callto: Brings up phone view but does not dial

sip: Bring up Conversation Window. If the user self, email

sips:

If in TLS, Bring up Conversation Window. If the user self, email

In not TLS, dialog box stating high security is required

conf: PSTN Conference Control

im: Conversation Window

Communicator Extensibility

• 2005 Features– Custom Tabs– Session invites– Custom Help menu– Shell extensions– Automation API

• 2007 Features– Highly visible tabs – Extensible conversations– Application Integration (Invocation of collaboration apps)– Contextual conversations– Custom presence states– Contact properties

2007 Extensibility

2007 Custom Presence States

• Support for granular presence states

• Intelligent presence setting from desktop applications– API to set and get these

states

• Admin level control

Browser Based Applications

• DHTML/JavaScript/AJAX• Consistent behavior across IE,

FireFox and Safari• Supports Single Sign On to avoid

user having to re-enter credentials• Call Deflects• No Voice/Video today

Example HTML Controls

Web Based Contextual Communications

Custom Communications Clients

• UCC APIs for Windows based applications– Communicator 2.0 built on UCCP

• AJAX Service for browser based applications– Communicator Web Access build on AJAX Service

• AJAX Service for non-Windows based applications

Custom Communications Clients• Communications Enabled Applications

– Add some communications functionality to applications. – Highly immersive applications

• Helper Applications– Contact Management– Broadcast IM

• Role Agents– Use Presence to front a group

• Full Unified Communications Clients– VoIP, Video, IM, Presence, Custom Presence– Call Center Clients

Custom Communications Client

Unified Communications Enable your Services and Business Processes

• Service adds UC Endpoint functionality– Send/Receive Instant Messages, VoIP, Video– 2-Party and Multi-Party

• UC enabled services require very different scale then client endpoints

– 1,000 of messages a second– 1,000 of endpoints per server

High Scale Communications Endpoint

.NET Applications

• New for 2007 fully managed code assembly

• Enables developers to create highly scalable endpoints for Alerts, Broadcast IM, Query/Response BOTs and large multi-party Instant Messaging

Non-Windows Applications

• AJAX Services built on managed UC Assembly

• Applications can use HTTP GET/POST to access AJAX Service

• Alerts, Query/Response applications possible

OCS 2007, Speech Server

• Used by Exchange 2007 Unified Messaging for messaging and Auto Attendant

• Visual Studio IVR authoring environment

• ASP.NET hosting environment

Unified Communications Enabled Service

Enhance Enterprise Communications• Microsoft Unified Communications is based on

Session Initiation Protocol (SIP) and SIP Instant Message and Presence Leveraging Extensions (SIMPLE) for signaling

• All SIP signaling travels from clients to the Communications Server.

• Applications can intercept and modify or log the SIP/SIMPLE traffic to change the way communications take place

• Applications can also use SIP SDP and knowledge of ICE/RTC/STUN/TURN to effect media (VoIP, Video)

Communications Server Extensibility

• Knowledge of SIP/SIMPLE Required

• Microsoft SIP Processing Language

• .NET Assembly to marshal SIP traffic between processes

• OCS Features Implemented this way:

– 2007 VoIP Call Routing – IM Filter for Links and File

Transfers– Client Filter

Platform Fundamentals

Future Platform Themes

Scalable Extensible Manageable MultimodalService ready

Common Conceptual Framework

ContextualCollaboration

BusinessProcess

Communication

InformationAccess

Customer Care

&Self Service

EnhancedCommunication

&Interoperability

What Should You Do?

Communications Enable Your Services and Business Processes

Alerts, Query/Response BOTs, ChatAlerts, Query/Response BOTs, Chat

Enable Contextual Communications in your applications

Web-based apps, Smart Client apps, other platformsWeb-based apps, Smart Client apps, other platforms

Enhance the collaboration process

Archiving, logging, filtering, connectingArchiving, logging, filtering, connecting