WebRTC es una tecnología desarrollada por Ericsson y Google, basada en los lenguajes de programación JavaScript y C++. La mayoría de la gente sabe, hasta cierto punto, que WebRTC sirve para comunicarse por Internet. Sin embargo, los detalles de lo que es realmente WebRTC son menos conocidos.

Entonces, ¿qué es WebRTC, desde un punto de vista más detallado y funcional?.

 

¿Qué es WebRTC?

WebRTC (Web Real Time Communications) es una tecnología de comunicación de código abierto para plataformas móviles y de escritorio. La tecnología está construida sobre APIs que no requieren plugins y, desde la primera versión estable en 2018, WebRTC ha reunido el apoyo de los principales navegadores web y sistemas operativos. WebRTC se basa en varios estándares y protocolos

Es lo suficientemente capaz como para ser utilizado para muchos propósitos. Pero WebRTC se emplea normalmente en comunicaciones de audio y vídeo en tiempo real. Es habitual que las aplicaciones que utilizan WebRTC estén basadas en el navegador. Sin embargo, hay aplicaciones independientes como Facebook Messenger y WhatsApp que utilizan WebRTC.

Lo que hace único a WebRTC es que permite la comunicación de persona a persona. Esto significa que WebRTC se encarga de todos los detalles de conectar directamente dos dispositivos y transmitir los datos de audio y vídeo en tiempo real. Esto puede parecer sencillo, dada la omnipresencia de las llamadas telefónicas y el video chat. Pero es más complejo de lo que mucha gente cree. En breve veremos cómo funciona. Sin embargo, las capacidades de comunicación en tiempo real hacen de WebRTC una tecnología ideal para casi cualquier cosa que requiera una conversación en tiempo real.

 

¿Para qué se utiliza WebRTC?

WebRTC permite la comunicación multimedia en tiempo real en navegadores y aplicaciones independientes. WebRTC permite a los desarrolladores integrar las comunicaciones de voz y vídeo directamente en las páginas web, sin necesidad de que el usuario final instale ningún complemento del navegador. El conjunto de API de WebRTC también permite a los desarrolladores utilizar WebRTC en aplicaciones de comunicación en tiempo real.

La mayoría de la gente puede pensar que WebRTC no es adecuado para hacer verdaderas llamadas telefónicas de línea. Con Adiptel, sí lo es. Nuestro sistema WebRTC le permiten realizar una llamada a cualquier número de teléfono, en cualquier parte del mundo, desde su navegador.

 

¿Cómo funciona WebRTC?

En términos generales, una conexión WebRTC funciona así.

Su dispositivo > Servidor STUN > Canal de comunicación peer-to-peer > Dispositivo del destinatario

Sin embargo, hay procesos involucrados en cada paso. Así es como funciona:

Cuando se inicia una llamada de audio o vídeo WebRTC, la aplicación WebRTC debe establecer una conexión con todos los demás dispositivos que se conectarán en la llamada.

Antes de que se pueda establecer una conexión WebRTC, la aplicación WebRTC debe atravesar el cortafuegos y el NAT. Los cortafuegos y los dispositivos NAT funcionan estableciendo una dirección IP pública para su ordenador, que se transmite al mundo exterior y enmascara su dirección IP privada.

Tu ordenador sólo conoce tu dirección IP privada. Así que la aplicación WebRTC se pone en contacto con el servidor STUN (Session Traversal Utilities for NAT ) para recuperar su dirección IP pública. De este modo, la aplicación WebRTC puede dirigir la conexión entrante a la dirección IP correcta.

Una vez recuperada su dirección IP pública del servidor STUN, la aplicación WebRTC recupera la IP pública de los otros dispositivos que se conectarán a la llamada. Una vez que la aplicación conoce todas las direcciones IP necesarias, crea una lista de posibles configuraciones de conexión también llamadas ICE (Interactive Connectivity Establishment ) y selecciona la configuración más eficiente.

A continuación, la app WebRTC utiliza esa configuración de conexión para abrir un canal de datos privado en el que todos los dispositivos de la llamada WebRTC pueden intercambiar los datos de audio y vídeo en tiempo real. Y como sólo los dispositivos de la llamada conocen la configuración de la conexión, ésta es privada y no puede acceder a ella nadie que no esté en la llamada.

Este es el método de conexión habitual para la comunicación WebRTC, donde todos los dispositivos en la WebRTC transmiten los flujos de audio y vídeo directamente entre sí. Sin embargo, a veces no se puede establecer esta conexión directa.

En estos casos, la aplicación WebRTC utiliza un servidor TURN (Traversal Using Relays Around NAT). El servidor TURN actúa simplemente como un repetidor. Si no se puede establecer una conexión directa entre el dispositivo en una llamada WebRTC, la aplicación hará que los ordenadores envíen datos de audio y vídeo al servidor TURN, que transmite los datos al dispositivo receptor y viceversa.

Sin embargo, el uso de un servidor TURN para la comunicación WebRTC es un último recurso. Los servidores TURN deben ser súper fiables y tener una potencia de procesamiento y un ancho de banda considerables. Esto es costoso y añade complejidad. Así que lo más eficiente es utilizar conexiones directas para la comunicación WebRTC siempre que sea posible.

Esta es una visión general de muy alto nivel de cómo funciona WebRTC. También hay tecnologías de apoyo y APIs involucradas en este proceso. Por lo general, las tecnologías de apoyo se utilizan para navegar por el complejo sistema de puertos, protocolos y redes entre los dispositivos en una llamada WebRTC, mientras que las API se utilizan para acceder a las cámaras y micrófonos y recoger los datos de audio y visuales.

 

Ventajas y desventajas de WebRTC

WebRTC es una tecnología de vanguardia. Si bien eso significa que aporta un montón de nuevas y magníficas capacidades, también presenta ciertas complicaciones. Como ocurre con cualquier tecnología nueva, hay problemas que aún deben resolverse.

Ventajas de WebRTC

WebRTC se creó para ofrecer a los desarrolladores una forma más sencilla de lograr una comunicación de alta calidad en tiempo real. Pero WebRTC también es más sencillo para el usuario final, lo que hace que su experiencia sea más agradable.

Mejor calidad de sonido, WebRTC ofrece soporte integrado para la cancelación del eco y la reducción del ruido, así como el ajuste automático de la sensibilidad del micrófono. Esto por sí solo hace que las llamadas WebRTC sean más claras que otras tecnologías de conexión. Sin embargo, WebRTC también utiliza modernos códecs de audio y vídeo para ofrecer una calidad de llamada excepcional, incluso en conexiones lentas.

Tecnología de código abierto, El código de fuente abierta se evalúa rápidamente y se controla la calidad por parte de la comunidad de WebRTC. Pero el código de fuente abierta también ha llevado a una adopción generalizada.

Desarrollo simplificado, Aunque WebRTC se basa en la arquitectura C++, WebRTC tiene una capa de API Javascript integrada, que los desarrolladores pueden utilizar para implementar rápidamente soluciones WebRTC con relativamente poco código propietario.

Seguro y estable, WebRTC está protegido por unas especificaciones de cifrado obligatorias. Esto proporciona un cifrado de extremo a extremo para cualquier dato enviado a través de una conexión WebRTC peer-to-peer.

Compatibilidad, Gracias al código abierto, WebRTC es compatible con los principales sistemas operativos de escritorio y móviles. WebRTC también funciona en cualquier interfaz HTML5 o WebSocket. Así que WebRTC funciona en casi cualquier navegador.

No requiere plugins. La mayoría de las tecnologías de comunicación en tiempo real requieren un plugin para realizar llamadas utilizando un navegador. Estos plugins deben ser instalados por el usuario final, lo que degrada la experiencia del usuario final. La mayoría de los navegadores soportan WebRTC sin necesidad de ningún plugin.

Inconvenientes de WebRTC

Aunque WebRTC es una solución de comunicación en tiempo real excepcional, no es del todo perfecta:

WebRTC es una tecnología en desarrollo. WebRTC es una tecnología nueva y la versión actual es un borrador de trabajo. Esto significa que el código fuente de WebRTC podría sufrir cambios significativos en el futuro. Queda por ver si las futuras versiones serán compatibles con las anteriores.
Las llamadas de conferencia consumen muchos recursos. Los navegadores web no pueden sincronizar múltiples flujos de audio y vídeo entrantes. Esto significa que las llamadas de conferencia requieren un servidor de conferencias para mezclar los flujos de audio y vídeo antes de distribuirlos como un flujo de datos unificado. Construir un servidor de conferencias es una gran inversión en infraestructura, y la mayoría de las empresas acaban pagando por una solución de nube IaaS para proporcionar servidores de conferencias para las llamadas de grupo WebRTC.

¿Necesitas WebRTC?

Respuesta corta: sí, necesita WebRTC. La mayoría de la gente tiene un navegador que soporta WebRTC. Y WebRTC funciona sin necesidad de plugins o extensiones del navegador. Desde la perspectiva del usuario final, WebRTC es un clic para empezar a funcionar. Es la experiencia más sencilla posible para el usuario final. WebRTC también es más sencillo en el backend.

Casos de uso de WebRTC

Los usos de la comunicación de igual a igual pueden parecer bastante sencillos. Pero WebRTC es una tecnología flexible que es fácil de integrar en cualquier software. En realidad, se pueden hacer muchas más cosas con las aplicaciones WebRTC.

Telemedicina

La telemedicina se está adoptando cada vez más como forma de proporcionar una asistencia sanitaria más asequible y accesible en todo el mundo. WebRTC ofrece una forma sencilla y eficiente de facilitar las conversaciones cara a cara entre los pacientes y sus proveedores de atención médica.

Soluciones de comunicación y colaboración en equipo

El trabajo a distancia se está convirtiendo en la nueva forma de hacer las cosas. Gran parte de la población activa trabaja ahora a distancia. Esto ha generado una enorme demanda de herramientas que ayuden a los equipos a colaborar y comunicarse.

Como probablemente sepa, ya hay algunos actores clave en este mercado. Pero el aumento del trabajo a distancia ha presentado oportunidades para resolver los problemas únicos de las industrias que han sido lentas en adoptar el trabajo a distancia. Y WebRTC es la mejor manera de construir soluciones de bajo coste para los problemas de comunicación modernos.

Juegos y entretenimiento

Los juegos de ordenador y consola son más interactivos que nunca. Los juegos para un solo jugador son casi inexistentes en el mercado actual de los juegos. Y los juegos basados en el navegador – se están imponiendo rápidamente. Eso significa que hay más demanda de comunicación en tiempo real en los juegos y que se jugarán más juegos en los navegadores. WebRTC es una apuesta segura para el futuro de los juegos.

¿Que puede ofrecerte Adiptel?

Nuestra centralita virtual dispone de una completa aplicación basada en WebRTC, que replica la configuración de la centralita virtual. Con esta aplicación vas a poder hacer llamadas de voz, chatear, llamadas de video, compartir escritorio, etc.

Además, la aplicación WebRTC permite seleccionar una cola del Cloud Call Center de Adiptel, para recibir las llamadas de la misma.

Artículos Relacionados

apostar por el teletrabajo

7 Razones para apostar por el teletrabajo

Algunos empresarios pueden ver el teletrabajo como un problema, pero otros lo verán como una oportunidad. Permitir que la gente ...
saludo de bienvenida

7 Consejos para Crear un Saludo de Bienvenida Eficaz

¿Por qué es importante tener un buen saludo de bienvenida a la empresa? Alrededor del 62% de los clientes dejan ...
Cargando...