SlideShare una empresa de Scribd logo
1 de 45
Descargar para leer sin conexión
Implementasi Aplikasi Video Call
Menggunakan WebRTC
Fitra Aditya
fitra@qiscus.com
Perkenalan
● Fitra Aditya
● Software Engineer di
● Kontak
– Email: fitra@qiscus.com
– FB: https://facebook.com/fitra.aditya
Ada yang pernah mendengar
tentang WebRTC?
Ada yang pernah mengunakan
aplikasi di bawah ini?
Perkembangan teknologi
komunikasi real-time pada web
http://venturebeat.com/2012/08/13/webrtc-is-almost-here-and-it-will-change-the-web/http://venturebeat.com/2012/08/13/webrtc-is-almost-here-and-it-will-change-the-web/
WebRTC
WebRTC merupakan protokol yang bertujuan
untuk menghadirkan fitur real-time
communication pada web browser secara peer-
to-peer.
Apa itu WebRTC?
Era Sebelum WebRTC
WebRTC
Desktop: 17+
Mobile: 29+
Desktop: 18+
Mobile: 24+
Desktop: 18+
Mobile: 20+
*) Microsoft Edge menggunakan ORTC (WebRTC compatible)
Mengapa harus WebRTC?
● Open source
● Tanpa plugin
● Mudah diimplementasikan menggunakan API
standar
WebRTC pada mobile apps
IOS and Android
Codec
● Video: VP8, H.264, VP9
● Audio: Opus, G.711
Implementasi WebRTC
Bisnis
Pendidikan
Kesehatan
Personal
Bagaimana WebRTC bekerja?
WebRTC API
Media Stream
Peer Connection
Data Channel
Media Stream
Camera and Microphone
Media Stream API
var localVideo = document.querySelector('#local-video');
navigator.mediaDevices.getUserMedia({ video: true })
.then(function(stream) {
localStream = stream;
localVideo.srcObject = localStream;
})
.catch(function(error) {
alert('Error: ', error);
});
Media Stream API
HTTP vs HTTPS
Chrome: HTTPS
Firefox / Opera: HTTP
Peer Connection
Peer Connection
NAT / FIREWALL
Peer Connection
● Masalah
– Berapa nomor IP publik saya?
– Port mana yang akan saya gunakan?
– Saya tidak bisa melewati firewall!
– Bagaimana saya memberitahukan IP publik dan port yang
saya gunakan kepada lawan?
● Solusi
– ICE Server
● STUN
● TURN
STUN
(Simple Traversal of UDP through NAT)
Berapa nomor IP publik saya?
IP publik kamu adalah xx.xx.xx.xx
Peer Connection
(menggunakan STUN)
TURN
(Traversal Using Relay NAT)
Peer Connection
(menggunakan STUN)
Peer Connection
Signaling Process
WebSocket, AJAX, SIP
Data:
SDP (Session Data Protocol)
- Informasi jaringan (IP publik, port)
- Video dan audio codec
Peer Connection
Signaling Process
WebSocket / AJAX / SIP
LocalDescription
Sends offer
Peer Connection
Signaling Process
WebSocket / AJAX / SIP
LocalDescription
RemoteDescription
Receives offer
Peer Connection
Signaling Process
WebSocket / AJAX / SIP
LocalDescription LocalDescription
RemoteDescription
Sends answer
Peer Connection
Signaling Process
WebSocket / AJAX / SIP
LocalDescription
RemoteDescription
LocalDescription
RemoteDescription
Receives answer
Peer Connection
Signaling Process
WebSocket / AJAX / SIP
LocalDescription
RemoteDescription
LocalDescription
RemoteDescription
Peer Connection
Peer Connection
Peer Connection
Bandwith
● Video
– 180p : 0.1 – 0.5 Mbps
– 360p : 0.5 – 1 Mbps
– 720p : 1 – 2 Mbps
● Audio
– 0.06 – 0.51 Mbps
Libraries
Free Application
● https://appear.in/
● https://appr.tc/
Referensi
● http://webrtc.org
● http://www.html5rocks.com/en/tutorials/webrtc/b
asics/
● https://www.pkcsecurity.com/blog#webrtc-flow
● https://www.webrtc-experiment.com/
Materi
● https://github.com/fitraditya/php-indonesia-webr
tc
Terima Kasih

Más contenido relacionado

Destacado

Dasar-dasar Demografi
Dasar-dasar DemografiDasar-dasar Demografi
Dasar-dasar Demografi
Nurul Misbah
 

Destacado (11)

Social networking api for Android Developers
Social networking api for Android DevelopersSocial networking api for Android Developers
Social networking api for Android Developers
 
Makalah kependudukan di indonesia
Makalah kependudukan di indonesiaMakalah kependudukan di indonesia
Makalah kependudukan di indonesia
 
Getting started with Facebook OpenGraph API
Getting started with Facebook OpenGraph APIGetting started with Facebook OpenGraph API
Getting started with Facebook OpenGraph API
 
Chapter 3 - Apa Itu Riset Implementasi
Chapter 3 - Apa Itu Riset ImplementasiChapter 3 - Apa Itu Riset Implementasi
Chapter 3 - Apa Itu Riset Implementasi
 
Chapter 1 - Mengapa Riset Implementasi Diperlukan?
Chapter 1 - Mengapa Riset Implementasi Diperlukan?Chapter 1 - Mengapa Riset Implementasi Diperlukan?
Chapter 1 - Mengapa Riset Implementasi Diperlukan?
 
Facebook Open Graph API and How To Use It
Facebook Open Graph API and How To Use ItFacebook Open Graph API and How To Use It
Facebook Open Graph API and How To Use It
 
Dasar-dasar Demografi
Dasar-dasar DemografiDasar-dasar Demografi
Dasar-dasar Demografi
 
Chapter 5: Apa pendekatan dan metode yang tepat untuk Riset Implementasi?
Chapter 5: Apa pendekatan dan metode yang tepat untuk Riset Implementasi?Chapter 5: Apa pendekatan dan metode yang tepat untuk Riset Implementasi?
Chapter 5: Apa pendekatan dan metode yang tepat untuk Riset Implementasi?
 
ANALISIS DAN EVALUASI IMPLEMENTASI KEBIJAKAN EKONOMI WILAYAH DI PROVINSI KA...
ANALISIS DAN EVALUASI  IMPLEMENTASI KEBIJAKAN EKONOMI WILAYAH  DI PROVINSI KA...ANALISIS DAN EVALUASI  IMPLEMENTASI KEBIJAKAN EKONOMI WILAYAH  DI PROVINSI KA...
ANALISIS DAN EVALUASI IMPLEMENTASI KEBIJAKAN EKONOMI WILAYAH DI PROVINSI KA...
 
Developing RESTful Web APIs with Python, Flask and MongoDB
Developing RESTful Web APIs with Python, Flask and MongoDBDeveloping RESTful Web APIs with Python, Flask and MongoDB
Developing RESTful Web APIs with Python, Flask and MongoDB
 
Model implementasi
Model implementasi Model implementasi
Model implementasi
 

Similar a Implementasi Aplikasi Video Call Menggunakan WebRTC

pemrograman socket pada jaringan komputer
pemrograman socket pada jaringan komputerpemrograman socket pada jaringan komputer
pemrograman socket pada jaringan komputer
alisofyan13
 
Praktik Kejuruan Pembahasana
Praktik Kejuruan PembahasanaPraktik Kejuruan Pembahasana
Praktik Kejuruan Pembahasana
Firdika Arini
 
Presetasi hotspot Mubad Zahroni
Presetasi hotspot Mubad ZahroniPresetasi hotspot Mubad Zahroni
Presetasi hotspot Mubad Zahroni
indonesiku
 
01 pengenalan internet dan teknologinya
01   pengenalan internet dan teknologinya01   pengenalan internet dan teknologinya
01 pengenalan internet dan teknologinya
Agustinus Wiyarno
 
Mikrotikrb750modulbeta
Mikrotikrb750modulbetaMikrotikrb750modulbeta
Mikrotikrb750modulbeta
dhi her
 

Similar a Implementasi Aplikasi Video Call Menggunakan WebRTC (20)

MikroTik Certified Network Associate (MTCNA) - Training Indonesia
MikroTik Certified Network Associate (MTCNA) - Training IndonesiaMikroTik Certified Network Associate (MTCNA) - Training Indonesia
MikroTik Certified Network Associate (MTCNA) - Training Indonesia
 
pemrograman socket pada jaringan komputer
pemrograman socket pada jaringan komputerpemrograman socket pada jaringan komputer
pemrograman socket pada jaringan komputer
 
00-Basic TCPIP.pdf
00-Basic TCPIP.pdf00-Basic TCPIP.pdf
00-Basic TCPIP.pdf
 
Praktik Kejuruan Pembahasana
Praktik Kejuruan PembahasanaPraktik Kejuruan Pembahasana
Praktik Kejuruan Pembahasana
 
Al12
Al12Al12
Al12
 
presetasi hotspot.ppt
presetasi hotspot.pptpresetasi hotspot.ppt
presetasi hotspot.ppt
 
Presetasi hotspot Mubad Zahroni
Presetasi hotspot Mubad ZahroniPresetasi hotspot Mubad Zahroni
Presetasi hotspot Mubad Zahroni
 
Setting MikroTik sebagai Gateway
Setting MikroTik sebagai GatewaySetting MikroTik sebagai Gateway
Setting MikroTik sebagai Gateway
 
Makalah voip
Makalah voipMakalah voip
Makalah voip
 
Microtik
MicrotikMicrotik
Microtik
 
Python Network Programming For Network Engineers
Python Network Programming For Network EngineersPython Network Programming For Network Engineers
Python Network Programming For Network Engineers
 
Packaging
PackagingPackaging
Packaging
 
01 pengenalan internet dan teknologinya
01   pengenalan internet dan teknologinya01   pengenalan internet dan teknologinya
01 pengenalan internet dan teknologinya
 
01 pengenalan internet dan teknologinya
01   pengenalan internet dan teknologinya01   pengenalan internet dan teknologinya
01 pengenalan internet dan teknologinya
 
Microtik
MicrotikMicrotik
Microtik
 
Microtik
MicrotikMicrotik
Microtik
 
Tutorial mikrotik-step-by-step(1)
Tutorial mikrotik-step-by-step(1)Tutorial mikrotik-step-by-step(1)
Tutorial mikrotik-step-by-step(1)
 
Tutorial mikrotik-step-by-step
Tutorial mikrotik-step-by-stepTutorial mikrotik-step-by-step
Tutorial mikrotik-step-by-step
 
modul mikrotik RB750
modul mikrotik RB750modul mikrotik RB750
modul mikrotik RB750
 
Mikrotikrb750modulbeta
Mikrotikrb750modulbetaMikrotikrb750modulbeta
Mikrotikrb750modulbeta
 

Implementasi Aplikasi Video Call Menggunakan WebRTC