Advanced SIP-Based Solutions Built on the Microsoft Unified Communications Managed API 3.0 & Microsoft Communications Server “14” Albert Kooiman Sr. Product Manager Microsoft Corporation SESSION CODE: UNC401 Stephane Taine Sr. Program Manager Lead Microsoft Corporation
57
Embed
Albert Kooiman Sr. Product Manager Microsoft Corporation SESSION CODE: UNC401 Stephane Taine Sr. Program Manager Lead Microsoft Corporation.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Advanced SIP-Based Solutions Built on the Microsoft Unified Communications Managed API 3.0 & Microsoft Communications Server “14”
Albert KooimanSr. Product ManagerMicrosoft Corporation
SESSION CODE: UNC401
Stephane TaineSr. Program Manager LeadMicrosoft Corporation
UC Managed API
Agenda
UCMA 3.0 – Introduction and what is new
UCMA 3.0 – High Level Overview
Demo: The Voice Companion
Demo: Multi-Channel Customer Service
Key Take-Aways
Unified Communications Managed APIIntroduction
.NET 3.5 SP1 based Multi-layered Managed APIC# basedReduces learning curve and development timeMulti-threaded, highly scalable, robust and highly available
Free Redistribution Licensing Model for Applications
Open and ExtensibleAllows to add or replace ModalitiesWorks with OCS in Multi-channel modeWorks with SIP Gateways in Voice-only mode
4
UC Managed API Block Diagram
IncludesA SIP stackMedia controlSpeech technology
Communications Server Infrastructure
UCMAServer Speech API
SIP/SIMPLE(‘S4’ SIP Stack)
SRTP/Codecs(Media Stacks)
Server SAPI(Speech Engines)
UCMA Core API
Communications and Collaboration Microsoft.Speech
UCMA Workflow API
VoiceXML
5
UC Managed API 3.0Rich and easy to use multi-layered .NET API for Communications
Rich APIEasy to useMulti-layered
6
Platform
Signaling
Communications
Instant Messaging
AudioVideo
Conferencing Conference Management
ConversationCall
Extensibility
Collaboration
Presence Contact Groups
Workflow
Call ControlActivities
DialogActivities
GeneralActivities
Call ControlCommunications
Event Types
DialogCommunications
Event Types
Commands
Erro
r Han
dlin
g
Exce
ption
s
VoiceXMLBrowser
MicrosoftSpeech Recognizer
MicrosoftSpeech Synthesizer
SAPI
Server Speech API
Signaling End Point/ConnectionManagement
Common Basic Classes
Communications Server Infrastructure
InstantMessagingFlow
AppSharingCall
Audio Video Call
AppSharingMcuSession
ConferenceServices
AppSharingFlow
AudioVideoFlow
InstantMessagingMcu
Session
AudioVideoMcuSession
Conference Session
InstantMessagingCall
Recorder
2-Party Call Control Media Flows Devices
Call Control Media Control
CollaborationEndpoint
Conversation
Player
Tone Controller
AppSharingProvider(custom)
IMProvider(built-in)
AvProvider(built-in)
PresencePublishing Services
Multimodal
Media Providers
Contacts Groups
PresenceSubscription
CollaborationPlatform
LocalParticipant (Default)
Single modal
Local Participant
Multiparty Control
Remote Participant(s)
B2BProvider(custom)
Speech Recognizer
Speech Synthesizer
Microsoft Unified Communications Managed API
What is new in version 3.0?
UCMA 3.0 - New Features (1/3)Microsoft Unified Communications Managed API 3.0UCMA 3.0 Goals UCMA 3.0 Features
Enhance Conferencing & Collaboration Features • Introducing the Trusted Conference User model and audio route management
• Enhanced conference scheduling and in-meeting control (conference lobby, PSTN bypass, access level, global announcements, hard/soft mute)
Simplify Presence Object Model • Object Model to publish/subscribe to Presence categories (no need to parse XML)
• Introduction of Presence Views• Helper APIs to simplify the protocol
Drive Better-together story with Microsoft Office Communicator 14 platform
• Selection and launch of custom Silverlight/Web applications running in Office Communicator “14” (command and control) Conversation Window Extension from UCMA 3.0 services
UCMA 3.0 - New Features (2/3)UCMA Improvements
UCMA 3.0 Goals UCMA 3.0 FeaturesBecome an Enterprise-grade Voice platform
• Introduction of a Back-To-Back-User-Agent (B2BUA)• Support for Call Park & Retrieve• DTMF and Speech-enabled User Authentication (one PIN).• Interoperable with the most common IP-PBXs and SIP PSTN
Gateways
Improve Voice Quality • WAN Bandwidth Management• Improved platform monitoring for call establishment, mid-
way call control, and audio quality of experience.• Additional performance Counters for tracking Key Health
Indicators• Support for G.722 codec in addition to SIREN when
connected to AVMCU
Improve human-machine dialogs through Speech
• VoiceXML 2.1 Browser• Automatic Speech Recognition and Speech Synthesis in 26
Languages
UCMA 3.0 - New Features (3/3)Microsoft Unified Communications Managed API 3.0UCMA 3.0 Goals UCMA 3.0 Features
Improve availability (99.9%) and resiliency • Improve Registration & Dialog Resiliency (recovery from Intermediate Hop failures)
• Support Draining and Failover• User Services Availability
Simplify deployment, provisioning, and reduced TCO • Automated activation through Windows PowerShell (in lieu of WMI)
Road Warrior calls his/her‘Voice Assistant’ applicationAuthenticates and now is a trusted user to all servicesStatus of Road Warrior status goes to on the phoneVoice Portal prompts options
14
Uses:• Trusted conferencing user model &
audio route (private audio channel)• UC Workflow Activities• DTMF/Speech User PIN verification• UserEndpoint• Simplified Presence object model (Local
Road Warrior tries to get in touch with a contact from the address book
Contact Presence Status: “Not Available”
Voice Assistant asks if Road Warrior wants to register a call back
Contact comes online
Voice Assistant establishes a call with both parties when available
15
Uses:• Contacts and Groups API• Simplified Presence object model
(RemotePresenceView)• Conferencing API (Audio Dial-Out)
Using the ‘Over-Dial’ Channel Demo Script Overview – Stage 3PersonasRoad WarriorExpertCustomer
Road Warrior wants to add a third party in the call
Road Warrior invokes Voice Companion
Road Warrior enters Customer phone number
Conference call is established with the Customer
16
Personal Mobile Voice Assistant
Demo
Personal Mobile Voice Assistant Demo
Technical Deep Dive
Trusted Conference User model
Conversation
FocusFocus
ConferenceSession
AvCall 1 (for PSTN user1)
AvCall 2(for PSTN user2)
AvMcuAvMcu
*6
*6
PSTN user1
PSTN user2
Mute All (PSTN user1)
blipblip
Establishing multiple calls
Customized MCU routing
Command channel sharing
Subscription sharing
PSTN user2 is muted
Customizing MCU routes
AVMCU
user A
user B
user C
TCU Call
Outgoing Audio Routes from the callRemote Sinks: A, B
Incoming Audio Route to the callRemote Source: C
UCMA and the Contact Center
Introduction
CTI Server
Traditional Contact Center Topology
ACD ServerIVR Server Call Recording Server
Agents Back Office
PBX
PSTN Internet
Web Chat Server
Customer
VoIP GatewayOCS Server
Speech Engines
22
UCMA – A Contact Center Platform for Partners A multi channel platform
Unified Communications Managed API
Match MakerSoftware
IVRCapabilities
ACDCapabilities
Call RecordingCapabilities
ReportingSoftware
Back-endIntegrationSoftware
Agent DesktopIntegrationSoftware
Help Desk Solution
Office Communications Server InfrastructureAgents Back Office
LOBSoftware
Customer
Query/Response Bot Capabilities
PSTN
Internet
Music Player Capabilities
23
Contact Center Demo
Web Chat and Call Back
24
Demo Script Overview
PersonasCustomerAgent1
Customer visits Customer Portal web site and log on
Customer presses Click to Chat Button
Pop-up asks for name and callback number
Web Chat windows activates
UCMA connects the session to the skill based router/ACDCustomer in the queue
UCMA ACD functionality hunts for an agentLooks at Availability and Skill set
Bot echoes data available from the Web page to the agent
Agent1 accepts and connects the Agent1 and Customer
Web Chat (and option for Call Back)
25
Web Chat
Demo
Contact Center Demo
Introduction
IVR, ACD, Music Player
PersonasCustomer (Sean Chai)
Customer dials in, is greeted by an IVR that collects skills required to assist the customerCustomer is put on hold while waiting for the system to find a Customer Service Representative
Demo Script Overview – Stage 1
28
Uses:• Back To Back User agent for anonymization• Trusted conferencing user model & audio route
Agent1 searches an ExpertEnters an Expert-Finder command via IM
UCMA activates the ACD functionalityPuts the request into the required Expert Queue
Agent2 changes Presence state
UCMA bot verifies availability of Agent2
Agent2 accepts the invite
UCMA puts Agent2 in the Conference
UCMA also anonymizes Agent2 to the customer
Demo Script Overview – Stage 5
32
Contact Center / Help Desk Demo
Demo
UCMA Key Architecture Concept - Routing
UCMA Adoption
Communications ServerAVMCUMediation ServerApplication Sharing MCUResponse Group ServicePSTN Conference Dial inCommunicator Web AccessAudio Video Edge Authentication ServiceCall Park Server
Exchange Unified MessagingOutlook Web Access
CustomersExtend Health Emerson Ecologics (Clarity Consulting)Nokia (HCL)TargetWonderwareQuicken Loans50+ customers
Sign-up for http://gotuc.net - a UC Developer SandboxDownload the available SDKsDownload the samples from MSDNVisit CodePlex, MSDN Code GalleryDownload the Virtual Test Drive http://www.microsoft.com/vhd
METRO Early Adopter Program
For Microsoft managed partners and customers
Requires:Committing to build a UC solution Be willing to do co-marketing
UNC-207 – Building CEBP with Microsoft Communications Server ‘14’
UNC-322 – The new Microsoft Communicator ‘14’ SDK
UNC-401 – Microsoft Unified Communications Managed API 3.0
UNC-310 – Exchange Web Services Managed API
UNC09-INT – The new Microsoft Communicator ‘14’ SDK - Chalk Talk
UNC10-INT – Microsoft Unified Communications 3.0 – Chalk Talk
Unified Communications Track Call to Action!
Learn More!View Related Unified Communications (UNC) Content at TechEd/after at TechEd OnlineVisit microsoft.com/communicationsserver for more Communications Server “14” product informationFind additional Communications Server “14” content in the Technical Library, weekly technical articles at NextHop, and follow DrRez on TwitterCheck out Microsoft TechNet resources for Communications Server and Exchange ServerVisit additional Exchange 2010 IT Professional-focused content
Partner Link or Customer Link (Name: ExPro Pword: EHLO!world)
Try It Out!Exchange 2010 SP1 Beta download is now available from the download center!
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.
Microsoft Unified Communications Managed API
High Level API Overview
UC Managed API 3.0 - Communications
Call ManagementBasic Call establishment, transfer, forward, decline, hold APIs
Instant MessagingWith CommunicatorWith Web and mobile custom clients
Audio/VideoWMA File play back, WMA File recordingDTMF controller & recognizerAutomatic Speech Recognition and Speech SynthesisConversation Impersonation
Multimodal Communications
Platform
Signaling
Communications Instant
Messaging AudioVideo
Conferencing Conference Management
ConversationCall
Extensibility
CollaborationPresence Contact
Groups
Workflow
Call ControlActivities
DialogActivities
GeneralActivities
Call ControlCommunications
Event Types
DialogCommunications
Event Types
Commands
Erro
r Han
dlin
gEx
cepti
ons
VoiceXMLBrowser
MicrosoftSpeech Recognizer
MicrosoftSpeech Synthesizer
SAPI
Server Speech API
Signaling End Point/ConnectionManagement
Common Basic Classes
53
UC Managed API 3.0 - Communications
ConferencingSupports Multi-party Communications
Conference Scheduling and ManagementOrganize and modify Conferences Set Attendee / Presenter roles
Extensible & OpenModality-based extensibility Allows to add support for another modalityor replace built-in implementationof an already existing modality
Multi-party capable and extensible to add or replace modalities
Platform
Signaling
Communications Instant
Messaging AudioVideo
Conferencing Conference Management
ConversationCall
Extensibility
CollaborationPresence Contact
Groups
Workflow
Call ControlActivities
DialogActivities
GeneralActivities
Call ControlCommunications
Event Types
DialogCommunications
Event Types
Commands
Erro
r Han
dlin
gEx
cepti
ons
VoiceXMLBrowser
MicrosoftSpeech Recognizer
MicrosoftSpeech Synthesizer
SAPI
Server Speech API
Signaling End Point/ConnectionManagement
Common Basic Classes
54
UC Managed API 3.0 - Collaboration
Presence For UsersPublish Users Presence (State, Contact Card, Note, Device Capability etc)Allows to control who gets to see whatAllows to subscribe for continuous updates on others presenceAllows querying for Presence
Presence For ApplicationsSupport for always appear online
Contact Group Services for Users
Multi-party capable and extensible to add or replace modalities
Platform
Signaling
Communications Instant
Messaging AudioVideo
Conferencing Conference Management
ConversationCall
Extensibility
CollaborationPresence Contact
Groups
Workflow
Call ControlActivities
DialogActivities
GeneralActivities
Call ControlCommunications
Event Types
DialogCommunications
Event Types
Commands
Erro
r Han
dlin
gEx
cepti
ons
VoiceXMLBrowser
MicrosoftSpeech Recognizer
MicrosoftSpeech Synthesizer
SAPI
Server Speech API
Signaling End Point/ConnectionManagement
Common Basic Classes
55
UC Managed API 3.0 - Speech
Managed Server Speech APIIncludes free Microsoft Speech Recognition and Synthesis EnginesIncludes key speech technology toolsSupports W3C standards like SRGS and SSML
Support for VoiceXMLSame VXML Browser as Speech Server (2007)VoiceXML 2.1 compliant
Support for 26 LanguagesFor Command & Control
Includes top-class Speech Technology in 26 languages