

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Cómo utiliza WebRTC el Panel de Control de Contactos (CCP)
<a name="ccp-uses-webrtc"></a>

Este tema avanzado está dirigido a los administradores de TI que estén interesados en saber cómo el Panel de control de contacto (CCP) envía las llamadas de voz. También proporciona algunos detalles de la red.

CCP utiliza WebRTC como tecnología subyacente para permitir la comunicación en tiempo real entre los clientes y los agentes del centro de contacto. Permite a los agentes administrar las llamadas y videoconferencias entrantes y salientes directamente desde su navegador web.

**Topics**
+ [¿Qué es WebRTC?](#whatis-webrtc)
+ [Terminología](#ccp-uses-webrtc-terminology)
+ [Cómo funciona WebRTC](#how-webrtc-works)
+ [Trabajo conjunto de STUN, TURN e ICE](#how-stun-turn-ice-works)
+ [Prácticas recomendadas](#webrtc-ccp-bp)

## ¿Qué es WebRTC?
<a name="whatis-webrtc"></a>

WebRTC es una especificación de tecnología de código abierto que permite la comunicación en tiempo real (RTC) entre navegadores y aplicaciones móviles a través de API simples. 

WebRTC utiliza técnicas de interconexión para el intercambio de datos en tiempo real entre iguales conectados. Proporciona la transmisión multimedia de baja latencia necesaria para la interacción entre personas. 

La especificación WebRTC integra un conjunto de protocolos del IETF que incluyen [Interactive Connectivity Establishment](https://www.ietf.org/rfc/rfc5245.txt), [Traversal Using Relay around NAT (TURN)](https://datatracker.ietf.org/doc/html/rfc5766) y [Session Traversal Utilities for NAT (STUN)](https://www.ietf.org/rfc/rfc5389.txt) para establecer la conectividad punto a punto. Estos se suman a las especificaciones del protocolo para garantizar un flujo confiable y seguro de datos multimedia y de datos en tiempo real.

Como Connect Customer utiliza WebRTC, no es necesario crear ni mantener una infraestructura compleja para la comunicación en tiempo real. Le permite implementar rápidamente soluciones omnicanal de captación de clientes a través de Connect Customer y, al mismo tiempo, beneficiarse de la baja latencia, la transmisión multimedia de alta calidad y la conectividad segura punto a punto que ofrece WebRTC.

## Terminología
<a name="ccp-uses-webrtc-terminology"></a>

Utilidades transversales de sesión para NAT (STUN)  
Protocolo que se utiliza para descubrir su dirección pública y determinar cualquier restricción en el router que impida una conexión directa con un par.  
Un componente que administra los puntos de conexión de STUN. Los puntos de conexión permiten a las aplicaciones descubrir su dirección IP pública cuando están ubicadas detrás de una NAT o un firewall. 

Recorrido mediante relés alrededor de la NAT (TURN)  
Servidor que se utiliza para eludir la restricción de NAT simétrica al abrir una conexión con un servidor TURN y transmitir toda la información a través de ese servidor.  
Un componente que administra los puntos de conexión de TURN. Los puntos de conexión de TURN permiten la retransmisión de contenido multimedia a través de la nube cuando las aplicaciones no pueden transmitir contenido multimedia punto a punto. 

Protocolo de descripción de sesiones (SDP)  
Un estándar para describir el contenido multimedia de la conexión, como la resolución, los formatos, los códecs, el cifrado, etc., de modo que ambos pares puedan entenderse una vez que se transfieran los datos.

Oferta SDP  
Un mensaje de SDP enviado por un agente que genera una descripción de la sesión para crear o modificar una sesión. Describe los aspectos de la comunicación multimedia deseada.

Respuesta de SDP  
Un mensaje de SDP enviado por un respondedor en respuesta a una oferta recibida de un oferente. La respuesta indica los aspectos que se aceptan. Por ejemplo, si se aceptan todas las transmisiones de audio y vídeo de la oferta.

Establecimiento de conectividad interactiva (ICE)  
Un marco que permite que su navegador web se conecte con sus pares. 

Candidato al ICE  
Método que el interlocutor remitente puede utilizar para comunicarse.

Entre pares  
Cualquier dispositivo o aplicación (por ejemplo, una aplicación móvil o web) que esté configurado para comunicaciones bidireccionales en tiempo real con WebRTC. 

Señalización  
El componente de señalización gestiona los puntos de conexión de señalización WebRTC que permiten que las aplicaciones se conecten de forma segura entre sí para la transmisión de contenido multimedia en directo punto a punto.

## Cómo funciona WebRTC
<a name="how-webrtc-works"></a>

WebRTC utiliza protocolos de señalización, JavaScript como el Protocolo de establecimiento de sesiones (JSEP) para navegadores o protocolos personalizados integrados, para iniciar y administrar WebSockets/XMPP las sesiones de comunicación. También emplea códecs para codificar y decodificar datos de audio y vídeo, el Protocolo de Real-time transporte seguro (SRTP) para cifrar las transmisiones multimedia a fin de garantizar la privacidad y utiliza los protocolos ICE, STUN y TURN para navegar y establecer conexiones punto a punto a través de puertas de enlace y firewalls NAT.

## Trabajo conjunto de STUN, TURN e ICE
<a name="how-stun-turn-ice-works"></a>

Consideremos el escenario en el que el agente CCP (Panel de control de contacto) es el par A y Connect Customer es el par B, utilizando WebRTC para una transmisión multimedia bidireccional (por ejemplo, una llamada de voz). 

Esto es lo que ocurre cuando el agente CCP quiere establecer una conexión con Connect Customer:

1. El CCP del agente genera una oferta de SDP que contiene información sobre la sesión deseada, como los códecs que debe utilizar, si se trata de una sesión de audio o vídeo, etc. También incluye una lista de candidatos a ICE, que son los IP/port pares que Connect Customer puede intentar usar para conectarse al agente CCP.

1. Para reunir a los candidatos al ICE, CCP realiza una serie de solicitudes a un servidor STUN. El servidor STUN devuelve la dirección IP pública y el par de puertos que originaron la solicitud. El agente CCP también crea un canal TURN para conectar el servicio TURN del cliente a fin de obtener una dirección de retransmisión multimedia. Esta dirección de retransmisión es un IP/port par que puede reenviar paquetes entre el CCP del agente y otros servicios multimedia de Connect Customer. El agente CCP añade cada IP/port par a la lista de candidatos al ICE. A continuación, el agente CCP envía la oferta de SDP a Connect Customer a través de un canal de señalización a través de un. WebSocket

1. Connect Customer genera una respuesta de SDP siguiendo el mismo proceso: recopila a los candidatos de ICE y los envía con la respuesta de SDP al agente CCP a través del. WebSocket Tras intercambiar los SDP, el agente CCP y Connect Customer realizan una serie de comprobaciones de conectividad. Cada lado toma un IP/port par candidato del SDP del otro y le envía una solicitud STUN. Si se recibe una respuesta, esa IP/port pareja se marca como pareja candidata válida para el ICE.

1.  Una vez completadas las comprobaciones de conectividad de todos los IP/port pares, el agente CCP y Connect Customer negocian y deciden cuál de los pares válidos se utilizará para la transmisión multimedia. 

El siguiente diagrama ilustra la comunicación entre CCP y Connect Customer mediante WebRTC.

![El flujo de comunicación entre CCP y Connect Customer mediante WebRTC.](http://docs.aws.amazon.com/es_es/connect/latest/adminguide/images/webrtc-diagram.png)


## Prácticas recomendadas
<a name="webrtc-ccp-bp"></a>
+ Para disfrutar de una experiencia de audio óptima y fiable, se recomienda encarecidamente garantizar que el tráfico multimedia entre la estación de trabajo del agente y AWS se intercambie directamente y no atraviese las VPN ni otros saltos aceleradores de la red.
+ Para garantizar que su empresa pueda ayudar con éxito a las conexiones WebRTC y mitigar los comportamientos de error, asegúrese de tener el tráfico UDP entrante en la lista de permitidos en el puerto 3478 (). SEND/RECEIVE Para obtener más información, consulte [Opción 1 (recomendada): sustituir los requisitos de Amazon EC2 y el rango de CloudFront IP por una lista de dominios permitidos](ccp-networking.md#option1). En la tabla, consulte la fila correspondiente para `TurnNlb-*.elb.region.amazonaws.com`. 
+ Si está usando [Opción 2 (no recomendada): permitir intervalos de direcciones IP](ccp-networking.md#option2), le recomendamos lo siguiente para mitigar los comportamientos de error:
  + Supervise los rangos de IP permitidos enumerados por su empresa para Connect Customer.
  + Asegúrese de monitorear los cambios dentro de los rangos de IP.
  + Asegúrese de que cualquier nueva incorporación a la lista vaya acompañada de una lista de puertos y protocolos 3478 (UDP) permitidos para el tráfico. SEND/RECEIVE 
+ Antes de pasar a la producción, realice lo siguiente
  + Pruebe la conectividad WebRTC mediante la herramienta de pruebas [Connect Customer Endpoint](check-connectivity-tool.md) Connectivity. Esta herramienta le ayuda a determinar si se puede acceder a los puntos finales WebRTC Media de Connect Customer desde las estaciones de agente.
  + Pruebe y realice un seguimiento de los cambios en los [entornos de red](network-ts.md#investigate-ndc) y en las arquitecturas de red en las instalaciones, como las actualizaciones de firewall, los enrutadores de periferia y las VPN.
+ Si utiliza un firewall sin estado, asegúrese de haber agregado el rango de puertos efímeros a la lista de puertos permitidos, tal y como se describe en los [firewalls sin estado](ccp-networking.md#stateless-firewalls). 