Implementación de comunicación WebRTC de Openvidu Server I
Con la ayuda de ICE, el navegador puede conocer su propia IP externa y su puerto mapeado, pero aún necesita intercambiar su propia información antes de establecer una conexión webRTC. Este proceso no está definido en el marco WebRTC, por lo que debe implementarlo usted mismo. El grupo de especificaciones webrtc cree que el intercambio de información debería ser compatible con cualquier método. La información que debe intercambiarse se denomina señal y la implementación del intercambio de señales depende del servidor de señalización. A continuación se muestra un modelo de comunicación webRTC más completo.
-Pirb quiere comunicarse con Pirla. Primero, necesita decirle a B que quiero comunicarme con usted, por lo que PeerA le envía a PeerB un mensaje multimedia de audio y video con el que desea establecer una conexión (oferta nombrada, que contiene la información requerida para establecer webrtc, pero no incluye IP, puerto y otra información de conexión).
Nota: la cita aquí solo contiene información multimedia y no incluye información de conexión de comunicación (IP, puerto, etc.).
Después de que el par B recibe la oferta de A, la guarda localmente. Y generar su propia oferta y devolverla a A (conviértase en la oferta de respuesta).
Peea y PeerB le dicen al navegador que inicie una conexión, y el navegador la envía a través del marco ICE a la IP y al puerto donde se puede establecer la conexión. Se encapsulan en candidatos y se envían entre sí a través del servidor de señales.
Después de recibir los candidatos de cada uno, PeerA y peer B comienzan a intentar establecer una conexión.
——Las dos partes finalmente establecieron una conexión e iniciaron la comunicación de audio y video.
Lo anterior es un modelo de comunicación básico de WebRTC. Puede ver que se requiere comunicación, incluido un servidor STUN, un servidor TURN y un servidor de señales.