SlideShare uma empresa Scribd logo
1 de 34
Baixar para ler offline
Taking Enterprise Telephony into the Web World
Peter Dunkley, Technical Director, Crocodile RCS Ltd

Email:
Twitter:

peter.dunkley@crocodilertc.net
@pdunkley
Evolution on the web
WebSocket and
WebRTC
implementations
become available

Sir Tim Berners-Lee
creates HTML. Web
-pages are static

W3C produces the
DOM1 specification

1990

Microsoft and Netscape
introduce different
mechanisms for DHTML

1996

1998

2004

2011
Google uses Ajax
in Gmail (W3C
releases 1st draft in
2006) – the dawn
of web-apps
The revolution

Revolution in telecoms
Claude Chappe
invented the optical
telegraph
Alexander
Graham
Bell patents
the telephone

1792

1837 1876

Before today the operators (big and small) had
full control over real-time communications
because it was hard to do and substantial
infrastructure investment was required.

1919 1960s >

1990s >

2011
WebSocket and
WebRTC
implementations
become
available

Rotary dial
enters
service
First commercial
electrical telegraph
created by
Cooke and
Wheatstone

From the 1990s onwards
voice started to be carried
on technologies developed
for data networks such as
ATM and IP

From the 1960s
onwards digital
exchanges start to
appear

1963: DTMF
enters service
Demo #1: Crocodile Scrum
●

Opera and Google Chrome only for now
–

Works on Google Chrome for Android

–

Mozilla Firefox support coming soon

●

Anonymous ad-hoc conferencing

●

Makes use of WebRTC and WebSockets

●

Join the “expo” scrum

http://www.crocodilescrum.com/
What is WebRTC?
There are a number of proprietary implementations that
provide direct interactive rich communication using audio,
video, collaboration, games, etc. between two peers' webbrowsers. These are not interoperable, as they require nonstandard extensions or plugins to work. There is a desire to
standardize the basis for such communication so that
interoperable communication can be established between
any compatible browsers.
Real-Time Communication in WEBBrowsers (rtcweb) 2013-03-13 charter

http://tools.ietf.org/wg/rtcweb/
The mission of the Web Real-Time Communications
Working Group, part of the Ubiquitous Web Applications
Activity, is to define client-side APIs to enable Real-Time
Communications in Web browsers.
These APIs should enable building applications that can be
run inside a browser, requiring no extra downloads or
plugins, that allow communication between parties using
audio, video and supplementary real-time communication,
without having to use intervening servers (unless needed
for firewall traversal, or for providing intermediary services).
Web Real-Time Communications
Working Group Charter

http://www.w3.org/2011/04/webrtc-charter.html
RTCWeb and WebRTC: not the same thing
●

RTCWeb is the on-the-wire protocol as defined by the
IETF and may be used in many applications and
systems
–
–

On network servers

–
●

Within VoIP phones
Includes MTI codecs for audio and video

WebRTC is the browser API as defined by the W3C
The web

Your web
app #3

Your web
app #2

Your web
app #1

...
WebRTC API

RTCWeb
WebRTC C++ API (PeerConnection)
Session management / Abstract signalling (Session)

Voice Engine

Video Engine

Transport

G.711/OPUS Codec

H.264/VP8 Codec

SRTP

NetEQ for voice

Video jitter buffer

Multiplexing

Echo Canceller /
Noise Reduction

Image enhancements

P2P
STUN + TURN + ICE

Audio Capture/Render

Video Capture

Network I/O

Based on the diagram from http://www.webrtc.org/reference/architecture

Your
browser
What does WebRTC provide?
WebRTC has a rich API
●

Media Capture and Streams
–

●

MediaStream Recording
–

●

http://www.w3.org/TR/mediacapture-streams/
http://www.w3.org/TR/mediastream-recording/

WebRTC
–

Data can be exchanged too

–

http://www.w3.org/TR/webrtc/

Available (to varying degrees) in Chrome, Firefox, and Opera
What do these APIs let you do?
●

●

Capture audio and video streams from microphone
and webcam
Exchange the captured audio and video with a peer in
real-time

●

Record local and remote audio and video streams

●

Reliably exchange data with a peer in real-time
The DataChannel
●

The WebRTC DataChannel uses SCTP over DTLS
–
–

●

SCTP means reliable, in-order, frame delivery
DTLS means UDP packets (so the same NAT traversal
mechanisms can be used for audio, video, and data) that are
encrypted

There are already peer-2-peer file-sharing applications
implemented using the WebRTC DataChannel
WebRTC applications
●

●

●

●

WebRTC is not about making phone calls in a browser
– although this is one possible use case
WebRTC allows you to communicate in a contextual
way
A phone call is an activity of its own – but that's not
how humans communicate face to face
A phone call is a disruptive (rude) demanding event
WebRTC is about context
●

Talk to someone while collaborating on a document

●

A better way to access customer services
–
–

●

Already authenticated
Use a web-form instead of an IVR

A truly virtual PBX
–

●

Web-based phone and operator console

Many gaming and entertainment related applications
–

FPS without centralised servers (DataChannel) and where you can see and hear your
opponents

–

Online gambling (for example, poker) where you can see your opponents

–

Online dating, after dinner speaking, and so on

–

It's not necessarily about the real-time audio and video, but they enhance
the experience
You need (some form of)
signalling to use WebRTC
The WebRTC APIs are not enough
●

●

Google made a controversial (but very wise) decision
not to specify how the signalling should work
Signalling is required
–

To discover who to communicate with

–

To exchange information on what the communication should
be (audio, data, video, and codecs)

–

Even the simplest, proprietary, RESTful exchange is signalling
Interoperability is not always required
●

Interoperability may negatively impact the business
case
–

For example:
●

Document collaboration – you want to keep people in your application

●

Online dating – you want to keep people on your site

●

Online gaming – there is no point in different games interoperating
The signalling triangle
Server

li
al
n
ig
S

UA

Si
gn
al

ng

Media

lin

g

UA
Interoperability is sometimes required
●

These are typically ones where the point of the
application is communication
–

For example:
●

Conferencing – calls in and out of legacy networks are required

●

Call Centres – calls in and out of legacy networks are required

●

Virtual PBX – calls in and out of legacy networks are required
The signalling trapezoid

Signalling

lli
n
Si
gn
a

UA

Server

g
lin
al
gn
Si

g

Server

Media

UA
Using WebRTC in the Enterprise
Enterprise use cases are often trapezoid use cases
●

There are many WebRTC opportunities within the enterprise

●

Reduce cap-ex and op-ex by using WebRTC internally
–

●

Improve customer experience by using webRTC externally
–

●

Requires interoperability with customers connecting from legacy networks

Requires interoperability with legacy equipment you already have

Even when WebRTC is used internally and externally
interoperability will be needed
–

Some customers cannot use WebRTC and some customers will not use
WebRTC

–

You will need to handle calls from these customers for many years to
come
Media servers (like Asterisk) are needed
●

Many existing enterprise scenarios will continue to exist in
the WebRTC world
–

Calls will be put on hold (music on hold)

–

Calls will be transferred (music during transfer)

–

Extensions will be unavailable/busy (announcements and
voicemail)

–

Callers may be asked to confirm or enter information (DTMF
collection)

–

Good quality conference calls require proper media mixing
Asterisk is a good choice
●

The WebRTC media profile (RTP/SAVPF) is supported
–

●

Asterisk contains support for SIP
–

●

Existing media server configurations can be put straight
into use with WebRTC
This will be the signalling protocol for many interoperable
WebRTC applications

Asterisk 12 provides the Asterisk REST Interface (ARI)
–

This makes it much easier for web (and web-service)
based applications to interact with the media server
Asterisk in a WebRTC application

Web-Service

ARI

REST
REST
WebRTC
Client

RTP/SAVPF

SIP over WSS

SIP Proxy

SIP over TCP

Record
Bridge
Play
...
WebRTC in the call centre (internal benefits)
●

Minimise cap-ex
–

●

Each station can be an inexpensive computer or notebook
running just a browser (Chrome Book, Linux PC)

Minimise op-ex
–

Upgrades happen seamlessly – the call centre software is in
the browser (not installed on each machine)

–

Some calls will come straight off the web
●
●

More efficient call flow (reducing call times)
Reduced spending on telephony services
WebRTC in the call centre (external benefits)
●

Much better experience for WebRTC ready callers
–

–

Enhanced IVR experience using web-forms to
supplement or replace some voice prompts

–

●

Connect from the web – no need to call (or pay to
call)

Better queuing experience tailored to the caller's
preferences

But don't forget you still need to support the can't and
won't use WebRTC callers
Demo #2: Web Communicator
●

A fully-featured unified communications client

●

Makes use of WebRTC and WebSockets

●

Multiple WebSocket/DataChannel connections for multiple
protocols
–

●

●

MSRP (file-transfer), SIP (session signalling), and XMPP (messaging
and presence)

No need to create a new application for every target platform
Browsers without WebRTC support can still use WebSocket
for file-transfer, messaging, presence, and other data
Questions?

Email:

peter.dunkley@crocodilertc.net

Twitter:

@pdunkley

Mais conteúdo relacionado

Mais procurados

WebRTC on Mobile Devices: Challenges and Opportunities
WebRTC on Mobile Devices: Challenges and OpportunitiesWebRTC on Mobile Devices: Challenges and Opportunities
WebRTC on Mobile Devices: Challenges and OpportunitiesVladimir Beloborodov
 
WebRTC Tutorial by Dean Bubley of Disruptive Analysis & Tim Panton of Westhaw...
WebRTC Tutorial by Dean Bubley of Disruptive Analysis & Tim Panton of Westhaw...WebRTC Tutorial by Dean Bubley of Disruptive Analysis & Tim Panton of Westhaw...
WebRTC Tutorial by Dean Bubley of Disruptive Analysis & Tim Panton of Westhaw...Dean Bubley
 
WebRTC for Telco: Informa's WebRTC Global Summit Preconference
WebRTC for Telco: Informa's WebRTC Global Summit PreconferenceWebRTC for Telco: Informa's WebRTC Global Summit Preconference
WebRTC for Telco: Informa's WebRTC Global Summit PreconferenceTsahi Levent-levi
 
WebRTC: A front-end perspective
WebRTC: A front-end perspectiveWebRTC: A front-end perspective
WebRTC: A front-end perspectiveshwetank
 
WebRTC Business Use Cases | WebRTC Conference & Expo III
WebRTC Business Use Cases  |  WebRTC Conference & Expo IIIWebRTC Business Use Cases  |  WebRTC Conference & Expo III
WebRTC Business Use Cases | WebRTC Conference & Expo IIILawrence Byrd
 
Baby Steps: A WebRTC Tutorial
Baby Steps: A WebRTC TutorialBaby Steps: A WebRTC Tutorial
Baby Steps: A WebRTC TutorialTsahi Levent-levi
 
WebRTC overview
WebRTC overviewWebRTC overview
WebRTC overviewRouyun Pan
 
WebRTC and VoIP: bridging the gap (Kamailio world conference 2013)
WebRTC and VoIP: bridging the gap (Kamailio world conference 2013)WebRTC and VoIP: bridging the gap (Kamailio world conference 2013)
WebRTC and VoIP: bridging the gap (Kamailio world conference 2013)Victor Pascual Ávila
 
WebRTC: Business models and implications for mobile
WebRTC: Business models and implications for mobileWebRTC: Business models and implications for mobile
WebRTC: Business models and implications for mobileHarry Behrens, PhD
 
WebRTC - a quick introduction
WebRTC - a quick introductionWebRTC - a quick introduction
WebRTC - a quick introductionOlle E Johansson
 
Introduction to WebRTC
Introduction to WebRTCIntroduction to WebRTC
Introduction to WebRTCArt Matsak
 
WebRTC: players, business models and implications for telecommunication carriers
WebRTC: players, business models and implications for telecommunication carriersWebRTC: players, business models and implications for telecommunication carriers
WebRTC: players, business models and implications for telecommunication carriersHarry Behrens, PhD
 
WebRTC Check-in (from WebRTC Boston 6)
WebRTC Check-in (from WebRTC Boston 6)WebRTC Check-in (from WebRTC Boston 6)
WebRTC Check-in (from WebRTC Boston 6)Chad Hart
 
Introduction To Webrtc
Introduction To WebrtcIntroduction To Webrtc
Introduction To WebrtcKnoldus Inc.
 

Mais procurados (20)

A jQuery for WebRTC
A jQuery for WebRTCA jQuery for WebRTC
A jQuery for WebRTC
 
WebRTC on Mobile Devices: Challenges and Opportunities
WebRTC on Mobile Devices: Challenges and OpportunitiesWebRTC on Mobile Devices: Challenges and Opportunities
WebRTC on Mobile Devices: Challenges and Opportunities
 
WebRTC Tutorial by Dean Bubley of Disruptive Analysis & Tim Panton of Westhaw...
WebRTC Tutorial by Dean Bubley of Disruptive Analysis & Tim Panton of Westhaw...WebRTC Tutorial by Dean Bubley of Disruptive Analysis & Tim Panton of Westhaw...
WebRTC Tutorial by Dean Bubley of Disruptive Analysis & Tim Panton of Westhaw...
 
WebRTC for Telco: Informa's WebRTC Global Summit Preconference
WebRTC for Telco: Informa's WebRTC Global Summit PreconferenceWebRTC for Telco: Informa's WebRTC Global Summit Preconference
WebRTC for Telco: Informa's WebRTC Global Summit Preconference
 
WebRTC: A front-end perspective
WebRTC: A front-end perspectiveWebRTC: A front-end perspective
WebRTC: A front-end perspective
 
WebRTC Business Use Cases | WebRTC Conference & Expo III
WebRTC Business Use Cases  |  WebRTC Conference & Expo IIIWebRTC Business Use Cases  |  WebRTC Conference & Expo III
WebRTC Business Use Cases | WebRTC Conference & Expo III
 
Baby Steps: A WebRTC Tutorial
Baby Steps: A WebRTC TutorialBaby Steps: A WebRTC Tutorial
Baby Steps: A WebRTC Tutorial
 
WebRTC overview
WebRTC overviewWebRTC overview
WebRTC overview
 
WebRTC and VoIP: bridging the gap (Kamailio world conference 2013)
WebRTC and VoIP: bridging the gap (Kamailio world conference 2013)WebRTC and VoIP: bridging the gap (Kamailio world conference 2013)
WebRTC and VoIP: bridging the gap (Kamailio world conference 2013)
 
Webrtc
WebrtcWebrtc
Webrtc
 
WebRTC on Mobile
WebRTC on MobileWebRTC on Mobile
WebRTC on Mobile
 
WebRTC in the Real World
WebRTC in the Real WorldWebRTC in the Real World
WebRTC in the Real World
 
WebRTC: Business models and implications for mobile
WebRTC: Business models and implications for mobileWebRTC: Business models and implications for mobile
WebRTC: Business models and implications for mobile
 
WebRTC - a quick introduction
WebRTC - a quick introductionWebRTC - a quick introduction
WebRTC - a quick introduction
 
Introduction to WebRTC
Introduction to WebRTCIntroduction to WebRTC
Introduction to WebRTC
 
WebRTC Seminar Report
WebRTC  Seminar ReportWebRTC  Seminar Report
WebRTC Seminar Report
 
WebRTC: players, business models and implications for telecommunication carriers
WebRTC: players, business models and implications for telecommunication carriersWebRTC: players, business models and implications for telecommunication carriers
WebRTC: players, business models and implications for telecommunication carriers
 
WebRTC Check-in (from WebRTC Boston 6)
WebRTC Check-in (from WebRTC Boston 6)WebRTC Check-in (from WebRTC Boston 6)
WebRTC Check-in (from WebRTC Boston 6)
 
Introduction To Webrtc
Introduction To WebrtcIntroduction To Webrtc
Introduction To Webrtc
 
WebRTC - a History Lesson
WebRTC - a History LessonWebRTC - a History Lesson
WebRTC - a History Lesson
 

Destaque

Implementation Lessons using WebRTC in Asterisk
Implementation Lessons using WebRTC in AsteriskImplementation Lessons using WebRTC in Asterisk
Implementation Lessons using WebRTC in AsteriskMoises Silva
 
QueueMetrics Icon Agent Page and Elastix Integration
QueueMetrics Icon Agent Page and Elastix IntegrationQueueMetrics Icon Agent Page and Elastix Integration
QueueMetrics Icon Agent Page and Elastix IntegrationPaloSanto Solutions
 
VOIP Practica 2 - Marzo
VOIP Practica 2 - MarzoVOIP Practica 2 - Marzo
VOIP Practica 2 - MarzoJose Cordova
 
EF - Indice de Libertad Economica 2006
EF - Indice de Libertad Economica 2006EF - Indice de Libertad Economica 2006
EF - Indice de Libertad Economica 2006Jose Cordova
 
Practica 3 Modified
Practica 3 ModifiedPractica 3 Modified
Practica 3 ModifiedJose Cordova
 
VOIP Practica 1 - Marzo
VOIP Practica 1 - MarzoVOIP Practica 1 - Marzo
VOIP Practica 1 - MarzoJose Cordova
 
Practica 1 - VOIP II
Practica 1 - VOIP IIPractica 1 - VOIP II
Practica 1 - VOIP IIJose Cordova
 
Using Asterisk to Create "Her"
Using Asterisk to Create "Her"Using Asterisk to Create "Her"
Using Asterisk to Create "Her"Mojo Lingo
 
MATLAB Examen - Enero
MATLAB Examen - EneroMATLAB Examen - Enero
MATLAB Examen - EneroJose Cordova
 
Practica 2 - VOIP II
Practica 2 - VOIP IIPractica 2 - VOIP II
Practica 2 - VOIP IIJose Cordova
 
MATLAB Febrero - Practica 4
MATLAB Febrero - Practica 4MATLAB Febrero - Practica 4
MATLAB Febrero - Practica 4Jose Cordova
 
MATLAB Febrero - Practica 3
MATLAB Febrero - Practica 3MATLAB Febrero - Practica 3
MATLAB Febrero - Practica 3Jose Cordova
 

Destaque (20)

World Wide SIP
World Wide SIPWorld Wide SIP
World Wide SIP
 
IEEE latincom2012
IEEE latincom2012IEEE latincom2012
IEEE latincom2012
 
Implementation Lessons using WebRTC in Asterisk
Implementation Lessons using WebRTC in AsteriskImplementation Lessons using WebRTC in Asterisk
Implementation Lessons using WebRTC in Asterisk
 
QueueMetrics Icon Agent Page and Elastix Integration
QueueMetrics Icon Agent Page and Elastix IntegrationQueueMetrics Icon Agent Page and Elastix Integration
QueueMetrics Icon Agent Page and Elastix Integration
 
VOIP Practica 2 - Marzo
VOIP Practica 2 - MarzoVOIP Practica 2 - Marzo
VOIP Practica 2 - Marzo
 
EF - Indice de Libertad Economica 2006
EF - Indice de Libertad Economica 2006EF - Indice de Libertad Economica 2006
EF - Indice de Libertad Economica 2006
 
Practica 3 Modified
Practica 3 ModifiedPractica 3 Modified
Practica 3 Modified
 
VOIP Practica 1 - Marzo
VOIP Practica 1 - MarzoVOIP Practica 1 - Marzo
VOIP Practica 1 - Marzo
 
Cohon Gene
Cohon GeneCohon Gene
Cohon Gene
 
Practica 1 - VOIP II
Practica 1 - VOIP IIPractica 1 - VOIP II
Practica 1 - VOIP II
 
Using Asterisk to Create "Her"
Using Asterisk to Create "Her"Using Asterisk to Create "Her"
Using Asterisk to Create "Her"
 
VOIP II
VOIP IIVOIP II
VOIP II
 
MATLAB Examen - Enero
MATLAB Examen - EneroMATLAB Examen - Enero
MATLAB Examen - Enero
 
Practica 2 - VOIP II
Practica 2 - VOIP IIPractica 2 - VOIP II
Practica 2 - VOIP II
 
Practica 8
Practica 8Practica 8
Practica 8
 
Practica 5
Practica 5Practica 5
Practica 5
 
Practica 4
Practica 4Practica 4
Practica 4
 
Practica 6
Practica 6Practica 6
Practica 6
 
MATLAB Febrero - Practica 4
MATLAB Febrero - Practica 4MATLAB Febrero - Practica 4
MATLAB Febrero - Practica 4
 
MATLAB Febrero - Practica 3
MATLAB Febrero - Practica 3MATLAB Febrero - Practica 3
MATLAB Febrero - Practica 3
 

Semelhante a Asterisk World (January 2014) - Taking Enterprise Telephony into the Web World

Webinar WebRTC HTML5 (english)
Webinar WebRTC HTML5 (english)Webinar WebRTC HTML5 (english)
Webinar WebRTC HTML5 (english)Quobis
 
WebSphere Liberty Rtcomm: WebRTC Middleware for the Enterprise
WebSphere Liberty Rtcomm: WebRTC Middleware for the EnterpriseWebSphere Liberty Rtcomm: WebRTC Middleware for the Enterprise
WebSphere Liberty Rtcomm: WebRTC Middleware for the EnterpriseBrian Pulito
 
Workshop web rtc customers and use cases
Workshop web rtc customers and use casesWorkshop web rtc customers and use cases
Workshop web rtc customers and use casesDouglas Tait
 
WebRTC Workshop 2013 given at the IMS World Forum
WebRTC Workshop 2013 given at the IMS World ForumWebRTC Workshop 2013 given at the IMS World Forum
WebRTC Workshop 2013 given at the IMS World ForumAlan Quayle
 
WebRTC for Telcos by Solaiemes
WebRTC for Telcos by SolaiemesWebRTC for Telcos by Solaiemes
WebRTC for Telcos by SolaiemesSolaiemes
 
What is WebRTC and How does it work?
What is WebRTC and How does it work?What is WebRTC and How does it work?
What is WebRTC and How does it work?SandipPatel533958
 
Upperside Webinar- WebRTC from the service provider prism-final
Upperside Webinar- WebRTC from the service provider prism-finalUpperside Webinar- WebRTC from the service provider prism-final
Upperside Webinar- WebRTC from the service provider prism-finalAmir Zmora
 
WebRTC standards update (13 Nov 2013)
WebRTC standards update (13 Nov 2013)WebRTC standards update (13 Nov 2013)
WebRTC standards update (13 Nov 2013)Victor Pascual Ávila
 
Real-time Communications at Internet Speed
Real-time Communications at Internet SpeedReal-time Communications at Internet Speed
Real-time Communications at Internet SpeedBrian Pulito
 
WebRTC - Is it ready? 2013
WebRTC - Is it ready? 2013WebRTC - Is it ready? 2013
WebRTC - Is it ready? 2013Hank Huang
 
Integrate WebRTC Voice / Video Call App Using Contus Fly
Integrate WebRTC Voice / Video Call App Using Contus FlyIntegrate WebRTC Voice / Video Call App Using Contus Fly
Integrate WebRTC Voice / Video Call App Using Contus FlyCONTUS TECH
 
WbeRTC in IOT presented in KrankyGeek
WbeRTC in IOT presented in KrankyGeekWbeRTC in IOT presented in KrankyGeek
WbeRTC in IOT presented in KrankyGeekALTANAI BISHT
 
5 Facts About WebRTC That Everyone Should Know
5 Facts About WebRTC That Everyone Should Know5 Facts About WebRTC That Everyone Should Know
5 Facts About WebRTC That Everyone Should KnowKirti Khanna
 
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...Brian Pulito
 

Semelhante a Asterisk World (January 2014) - Taking Enterprise Telephony into the Web World (20)

DevCon 5 (December 2013) - WebRTC & WebSockets
DevCon 5 (December 2013) - WebRTC & WebSocketsDevCon 5 (December 2013) - WebRTC & WebSockets
DevCon 5 (December 2013) - WebRTC & WebSockets
 
Webinar WebRTC HTML5 (english)
Webinar WebRTC HTML5 (english)Webinar WebRTC HTML5 (english)
Webinar WebRTC HTML5 (english)
 
WebSphere Liberty Rtcomm: WebRTC Middleware for the Enterprise
WebSphere Liberty Rtcomm: WebRTC Middleware for the EnterpriseWebSphere Liberty Rtcomm: WebRTC Middleware for the Enterprise
WebSphere Liberty Rtcomm: WebRTC Middleware for the Enterprise
 
Workshop web rtc customers and use cases
Workshop web rtc customers and use casesWorkshop web rtc customers and use cases
Workshop web rtc customers and use cases
 
WebRTC Workshop 2013 given at the IMS World Forum
WebRTC Workshop 2013 given at the IMS World ForumWebRTC Workshop 2013 given at the IMS World Forum
WebRTC Workshop 2013 given at the IMS World Forum
 
DevCon 5 (July 2013) - WebSockets
DevCon 5 (July 2013) - WebSocketsDevCon 5 (July 2013) - WebSockets
DevCon 5 (July 2013) - WebSockets
 
WebRTC for Telcos by Solaiemes
WebRTC for Telcos by SolaiemesWebRTC for Telcos by Solaiemes
WebRTC for Telcos by Solaiemes
 
What is WebRTC and How does it work?
What is WebRTC and How does it work?What is WebRTC and How does it work?
What is WebRTC and How does it work?
 
Upperside Webinar- WebRTC from the service provider prism-final
Upperside Webinar- WebRTC from the service provider prism-finalUpperside Webinar- WebRTC from the service provider prism-final
Upperside Webinar- WebRTC from the service provider prism-final
 
WebRTC standards update (13 Nov 2013)
WebRTC standards update (13 Nov 2013)WebRTC standards update (13 Nov 2013)
WebRTC standards update (13 Nov 2013)
 
Real-time Communications at Internet Speed
Real-time Communications at Internet SpeedReal-time Communications at Internet Speed
Real-time Communications at Internet Speed
 
Pkewebrtc
PkewebrtcPkewebrtc
Pkewebrtc
 
VozDigital DevFest 31/10/14
VozDigital DevFest 31/10/14VozDigital DevFest 31/10/14
VozDigital DevFest 31/10/14
 
WebRTC - Is it ready? 2013
WebRTC - Is it ready? 2013WebRTC - Is it ready? 2013
WebRTC - Is it ready? 2013
 
C koehncke webinar v2
C koehncke webinar v2C koehncke webinar v2
C koehncke webinar v2
 
Integrate WebRTC Voice / Video Call App Using Contus Fly
Integrate WebRTC Voice / Video Call App Using Contus FlyIntegrate WebRTC Voice / Video Call App Using Contus Fly
Integrate WebRTC Voice / Video Call App Using Contus Fly
 
Webrtc in Real world
Webrtc in Real world Webrtc in Real world
Webrtc in Real world
 
WbeRTC in IOT presented in KrankyGeek
WbeRTC in IOT presented in KrankyGeekWbeRTC in IOT presented in KrankyGeek
WbeRTC in IOT presented in KrankyGeek
 
5 Facts About WebRTC That Everyone Should Know
5 Facts About WebRTC That Everyone Should Know5 Facts About WebRTC That Everyone Should Know
5 Facts About WebRTC That Everyone Should Know
 
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
 

Mais de Crocodile WebRTC SDK and Cloud Signalling Network (8)

WebRTC Conference and Expo (November 2013) - Signalling Workshop
WebRTC Conference and Expo (November 2013)  - Signalling WorkshopWebRTC Conference and Expo (November 2013)  - Signalling Workshop
WebRTC Conference and Expo (November 2013) - Signalling Workshop
 
WebRTC Summit November 2013 - WebRTC Interoperability (and why it is important)
WebRTC Summit November 2013 - WebRTC Interoperability (and why it is important)WebRTC Summit November 2013 - WebRTC Interoperability (and why it is important)
WebRTC Summit November 2013 - WebRTC Interoperability (and why it is important)
 
Astricon 10 (October 2013) - SIP over WebSocket on Kamailio
Astricon 10 (October 2013) - SIP over WebSocket on KamailioAstricon 10 (October 2013) - SIP over WebSocket on Kamailio
Astricon 10 (October 2013) - SIP over WebSocket on Kamailio
 
VUC 24-May-2013 - Crocodile
VUC 24-May-2013 - CrocodileVUC 24-May-2013 - Crocodile
VUC 24-May-2013 - Crocodile
 
ITSPA May 2013 - WebRTC, TURN, and WebSocket
ITSPA May 2013 - WebRTC, TURN, and WebSocketITSPA May 2013 - WebRTC, TURN, and WebSocket
ITSPA May 2013 - WebRTC, TURN, and WebSocket
 
Kamailio World 2013 - SIP and MSRP over WebSocket
Kamailio World 2013 - SIP and MSRP over WebSocketKamailio World 2013 - SIP and MSRP over WebSocket
Kamailio World 2013 - SIP and MSRP over WebSocket
 
FOSDEM 2013 - SIP and MSRP over WebSocket in Kamailio
FOSDEM 2013 - SIP and MSRP over WebSocket in KamailioFOSDEM 2013 - SIP and MSRP over WebSocket in Kamailio
FOSDEM 2013 - SIP and MSRP over WebSocket in Kamailio
 
Crocodile RTC Launch (Google Campus) - 1: Introduction
Crocodile RTC Launch (Google Campus) - 1: IntroductionCrocodile RTC Launch (Google Campus) - 1: Introduction
Crocodile RTC Launch (Google Campus) - 1: Introduction
 

Último

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 

Último (20)

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 

Asterisk World (January 2014) - Taking Enterprise Telephony into the Web World

  • 1.
  • 2. Taking Enterprise Telephony into the Web World Peter Dunkley, Technical Director, Crocodile RCS Ltd Email: Twitter: peter.dunkley@crocodilertc.net @pdunkley
  • 3. Evolution on the web WebSocket and WebRTC implementations become available Sir Tim Berners-Lee creates HTML. Web -pages are static W3C produces the DOM1 specification 1990 Microsoft and Netscape introduce different mechanisms for DHTML 1996 1998 2004 2011 Google uses Ajax in Gmail (W3C releases 1st draft in 2006) – the dawn of web-apps
  • 4. The revolution Revolution in telecoms Claude Chappe invented the optical telegraph Alexander Graham Bell patents the telephone 1792 1837 1876 Before today the operators (big and small) had full control over real-time communications because it was hard to do and substantial infrastructure investment was required. 1919 1960s > 1990s > 2011 WebSocket and WebRTC implementations become available Rotary dial enters service First commercial electrical telegraph created by Cooke and Wheatstone From the 1990s onwards voice started to be carried on technologies developed for data networks such as ATM and IP From the 1960s onwards digital exchanges start to appear 1963: DTMF enters service
  • 5. Demo #1: Crocodile Scrum ● Opera and Google Chrome only for now – Works on Google Chrome for Android – Mozilla Firefox support coming soon ● Anonymous ad-hoc conferencing ● Makes use of WebRTC and WebSockets ● Join the “expo” scrum http://www.crocodilescrum.com/
  • 6.
  • 8. There are a number of proprietary implementations that provide direct interactive rich communication using audio, video, collaboration, games, etc. between two peers' webbrowsers. These are not interoperable, as they require nonstandard extensions or plugins to work. There is a desire to standardize the basis for such communication so that interoperable communication can be established between any compatible browsers. Real-Time Communication in WEBBrowsers (rtcweb) 2013-03-13 charter http://tools.ietf.org/wg/rtcweb/
  • 9. The mission of the Web Real-Time Communications Working Group, part of the Ubiquitous Web Applications Activity, is to define client-side APIs to enable Real-Time Communications in Web browsers. These APIs should enable building applications that can be run inside a browser, requiring no extra downloads or plugins, that allow communication between parties using audio, video and supplementary real-time communication, without having to use intervening servers (unless needed for firewall traversal, or for providing intermediary services). Web Real-Time Communications Working Group Charter http://www.w3.org/2011/04/webrtc-charter.html
  • 10. RTCWeb and WebRTC: not the same thing ● RTCWeb is the on-the-wire protocol as defined by the IETF and may be used in many applications and systems – – On network servers – ● Within VoIP phones Includes MTI codecs for audio and video WebRTC is the browser API as defined by the W3C
  • 11. The web Your web app #3 Your web app #2 Your web app #1 ... WebRTC API RTCWeb WebRTC C++ API (PeerConnection) Session management / Abstract signalling (Session) Voice Engine Video Engine Transport G.711/OPUS Codec H.264/VP8 Codec SRTP NetEQ for voice Video jitter buffer Multiplexing Echo Canceller / Noise Reduction Image enhancements P2P STUN + TURN + ICE Audio Capture/Render Video Capture Network I/O Based on the diagram from http://www.webrtc.org/reference/architecture Your browser
  • 12. What does WebRTC provide?
  • 13. WebRTC has a rich API ● Media Capture and Streams – ● MediaStream Recording – ● http://www.w3.org/TR/mediacapture-streams/ http://www.w3.org/TR/mediastream-recording/ WebRTC – Data can be exchanged too – http://www.w3.org/TR/webrtc/ Available (to varying degrees) in Chrome, Firefox, and Opera
  • 14. What do these APIs let you do? ● ● Capture audio and video streams from microphone and webcam Exchange the captured audio and video with a peer in real-time ● Record local and remote audio and video streams ● Reliably exchange data with a peer in real-time
  • 15. The DataChannel ● The WebRTC DataChannel uses SCTP over DTLS – – ● SCTP means reliable, in-order, frame delivery DTLS means UDP packets (so the same NAT traversal mechanisms can be used for audio, video, and data) that are encrypted There are already peer-2-peer file-sharing applications implemented using the WebRTC DataChannel
  • 16. WebRTC applications ● ● ● ● WebRTC is not about making phone calls in a browser – although this is one possible use case WebRTC allows you to communicate in a contextual way A phone call is an activity of its own – but that's not how humans communicate face to face A phone call is a disruptive (rude) demanding event
  • 17. WebRTC is about context ● Talk to someone while collaborating on a document ● A better way to access customer services – – ● Already authenticated Use a web-form instead of an IVR A truly virtual PBX – ● Web-based phone and operator console Many gaming and entertainment related applications – FPS without centralised servers (DataChannel) and where you can see and hear your opponents – Online gambling (for example, poker) where you can see your opponents – Online dating, after dinner speaking, and so on – It's not necessarily about the real-time audio and video, but they enhance the experience
  • 18. You need (some form of) signalling to use WebRTC
  • 19. The WebRTC APIs are not enough ● ● Google made a controversial (but very wise) decision not to specify how the signalling should work Signalling is required – To discover who to communicate with – To exchange information on what the communication should be (audio, data, video, and codecs) – Even the simplest, proprietary, RESTful exchange is signalling
  • 20. Interoperability is not always required ● Interoperability may negatively impact the business case – For example: ● Document collaboration – you want to keep people in your application ● Online dating – you want to keep people on your site ● Online gaming – there is no point in different games interoperating
  • 22. Interoperability is sometimes required ● These are typically ones where the point of the application is communication – For example: ● Conferencing – calls in and out of legacy networks are required ● Call Centres – calls in and out of legacy networks are required ● Virtual PBX – calls in and out of legacy networks are required
  • 24. Using WebRTC in the Enterprise
  • 25. Enterprise use cases are often trapezoid use cases ● There are many WebRTC opportunities within the enterprise ● Reduce cap-ex and op-ex by using WebRTC internally – ● Improve customer experience by using webRTC externally – ● Requires interoperability with customers connecting from legacy networks Requires interoperability with legacy equipment you already have Even when WebRTC is used internally and externally interoperability will be needed – Some customers cannot use WebRTC and some customers will not use WebRTC – You will need to handle calls from these customers for many years to come
  • 26. Media servers (like Asterisk) are needed ● Many existing enterprise scenarios will continue to exist in the WebRTC world – Calls will be put on hold (music on hold) – Calls will be transferred (music during transfer) – Extensions will be unavailable/busy (announcements and voicemail) – Callers may be asked to confirm or enter information (DTMF collection) – Good quality conference calls require proper media mixing
  • 27. Asterisk is a good choice ● The WebRTC media profile (RTP/SAVPF) is supported – ● Asterisk contains support for SIP – ● Existing media server configurations can be put straight into use with WebRTC This will be the signalling protocol for many interoperable WebRTC applications Asterisk 12 provides the Asterisk REST Interface (ARI) – This makes it much easier for web (and web-service) based applications to interact with the media server
  • 28. Asterisk in a WebRTC application Web-Service ARI REST REST WebRTC Client RTP/SAVPF SIP over WSS SIP Proxy SIP over TCP Record Bridge Play ...
  • 29. WebRTC in the call centre (internal benefits) ● Minimise cap-ex – ● Each station can be an inexpensive computer or notebook running just a browser (Chrome Book, Linux PC) Minimise op-ex – Upgrades happen seamlessly – the call centre software is in the browser (not installed on each machine) – Some calls will come straight off the web ● ● More efficient call flow (reducing call times) Reduced spending on telephony services
  • 30. WebRTC in the call centre (external benefits) ● Much better experience for WebRTC ready callers – – Enhanced IVR experience using web-forms to supplement or replace some voice prompts – ● Connect from the web – no need to call (or pay to call) Better queuing experience tailored to the caller's preferences But don't forget you still need to support the can't and won't use WebRTC callers
  • 31. Demo #2: Web Communicator ● A fully-featured unified communications client ● Makes use of WebRTC and WebSockets ● Multiple WebSocket/DataChannel connections for multiple protocols – ● ● MSRP (file-transfer), SIP (session signalling), and XMPP (messaging and presence) No need to create a new application for every target platform Browsers without WebRTC support can still use WebSocket for file-transfer, messaging, presence, and other data
  • 32.
  • 33.