asterisk and webrtc - digium 'demo & eggs' presentation slides
DESCRIPTION
Digium 'Demo & Eggs' Breakfast Presentation slides, as shown at WebRTC World III on November 21, 2013. These slides we used in a presentation which also featured a live demo of a WebRTC-enabled Asterisk appliance (based on a Raspberry Pi just for fun) serving a web page that contained the JsSIP soft phone. Audience members were able to connect to our WiFi network and use Chrome or Firefox to browse to this page, and them make a call to each other, to a Digium phone, to hear a message from Allison (THE Voice of Asterisk) or to go into a conference call with each other.TRANSCRIPT
Demo and Eggs:Asterisk and WebRTC
David DuffettWorking with the Worldwide Asterisk Community
Steve SokolIn charge of cool stuff, a law unto himself
2Creative Innovation – Customer Satisfaction – Continual Quality Improvement
Our agenda for today
The big lie about Asterisk
WebRTC and Asterisk
Typical deployment scenarios– Gateway functionality– Media facility
How to create your own FREE WebRTC gateway
Demo components
The actual demo
Recap of the key points
3Creative Innovation – Customer Satisfaction – Continual Quality Improvement
The BIG lies
General:
1. I will love you as much tomorrow morning as I do tonight
2. The check is in the mail
3. I am from HR, and here to help you
About Asterisk:
Asterisk is just an Open Source PBX
4Creative Innovation – Customer Satisfaction – Continual Quality Improvement
About Asterisk
The most popular and established Open Source Communications EngineIN THE WORLD!
Native support for IP telephony, and almost any legacy connection using adaptors (like Digium cards)– PRI– BRI– FXO– FXS
A successful Open Source Project by virtually any measure
5Creative Innovation – Customer Satisfaction – Continual Quality Improvement
About the Asterisk Community
Asterisk is an Open Source project
This means anyone can contribute to the progress of the project– Writing code– Fixing bugs– Test functionality– Writing documentation– Helping others
It also means that Asterisk has been strengthened in many directions by those that had the interest and motivation to do it
6Creative Innovation – Customer Satisfaction – Continual Quality Improvement
What Does Asterisk Do?
Plumbing:
Protocol Implementations
Media I/O
Media Management
Applications
Call Routing (“Dialplan”)
Voicemail
Conference Bridge
Queues
Automated Attendant
Directory
Call Parking
Session Management
Intermediary Services
7Creative Innovation – Customer Satisfaction – Continual Quality Improvement
How Do You Use Asterisk?
As An Application Unit Itself:
Hand-Crafted “One-Off” Implementations
Dialplan Script Programming + Configuration Files
PBX, VoIP Gateway, IVR, ACD, Etc.
As A Tool-Kit / Engine:
Use External Interfaces: AGI, AMI
“Wrap” Asterisk To Manage
Build Custom Applications & Solutions
Create Communications Products
8Creative Innovation – Customer Satisfaction – Continual Quality Improvement
Phones For Asterisk
Digium D40, D50, D70 – Built For Asterisk Systems
Super Simple Provisioning
Discovery via mDNS / Bonjour
Uses SIP channel
Integrated Applications:
Visual Voicemail
Visual Call Parking
Queue Management
Presence / Status
Call Deflection / Direct VM
9Creative Innovation – Customer Satisfaction – Continual Quality Improvement
In Asterisk 11
WebSockets Support For SIP
SIP uses multiple transports: UDP, TCP, TLS and now WS, WSS
New protocol used by web applications for bi-directional, asynchronous communications
Integrated into onboard HTTP server in Asterisk
WebRTC support, including NAT traversal
ICE
STUN
TURN
Support for G.711a/u law
10Creative Innovation – Customer Satisfaction – Continual Quality Improvement
NEW In Asterisk 12
Opus and VP8 support
Pass-through only at this point
Very importantly…
ARI – This is a new RESTful API for app developers to use Asterisk through
11Creative Innovation – Customer Satisfaction – Continual Quality Improvement
Typical deployment scenario
Connectivity to legacy equipment and networks
GATEWAY from WebRTC to
SIP
PRI
FXO/FXS
IAX2
And many, many more!
12Creative Innovation – Customer Satisfaction – Continual Quality Improvement
Typical deployment scenario
Providing the intelligence and comfort…
MEDIA SERVER
Prompts
Tone Detection
Tone Recognition
Recording
Conferencing
Routing
Call data manipulation
13Creative Innovation – Customer Satisfaction – Continual Quality Improvement
Case Study – Instant Solutions
Instant Solutions, Brazil
Product – Instant Voice
10 years - using Asterisk since 1.0
Custom CC ACD solutions, small to large enterprise
200 customers worldwide
Mission critical Applications
Originally tried WebRTC integration by downloading Chrome source code and writing a new channel driver for Asterisk
Moved to Asterisk native WebRTC support to simplify deployments
Instant Voice WebRTC – in production, and deployed!
14Creative Innovation – Customer Satisfaction – Continual Quality Improvement
Case Study – Instant Solutions
Instant Voice WebRTC was showcased atWebRTC World II – remember the BrazilianFootball shirt?
Deployed in a Brazilian comercial Bank
100 Agents using Chrome
Uses WebRTC DATA channel
Uses the data channel - callerID, customer Info, CRM
Queue data and everything in the browser
Before needed 2 apps, but now everything is in the browser!!
15Creative Innovation – Customer Satisfaction – Continual Quality Improvement
Case Study – Instant Solutions
Contact Paulo Mannheimerat Instant to learn more:[email protected]
16Creative Innovation – Customer Satisfaction – Continual Quality Improvement
Your recipe for a FREE WebRTC demo
Get a Linux box
Add ‘libsrtp’
Add Asterisk 11.x.x or 12.x.x Beta
Follow the instructions to enable WebRTC support at:
wiki.asterisk.org
Enable WS,WSS transport
Enable ICE support
Some SIP settings
Add a basic dialplan
IT’S ALMOST TOO EASY!
17Creative Innovation – Customer Satisfaction – Continual Quality Improvement
Now for a WebRTC demo on thethe Raspberry Pi !!
What is the Raspberry Pi?
A small but fully functional ARM based computer that runs Linux
Originally developed to allow young people to start programming at a very low cost ($40 US)
A number of Asterisk implementations, including PBX in a Flash/Incredible Pi by Ward Mundy
18Creative Innovation – Customer Satisfaction – Continual Quality Improvement
More about the Raspberry Pi
19Creative Innovation – Customer Satisfaction – Continual Quality Improvement
This is my Pi
Rasberry Pi – Model B512 Mb RAM
Asterisk 11.4.0DPMA(Digium Phone Module for Asterisk)DHCP serverWiFi Access Point
It’s on the Digium table
20Creative Innovation – Customer Satisfaction – Continual Quality Improvement
Asterisk is running an HTTP server,Serving a JsSIP soft phone
Connect to WiFi network ‘Asterisk_Pi’ or ‘Asterisk_Pi_EXT’
Browse to http://192.168.42.1:8088
Enter credentials into the ‘User’ field:
702, 703, 704
21Creative Innovation – Customer Satisfaction – Continual Quality Improvement
This is what you will see next
22Creative Innovation – Customer Satisfaction – Continual Quality Improvement
Remember to click ‘Allow’
23Creative Innovation – Customer Satisfaction – Continual Quality Improvement
If everything works…
After a short pause, you should hear a special message
From the lovely Allison – THE Voice of Asterisk
24Creative Innovation – Customer Satisfaction – Continual Quality Improvement
Big Thanks to the authors of JsSIP
http://jssip.net
25Creative Innovation – Customer Satisfaction – Continual Quality Improvement
RetroRTC
26Creative Innovation – Customer Satisfaction – Continual Quality Improvement
What questions do you have?
?
27Creative Innovation – Customer Satisfaction – Continual Quality Improvement
Summary
Asterisk is a mature and established Open Source Communications Engine
WebRTC support has been in since Asterisk 11.0.0
Your WebRTC implementation is FREE
Gateway to anything else that Asterisk supports
All the media services you need
For Asterisk-related stuff, ALWAYS THINK DIGIUM
28Creative Innovation – Customer Satisfaction – Continual Quality Improvement
Thanks!www.asterisk.org
@dduffett @digium.com@ssokol @digium.com