Web

  • WebRTC logo

    ¿Qué es WebRTC?

    WebRTC (Web Real-Time Communication) es un proyecto de software libre que permite a los navegadores mantener comunicaciones en tiempo real a través de una API Javascript sin necesidad de software adicional. Es un proyecto mantenido por Google, Mozilla y Opera que actualmente está en proceso de estandarización en el IETF y en el W3C. 

    Componentes Principales

    • MediaStream o getUserMedia: Permite al navegador acceder a la cámara y al micrófono. Representa un stream de audio/video y puede contener varios canales.
    • RTCPeerConnection: Permite establecer una conexión p2p con otros navegadores, procesar la señal, manejo de codec, gestión de ancho de banda, etc.
    • RTCDataChannel: Permite al navegador una comunicación de datos bidireccional entre peers.

    Proceso de señalización (Signaling)

    Para conseguir conectar los peer es necesario intercambiar un objeto 'session description' (SDP) que contiene: 

    • Formatos soportados y que información desea enviar
    • Información de la red para iniciar la conexión p2p

    Ejemplo de SDP: