35
The year of the peer-to-peer web @serrynaimo

The year of the peer-to-peer web

Embed Size (px)

Citation preview

Page 1: The year of the peer-to-peer web

The year of the peer-to-peer web@serrynaimo

Page 2: The year of the peer-to-peer web

is a web dev for 17 years lives in Singapore loves great UX organizes JSConf.Asia and CSSConf.Asia mentors at SEA’s first startup accelerator JFDI helps developers use WebRTC

Thomas

@serrynaimo

Page 3: The year of the peer-to-peer web

A set of JavaScript APIs in the browser to enable

peer-to-peer, real-time media and data exchange

WebRTC

@serrynaimo

Page 4: The year of the peer-to-peer web

WebRTC

getUserMedia RTCPeerConnection RTCDataChannel

consists of

@serrynaimo

Page 5: The year of the peer-to-peer web

Internet Communication

@serrynaimo

Page 6: The year of the peer-to-peer web

Usual web communication

@serrynaimo

Page 7: The year of the peer-to-peer web

Peer-to-peer mesh

@serrynaimo

Page 8: The year of the peer-to-peer web

WebRTC and Signaling

Known party

A B

ICE

@serrynaimo

Page 9: The year of the peer-to-peer web

everything requiring the lowest latency/fastest possible between individual peers, like - Audio/Video Calling - Conferencing - Live presentations - Direct file transfer - Synced music streaming

Resilient, decentralized mesh networking for - Sensor data exchange - File/Content distribution

It’s great for

@serrynaimo

Page 10: The year of the peer-to-peer web

everything requiring reliable data transport, like - Traditional music or video streaming

asyncronous communication - Persistant chat - Gaming (single event bus)

Don’t use it for

@serrynaimo

Page 11: The year of the peer-to-peer web

Audio/Video Calling

@serrynaimo

Page 12: The year of the peer-to-peer web

by typing their number into your phone installing Skype and exchanging names get Gmail address, add contact, use hangouts

Usual “web” calling

Talk to anybody

@serrynaimo

Page 13: The year of the peer-to-peer web

Real-time communication as a feature in any app or

website

WebRTC

@serrynaimo

Page 14: The year of the peer-to-peer web

enables embedded, contextual communication

WebRTC

@serrynaimo

Page 15: The year of the peer-to-peer web

host on Travelmob/Airbnb Uber/Lyft driver Doctor on Medifi/Teladoc Restaurant on Hungrygowhere/Yelp Property agent on 99.co/RealtorCustomer support through Zendesk/Freshdesk Your friends in WhatsApp/Line/Snapchat Seller on Carousel/eBay …

WebRTC

Call your

@serrynaimo

Page 16: The year of the peer-to-peer web

Peer Introduction

Known party

A B

ICE

A simple message broker to facilitate the connection establishment between peers.

Signaling Service

@serrynaimo

Page 17: The year of the peer-to-peer web

Media Relaying

A B

representing you as a peer if a direct connection to your device can not be established (e.g. due to firewall constraints)

TURN

Firewall

TURN for B

@serrynaimo

Page 18: The year of the peer-to-peer web

Media Relaying

@serrynaimo

Page 19: The year of the peer-to-peer web

Media Relaying

relaying media streams to reduce amount of connections and CPU use on your device in multi-party sessions

MCU/SFU

SFU

@serrynaimo

Page 20: The year of the peer-to-peer web

@serrynaimo

Page 21: The year of the peer-to-peer web

Media Streaming/Content Delivery

@serrynaimo

Page 22: The year of the peer-to-peer web

CDN Delivery

CDN Edge Location

@serrynaimo

Page 23: The year of the peer-to-peer web

@serrynaimo

Page 24: The year of the peer-to-peer web

What about …

npm install wrtc@serrynaimo

Page 25: The year of the peer-to-peer web

Using WebRTC today

@serrynaimo

Page 26: The year of the peer-to-peer web

Subtle differences in

Using WebRTC today

@serrynaimo

Page 27: The year of the peer-to-peer web

Not supported in IE/Safari

Using WebRTC today

@serrynaimo

Page 28: The year of the peer-to-peer web

Using WebRTC today

Edge shipping WebRTC supportEdge shipping ORTC support

WebRTC and ORTC will converge

@serrynaimo

Page 29: The year of the peer-to-peer web

https://github.com/Temasys/AdapterJS

“Polyfill/Shims/Helpers for WebRTC/ORTC”

@serrynaimo

Page 30: The year of the peer-to-peer web

IE and Safari Plug-In Download

Using WebRTC today

@serrynaimo

Page 31: The year of the peer-to-peer web

WebRTC on Android with

Using WebRTC today

@serrynaimo

Page 32: The year of the peer-to-peer web

Safari on iOS?

Using WebRTC today

http://webrtcinwebkit.orgPlenty of Objective C / Swift SDKs for native apps

@serrynaimo

Page 33: The year of the peer-to-peer web

SCREENSHARING

One more thing…

using http://github.com/Temasys/AdapterJS

@serrynaimo

Page 34: The year of the peer-to-peer web

You CAN use WebRTC today!

Really!

@serrynaimo

Page 35: The year of the peer-to-peer web

Thomas Gorissen

http://skylink.io

@serrynaimo