SlideShare a Scribd company logo
© 2015 IBM Corporation
The Enterprise wants
WebRTC and it needs
Middleware to get it!
Brian Pulito
Email: brian_pulito@us.ibm.com
Twitter: @brianpulito
Linkedin: brianpulito
Why is WebRTC so disruptive?
1
x Eliminates complexity of delivering codecs and streaming protocols
x Closely aligned with HTML 5, programmed via JavaScript
x Support for mobile platforms and web browsers
x Enables real-time data communications in addition to voice and video
x Strong industry support
1
 It contextualizes communications!
What is context relative to WebRTC?
A. Data derived from interactions with a web site?
B. Transactional data stored in a business system?
C. Information derived from streaming analytics?
D. Sensor data from an IoT device?
E. All of the above?
2
Context is being combined with WebRTC to:
• Provide whitelist for who should be communicating
• Provide triggers to initiate real-time interactions
• Provide subject matter for real-time interactions
• Provide real-time feedback on what is being communicated
3
So where’s the context?
Internet Of Things
Mobile & SocialBig Data & Analytics
Systems of Engagement
Systems of Record
DB ERP
CRM HR
4
The way enterprises reach and understand
customers is rapidly evolving
Contact Center
Trillions 2015+
5
Integration needs are continually changing
Systems of Engagement “focus on people, not processes....These
new systems harness a perfect storm of mobile, social, cloud, and
big data innovation to deliver apps and smart products directly in
the context of the daily lives and real-time workflows of customers,
partners, and employees” source Forrester
6
So what are Systems of Engagement?
So what does all this have to do with WebRTC?
Greater
customer
satisfaction
than non-
WebRTC users
202%
Increase in
number of
organizations
deploying or
evaluating
WebRTC today
3x
Businesses
believe WebRTC
has the potential
to improve
Contact Center
Services
9 out of 10
Projected Y-t-Y
Improvement
in Agent
Utilization
rates
28%
53%
Retailers have
systems that
don’t adequately
support cross-
channel activity
on the buying
side
WebRTC Devices
that customers,
partners and
business people
will use to
collaborate
2.3B
Growth potential
for Unified
Communication
ecosystem
integration
14+%
www.aberdeengroup.com Aberdeen Group- March 2015
http://www.webtorials.com/content/2015/07/2015-webrtc-state-of-the-market-report.html,
http://disruptive-analysis.com/webrtc.htm
8
What glues all this together…Middleware!
Systems of Engagement
Systems of Record
Systems of Record
DB ERP
CRM HR
Middleware provides the infrastructure needed to deliver
highly customized and contextualized user experiences
WebRTC Middleware for the Enterprise
What is WebRTC Middleware?
 Enables scalable, secure signaling
 Web and Mobile SDKs for client development
 Gateway for SIP/IMS federation
 SIP Servlets for customization
 Media server control for media processing
 Integration with enterprise security, messaging and APIs
 Development tooling
9
WebRTC Middleware Reference Example
Coturn
Open Source
STUN/TURN Server
Dialogic XMS
Media Server
(Transcoding, Multiway,
Record/Playback)
WebSphere
Liberty
(Rtcomm Gateway, JSR
289 SIP Servlets)
HTML5
Web Browser
JavaScript
Applications
WebRTC SDK
Web/Signaling
Proxy
(HTTP, SIP, WebSockets)
STUN/TURN
Server
Sig Gateway,
App Server.
Message Broker
(SIP Servlets )
Media
Processing Server
DMZ
SIP Services
(Contact Center)
Media + ICE
JSR 309
Internet
Clients
Intranet
Media +
ICE
Media Relay
HTTP/REST
Signaling
HTTP/REST
WebRTC Middleware
10
Signaling
Analytics
Services
Systems of
Record
Enterprise
IMS Core
Microservices
Native WebRTC
Mobile Apps
Hybrid and
Native
Applications
WebRTC SDK
Business Services
Use Case 1: WebRTC Cloud Analytic Solutions
11
A/V
Analysis
Analytics
Mobile
Notifications
Push
Enterprise
Contact Center
Surveillance
Network
SBC/SIP
Gateway
Carrier Network
IMS
Use analytics to provide context:
• Customer insights
• Sentiment analysis
• Video analysis
• Text-to-speech
Real-time A/V
Signaling
APIs
JSR 309
WebRTC Media = Big Data
WebRTC
Middleware
MRF as a service
for transcoding,
mixing, recording….
MPLS
IMS Core
Use Case 2: Business Communications
External company directories
Web based contact centers
Partner Project Spaces
12
Internet
WebRTC
Middleware
signaling
Enterprise IMS core
Enterprise
Contact Center
Systems of Record
Systems of Record
DB ERP
CRM HR
Integration BUS
MRF as a service for
transcoding,
mixing, recording….
media
Team Rooms
Event streaming
WebRTC for Business Processes
media
Business
Network
WebRTC Application Server
• WebRTC Gateway for protocol normalization
• SIP Servlets for federation and convergence
• Media Server Control for media processing (JSR 309)
• Off the shelf services for rapid prototyping
• J2EE for accessing Systems of Record, messaging, etc.
13
WebRTC Gateway
Transport (TCP, SSL, UDP)
SIP Servlets
Baked in WebRTC
Services
Media Server
Control
Converged App
JavaEE 7
(HTTP, JMS, EJBs, etc.)
Converged App Converged App Restcomm
SIP Servlets (JSR 289)
14
“The Session Initiation Protocol (SIP)
is a signaling communications protocol,
widely used for controlling multimedia
communication sessions such as voice
and video calls over Internet Protocol
(IP) networks.” (source: Wikipedia).
SIP App
SIP Servlet 1.1
SIP App SIP App
SIP/HTTP
App
TCP UDP TLS
WebRTC Application Server
SIP Servlets provide:
• A programming model for creating business logic
• A signaling bridge between SIP (calls) and analytics
• Programmable access to media servers
• Federation to PSTN, VoLTE and IMS (both enterprise and CSPs)
Media Server Control API (JSR 309) and Liberty
15
The Media Server Control API is intended to provide multimedia application developers with a
generic Media Server (MS) abstraction interface. It defines both a programming model and an
object model for MS control independent of MS control protocols. (Source: JSR 309 Specification)
Application
MediaGroup
(IVR functions,
record, playback…
Media Servers
Media Mixer
Media composition (JSR 309)
Network Connection
(SDPs)
WebRTC App Server
SIP
MQTT
HTTP
RTP
SRTP
DTLS
ICE
16
Common Media Server Use Cases
Multi-party mixing InterworkingTranscoding
Stream processing Person-to-machineRecording
Source: Dialogic
Enterprise security model
Secure inter server connections using:
Mutual authentication over SSL
17
WebRTC
App Server
Secure client signaling
WebSockets over SSL for encryption
LTPA or oAuth for Authentication
Identity assertion using topic ACLs
WebRTC client WebRTC client
STUN/TURN
Secure Media Streaming
DTLS and SRTP via WebRTC
STUN/ICE/TURN for NAT traversal
Must integrate with existing enterprise security infrastructure
WebRTC
App Server
• WebRTC SDKs should:
• Encapsulate signaling and complexities of WebRTC
• Provide a rich set of APIs for customization
• Support both web and mobile app development
• Easily integrate with rapidly evolving client frameworks
• Support enterprise security models
18
Extending the reach of middleware to the WebRTC
enabled client
WebRTC SDK
HTML5
JS Framework
Applications
JavaScript
Applications
WebRTC
Mobile
Applications
WebRTC
Middleware
 Base WebRTC SDK: hides call signaling and WebRTC complexities
 Framework Specific SDK: pre-built UI widgets for rapid development
WebRTC Client SDKs
19
HTML5
Bootstrap jQuery JS
Frameworks
Base WebRTC
SDK
Web Browser
Framework Specific SDK
JS Framework Applications JavaScript Applications
WebRTC
rtcomm.js – JavaScript client for Rtcomm
• JavaScript library for Real-Time Communications
• JavaScript framework agnostic
• Encapsulates complexities of WebRTC API and signaling
• Includes sample video chat application
Install via bower:
> bower install rtcomm
https://github.com/WASdev/lib.rtcomm.clientjs
20
rtcomm.js
lib.angular-rtcomm – Rtcomm for AngularJS
• AngularJS is a popular JavaScript framework for creating
web and mobile applications.
• Includes UI directives (widgets) for rapid client integration
• Angular Rtcomm Service for creating custom directives
• Angular Controllers for simple configuration of the client
https://github.com/WASdev/lib.angular-rtcomm
Install via bower:
> bower install angular-rtcomm
21
angular-rtcomm
angular-rtcomm landing page: Get started now!
Three options for developers:
1. Test widgets directly on the landing page.
2. Build your own angular applications using
provided backend.
3. Build your own sandbox with Liberty using
provided MQTT broker.
22
http://angular-rtcomm.wasdev.developer.ibm.com
The angular-rtcomm landing page
is an interactive AngularJS web
application for demonstrating the
angular-rtcomm module.
23
Mobile app development with WebRTC
Base WebRTC JS SDK
WebRTC Cordova Plugin
iOS WebRTC Android WebRTC
Framework
specific JS SDK
Other JavaScript
frameworks…
• Supports development of both hybrid and native mobile applications
• Allows for a unified code base for browsers, iOS and Android
Native Code
Cordova Mobile Application Native Application
Base Native WebRTC SDK
Native Application
WebRTC and IoT Open Source
• Rtcomm (web and mobile SDKs built on MQTT):
• www.wasdev.net/webrtc
• angular-rtcomm
• http://angular-rtcomm.wasdev.developer.ibm.com/
• Paho MQTT client
• http://www.eclipse.org/paho/
• Node-RED
• http://nodered.org/
24
WebRTC Middleware Conclusions
• Context is king when it comes to WebRTC
• Systems of Engagement are delivering the context
• These systems are built on enterprise middleware
25
To learn more visit: www.wasdev.net/webrtc
WebRTC solutions need middleware to integrate well
with new and emerging Systems of Engagement!
26

More Related Content

The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Conference session - 2015)

  • 1. © 2015 IBM Corporation The Enterprise wants WebRTC and it needs Middleware to get it! Brian Pulito Email: brian_pulito@us.ibm.com Twitter: @brianpulito Linkedin: brianpulito
  • 2. Why is WebRTC so disruptive? 1 x Eliminates complexity of delivering codecs and streaming protocols x Closely aligned with HTML 5, programmed via JavaScript x Support for mobile platforms and web browsers x Enables real-time data communications in addition to voice and video x Strong industry support 1  It contextualizes communications!
  • 3. What is context relative to WebRTC? A. Data derived from interactions with a web site? B. Transactional data stored in a business system? C. Information derived from streaming analytics? D. Sensor data from an IoT device? E. All of the above? 2 Context is being combined with WebRTC to: • Provide whitelist for who should be communicating • Provide triggers to initiate real-time interactions • Provide subject matter for real-time interactions • Provide real-time feedback on what is being communicated
  • 4. 3 So where’s the context? Internet Of Things Mobile & SocialBig Data & Analytics Systems of Engagement Systems of Record DB ERP CRM HR
  • 5. 4 The way enterprises reach and understand customers is rapidly evolving Contact Center Trillions 2015+
  • 6. 5 Integration needs are continually changing
  • 7. Systems of Engagement “focus on people, not processes....These new systems harness a perfect storm of mobile, social, cloud, and big data innovation to deliver apps and smart products directly in the context of the daily lives and real-time workflows of customers, partners, and employees” source Forrester 6 So what are Systems of Engagement?
  • 8. So what does all this have to do with WebRTC? Greater customer satisfaction than non- WebRTC users 202% Increase in number of organizations deploying or evaluating WebRTC today 3x Businesses believe WebRTC has the potential to improve Contact Center Services 9 out of 10 Projected Y-t-Y Improvement in Agent Utilization rates 28% 53% Retailers have systems that don’t adequately support cross- channel activity on the buying side WebRTC Devices that customers, partners and business people will use to collaborate 2.3B Growth potential for Unified Communication ecosystem integration 14+% www.aberdeengroup.com Aberdeen Group- March 2015 http://www.webtorials.com/content/2015/07/2015-webrtc-state-of-the-market-report.html, http://disruptive-analysis.com/webrtc.htm
  • 9. 8 What glues all this together…Middleware! Systems of Engagement Systems of Record Systems of Record DB ERP CRM HR Middleware provides the infrastructure needed to deliver highly customized and contextualized user experiences
  • 10. WebRTC Middleware for the Enterprise What is WebRTC Middleware?  Enables scalable, secure signaling  Web and Mobile SDKs for client development  Gateway for SIP/IMS federation  SIP Servlets for customization  Media server control for media processing  Integration with enterprise security, messaging and APIs  Development tooling 9
  • 11. WebRTC Middleware Reference Example Coturn Open Source STUN/TURN Server Dialogic XMS Media Server (Transcoding, Multiway, Record/Playback) WebSphere Liberty (Rtcomm Gateway, JSR 289 SIP Servlets) HTML5 Web Browser JavaScript Applications WebRTC SDK Web/Signaling Proxy (HTTP, SIP, WebSockets) STUN/TURN Server Sig Gateway, App Server. Message Broker (SIP Servlets ) Media Processing Server DMZ SIP Services (Contact Center) Media + ICE JSR 309 Internet Clients Intranet Media + ICE Media Relay HTTP/REST Signaling HTTP/REST WebRTC Middleware 10 Signaling Analytics Services Systems of Record Enterprise IMS Core Microservices Native WebRTC Mobile Apps Hybrid and Native Applications WebRTC SDK Business Services
  • 12. Use Case 1: WebRTC Cloud Analytic Solutions 11 A/V Analysis Analytics Mobile Notifications Push Enterprise Contact Center Surveillance Network SBC/SIP Gateway Carrier Network IMS Use analytics to provide context: • Customer insights • Sentiment analysis • Video analysis • Text-to-speech Real-time A/V Signaling APIs JSR 309 WebRTC Media = Big Data WebRTC Middleware MRF as a service for transcoding, mixing, recording…. MPLS IMS Core
  • 13. Use Case 2: Business Communications External company directories Web based contact centers Partner Project Spaces 12 Internet WebRTC Middleware signaling Enterprise IMS core Enterprise Contact Center Systems of Record Systems of Record DB ERP CRM HR Integration BUS MRF as a service for transcoding, mixing, recording…. media Team Rooms Event streaming WebRTC for Business Processes media Business Network
  • 14. WebRTC Application Server • WebRTC Gateway for protocol normalization • SIP Servlets for federation and convergence • Media Server Control for media processing (JSR 309) • Off the shelf services for rapid prototyping • J2EE for accessing Systems of Record, messaging, etc. 13 WebRTC Gateway Transport (TCP, SSL, UDP) SIP Servlets Baked in WebRTC Services Media Server Control Converged App JavaEE 7 (HTTP, JMS, EJBs, etc.) Converged App Converged App Restcomm
  • 15. SIP Servlets (JSR 289) 14 “The Session Initiation Protocol (SIP) is a signaling communications protocol, widely used for controlling multimedia communication sessions such as voice and video calls over Internet Protocol (IP) networks.” (source: Wikipedia). SIP App SIP Servlet 1.1 SIP App SIP App SIP/HTTP App TCP UDP TLS WebRTC Application Server SIP Servlets provide: • A programming model for creating business logic • A signaling bridge between SIP (calls) and analytics • Programmable access to media servers • Federation to PSTN, VoLTE and IMS (both enterprise and CSPs)
  • 16. Media Server Control API (JSR 309) and Liberty 15 The Media Server Control API is intended to provide multimedia application developers with a generic Media Server (MS) abstraction interface. It defines both a programming model and an object model for MS control independent of MS control protocols. (Source: JSR 309 Specification) Application MediaGroup (IVR functions, record, playback… Media Servers Media Mixer Media composition (JSR 309) Network Connection (SDPs) WebRTC App Server SIP MQTT HTTP RTP SRTP DTLS ICE
  • 17. 16 Common Media Server Use Cases Multi-party mixing InterworkingTranscoding Stream processing Person-to-machineRecording Source: Dialogic
  • 18. Enterprise security model Secure inter server connections using: Mutual authentication over SSL 17 WebRTC App Server Secure client signaling WebSockets over SSL for encryption LTPA or oAuth for Authentication Identity assertion using topic ACLs WebRTC client WebRTC client STUN/TURN Secure Media Streaming DTLS and SRTP via WebRTC STUN/ICE/TURN for NAT traversal Must integrate with existing enterprise security infrastructure WebRTC App Server
  • 19. • WebRTC SDKs should: • Encapsulate signaling and complexities of WebRTC • Provide a rich set of APIs for customization • Support both web and mobile app development • Easily integrate with rapidly evolving client frameworks • Support enterprise security models 18 Extending the reach of middleware to the WebRTC enabled client WebRTC SDK HTML5 JS Framework Applications JavaScript Applications WebRTC Mobile Applications WebRTC Middleware
  • 20.  Base WebRTC SDK: hides call signaling and WebRTC complexities  Framework Specific SDK: pre-built UI widgets for rapid development WebRTC Client SDKs 19 HTML5 Bootstrap jQuery JS Frameworks Base WebRTC SDK Web Browser Framework Specific SDK JS Framework Applications JavaScript Applications WebRTC
  • 21. rtcomm.js – JavaScript client for Rtcomm • JavaScript library for Real-Time Communications • JavaScript framework agnostic • Encapsulates complexities of WebRTC API and signaling • Includes sample video chat application Install via bower: > bower install rtcomm https://github.com/WASdev/lib.rtcomm.clientjs 20 rtcomm.js
  • 22. lib.angular-rtcomm – Rtcomm for AngularJS • AngularJS is a popular JavaScript framework for creating web and mobile applications. • Includes UI directives (widgets) for rapid client integration • Angular Rtcomm Service for creating custom directives • Angular Controllers for simple configuration of the client https://github.com/WASdev/lib.angular-rtcomm Install via bower: > bower install angular-rtcomm 21 angular-rtcomm
  • 23. angular-rtcomm landing page: Get started now! Three options for developers: 1. Test widgets directly on the landing page. 2. Build your own angular applications using provided backend. 3. Build your own sandbox with Liberty using provided MQTT broker. 22 http://angular-rtcomm.wasdev.developer.ibm.com The angular-rtcomm landing page is an interactive AngularJS web application for demonstrating the angular-rtcomm module.
  • 24. 23 Mobile app development with WebRTC Base WebRTC JS SDK WebRTC Cordova Plugin iOS WebRTC Android WebRTC Framework specific JS SDK Other JavaScript frameworks… • Supports development of both hybrid and native mobile applications • Allows for a unified code base for browsers, iOS and Android Native Code Cordova Mobile Application Native Application Base Native WebRTC SDK Native Application
  • 25. WebRTC and IoT Open Source • Rtcomm (web and mobile SDKs built on MQTT): • www.wasdev.net/webrtc • angular-rtcomm • http://angular-rtcomm.wasdev.developer.ibm.com/ • Paho MQTT client • http://www.eclipse.org/paho/ • Node-RED • http://nodered.org/ 24
  • 26. WebRTC Middleware Conclusions • Context is king when it comes to WebRTC • Systems of Engagement are delivering the context • These systems are built on enterprise middleware 25 To learn more visit: www.wasdev.net/webrtc WebRTC solutions need middleware to integrate well with new and emerging Systems of Engagement!
  • 27. 26

Editor's Notes

  1. Global IP Solutions
  2. Sources: https://bloggeek.me/wp-content/uploads/2015/06/201506-webrtc-infographic.png Customer sat: www.aberdeengroup.com Aberdeen Group- March 2015 ROIs are not based on If customer uses WebRTC or not but how to integrate WebRTC capabilities within your organization to enhance Agent productivity and improve customer experience management programs Source Reports - Webtorials: 2015 WebRTC State-of-The-Market Report - http://www.webtorials.com/content/2015/07/2015-webrtc-state-of-the-market-report.html, http://disruptive-analysis.com/webrtc.htm
  3. Exec slide
  4. File Name Here.ppt