28
Demo and Eggs: Asterisk and WebRTC David Duffett Working with the Worldwide Asterisk Community Steve Sokol In charge of cool stuff, a law unto himself

Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

Embed Size (px)

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.

Citation preview

Page 1: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

Demo and Eggs:Asterisk and WebRTC

David DuffettWorking with the Worldwide Asterisk Community

Steve SokolIn charge of cool stuff, a law unto himself

Page 2: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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

Page 3: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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

Page 4: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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

Page 5: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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

Page 6: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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

Page 7: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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

Page 8: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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

Page 9: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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

Page 10: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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

Page 11: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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!

Page 12: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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

Page 13: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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!

Page 14: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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!!

Page 15: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

15Creative Innovation – Customer Satisfaction – Continual Quality Improvement

Case Study – Instant Solutions

Contact Paulo Mannheimerat Instant to learn more:[email protected]

Page 16: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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!

Page 17: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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

Page 18: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

18Creative Innovation – Customer Satisfaction – Continual Quality Improvement

More about the Raspberry Pi

Page 19: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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

Page 20: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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

Page 21: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

21Creative Innovation – Customer Satisfaction – Continual Quality Improvement

This is what you will see next

Page 22: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

22Creative Innovation – Customer Satisfaction – Continual Quality Improvement

Remember to click ‘Allow’

Page 23: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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

Page 24: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

24Creative Innovation – Customer Satisfaction – Continual Quality Improvement

Big Thanks to the authors of JsSIP

http://jssip.net

Page 25: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

25Creative Innovation – Customer Satisfaction – Continual Quality Improvement

RetroRTC

Page 26: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

26Creative Innovation – Customer Satisfaction – Continual Quality Improvement

What questions do you have?

?

Page 27: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

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

Page 28: Asterisk and WebRTC - Digium 'Demo & Eggs' Presentation Slides

28Creative Innovation – Customer Satisfaction – Continual Quality Improvement

Thanks!www.asterisk.org

@dduffett @digium.com@ssokol @digium.com