v2 d2013 jose l millan e iñaki baz - webrtc
TRANSCRIPT
![Page 1: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/1.jpg)
José Luis MillánIñaki Baz Castil lo
![Page 2: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/2.jpg)
¿ Qué es WebRTC ?● Comunicación en tiempo real para la Web● WebRTC Media
– Características del media transmitido
● WebRTC API– API JavaScript para browsers
![Page 3: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/3.jpg)
● Características y requerimientos del media transmitido– RTP audio/vídeo
– DataChannel (new)● Envío y recepción de datos custom en tiempo real
● Codecs MTI (Must To Implement)– Audio: Opus, Alaw, Ulaw
– Vídeo: VP8, H.264 (no decidido)
WebRTC Media
![Page 4: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/4.jpg)
WebRTC Media
● Establecimiento de media– Ambos peers encuentran el camino más rápido para transmitir
media de uno a otro
– ICE / STUN / TURN
● Seguridad– RTP audio/vídeo encriptado con DTLS-SRTP
– DataChannel encriptado con DTLS (SCTP sobre DTLS sobre UDP)
– Media Consent (ICE garantiza que transmitimos media al destino correcto)
![Page 5: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/5.jpg)
WebRTC Media
● ¿Quién debe/puede implementar todos estos requisitos?– Desktop Browsers (Chrome, Firefox, Internet Explorer,
Opera...)● ¿ Smartphone Browsers ? mmm...
– Apps en smartphones y tablets
– Servidores (Asterisk, FreeSwitch, Google Hangouts...)
● Interoperabilidad a nivel de media entre distintos dispositivos– NOTA: Nadie ha hablado aún de señalización
![Page 6: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/6.jpg)
WebRTC API
● API JavaScript para browsers– getUserMedia(): solicitar permisos de micrófono y/o webcam
– RTCPeerConnection: Clase JavaScript para iniciar una sesión WebRTC con otro peer
● Envío y recepción de múltiples MediaStream de audio/vídeo● DataChannel para envío y recepción de datos custom
![Page 7: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/7.jpg)
WebRTC API
● SDP Offer/Answer– API WebRTC para solicitar un SDP a nuestro browser
● Y se lo enviamos al peer remoto
– Recibimos el SDP del peer remoto● Y lo usamos a través del API WebRTC
● ¿Cómo transmitimos y recibimos el SDP?– WebSocket
● SIP over WebSocket● XMPP/Jingle over WebSocket● Lo-que-sea over WebSocket
– HTTP AJAX (para no recargar la página)
– WebRTC no impone el tipo de de señalización en red
![Page 8: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/8.jpg)
WebRTC F.A.Q.
![Page 9: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/9.jpg)
![Page 10: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/10.jpg)
![Page 11: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/11.jpg)
![Page 12: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/12.jpg)
![Page 13: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/13.jpg)
![Page 14: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/14.jpg)
![Page 15: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/15.jpg)
![Page 16: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/16.jpg)
![Page 17: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/17.jpg)
Casos de Uso WebRTC
● Póker online– Nadie “llama” a nadie
● ChatRoulette– Enseñemos nuestras partes íntimas, ¡pero sin Flash!
● Un nuevo “Skype”– ¿Sólo Web?
● Puesto de callcenter– ¡Plugin para Asterisk!
● Telefonía doméstica– mmm...
![Page 18: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/18.jpg)
Casos de Uso WebRTC
● Hacer feliz a tu abuela
¡¡¡ DEMO !!!
![Page 19: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/19.jpg)
RetroRTC
![Page 20: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/20.jpg)
Arquitectura RetroRTCPSTNSIP over WebSocket
SIP over UDP/TCP
ICE
RTP
![Page 22: V2 d2013 jose l millan e iñaki baz - webrtc](https://reader035.vdocuments.co/reader035/viewer/2022062308/559662f71a28abed338b4633/html5/thumbnails/22.jpg)
Muchas Gracias
@ibc_tw
@jomivi
● A los asistentes● A Avanzada7 por organizar el VOIP2DAY
– (el mejor evento de VoIP de Europa)
● A todos los que lo hacen posible