enable every application to be a microsoft unified communications endpoint
TRANSCRIPT
![Page 1: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/1.jpg)
![Page 2: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/2.jpg)
Presentation titleSpeaker Name
Session Code
![Page 3: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/3.jpg)
Understanding the Microsoft Lync 2013 Developer Platform: What API to Use and What Is Coming! Albert KooimanMicrosoft
OFC-B344
Ganesh SridharanMicrosoft
![Page 4: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/4.jpg)
The Evolution of LyncCommunications as Software
![Page 5: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/5.jpg)
The Evolution of LyncCommunications as Software
Unified Communications
![Page 6: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/6.jpg)
The Evolution of LyncCommunications as Software
Unified Communications
Enterprise Telephony
![Page 7: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/7.jpg)
The Evolution of LyncCommunications as Software
Unified Communications
Enterprise Communications
![Page 8: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/8.jpg)
The Evolution of LyncCommunications as Software
Unified Communications
Enterprise Communications
Real-time Web
![Page 9: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/9.jpg)
The Evolution of LyncCommunications as Software
Unified Communications
Enterprise Communications
Skype
![Page 10: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/10.jpg)
The Evolution of LyncCommunications as Software
Unified Communications
Enterprise Communications
Universal Communications
![Page 11: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/11.jpg)
Enable every Application to be a Microsoft Unified Communications Endpoint
Our Platform Vision
![Page 12: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/12.jpg)
Lync Managed
API
Lync Mobile Lync Web App
UC Managed APIVoiceXML
Lync Server API
Lync Server
Lync Desktop
SIP
C#
SIP
Lync 2010
ServerClient
C#
![Page 13: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/13.jpg)
Lync Managed
API
Lync Mobile Lync Web App
UC Managed APIVoiceXML
Lync Server API
Lync Server
Lync Desktop
SIP
C#
SIP
Lync 2010
ServerClient
C#Lync Managed API• Embed Presence/Lync in your app• Kiosk Apps (build your own UI)
UCMA• Alerts, Notifications• Bots• Contact Center (ACD, IVR, Recording, etc)• Gateways (ACP, Interop, etc)
Lync Server API• Compliance (ethical walls, etc)• Routing
Lync Managed API• Office integration
UCMA• AV/AS MCU• Mediation Server• Response Groups Service• CAA/CAS/PVA/GVA• Call Park Server• Exchange Unified Messaging
![Page 14: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/14.jpg)
OCObject Model
(OCOM)
UCMAVoiceXML
Lync Server API
Lync Server/Service
Lync Desktop
WPFControls
Silverlight
Controls
Compliance Apps/Scripts
C# API
SPL & C#
SIP
C#
SIP
Speech APICollabSignaling Audio
Lync 2010Lync Managed API• Controls • Object Model
UCMA• Signaling API (Warsaw)• Collab• Audio• Speech
![Page 15: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/15.jpg)
UCWA
Lync Mobile
UCMAVoiceXML
Lync Server API
Lync Server
Lync Desktop
Compliance Apps/Scripts
Media Manager
SPL & C#
SIP
C#
SIP
User API
http
UCWA
Lync 2013UC Web API• User Endpoint API• REST-like• Hypermedia
UC Mobile Platform• Native APIs(Abstracts • Media• UCWA)
Lync Managed API• Added Sharing Modalities
Lync Web App
LWAPlug-in UCWA
Lync Managed
API
![Page 16: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/16.jpg)
1. Uniform InterfaceConsistent resource representationResource identification via URIsWell defined and consistent semantics
2. Hypermedia and late bindingDiscovery of resources via hyper links – like www
3. Layered architectureAggregation at various levels to reduce impact on services
4. Modifiability Backward and forward compatible
5. Simplicity - Aggregation of various disparate services Abstracting complexities of various services (Search, Contacts API is the same whether it is powered by ABS, Exchange or other data stores)Aggregating data across various services (publish “In a Call” when client is invoking an API to make an audio call)
6. Reduce Chattiness7. Mobile first – optimized for battery and data usage
Reduced number of round trips – embedded format, support for batch etc.Tap on the shoulder events
8. Support multi language client developmentJavaScript Object Model for web developersNative Object Models for mobile developersWell defined User Interface Controls
UCWA Design Principles
![Page 17: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/17.jpg)
Reduce Chattiness: IM EscalationSe
arch
Sche
dule
ad-
hoc
conf
eren
ce
Join
Con
fere
nce
Subs
crib
e to
Con
fere
nce
Notifi
catio
ns
Join
MCU
Req
uest
Esta
blish
MCU
Dia
log
Invi
te R
emot
e Pa
rticip
ant
Term
inat
e P2
P Ca
lls
Invi
te T
hird
Use
r
Sear
ch
Add
Parti
cipan
t
Sear
ch
Sche
dule
ad-
hoc
conf
eren
ce
Join
Con
fere
nce
Subs
crib
e to
Con
fere
nce
Notifi
catio
ns
Join
MCU
Req
uest
Esta
blish
MCU
Dia
log
Invi
te R
emot
e Pa
rticip
ant
Term
inat
e P2
P Ca
lls
Invi
te T
hird
Use
r
UCWA
Exchange Server Lync Server Exchange Server Lync Server
1 2 3 4 5 6 7 8 9 1 2
EWS
SIP
![Page 18: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/18.jpg)
UCWA
Lync Mobile Lync Web App
Your Web Appss
UCMAVoiceXML
Lync Server API
Lync Server
Lync Desktop
Compliance Apps/Scripts
UCWA JS OM (jLync)LWA
Plug-in
JavaScript
SPL & C#
SIP
C#
SIP
User API
http
JS UC Controls
Speech APIVideoCollabSignaling Audio
Lync Server Update
Lync Managed
API
UCWA JavaScript Object Model• Uses LWA Plug-in for media
UCWA JavaScript Controls• Predefined UI Controls for easy integration
UCMA integrated Video Support• (stretch goal)
![Page 19: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/19.jpg)
Media
Signaling
Protocols
Video
Audio
ID/Auth
Other
The WebRTC API covers• Protocols• Media
Signaling, Identity and Auth are mostly application implementation specific
In WebRTC there is broad strokes agreement on the protocols and the audio codecs to use
The industry is divided on the video codecs likely leading to both VPx and H.26x support in case interop is required (though H.264 seems to win…)
The WebRTC 1.0 API spec is hotly debated with a long list of un- or underspecified parts and a timeline running well into 2015 before completion
Your App
Browser
Service
Directory
WebRTC API
![Page 20: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/20.jpg)
Media
WebRTC API ID/Auth
Protocols
VideoAudio
Signaling
Other
Media
WebRTC API ID/Auth
Protocols
VideoAudio
Signaling
Other
Most implementations work well today for they are peer to peer via a single website
Your App Your App
![Page 21: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/21.jpg)
Microsoft customers wish to connect WebRTC clients to Lync
Media
WebRTC API ID/Auth
Protocols
VideoAudio
Signaling
Lync Server or Service
Other
Directory
Your App
![Page 22: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/22.jpg)
Most enterprises want to do B2C – client to server/service
Media
WebRTC API ID/Auth
Protocols
VideoAudio
Signaling
Lync Server or Service
Other
Directory
Your App
![Page 23: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/23.jpg)
Microsoft believes the current WebRTC draft standard proposal has serious gaps
Media
WebRTC API ID/Auth
Protocols
VideoAudio
Signaling
Server or Service
Other
Directory
Your App
![Page 24: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/24.jpg)
Microsoft UC Media Plugin
Media
ID/Auth
Protocols
VideoAudio
Microsoft UC Web API JavaScript Object Model
Signaling
Lync Server or Service
Other
UC Managed APILync Server API Directory
Your AppTo enable the key customer B2Cscenarios, Microsoft has invested in• The Microsoft UC Web SDK, with an API,
an object model and controls (a.k.a. jLync)• A Lync compatible media plugin
with support for audio, video and sharingDevelopers can build applications with that SDKwithout needing to bother about underlyingcomplexitiesThe UC Web SDK is complemented by the UC Managed API SDK to enable Contact Center scenarios
![Page 25: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/25.jpg)
Media
WebRTC API ID/Auth
Protocols
VideoAudio
Microsoft UC Web or Mobile Object Models
Signaling
Lync Server or Service
Other
UC Managed API Lync Server API Directory
Your AppThe SDK shields developers from havingto worry about the underlying technology
In theory such app would even be able towork with WebRTC once it ever were to be a standard
![Page 26: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/26.jpg)
Media
WebRTC API based on ORTC ID/Auth
Protocols
VideoAudio
Microsoft UC Web or Mobile Object Models
Signaling
Microsoft UC Services
Other
Directory
Your AppIn that context Microsoft continuesto be actively involved in the standards process
Microsoft recently joined the ORTC W3C Community Working Group
Microsoft sees significant advantages in the ORTC approach
If ORTC would ever be the API of choicefor WebRTC, the same Microsoft UC Web SDKwould also be able to enable apps leveragingORTC
![Page 27: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/27.jpg)
UCWA
Lync Mobile
Your Mobile Apps
Your Web Apps
UCMAVoiceXML
Lync Server API
Lync Server
Lync Desktop
Compliance Apps/Scripts
UCWA JS OMMedia
JavaScript
SPL & C#
SIP
C#
SIP
User API
http
JS UC Controls
Speech APIVideoCollabSignaling Audio
Future Server Release
Lync Managed
API
Lync WebApp
UCWA Mobile OM
UC Controls
Media UCWA UCWA
UCWA Mobile Controls• Predefined UI Controls for easy integration
UCWA Mobile Object Model• Native or Browser Media stack support
![Page 28: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/28.jpg)
UCWA
Lync Mobile
Your Mobile Apps
Your Web Apps
Lync Service
Lync Desktop UCWA JS OMMedia
JavaScript
SIP
C#
SIP
User API
http
JS UC Controls
Speech APIVideoCollabSignaling Audio
Future Service release
Lync Managed
API
Lync WebApp
UCWA Mobile OM
UC Controls
Media UCWA UCWA
Lync Online/Office 365 Support• Predefined UI Controls for easy integration
![Page 29: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/29.jpg)
UCWA
Your Service ApplicationsLync Mobile
Your Mobile Apps
Your Web Appss
Service
Lync Desktop UCWA JS OMMedia
JavaScript
SIP
User API Application API
http
JS UC Controls
Speech APIVideoCollabSignaling Audio
Future Service Release
Lync Managed
API
Lync WebApp
UCWA Mobile OM
UC Controls
Media UCWA UCWA
![Page 30: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/30.jpg)
Communications Enabling Applications
![Page 31: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/31.jpg)
Communications Enabling Applications
Enhance Communications
•“Enhanced Presence”
•“Click to Communicate”
•Communications context
Cut-down Human Latency
•Notifications and Alerts
• Interactive Outbound
•Expert Finder
Customer Self-service
•Web Chat
•Query-Response Bots
• Interactive Voice Response
![Page 32: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/32.jpg)
Demo Time
![Page 33: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/33.jpg)
In Summary
Every application can be an Endpoint!
![Page 34: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/34.jpg)
Questions?
![Page 35: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/35.jpg)
© 2014 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.
![Page 36: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/36.jpg)
![Page 37: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/37.jpg)
ResourcesLearning
Microsoft Certification & Training Resourceswww.microsoft.com/learning
msdnResources for Developers
http://microsoft.com/msdn
TechNetResources for IT Professionals
http://microsoft.com/technet
Sessions on Demandhttp://channel9.msdn.com/Events/TechEd
![Page 38: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/38.jpg)
Complete an evaluation and enter to win!
![Page 39: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/39.jpg)
Evaluate this session
Scan this QR code to evaluate this session.
![Page 40: Enable every Application to be a Microsoft Unified Communications Endpoint](https://reader035.vdocuments.mx/reader035/viewer/2022062523/5a4d1ad47f8b9ab0599725e2/html5/thumbnails/40.jpg)
© 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, 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.