32
WebRTC Workshop Open discussion on the ecosystem September 2014 Tsahi Levent-Levi

Workshop web rtc implementation details

Embed Size (px)

DESCRIPTION

WebRTC Implementation details

Citation preview

Page 1: Workshop web rtc implementation details

WebRTC Workshop Open discussion on the ecosystem

September 2014

Tsahi

Levent-Levi

Page 2: Workshop web rtc implementation details

About Me

• Too many years in the telecom industry. Mainly VoIP

• Developer, Product Manager, CTO

• Had my share of standardization and patents

• Write about WebRTC and other topics

• Published the WebRTC for Business People report

• Consulting

10/13/2014 2

Tsahi Levent-Levi

[email protected]

@tsahil

Page 3: Workshop web rtc implementation details

WebRTC Workshop - Open discussion on the ecosystem

10/13/2014 3

13:00 Introductions Doug

13:10 What is (and isn't WebRTC) Tsahi

14:00 Standaradization, IETF and WebRTC Victor

14:45 Break

15:00 5 WebRTC Archetypes Tsahi

15:45 The WebRTC Use Cases/Deployments Doug

16:30 Implementation/Architecture Details Tsahi

17:15 Wrap-up Victor

Page 4: Workshop web rtc implementation details

Alternatives

10/13/2014 4

Level of dependency on 3rd parties

Level of

required

experience

in VoIP &

WebRTC

Self

DevelopmentIntegration

of Open

Source

Frameworks Integration

of Commercial

SDKs &

FrameworksEmploying

SaaS

Working

with an

API Platform

Page 5: Workshop web rtc implementation details

Implementation/Architecture Details

1. Go it alone (and what it means)

2. Popular frameworks

3. Popular “SDKs”

4. Services

5. WebRTC API Platforms

10/13/2014 5

Page 6: Workshop web rtc implementation details

Go it alone (and what it means) Implementation/Architecture Details

10/13/2014 6

Page 7: Workshop web rtc implementation details

Client-side

10/13/2014 7

Browser

• Chrome & Firefox

• IE & Safari

Mobile

• Android browsers

• SDKs for apps

• iOS browsers

PC app

• SDKs for PC

Embedded

• Ported SDK

Page 8: Workshop web rtc implementation details

Signaling

• Left for the developers to decide (BYOS)

• Transport • XHR, SSE, …

• WebSocket

• Data Channel

• Protocol • SIP

• XMPP

• Proprietary

10/13/2014 8

Page 9: Workshop web rtc implementation details

STUN & TURN

• Someone needs to deploy them…

• And make sure they work

10/13/2014 9

Page 10: Workshop web rtc implementation details

Server-side Media Processing

• Non-mesh multipoint

• Broadcasting

• Recording

• Analytics

• Interconnecting

• …

10/13/2014 10

Page 11: Workshop web rtc implementation details

Geolocation headaches

• Local call in Paris routed through a TURN server in the US

10/13/2014 11

Page 12: Workshop web rtc implementation details

Is AWS Enough?

10/13/2014 12

Page 13: Workshop web rtc implementation details

Popular frameworks Implementation/Architecture Details

10/13/2014 13

Page 14: Workshop web rtc implementation details

Why Use a Framework?

• WebRTC is a moving target – API changes

– Interoperability across browsers

• Simple, but not enough

• Solving the missing signaling issue

14

Page 15: Workshop web rtc implementation details

PeerJS

• Lightweight

• Node.js backend

• MIT license

• In “beta”

• Who uses PeerJS? – Blippex – search engine – Secretly Meet – collaboration – Nutty – remote terminal – Live.Pics.io – online photo sharing – Pipe – private large file sending on Facebook

15

Page 16: Workshop web rtc implementation details

EasyRTC

• Backed by Priologic

• Node.js backend

• BSD license

• Large install base

• Who uses EasyRTC? – Tawk.com – video conferencing (dogfooding) – Veeting.com – video conferencing – Kobra.io – collaboration between developers

16

Page 17: Workshop web rtc implementation details

SimpleWebRTC

• Built by &yet

• Node.js backend

• MIT license

• Who uses SimpleWebRTC? – Talky.io – video conferencing (dogfooding)

17

Page 18: Workshop web rtc implementation details

Popular “SDKs” Implementation/Architecture Details

10/13/2014 18

Page 20: Workshop web rtc implementation details

SIP…

• PBXs – Asterisk – Freeswitch – Kamailio

• Client-side JS implementations – JSsip – sipML – QoffeeSIP – sip.js

20

Page 21: Workshop web rtc implementation details

Media Servers

• Dialogic PowerMedia XMS – Generic media server

• Medooze – MCU

• Licode – MCU/Streamer

• Flashphoner – Streamer

• Jitsi Video Bridge – Google Hangouts-like experience

• Janus – Generic WebRTC Gateway

• GENBAND SPIDR – SIP-WebRTC Gateway

21

Page 22: Workshop web rtc implementation details

Services Implementation/Architecture Details

10/13/2014 22

Page 23: Workshop web rtc implementation details

Why Use a Service?

• No maintenance involved

• Predictable pricing

• Focus on the use case (=time to market)

• Feature rich on operability

• Various offerings: 1. Signaling

2. NAT traversal

3. Media processing

23

Page 24: Workshop web rtc implementation details

Signaling: PubNub

• Global low latency network that added recently support for WebRTC

• Other options: Pusher, Firebase

24

Page 25: Workshop web rtc implementation details

NAT Traversal

• Offload the headache of deploying TURN servers

• Offer geographical spread of STUN/TURN

25

Page 26: Workshop web rtc implementation details

Media: MCU1

• Virtualized MCU, offered in SaaS

• Interworks with SIP & H.323

• Used by Pexip

26

Page 27: Workshop web rtc implementation details

WebRTC API Platforms Implementation/Architecture Details

10/13/2014 27

Page 28: Workshop web rtc implementation details

Many Platforms Out There…

28

Page 29: Workshop web rtc implementation details

They Are Different

• Feature set

• Size

• Focus

• Stability

• Flexibility

• …

29

Page 30: Workshop web rtc implementation details

List What You Need

• Voice?

• Video?

• Multipoint? – How many users?

– How many passive/active?

– What quality levels are acceptable?

• Recording?

• Connectivity to other networks?

• Collaboration?

• …

30

Page 31: Workshop web rtc implementation details

Parameters to Select By

• Focus

• Feature set

• Deployment options

• APIs & Documentation

• Support

• Self Service

• Business model

• Financial & Legal

31

Page 32: Workshop web rtc implementation details

Thank You!

Tsahi Levent-Levi

http://bloggeek.me

[email protected]

10/13/2014 32