

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.

# Generación de información a partir de las llamadas mediante el análisis de llamadas para el Amazon Chime SDK
<a name="call-analytics"></a>

En los temas de esta sección se explica cómo utilizar el análisis de llamadas de Amazon Chime SDK para generar información a partir de los datos de las llamadas. 

El análisis de llamadas de Amazon Chime SDK ofrece a los desarrolladores soluciones de bajo código para generar información rentable a partir del audio en tiempo real, incluida la ingesta de audio, el análisis, las alertas y la integración de lago de datos. El análisis de llamadas le permite generar información mediante la integración con Amazon Transcribe and Transcribe Call Analytics (TCA) y, de forma nativa, mediante el análisis de voz de Amazon Chime SDK. El análisis de llamadas también puede grabar las llamadas a su bucket de Amazon S3.

Puede utilizar los siguientes métodos para configurar y ejecutar análisis de llamadas.
+ Utilice la consola de Amazon Chime SDK para crear una configuración de análisis de llamadas y asociarla a un conector de voz de Amazon Chime SDK. Durante ese proceso, puede habilitar la grabación y el análisis de llamadas. No es necesario escribir código para completar el proceso.
+ Utilice un conjunto de SDK de Amazon Chime SDK de [Amazon APIs Chime](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/welcome.html) para crear y APIs ejecutar una configuración mediante programación.

Para obtener más información, consulte [Creaión de configuraciones de análisis de llamadas de Amazon Chime SDK](creating-ca-configuration.md) y [Uso de las configuraciones de análisis de llamadas para Amazon Chime SDK](using-call-analytics-configurations.md) más adelante en esta sección.

**Topics**
+ [¿Qué es el análisis de llamadas de Amazon Chime SDK?](what-is-amazon-chime-sdk-call-analytics.md)
+ [Descripción de la terminología de análisis de llamadas para el Amazon Chime SDK](ca-terms-concepts.md)
+ [Creaión de configuraciones de análisis de llamadas de Amazon Chime SDK](creating-ca-configuration.md)
+ [Uso de las configuraciones de análisis de llamadas para Amazon Chime SDK](using-call-analytics-configurations.md)
+ [Administración de canalizaciones de análisis de llamadas para Amazon Chime SDK](managing-call-analytics-pipelines.md)
+ [Pausado y reanudación de canalizaciones de análisis de llamadas para el SDK de Amazon Chime SDK](pausing-and-resuming-call-analytics-pipelines.md)
+ [Uso de la función de acceso a los recursos de análisis de llamadas de Amazon Chime SDK](call-analytics-resource-access-role.md)
+ [Descripción de los estados de análisis de llamadas para Amazon Chime SDK](call-analytics-statuses.md)
+ [Supervisión de los canales de análisis de llamadas para el SDK de Amazon Chime con Amazon CloudWatch](monitoring-with-cloudwatch.md)
+ [Llamada al procesador de análisis y a los destinos de salida de Amazon Chime SDK](call-analytics-processor-and-output-destinations.md)
+ [El modelo de datos de análisis de llamadas de Amazon Chime SDK.](ca-data-model.md)
+ [Uso de análisis de voz de Amazon Chime SDK](voice-analytics.md)
+ [Cuotas de servicio de análisis de llamadas de Amazon Chime SDK](ca-regions.md)

# ¿Qué es el análisis de llamadas de Amazon Chime SDK?
<a name="what-is-amazon-chime-sdk-call-analytics"></a>

El análisis de llamadas de Amazon Chime SDK es una solución de bajo código para generar información rentable a partir del audio en tiempo real, incluidas las capacidades de ingesta de audio, grabación, análisis de voz, alertas y un lago de datos. Puede generar información basada en el aprendizaje automático mediante el análisis de llamadas mediante la creación de una configuración de análisis de llamadas reutilizable que determine qué integraciones de aprendizaje AWS automático y qué características de procesamiento de audio se deben habilitar para un flujo de trabajo. A continuación, utilice la configuración de análisis de llamadas con varias fuentes multimedia, como Voice Connectors o Amazon Kinesis Video Streams. El análisis de llamadas genera información mediante integraciones con Amazon Transcribe y Transcribe call analytics (TCA) y, de forma nativa, mediante el [análisis de voz de Amazon Chime SDK](voice-analytics.md), un servicio que se ejecuta bajo el análisis de llamadas.

Siga estos pasos para usar el análisis de llamadas:

![\[Imagen que muestra el proceso de configuración del análisis de llamadas de Amazon Chime SDK.\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/images/CallAnalyticsOverview.png)


En el diagrama:

1. Empiece por crear una configuración de análisis de llamadas.

1. Establezca los destinos de salida y un lago de datos opcional.

1. Cree flujos de trabajo que asocien su configuración con un conector de voz y Amazon Kinesis Video Streams.

1. Analice y, si lo desea, visualice su información.

Puede usar la consola de Amazon Chime SDK para crear una configuración de análisis de llamadas y permitir que el análisis de llamadas se inicie automáticamente. Si necesita controlar las configuraciones que se aplican a un tipo de llamada determinado, puede APIs crear una configuración. De cualquier forma, la configuración contiene detalles sobre los servicios de aprendizaje AWS automático que se deben invocar para el audio de la llamada, habilitar la grabación de las llamadas y los destinos de la información, los metadatos y las grabaciones. El análisis de llamadas proporciona los siguientes destinos:
+ Un elemento de Amazon Kinesis Data Streams (KDS). Puede usar KDS para recibir información sobre las llamadas en tiempo real y luego integrarla en su aplicación. Por ejemplo, puede integrar la información en tiempo real para ayudar a un agente de ventas o de atención al cliente durante una llamada con un cliente, o utilizar la información para aumentar las sugerencias y resúmenes de IA generativa.
+ Un bucket de Amazon S3 configurado para el almacenamiento de datos. El bucket almacena los datos en formato Parquet. Parquet es un formato de archivo de código abierto diseñado para comprimir y almacenar grandes volúmenes de datos. A continuación, puede utilizar Amazon Athena para consultar esos datos mediante un lenguaje de consulta simple (SQL) o mover los datos a su almacenamiento de datos existente para combinarlos con los datos de su empresa. Por ejemplo, puede realizar análisis agregados después de las llamadas para comprender la eficacia de las llamadas de los clientes, las áreas problemáticas de un producto o las oportunidades de capacitar a los empleados para que logren mejores resultados con los clientes.

Además de esos destinos, el análisis de llamadas también admite alertas en tiempo real que puede preconfigurar en función de la información recopilada. Las alertas se envían a Amazon EventBridge. 

**nota**  
Cuando crea una configuración de análisis de llamadas, no selecciona una fuente de audio específica. Esto le permite reutilizar las configuraciones en varias fuentes de audio. Por ejemplo, una configuración puede habilitar la grabación de llamadas y proporcionar la transcripción de las llamadas. A continuación, puede utilizar la configuración con un conector de voz del SDK de Chime y una transmisión de audio a través de una transmisión de video de Kinesis. También puede compartir la configuración entre varios Voice Connectors. Cada configuración de análisis de llamadas es única y se identifica mediante un ARN. 

# Descripción de la terminología de análisis de llamadas para el Amazon Chime SDK
<a name="ca-terms-concepts"></a>

Los siguientes conceptos y terminología son fundamentales para entender cómo utilizar el análisis de llamadas de Amazon Chime SDK.

**Amazon Athena**  
Un servicio de consulta interactivo que le permite analizar datos en Amazon S3 utilizando SQL estándar. Athena funciona sin servidor, por lo que no hay una infraestructura para administrar y solo pagará por las consultas que ejecute. Para usar Athena, señale sus datos en Amazon S3, defina el esquema y utilice consultas SQL estándar. También puede usar grupos de trabajo para agrupar a los usuarios y controlar los recursos a los que tienen acceso cuando ejecutan consultas. Los grupos de trabajo le permiten administrar la simultaneidad de consultas y priorizar la ejecución de las consultas en diferentes grupos de usuarios y cargas de trabajo. Para obtener más información, consulte [Qué es Amazon Athena](https://docs.aws.amazon.com/athena/latest/ug/what-is.html).

**Amazon Kinesis Data Firehose**  
Un servicio de extracción, transformación y carga (ETL) que captura, transforma y entrega datos de manera fiable a lagos de datos, almacenes de datos y servicios de análisis. Para obtener más información, consulte [¿Qué es Amazon Kinesis Data Firehose?](https://aws.amazon.com/kinesis/data-firehose/).

**Almacenamiento de datos de análisis de llamadas**  
Almacenamiento opcional para los datos de análisis de llamadas. El almacén almacena datos en un formato de archivo de datos basado en parquet en un bucket de Amazon S3. Puede utilizar SQL estándar para consultar los datos. El almacén se activa en una configuración de análisis de llamadas.

**Catálogo de datos de Glue**  
Un repositorio de metadatos centralizado para los activos de datos de varios orígenes de datos. El catálogo consta de bases de datos y tablas. Para el análisis de llamadas, los metadatos de la tabla indican a Athena la ubicación de su bucket de Amazon S3. También especifica la estructura de datos, como los nombres de las columnas, los tipos de datos y el nombre de la tabla. Las bases de datos solo contienen los metadatos y la información del esquema de un conjunto de datos. Para obtener más información, consulte [Descripción de la estructura de tablas del catálogo de AWS Glue datos del SDK de Amazon Chime](ca-data-model-diagram.md) más adelante en esta sección.

**Canalización de información multimedia**  
 Un recurso temporal identificado por un `MediaPipelineId` único. Se crea mediante el uso de una canalización de análisis de llamadas, parámetros de configuración y tiempo de ejecución. Los parámetros de tiempo de ejecución especifican el origen de datos de la canalización.

**Configuración de la canalización de información multimedia**  
Configuración estática que se utiliza para crear canales de información multimedia. Puede utilizar una configuración para crear instancias de una o varias canalizaciones.

**Elemento de configuración del pipeline de información multimedia**  
El elemento de configuración de la canalización de información multimedia incluye instrucciones para procesar los medios mediante un elemento procesador o para entregar la información generada mediante un elemento receptor.

**Tarea de canalización de información multimedia**  
Un subrecurso temporal de una canalización de información multimedia. Las tareas contienen metadatos sobre el estado de un proceso para un ARN de transmisión y un ID de canal específicos. Se identifica mediante un identificador único. Se crea al iniciar el análisis de voz en un canal de información multimedia. 

**Búsqueda de interlocutores**  
Una característica de análisis de voz que le ayuda a reconocer a los participantes de la llamada.

**Análisis de voz**  
Una característica de Amazon Chime SDK que incluye la búsqueda de interlocutores y el análisis del tono de voz.

**Incrustación de voz**  
Una representación vectorial de la voz de la persona que llama, más un identificador único.

**Mejora de la voz**  
Un sistema que mejora la calidad de audio de las llamadas telefónicas.

**Perfil de voz**  
La combinación de una incrustación de voz, su ID y su fecha de caducidad.

**Dominio del perfil de voz**  
Colección de perfiles de voz.

**Análisis del tono de voz**  
Una característica de análisis de voz que le permite analizar las voces de las personas que llaman en busca de un sentimiento `positive`, `negative`, o `neutral`.

Para obtener más información sobre lo que APIs se utiliza para crear configuraciones de información de llamadas, iniciar canalizaciones y ejecutar análisis de voz, consulte [Amazon Chime SDK Media Pipelines, en la referencia de la API del SDK](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_Operations_Amazon_Chime_SDK_Media_Pipelines.html) de Amazon *Chime*.

**nota**  
Recomendamos encarecidamente utilizar el canal de información multimedia APIs para realizar el análisis de llamadas, ya que solo estos APIs proporcionan nuevas funciones. Para obtener más información sobre las diferencias entre la canalización de contenido multimedia y los espacios de nombres de voz, consulte [Uso de APIs la voz para ejecutar análisis de voz para el SDK de Amazon Chime](va-in-voice-namespace.md) más adelante en esta sección.

# Creaión de configuraciones de análisis de llamadas de Amazon Chime SDK
<a name="creating-ca-configuration"></a>

Para usar el análisis de llamadas, comience por crear una *configuración*, una estructura estática que contenga la información necesaria para crear una canalización de análisis de llamadas. Puede usar la consola de Amazon Chime SDK para crear una configuración o llamar a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html).

Una configuración de análisis de llamadas incluye detalles sobre los procesadores de audio, como la grabación, el análisis de voz o Amazon Transcribe. También incluye información sobre los destinos y las configuraciones de los eventos de alerta. Si lo desea, puede guardar los datos de las llamadas en un bucket de Amazon S3 para un análisis posterior.

Sin embargo, *las configuraciones no incluyen fuentes de audio específicas*. Esto le permite reutilizar la configuración en varios flujos de trabajo de análisis de llamadas. Por ejemplo, puede utilizar la misma configuración de análisis de llamadas con distintos Voice Connectors o en distintas fuentes de Amazon Kinesis Video Streams (KVS).

Las configuraciones se utilizan para crear canalizaciones cuando las llamadas SIP se producen a través de un conector de voz o cuando se envía contenido nuevo a un Amazon Kinesis Video Streams (KVS). Las canalizaciones, a su vez, procesan los medios de acuerdo con las especificaciones de la configuración.

Puede detener una canalización mediante programación en cualquier momento. Las canalizaciones también dejan de procesar el contenido multimedia cuando finaliza una llamada de Voice Connector. Además, puede pausar una canalización. Al hacerlo, se deshabilitan las llamadas a los servicios de machine learning de Amazon subyacentes y se reanudan cuando se desea. Sin embargo, la grabación de llamadas se ejecuta mientras pausa una canalización.

En las siguientes secciones se explican los requisitos previos para crear una configuración de análisis de llamadas y cómo crearla.

**Topics**
+ [Descripción de los requisitos previos de análisis de llamadas de Amazon Chime SDK](ca-prerequisites.md)
+ [Uso de la consola de Amazon Chime SDK para crear configuraciones de análisis de llamadas](create-config-console.md)
+ [Uso APIs para crear configuraciones de análisis de llamadas para el SDK de Amazon Chime](create-config-apis.md)
+ [Asociación de una configuración a un Voice Connector para el SDK de Amazon Chime SDK](ca-associate-vc-steps.md)

# Descripción de los requisitos previos de análisis de llamadas de Amazon Chime SDK
<a name="ca-prerequisites"></a>

Antes de crear una configuración de análisis de llamadas, debe tener los siguientes elementos. Puedes usar la AWS consola para crearlas:
+ Un conector de voz de Amazon Chime SDK. Si no es así, consulte [Creación de Voice Connectors de Amazon Chime SDK](https://docs.aws.amazon.com/chime-sdk/latest/ag/ca-prerequisites.html). También debe hacer lo siguiente:
  + Habilitar la transmisión para el conector de voz. Para obtener más información, consulte [Automatización del SDK de Amazon Chime EventBridge con, en la Guía del administrador del SDK](https://docs.aws.amazon.com/chime-sdk/latest/ag/automating-chime-with-cloudwatch-events.html) de *Amazon Chime* 
  + Configure el conector de voz para usar el análisis de llamadas. Para obtener más información, consulte [Configuración de Voice Connectors para utilizar el análisis de llamadas](https://docs.aws.amazon.com/chime-sdk/latest/ag/configure-voicecon.html) en la *Guía del administrador de Amazon Chime SDK*.
+  EventBridge Objetivos de Amazon. Si no es así, consulte [Supervisión del SDK de Amazon Chime con la Guía del administrador EventBridge del SDK](https://docs.aws.amazon.com/chime-sdk/latest/ag/automating-chime-with-cloudwatch-events.html) de *Amazon Chime*.
+ Una función vinculada a un servicio que permite al conector de voz acceder a las acciones de los objetivos. EventBridge Para obtener más información, consulte [Uso de la política de roles vinculados al servicio Voice Connector de Amazon Chime SDK](https://docs.aws.amazon.com/chime-sdk/latest/ag/using-service-linked-roles-stream.html), en la *Guía del administrador de Amazon Chime SDK*.
+ Un Amazon Kinesis Data Streams. Si no es así, consulte [Creación y administración de transmisiones](https://docs.aws.amazon.com/streams/latest/dev/working-with-streams.html) en la *Guía para desarrolladores de Amazon Kinesis Streams*. El análisis y la transcripción de voz requieren un flujo de datos de Kinesis.
+ Para analizar las llamadas sin conexión, debe crear un lago de datos de Amazon Chime SDK. Para ello, consulte [Creación de un lago de datos de Amazon Chime SDK](ca-data-lake.md) más adelante en esta guía.

# Uso de la consola de Amazon Chime SDK para crear configuraciones de análisis de llamadas
<a name="create-config-console"></a>

Después de crear los requisitos previos enumerados en la sección anterior, puede usar la consola de Amazon Chime SDK para crear una o más configuraciones de análisis de llamadas. También puede utilizar la consola para asociar uno o varios Voice Connectors a sus configuraciones. Cuando complete ese proceso, el análisis de llamadas comenzará a ejecutarse con las características que habilitó al crear la configuración.

Siga estos pasos para crear una configuración de análisis de llamadas:

1. Especifique los detalles de la configuración, incluidos un nombre y etiquetas opcionales.

1. Configure los ajustes de grabación. Cree una configuración de análisis de llamadas que incluya información basada en la grabación y el machine learning.

1. Configure sus servicios de análisis.

1. Seleccione los destinos de salida para consumir información en tiempo real. Cree un lago de datos opcional para realizar análisis después de la llamada.

1. Crear un nuevo rol de servicio o usar un rol existente. 

1. Configura alertas en tiempo real que envíen notificaciones a través de Amazon EventBridge cuando se cumplan determinadas condiciones.

1. Revise sus ajustes y cree la configuración

Después de crear la configuración, habilite el análisis de llamadas asociando un Voice Connector a la configuración. Una vez hecho esto, el análisis de llamadas se inicia automáticamente cuando una llamada llega a ese conector de voz. Para obtener más información, consulte [Asociación de una configuración a un Voice Connector para el SDK de Amazon Chime SDK](ca-associate-vc-steps.md) más adelante en esta sección.

En las secciones siguientes se explica cómo completar cada paso del proceso. Amplíelos en el orden en el que se enumeran.

## Especificar detalles de configuración
<a name="ca-config-details"></a>

**Para especificar los detalles de configuración**

1. [Abre la consola Amazon Chime en https://console.aws.amazon.com/chime-sdk/ casa.](https://console.aws.amazon.com/chime-sdk/home)

1. En el panel de navegación, en **Análisis de llamadas**, seleccione **Configuraciones** y, a continuación, **Crear configuración**.

1. Bajo **Información básica**, haga lo siguiente:

   1. Escriba un nombre para la configuración. El nombre debe reflejar su caso de uso y cualquier etiqueta.

   1. (Opcional) En **Etiquetas**, seleccione **Añadir nueva etiqueta** y, a continuación, introduzca las claves de las etiquetas y los valores opcionales. Deberá definir las claves y los valores. Las etiquetas pueden ayudarle a consultar la configuración.

   1. Elija **Siguiente**.

## Configurar la grabación
<a name="recording-details"></a>

**Para configurar la grabación**
+ En la página **Configurar la grabación**, haga lo siguiente: 

  1. Seleccione la casilla **Activar la grabación de llamadas**. Esto permite grabar para las llamadas de Voice Connector o las transmisiones de KVS y enviar los datos a su bucket de Amazon S3.

  1. En **Formato de archivo**, seleccione **WAV con PCM** para obtener la mejor calidad de audio.

     —o—

     Seleccione **OGG con OPUS** para comprimir el audio y optimizar el almacenamiento.

  1. (Opcional) Según sea necesario, seleccione el enlace **Crear un bucket de Amazon S3** y siga estos pasos para crear un bucket de Amazon S3.

  1. Introduzca el URI de su bucket de Amazon S3 o seleccione **Examinar** para localizar un bucket.

  1. (Opcional) Seleccione **Activar la mejora de voz** para mejorar la calidad de audio de sus grabaciones.

  1. Elija **Siguiente**.

## Descripción de la mejora de la voz
<a name="understand-voice-enhancement"></a>

Al crear una configuración de análisis de llamadas, puede habilitar la grabación de llamadas y almacenar las llamadas grabadas en un bucket de Amazon S3. Como parte de ello, también puede activar la mejora de la voz y mejorar la calidad del audio de las llamadas almacenadas. La mejora de la voz solo se aplica a las grabaciones generadas después de activar la característica. Cuando la función de mejora de voz está activa, se crea una grabación mejorada además de la grabación original y se almacena en el mismo bucket y formato de Amazon S3. La mejora de la voz generará grabaciones mejoradas para llamadas de hasta 30 minutos de duración. No se generarán grabaciones mejoradas para las llamadas que duren más de 30 minutos. 

Las llamadas telefónicas se filtran por banda estrecha y se muestrean en 8. KHz La mejora de la voz aumenta la frecuencia de muestreo de 8 kHz a 16 kHz y utiliza un modelo de machine learning para ampliar el contenido de frecuencia de la banda estrecha a la banda ancha para que la voz suene más natural. La mejora de la voz también utiliza un modelo de reducción de ruido denominado Amazon Voice Focus para ayudar a reducir el ruido de fondo en el audio mejorado.

La mejora de la voz también utiliza un modelo de reducción de ruido llamado Voice Focus. El modelo ayuda a reducir el ruido de fondo en el audio mejorado. La mejora de voz aplica el modelo al audio de 16 pulgadas actualizado. KHz 

**nota**  
La característica de mejora de voz solo se admite en la región este de EE. UU. (Norte de Virginia) y oeste de EE. UU. (Oregón).

Los metadatos de las grabaciones de mejora de voz se publican a través del KDS configurado en la tabla del catálogo de datos de AWS Glue existente *call\$1analytics\$1recording\$1metadata*. *Para diferenciar la grabación de llamadas original de la grabación de llamadas mejorada por voz, se añade un nuevo campo denominado *detail-subtype* con valor a la notificación de KDS y a la tabla adhesiva call\$1analytics\$1recording\$1metadata. *VoiceEnhancement** Para obtener más información acerca del esquema de almacenamiento de datos, consulte [El modelo de datos de análisis de llamadas de Amazon Chime SDK.](ca-data-model.md).

### Formato de archivo de mejora de voz
<a name="enhancement-file-format"></a>

Tenga en cuenta lo siguiente con respecto a los archivos de grabación mejorados.
+ Las grabaciones mejoradas se graban en el mismo bucket de Amazon S3 que las grabaciones normales. Para configurar el destino, llame al [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_S3RecordingSinkConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_S3RecordingSinkConfiguration.html)o [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_S3RecordingSinkRuntimeConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_S3RecordingSinkRuntimeConfiguration.html)APIs, o bien, utilice la consola del SDK de Amazon Chime. 
+ Las grabaciones mejoradas tienen la palabra **\$1enhanced** anexada al nombre del archivo base.
+ Las grabaciones mejoradas mantienen el mismo formato de archivo que la grabación original. Para configurar el formato de archivo [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_S3RecordingSinkRuntimeConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_S3RecordingSinkRuntimeConfiguration.html) APIs, llame a [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_S3RecordingSinkConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_S3RecordingSinkConfiguration.html)o o utilice la consola del SDK de Amazon Chime.

En el siguiente ejemplo se muestra un formato de nombre de archivo típico.

```
s3://original_file_name_enhanced.wav
```

o

```
s3://original_file_name_enhanced.ogg
```

## Configuración de los servicios de análisis
<a name="configure-analytics"></a>

Amazon Transcribe proporciona transcripciones de texto de las llamadas. A continuación, puede utilizar las transcripciones para mejorar otros servicios de machine learning, como Amazon Comprehend o sus propios modelos de machine learning.

**nota**  
Amazon Transcribe también ofrece reconocimiento automático de idiomas. Sin embargo, no puede usar esa característica con modelos de lenguaje personalizados o redacción de contenido. Además, si usa la identificación de idioma con otras características, solo podrá usar los idiomas compatibles con esas características. Para obtener más información, consulte [Identificación del idioma con transcripciones de transmisión](https://docs.aws.amazon.com/transcribe/latest/dg/lang-id-stream.html), en la *Guía para desarrolladores de Amazon Transcribe*.

Análisis de llamadas con Amazon Transcribe es una API basada en el machine learning que proporciona transcripciones de llamadas, opiniones e información sobre conversaciones en tiempo real. El servicio elimina la necesidad de tomar notas y permite tomar medidas inmediatas ante los problemas detectados. El servicio también proporciona análisis posteriores a la llamada, como la opinión de las personas que llaman, los conductores de llamadas, el tiempo de inactividad, las interrupciones, la velocidad de la conversación y las características de la conversación.

**nota**  
De forma predeterminada, los análisis posteriores a la llamada transmiten las grabaciones de llamadas a su bucket de Amazon S3. Para evitar crear grabaciones duplicadas, no habilites la grabación de llamadas y el análisis posterior a la llamada al mismo tiempo.

Por último, Transcribe Call Analytics puede etiquetar automáticamente las conversaciones en función de frases específicas y ayudar a redactar información confidencial del audio y el texto. Para obtener más información sobre los procesadores multimedia de análisis de llamadas, la información generada por estos procesadores y los destinos de salida, consulte [Llamada al procesador de análisis y a los destinos de salida de Amazon Chime SDK](call-analytics-processor-and-output-destinations.md) más adelante en esta sección.

**Para configurar los servicios de análisis**

1. En la página **Configuración de los servicios de análisis**, active las casillas de verificación situadas junto a **Servicios de transcripción** o **Análisis de voz**. Puede seleccionar ambos elementos.

   Seleccione la casilla de verificación **Análisis de voz** para habilitar cualquier combinación de **Búsqueda de interlocutores** y **Análisis del tono de voz**. 

   Seleccione la casilla de verificación **Servicios de transcripción** para activar Amazon Transcribe o Transcribe Call Analytics.

   1. **Para activar la búsqueda de interlocutores**
      + Seleccione la casilla **Sí, acepto el reconocimiento de consentimiento para el análisis de voz de Amazon Chime SDK** y, a continuación, seleccione **Aceptar**.

   1. Para habilitar el análisis del tono de voz
      + Seleccione la casilla de verificación **Análisis del tono de voz**.

   1. Para habilitar Amazon Transcribe

      1. Seleccione el botón **Amazon Transcribe.**

      1. En **Configuración de idioma**, realice una de las siguientes acciones:

         1. Si las personas que llaman hablan un solo idioma, seleccione **Idioma específico**, abra la lista de **idiomas** y seleccione el idioma.

         1. Si las personas que llaman hablan varios idiomas, puede identificarlas automáticamente. Seleccione **Detección automática del idioma** 

         1. Abra la lista de **Opciones de idioma para la identificación automática de idiomas** y seleccione al menos dos idiomas.

         1. (Opcional) Abra la lista de **idioma preferidos** y especifique un idioma preferido. Cuando los idiomas que seleccionó en el paso anterior tienen puntuaciones de confianza coincidentes, el servicio transcribe el idioma preferido.

         1. (Opcional) Amplíe la **Configuración de eliminación del contenido**, seleccione una o más opciones y, a continuación, elija una o más de las opciones adicionales que aparecen. El texto auxiliar explica cada opción.

         1. (Opcional) Amplíe la **Configuración adicional**, seleccione una o más opciones y, a continuación, elija una o más de las opciones adicionales que aparecen. El texto auxiliar explica cada opción.

   1. Para habilitar el análisis de llamadas con Amazon Transcribe

      1. Seleccione el botón **Análisis de llamadas con Amazon Transcribe**.

      1. Abra la lista de **idiomas** y seleccione un idioma.

      1. (Opcional) Amplíe la **Configuración de eliminación del contenido**, seleccione una o más opciones y, a continuación, elija una o más de las opciones adicionales que aparecen. El texto auxiliar explica cada opción.

      1. (Opcional) Amplíe la **Configuración adicional**, seleccione una o más opciones y, a continuación, elija una o más de las opciones adicionales que aparecen. El texto auxiliar explica cada opción.

      1. (Opcional) Expanda la **Configuración de análisis posterior a la llamada** y haga lo siguiente:

         1. Seleccione la casilla de verificación **Análisis posterior a la llamada**.

         1. Introduzca el URI de su bucket de Amazon S3.

         1. Seleccione un tipo de redacción de contenido.

1. Cuando termine de hacer sus selecciones, seleccione **Siguiente**. 

## Configure los detalles de salida
<a name="configure-output"></a>

Una vez finalizados los pasos del procesamiento multimedia, debe seleccionar un destino para la salida de análisis. El análisis de llamadas proporciona información en tiempo real a través de Amazon Kinesis Data Streams y, opcionalmente, a través de un almacenamiento de datos en el bucket de Amazon S3 que elija. Para crear el almacén de datos, utilice una CloudFormation plantilla. La plantilla le ayuda a crear la infraestructura que envía los metadatos y la información de las llamadas a su bucket de Amazon S3. Para obtener más información sobre la creación del almacenamiento de datos, consulte [Creación de un lago de datos de Amazon Chime SDK](ca-data-lake.md) más adelante en esta sección. Para obtener más información sobre el esquema del almacenamiento de datos, consulte [El modelo de datos de análisis de llamadas de Amazon Chime SDK.](ca-data-model.md) también más adelante en esta sección.

Si habilitó el análisis de voz en la sección anterior, también puede añadir destinos de notificaciones de análisis de voz como AWS Lambda, Amazon Simple Queue Service o Amazon Simple Notification Service. En los siguientes pasos se explica cómo hacerlo.

**Para configurar los detalles de salida**

1. Abra la **lista de flujos de datos de Kinesis** y seleccione su flujo de datos.
**nota**  
Si desea visualizar sus datos, debe seleccionar el flujo de datos de Kinesis que utilizan el bucket de Amazon S3 y Amazon Kinesis Data Firehose.

1. (Opcional) Amplíe los **destinos adicionales de las notificaciones de análisis de voz** y seleccione cualquier combinación de destinos de AWS Lambda, Amazon SNS y Amazon SQS.

1. (Opcional) En **Analice y visualice la información**, active la casilla **Realice un análisis histórico con un lago de datos**. Para obtener más información acerca de los lagos de datos, consulte [Creación de un lago de datos de Amazon Chime SDK](ca-data-lake.md), más adelante en esta sección.

1. Cuando haya terminado, elija **Next (Siguiente)**.

## Configuración de permisos de acceso
<a name="configure-perms"></a>

Para habilitar el análisis de llamadas, el servicio de machine learning y otros recursos deben tener permisos para acceder a los medios de datos y ofrecer información. Puede utilizar un rol de servicio existente o utilizar la consola para crear uno nuevo. Para obtener más información acerca de los roles, consulte [Uso de la función de acceso a los recursos de análisis de llamadas de Amazon Chime SDK](call-analytics-resource-access-role.md), más adelante en esta sección.

**Para configurar permisos de acceso**

1. En la página **Configuración de los permisos de acceso**, haga lo siguiente:

   1. Seleccione **Crear y utilizar un nuevo rol de servicio**.

   1. En el cuadro **Sufijo del nombre de rol de servicio**, introduzca un sufijo descriptivo para el rol.

   —o—

   1. Seleccione **Usar un rol de servicio existente.**

   1. Abra la lista **Rol de servicio** y seleccione un rol.

1. Elija **Siguiente**.

## (Opcional) Configure alertas en tiempo real
<a name="configure-alerts"></a>

**importante**  
Para usar alertas en tiempo real, primero debe habilitar Amazon Transcribe o Amazon Transcribe Analytics.

Puedes crear un conjunto de reglas que envíen alertas en tiempo real a Amazon EventBridge. Cuando una información generada por Amazon Transcribe o el análisis de llamadas con Amazon Transcribe coincide con la regla especificada durante una sesión de análisis, se envía una alerta. Las alertas tienen el tipo de detalle`Media Insights Rules Matched`. EventBridge admite la integración con servicios descendentes como Amazon Lambda, Amazon SQS y Amazon SNS para activar notificaciones para el usuario final o iniciar otra lógica empresarial personalizada. Para obtener más información, consulte [Uso de EventBridge las notificaciones de Amazon para el SDK de Amazon Chime](using-eventbridge-notifications.md) más adelante en esta sección.

**Para configurar alertas**

1. En **Alertas en tiempo real**, seleccione **Alertas activas en tiempo real**.

1. En **Reglas**, seleccione **Crear regla**.

1. En la casilla **Nombre de la regla**, introduzca un nombre para la regla.

1. Abra la lista **Tipo de regla** y seleccione el tipo de regla que desee usar.

1. Utilice los controles que aparecen para añadir palabras clave a la regla y aplicar la lógica, por ejemplo, **mencionado** o **no mencionado**.

1. Elija **Siguiente**.

## Revisar y crear
<a name="review-create"></a>

**Para crear el archivo de configuración.**

1. Revise la configuración de cada sección. Si es necesario, seleccione **Editar** para cambiar una configuración.

1. Seleccione **Crear configuración**.

La configuración aparece en la página de **Configuraciones** de la consola de Amazon Chime SDK.

# Uso APIs para crear configuraciones de análisis de llamadas para el SDK de Amazon Chime
<a name="create-config-apis"></a>

Puede crear Voice Connectors y configuraciones de análisis de llamadas mediante programación y, a continuación, asociarlos para iniciar un flujo de trabajo de análisis de llamadas. En esta guía se presupone que sabe cómo escribir el código.

Las APIs que utilice varían en función del tipo de flujo de trabajo. Por ejemplo, para grabar audio, primero debe llamar a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html) para crear una configuración de análisis de llamadas. A continuación, llama al [CreateVoiceConnector](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateVoiceConnector.html)para crear un conector de voz. Por último, asocie la configuración a un conector de voz mediante la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_PutVoiceConnectorStreamingConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_PutVoiceConnectorStreamingConfiguration.html).

En cambio, para grabar audio con un productor de transmisiones de video de Kinesis, debe llamar a [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html) y, después, llamar a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html).

Para obtener más información sobre el uso de las configuraciones de análisis de llamadas para habilitar diferentes flujos de trabajo, consulte los flujos de trabajo en [Uso de las configuraciones de análisis de llamadas para Amazon Chime SDK](using-call-analytics-configurations.md) más adelante en esta sección.

# Asociación de una configuración a un Voice Connector para el SDK de Amazon Chime SDK
<a name="ca-associate-vc-steps"></a>

Después de utilizar la consola para crear una configuración de análisis de llamadas, se utiliza la configuración asociándole un Voice Connector. A continuación, el Voice Connector invoca automáticamente los servicios de análisis especificados en la configuración. El Voice Connector invoca el análisis de llamadas para cada llamada.

**Para asociar un Voice Connector**

1. [Abre la consola Amazon Chime en https://console.aws.amazon.com/chime-sdk/ casa.](https://console.aws.amazon.com/chime-sdk/home)

1. En el panel de navegación, en **Enlace troncal SIP**, seleccione **Voice Connectors**.

1. Elija el nombre del Voice Connector que desea asociar a una configuración y, a continuación, seleccione la pestaña **Streaming**.

1. Si aún no está seleccionado, seleccione **Iniciar** para iniciar la transmisión a Kinesis Video Streams.

1. En **Análisis de llamadas**, seleccione **Activar** y, en el menú que aparece, elige el ARN de la configuración de análisis de llamadas.

1. Seleccione **Save**.

**nota**  
Tras habilitar, deshabilitar o modificar una configuración asociada a un conector de voz, espere 5 minutos para que la nueva configuración se propague por el servicio y entre en vigor.

Para obtener más información sobre las configuraciones del análisis de llamadas, consulte [Administración del análisis de llamadas](https://docs.aws.amazon.com/chime-sdk/latest/ag/ag-call-analytics.html) en la *Guía del administrador de Amazon Chime SDK*.

Para obtener más información sobre el uso de las configuraciones de análisis de llamadas para habilitar diferentes flujos de trabajo, consulte [Uso de las configuraciones de análisis de llamadas para Amazon Chime SDK](using-call-analytics-configurations.md) más adelante en esta sección.

# Uso de las configuraciones de análisis de llamadas para Amazon Chime SDK
<a name="using-call-analytics-configurations"></a>

Para procesar el audio mediante una configuración de análisis de llamadas, debe crear un canal de análisis de llamadas, también conocido como canal de información multimedia. La canalización se crea durante una llamada para gestionar el audio y finaliza al final de la llamada. Los canales de análisis de llamadas requieren el ARN de una configuración de análisis de llamadas e información sobre la fuente de audio. La configuración de análisis de llamadas incluye detalles sobre los procesadores de audio, los destinos de la información y las configuraciones de los eventos de alerta, *pero no sobre la fuente de audio*. Esto le permite reutilizar la configuración en diferentes flujos de trabajo de análisis de llamadas, por ejemplo, con distintos Voice Connectors o fuentes KVS. La canalización de análisis de llamadas invoca los servicios de machine learning especificados en la configuración y graba el audio. Puede detener la canalización de forma manual o automática cuando finaliza la llamada.

Puede usar los canales de análisis de llamadas en una amplia variedad de casos de uso. Los siguientes flujos de trabajo muestran posibles formas de utilizar una configuración y un proceso de análisis de llamadas.

**Topics**
+ [Descripción de los flujos de trabajo para grabar llamadas para Amazon Chime SDK](recording-workflows.md)
+ [Descripción de los flujos de trabajo de las analíticas basadas en el machine learning para el Amazon Chime SDK](ml-based-analytics.md)

# Descripción de los flujos de trabajo para grabar llamadas para Amazon Chime SDK
<a name="recording-workflows"></a>

En los temas de esta sección se enumeran y describen los flujos de trabajo para grabar llamadas y Kinesis Video Streams.

# Grabar llamadas de Voice Connector
<a name="record-vc-calls"></a>

Utilice este flujo de trabajo cuando:
+ Ya usa, o planea usar, un Voice Connector para incorporar los medios SIP al análisis de llamadas.
**nota**  
Los Voice Connectors admiten SIP y SIPREC. Para obtener más información, consulte [Administración de Voice Connectors de Amazon Chime SDK](https://docs.aws.amazon.com/chime-sdk/latest/ag/voice-connectors.html), en la Guía del administrador de Amazon Chime SDK**.
+ Desea grabar automáticamente las llamadas SIP o SIPREC con baja latencia a los destinos de Amazon Simple Storage Service que elija.
+ Desea usar la consola de Amazon Chime SDK para crear la configuración y asociarla a un Voice Connector.
+ Desea aplicar la misma configuración de grabación a todas las llamadas de Voice Connector. Si desea aplicar varias configuraciones a uno o más Voice Connectors, consulte la siguiente sección.

Para habilitar las llamadas mediante programación, utilice el siguiente SDK de Amazon Chime. APIs
+ Use la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html) para crear una configuración de análisis de llamadas
+ Use [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateVoiceConnector.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateVoiceConnector.html) para crear un Voice Connector.
+ Use la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_PutVoiceConnectorStreamingConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_PutVoiceConnectorStreamingConfiguration.html) para asociar la configuración a un Voice Connector. 

Para obtener más información, consulte [Configuración de Voice Connectors para utilizar el análisis de llamadas](https://docs.aws.amazon.com/chime-sdk/latest/ag/configure-voicecon.html) en la *Guía del administrador de Amazon Chime SDK*. 

 El siguiente diagrama muestra el flujo de datos cuando un Voice Connector inicia una sesión de grabación de llamadas. Los números del diagrama corresponden al texto numerado que aparece a continuación. 

![\[Imagen que muestra el flujo de datos cuando un Voice Connector comienza a grabar una llamada.\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/images/call-analytics-workflow-1.png)


 En el diagrama: 

1. Utilice la consola de Amazon Chime SDK o la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html) para crear una configuración de análisis de llamadas. Durante el proceso de creación de la configuración, solo tiene que activar la grabación de llamadas, elegir el formato de archivo de grabación deseado y especificar el destino de Amazon S3 para almacenar los archivos de grabación. Para obtener más información, consulte [Creación de configuraciones de análisis de llamadas](https://docs.aws.amazon.com/chime-sdk/latest/ag/create-ca-config.html) en la *Guía del administrador de Amazon Chime SDK*.

1. Utilice la consola de Amazon Chime SDK o la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_PutVoiceConnectorStreamingConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_PutVoiceConnectorStreamingConfiguration.html) para asociar la configuración a un Voice Connector. Para usar la consola, consulte [Configuración de Voice Connectors para usar el análisis de llamadas](https://docs.aws.amazon.com/chime-sdk/latest/ag/configure-voicecon.html).

1. Durante una llamada saliente, el Voice Connector recibe el audio de cada participante de la llamada.

1. Si hay una configuración de grabación de análisis de llamadas conectada al Voice Connector, el servicio Voice Connector utiliza el servicio de canalización de medios para iniciar una sesión de grabación de análisis de llamadas.

1. El servicio de canalización de medios inicia el procesador de grabación de llamadas que supervisa la llamada en curso.

1. Cuando finaliza la llamada, el servicio de canalización de medios entrega el archivo de grabación de llamadas al bucket de Amazon S3 designado y proporciona los metadatos de la grabación a través de Amazon Kinesis Data Streams. Si hay un almacenamiento de datos activado, los metadatos de la llamada también se envían al almacenamiento de datos de Amazon Simple Storage Service. En los casos en que se utiliza el SIPREC para incorporar el audio SIP en el análisis de llamadas, los metadatos de las llamadas incluyen los metadatos del SIPREC en formato de tabla. Para obtener más información sobre las tablas de grabación, consulte [Descripción de las tablas del catálogo de AWS Glue datos del SDK de Amazon Chime](glue-tables.md), más adelante en esta sección.

1. El servicio Media Pipeline envía los eventos de estado de la canalización a Amazon por defecto EventBridge. Para obtener más información, consulta [Cómo usar EventBridge las notificaciones](https://docs.aws.amazon.com/chime-sdk/latest/dg/ca-eventbridge-notifications.html) en esta guía. 

**nota**  
 Tenga en cuenta que debe habilitar la transmisión por Voice Connector para poder grabar con un Voice Connector. Esta característica permite la transmisión de los datos de las llamadas a las transmisiones de Kinesis Video Streams gestionadas por Voice Connector en su cuenta. Para obtener más información, consulte [Transmisión de contenido multimedia del Voice Connector de Amazon Chime SDK a Kinesis Video Streams](https://docs.aws.amazon.com/chime-sdk/latest/ag/start-kinesis-vc.html) en la *Guía del administrador de Amazon Chime SDK.*

 También puede almacenar los datos de llamadas creados por Voice Connector en Kinesis Video Streams durante períodos variables, desde horas hasta días o incluso años. La opción de no retener datos limita la usabilidad de los datos de las llamadas para su consumo inmediato. El costo de Kinesis Video Streams se determina en función del ancho de banda y el almacenamiento total utilizados. Puede ajustar el período de retención de datos en cualquier momento dentro de la configuración de transmisión del Voice Connector. Para habilitar el registro de análisis de llamadas, debe asegurarse de que Kinesis Video Stream conserve los datos el tiempo suficiente para realizar el análisis de llamadas. Para ello, especifique un período de retención de datos adecuado. 

 Puede asociar una configuración de canalización de información sobre llamadas a tantos Voice Connectors como desee. También puede crear una configuración diferente para cada Voice Connector. Los conectores de voz los utilizan AWSService RoleForAmazonChimeVoiceConnector para llamar a la [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html)API en su nombre una vez por ID de transacción. Para obtener información sobre el rol, consulte [Uso del rol vinculado al servicio de Amazon Chime SDK para los Voice Connectors de Amazon Chime SDK](https://docs.aws.amazon.com/chime-sdk/latest/ag/using-service-linked-roles-stream.html#service-linked-role-permissions-stream) en la *Guía del administrador de Amazon Chime SDK*.

# Grabación con productores de Amazon Kinesis Video Streams
<a name="record-kvs-streams"></a>

Las transmisiones de Amazon Kinesis Video Streams se graban cuando: 
+ Debe aplicar diferentes configuraciones a una llamada en lugar de usar la misma configuración para todas las llamadas de Voice Connector.
+ Desea grabar audio SIP o no SIP que no sea procesado por un Voice Connector.

 Para utilizar esta opción de grabación de llamadas, debe publicar el audio en Kinesis Video Streams (KVS) y, a continuación, llamar a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html) con la información del canal de transmisión de KVS y un ARN de configuración de análisis de llamadas.

**nota**  
El análisis de llamadas APIs admite un máximo de dos canales de audio. También puedes activar la transmisión del Voice Connector y, a continuación, utilizar la información de KVS publicada en las EventBridge notificaciones del Voice Connector para iniciar la grabación de una llamada. 

 Al llamar a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html), puede elegir si desea especificar o no los números de los fragmentos para cada definición de canal de transmisión de KVS. Si proporciona un número de fragmento, el análisis de llamadas empezará a procesar la transmisión en ese fragmento. Si no especifica un identificador de fragmento, el análisis de llamadas empezará a procesar la transmisión a partir del último fragmento disponible. 

 El siguiente diagrama muestra el flujo de datos cuando un Voice Connector inicia una sesión de grabación de llamadas. Los números del diagrama corresponden al texto numerado que aparece a continuación. 

![\[Imagen que muestra el flujo de datos cuando un Voice Connector comienza a grabar una llamada.\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/images/call-analytics-workflow-2.png)


En el diagrama:

1. Puede usar la consola de Amazon Chime SDK o la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html) para crear una configuración de grabación de llamadas.

1. Usa el AWS SDK para crear una aplicación que transfiera audio externo al KVS o habilita la transmisión por Voice Connector para publicar automáticamente el audio de las llamadas en un KVS. Para obtener más información, consulte [Transmisión de contenido multimedia del Voice Connector de Amazon Chime SDK a Kinesis Video Streams](https://docs.aws.amazon.com/chime-sdk/latest/ag/start-kinesis-vc.html) en la *Guía del administrador de Amazon Chime SDK.*

1. Si la transmisión mediante Voice Connector está habilitada, el servicio Voice Connector envía las notificaciones de forma predeterminada. EventBridge

1. En el caso de la transmisión por Voice Connector, la aplicación puede usar el Amazon Chime Voice Connector desde donde se retransmiten `STARTED` eventos EventBridge para recopilar información de transmisión en KVS sobre los períodos de una llamada.

1. Una vez que la aplicación tenga la información de audio de los eventos de transmisión de Voice Connector o de una fuente externa, invocará la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html) de Amazon Chime SDK.

1. El servicio de canalización de medios inicia el procesador de grabación de llamadas que supervisa la llamada en curso.

1. El servicio Media Pipeline envía los eventos de estado de la canalización a Amazon por defecto EventBridge. Para obtener más información, consulta Cómo [usar EventBridge las notificaciones](https://docs.aws.amazon.com/chime-sdk/latest/dg/ca-eventbridge-notifications.html).

1. Una vez finalizada la llamada, el servicio de canalización de medios entregará el archivo de grabación de la llamada al bucket de Amazon S3 designado y proporcionará los metadatos de la grabación a través de Amazon Kinesis Data Streams. Si se habilita un almacenamiento de datos, los metadatos de la llamada también se enviarán al almacenamiento de datos de Amazon S3. En los casos en que se utilice el SIPREC para incorporar el audio SIP en el análisis de llamadas, los metadatos de las llamadas incluirán los metadatos del SIPREC en un práctico formato de tabla. Para obtener más información sobre las tablas de grabación, consulte [Descripción de las tablas del catálogo de AWS Glue datos del SDK de Amazon Chime](glue-tables.md), más adelante en esta sección.

1. Tu aplicación puede monitorizar la canalización y, en el caso de un conector de voz, el estado de la llamada mediante eventos publicados en Amazon EventBridge. Para obtener más información, consulta [Cómo usar EventBridge las notificaciones](https://docs.aws.amazon.com/chime-sdk/latest/dg/ca-eventbridge-notifications.html) en esta guía.

1. Para finalizar la grabación, llame a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_DeleteMediaPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_DeleteMediaPipeline.html) para finalizar la grabación de la llamada. 

Para ver ejemplos y grabaciones basadas en API, consulte [Receptor de grabación de Amazon S3](https://docs.aws.amazon.com/chime-sdk/latest/dg/ca-processors-sinks.html#ca-s3-recording-sink) en esta guía.

# Uso de la CLI para iniciar la grabación
<a name="using-the-cli-to-start-recording"></a>

Los ejemplos de esta sección muestran cómo hacer lo siguiente:
+ Utilice la CLI para ejecutar una configuración de análisis de llamadas e invocar [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html).
+ Utilice la CLI para especificar los destinos de grabación, los formatos de archivos de audio y los nombres de los archivos de audio.

**Topics**
+ [Ejecutar una configuración e iniciar una canalización](#cli-run-config)
+ [Establecer destinos, nombres y formatos](#cli-set-buckets-formats)

## Ejecutar una configuración e iniciar una canalización
<a name="cli-run-config"></a>

Utilice el siguiente comando para ejecutar una configuración e iniciar una canalización de información multimedia. El archivo pipeline.json contiene los ajustes de configuración.

```
aws chime-sdk-media-pipeline create-media-insights-pipeline --cli-input-json file://pipeline.json
```

El siguiente ejemplo muestra un archivo `pipeline.json` típico.

```
{
    "MediaInsightsPipelineConfigurationArn": arn:aws:chime:region;account_id:media-insights-pipeline-configuration/MyConfiguration,
    "KinesisVideoStreamRecordingSourceRuntimeConfiguration": {
        "Streams": [
            {
                "StreamArn": kinesis_video_stream_arn_1
            },
            {
                "StreamArn": kinesis_video_stream_arn_2
            }
        ],
        "FragmentSelector": {
            "FragmentSelectorType": "selector_type", // Specify "server_timestamp" or "producer_timestamp" as the fragment selector type
            "TimestampRange": {
                "StartTimestamp": epoch_time_seconds,
                "EndTimestamp": epoch_time_seconds
            }
        }
    },
    "S3RecordingSinkRuntimeConfiguration": {
        "Destination": arn:aws:s3:::bucket_name/prefix/optional_file_name,
        "RecordingFileFormat": file_format // Specify "Opus" or "WAV" as the recording file format, if you want to override the configuration
    }
}
```

`MediaInsightsPipelineConfigurationArn` es el ARN de configuración que recibe después de crear una configuración de análisis de llamadas.

## Establecer destinos, nombres y formatos
<a name="cli-set-buckets-formats"></a>

 En el siguiente ejemplo, se utiliza una carpeta denominada `MyRecordingBucket` como valor de `S3SinkConfiguration.Destination` y `Opus` como valor de `RecordingFileFormat`.

```
arn:aws:s3:::MyRecordingBucket/voice-connector-id/transaction-id_year-month-date-hour-minute-second-millisecond.ogg
```

El siguiente ejemplo usa `MyRecordingBucket` como el valor de `S3SinkConfiguration.Destination` y `Wav` como el valor de `RecordingFileFormat`.

```
arn:aws:s3:::MyRecordingBucket/voice-connector-id/transaction-id_year-month-date-hour-minute-second-millisecond.wav
```

# Descripción de los flujos de trabajo de las analíticas basadas en el machine learning para el Amazon Chime SDK
<a name="ml-based-analytics"></a>

En las secciones siguientes se describe cómo utilizar las características de análisis de machine learning que proporciona el análisis de llamadas de Amazon Chime SDK.

**nota**  
Si planea ejecutar varios análisis de machine learning en la misma transmisión de video de Kinesis, es posible que necesite aumentar el límite de nivel de conexión para `GetMedia` y para la transmisión de video de `GetMediaForFragmentList`. Para obtener más información, consulte [Límites de descuencias de Kinesis Video Streams](https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/limits.html) en la *Guía para desarrolladores de Kinesis Video Streams*.

# Uso de Voice Connectors para iniciar automáticamente el análisis de llamadas
<a name="automatic-vc-analytics"></a>

Utilice este flujo de trabajo cuando:
+ Desea una configuración basada en una consola.
+ Ya usa o planea usar un Voice Connector para incorporar los medios SIP al análisis de llamadas. Los Voice Connectors son compatibles con SIP y SIPREC. Para obtener más información sobre la configuración de los Voice Connectors, consulte [Administración de Amazon Chime SDK Voice Connector](https://docs.aws.amazon.com/chime-sdk/latest/ag/voice-connectors.html).
+ Desea aplicar la misma configuración de Media Insights a todas las llamadas de Voice Connector.
+ Debe usar el análisis de voz de Amazon Chime SDK, que requiere un Voice Connector o una canalización de información multimedia.

Para habilitar este flujo de trabajo en la consola de Amazon Chime SDK, siga los pasos para crear una configuración de grabación en [Configuración de Voice Connectors para utilizar el análisis de llamadas](https://docs.aws.amazon.com/chime-sdk/latest/ag/configure-voicecon.html).

Para habilitar este flujo de trabajo mediante programación, utilice lo siguiente APIs: [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html)API para crear una configuración de análisis de llamadas y, a continuación, asocie la configuración a un conector de voz mediante la [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_PutVoiceConnectorStreamingConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_PutVoiceConnectorStreamingConfiguration.html)API. Para obtener más información, consulte [Configuración de Voice Connectors para usar análisis de voz](https://docs.aws.amazon.com/chime-sdk/latest/ag/configure-voicecon.html) en la *Guía del administrador de Amazon Chime SDK*. 

 El siguiente diagrama muestra el flujo de datos cuando un Voice Connector inicia una sesión de análisis de llamadas. Los números del diagrama corresponden al texto numerado que aparece a continuación. 

 ![\[Image showing the flow of data when a Voice Connector initiates a call.\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/images/call-analytics-workflow-1.png)

 En el diagrama: 

1. Para crear una configuración de canalización de Media Insights, utilice la consola de Amazon Chime SDK o la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html).

1. Utilice la consola de Amazon Chime SDK o la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_PutVoiceConnectorStreamingConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_PutVoiceConnectorStreamingConfiguration.html) para asociar la configuración a un Voice Connector. Para asociar una configuración existente a un Voice Connectors, consulte [Configuración de Voice Connectors para utilizar el análisis de llamadas](https://docs.aws.amazon.com/chime-sdk/latest/ag/configure-voicecon.html), en la *Guía del administrador de Amazon Chime SDK*.

1. Durante una llamada saliente, el Voice Connector recibe el audio de cada participante de la llamada.

1. Gracias a la integración integrada con el análisis de llamadas, si una configuración de análisis de llamadas está conectada a un Voice Connector, el servicio Voice Connector inicia una sesión de análisis de llamadas mediante el servicio de canalización de medios.

1. El servicio de canalización de medios invoca uno o más procesadores multimedia, tal y como se especifica en la configuración.

1. El servicio de canalización de medios envía los datos de salida a uno o más destinos en función de la configuración. Por ejemplo, puede enviar análisis en tiempo real a través de Amazon Kinesis Data Streams y, si está configurado, puede enviar los metadatos y análisis de la llamada a un almacenamiento de datos de Amazon S3.

1. El servicio Media Pipeline envía los eventos de estado de la canalización a Amazon por defecto EventBridge. Si has configurado reglas, las notificaciones correspondientes también se enviarán EventBridge a Amazon. Para obtener más información, consulta Cómo [usar EventBridge las notificaciones](https://docs.aws.amazon.com/chime-sdk/latest/dg/ca-eventbridge-notifications.html).

**nota**  
Un procesador de análisis de voz solo se inicia automáticamente cuando llamas al [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html)quirófano [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartVoiceToneAnalysisTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartVoiceToneAnalysisTask.html) APIs. 
Debe habilitar la transmisión por Voice Connector para utilizar el análisis de llamadas con Voice Connector. Esta característica permite la transmisión de los datos de las llamadas a las transmisiones de Kinesis Video Streams gestionadas por Voice Connector en su cuenta. Para obtener más información, consulte [Transmisión de contenido multimedia del Voice Connector de Amazon Chime SDK a Kinesis Video Streams](https://docs.aws.amazon.com/chime-sdk/latest/ag/start-kinesis-vc.html) en la *Guía del administrador de Amazon Chime SDK.* 

 Puede almacenar los datos de llamadas de Voice Connector en Kinesis Video Streams durante períodos de tiempo variables, desde horas hasta años. La opción de no retener datos limita la usabilidad de los datos de las llamadas para su consumo inmediato. El costo de Kinesis Video Streams se determina en función del ancho de banda y el almacenamiento total utilizados. Es posible ajustar el período de retención de datos en cualquier momento editando la configuración de transmisión de su Voice Connector. Para habilitar el registro de análisis de llamadas, debe asegurarse de que Kinesis Video Stream conserve los datos hasta que finalice el análisis de llamadas. Para ello, especifique un período de retención de datos adecuado. 

 Puede asociar una configuración de canalización de información multimedia a tantos Voice Connectors como desee. También puede crear una configuración diferente para cada Voice Connector. Los conectores de voz lo utilizan AWSService RoleForAmazonChimeVoiceConnector para llamar a la [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html)API en su nombre una vez por ID de transacción. Para obtener información sobre el rol, consulte [Uso del rol vinculado al servicio de Amazon Chime SDK para los Voice Connectors de Amazon Chime SDK](https://docs.aws.amazon.com/chime-sdk/latest/ag/using-service-linked-roles-stream.html#service-linked-role-permissions-stream) en la *Guía del administrador de Amazon Chime SDK*. 

# Uso del análisis de llamadas APIs con conectores de voz
<a name="ca-apis-with-vc"></a>

Utilice este flujo de trabajo si utiliza un Voice Connector pero necesita controlar cuándo aplicar una configuración de análisis de llamadas y a qué llamada aplicar la configuración.

 Para usar este método, debe crear un EventBridge objetivo para los eventos que publica Voice Connector y, a continuación, usar los eventos para activar el proceso APIs de análisis de llamadas. Para obtener más información, consulte [Automatización del SDK de Amazon Chime EventBridge con la Guía del administrador del SDK](https://docs.aws.amazon.com/chime-sdk/latest/ag/automating-chime-with-cloudwatch-events.html) de *Amazon Chime*. 

 En el siguiente diagrama, se muestra cómo implementar un control más detallado al utilizar el análisis de llamadas con Voice Connector. Los números del diagrama corresponden a los números del texto siguiente. 

![\[Imagen que muestra el flujo de datos cuando se utilizan llamadas a la API con Voice Connectors.\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/images/analytics-vc-with-apis.png)


 En el diagrama: 

1. Para crear una configuración de canalización de Media Insights, utilice la consola de Amazon Chime SDK o la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html).

1. Durante una llamada saliente, el Voice Connector recibirá el audio de los participantes.

1. El conector de voz envía el audio de la llamada a Kinesis Video Stream y los eventos correspondientes a. EventBridge Estos eventos tienen metadatos de transmisión y llamadas.

1. La suscripción a su aplicación se realiza a EventBridge través de un EventBridge Target.

1. La aplicación invoca la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html) de Amazon Chime SDK.

1. El servicio de canalización de medios invoca uno o más procesadores multimedia en función de los elementos del procesador de la configuración de la canalización de información multimedia.

1. El servicio de canalización de medios envía los datos de salida a uno o más destinos en función de la configuración. El análisis de llamadas de Amazon Chime SDK proporcionará análisis en tiempo real a través de Amazon Kinesis Data Streams y, si está configurado, realizará análisis de metadatos de llamadas a un almacenamiento de datos de Amazon S3.

1. El servicio Media Pipeline envía los eventos a Amazon EventBridge. Si has configurado reglas, las notificaciones correspondientes también se enviarán EventBridge a Amazon.

1. Puede pausar o reanudar la sesión de análisis de llamadas invocando la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_UpdateMediaInsightsPipelineStatus.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_UpdateMediaInsightsPipelineStatus.html).
**nota**  
La grabación de llamadas no permite pausar ni reanudar las llamadas. Además, las tareas de análisis de voz iniciadas para la llamada también se detienen al pausar una sesión. Para reiniciarlos, debe llamar al [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html)quirófano [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartVoiceToneAnalysisTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartVoiceToneAnalysisTask.html) APIs.

1. Si selecciona el análisis del tono de voz durante la configuración, para iniciar el análisis de voz, llame al [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html)quirófano [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartVoiceToneAnalysisTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartVoiceToneAnalysisTask.html) APIs.

# Uso del análisis de llamadas con productores de Kinesis Video Streams
<a name="ca-apis-kvs"></a>

 Para usar esta opción, debe publicar los datos de audio en Kinesis Video Streams (KVS) y, a continuación, llamar a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html) con la información del canal de transmisión KVS.

**nota**  
El análisis de llamadas APIs admite un máximo de dos canales de audio.

Al llamar a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html), puede especificar los números de fragmento para cada definición de canal de transmisión KVS. Si proporciona un número de fragmento, Call Analytics comienza a procesar la transmisión en ese fragmento. De lo contrario, el análisis de llamadas comienza a procesar la transmisión desde el último fragmento disponible.

El análisis de llamadas admite audio PCM (solo formatos de audio little-endian de 16 bits firmados, que no incluyen WAV) con una frecuencia de muestreo de audio entre 8 kHz y 48 kHz. El audio de baja calidad, como el audio de telefonía, suele rondar los 8000 Hz. El audio de alta calidad suele oscilar entre 16 000 Hz y 48 000 Hz. La frecuencia de muestreo que especifique debe coincidir con la del audio. Para obtener más información, consulte [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_KinesisVideoStreamSourceRuntimeConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_KinesisVideoStreamSourceRuntimeConfiguration.html) en la *Referencia de la API de Amazon Chime SDK*.

El SDK para productores de Kinesis Video Streams proporciona un conjunto de bibliotecas que puede utilizar para transmitir datos de audio a un Kinesis Video Stream. Para obtener más información, consulte [Bibliotecas de productores de Kinesis Video Streams](https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/producer-sdk.html) en la *Guía para desarrolladores de Amazon Kinesis Video Streams*.

El siguiente diagrama muestra el flujo de datos cuando se utiliza el análisis de llamadas con un productor de Kinesis Video Stream personalizado. Los números del diagrama corresponden al texto numerado que aparece a continuación.

![\[Imagen que muestra el flujo de datos cuando se utiliza el análisis de llamadas con un productor de Kinesis Video Stream.\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/images/analytics-kvs-with-apis.png)


1. Utiliza la AWS consola o la [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html)API para crear una configuración de canalización de Media Insights.

1. Utilice un productor de Kinesis Video Stream para escribir audio en Kinesis Video Streams.

1. La aplicación invoca a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html).

1. El servicio de canalización de medios lee el audio de las transmisiones de Kinesis Video Streams del cliente.

1. El servicio Media Pipeline envía los eventos a Amazon EventBridge. Si has configurado reglas, las notificaciones correspondientes también se enviarán EventBridge a Amazon.

1. El servicio de canalización de medios invoca uno o más elementos del procesador.

1. El servicio de canalización de medios envía los datos de salida a uno o más elementos receptores.

1. Puede pausar o reanudar la sesión de análisis de llamadas invocando la API [ UpdateMediaInsightsPipelineStatus](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_UpdateMediaInsightsPipelineStatus.html).
**nota**  
La grabación de llamadas no admite pausas ni reanudaciones.

1. Tu aplicación puede procesar los EventBridge eventos de Amazon para activar flujos de trabajo empresariales personalizados.

1. Si seleccionas el análisis de voz al crear una configuración, tu aplicación puede iniciar el análisis de voz llamando al [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html)o [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartVoiceToneAnalysisTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartVoiceToneAnalysisTask.html) APIs.

# Administración de canalizaciones de análisis de llamadas para Amazon Chime SDK
<a name="managing-call-analytics-pipelines"></a>

 Para leer, enumerar y eliminar los canales de información multimedia, llame a [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_GetMediaPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_GetMediaPipeline.html), y [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_DeleteMediaPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_DeleteMediaPipeline.html) APIs. 

 Los canalizaciones de información multimedia se detienen si se cumple alguna de las siguientes condiciones: 
+ Ninguna de las transmisiones de video de Kinesis envía fragmentos nuevos a una canalización de `InProgress` durante 15 segundos.
+ Se llama a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_DeleteMediaPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_DeleteMediaPipeline.html).
+ La canalización de información multimedia se creó hace más de 8 horas. El sistema detiene la canalización automáticamente.
+ La canalización de información multimedia permanece en pausa durante más de 2 horas. El sistema detiene la canalización automáticamente.

# Pausado y reanudación de canalizaciones de análisis de llamadas para el SDK de Amazon Chime SDK
<a name="pausing-and-resuming-call-analytics-pipelines"></a>

Para pausar y reanudar una canalización de información multimedia, invoque la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_UpdateMediaInsightsPipelineStatus.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_UpdateMediaInsightsPipelineStatus.html) con una acción `Pause` o `Resume`. Para ello, debe pasar el ID o el ARN de la canalización en el campo `Identifier`.

**aviso**  
Advertencia: la API `UpdateMediaInsightsPipelineStatus` *detiene* todas las tareas de análisis de voz iniciadas en una canalización de información multimedia cuando se proporciona un estado de `Pause`. Cuando se proporciona el estado de `Resume`, las tareas no se reanudan y se deben iniciar de nuevo. Debe proporcionar todos los avisos necesarios y obtener todos los consentimientos necesarios de los ponentes antes de volver a iniciar las tareas. Para obtener más información, consulte [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html) o [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartVoiceToneAnalysisTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartVoiceToneAnalysisTask.html) en la *Referencia de la API de Amazon Chime SDK*.

Mientras está en pausa, la canalización deja de enviar contenido multimedia a los procesadores y de escribir datos en los flujos de datos de Kinesis y en el almacenamiento de datos. Al `Resume` la canalización, el servicio envía el último fragmento disponible en la transmisión. Los canales de información multimedia se detienen automáticamente cuando se detienen durante más de 2 horas. **Tenga en cuenta que** la grabación de llamadas no admite pausas ni reanudaciones. 

 Para obtener más información, consulte los siguientes temas: 
+ [Uso de EventBridge notificaciones](https://docs.aws.amazon.com/chime-sdk/latest/dg/ca-eventbridge-notifications.html).
+ [https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/API_dataplane_StartSelector.html#KinesisVideo-Type-dataplane_StartSelector-StartSelectorType](https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/API_dataplane_StartSelector.html#KinesisVideo-Type-dataplane_StartSelector-StartSelectorType) en la *Guía para desarrolladores de Amazon Kinesis Video Streams*.
+ [Procesador de análisis de llamadas con Amazon Transcribe](https://docs.aws.amazon.com/chime-sdk/latest/dg/ca-processors-sinks.html#ca-transcribe-analytics-processor).

**nota**  
 Se le facturará el uso del análisis de llamadas mientras una canalización esté en pausa. Sin embargo, no se le facturan AWS los servicios a los que se accede mediante la función de acceso a los recursos, como Amazon Transcribe y Amazon Kinesis. 

 Puede leer, actualizar y eliminar las configuraciones de análisis de llamadas existentes [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_DeleteMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_DeleteMediaInsightsPipelineConfiguration.html) APIs mediante [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_GetMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_GetMediaInsightsPipelineConfiguration.html)y pasando el nombre de la configuración o el ARN en el campo Identificador. [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_UpdateMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_UpdateMediaInsightsPipelineConfiguration.html) 

 Puede enumerar las configuraciones llamando a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_media-pipelines-chime_ListMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_media-pipelines-chime_ListMediaInsightsPipelineConfiguration.html). 

# Uso de la función de acceso a los recursos de análisis de llamadas de Amazon Chime SDK
<a name="call-analytics-resource-access-role"></a>

La cuenta que llama debe crear la función de acceso a los recursos que utiliza una configuración de canalización de información multimedia. No puede utilizar roles en cuentas cruzadas. 

En función de las características que habilite al crear una configuración de análisis de llamadas, deberá utilizar políticas de recursos adicionales. Amplíe las siguientes secciones para obtener más información.

## Política mínima requerida
<a name="minimum-policy"></a>

El puesto requiere, como mínimo, la siguiente política:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
            "Effect": "Allow",
            "Action": [
                "transcribe:StartCallAnalyticsStreamTranscription",
                "transcribe:StartStreamTranscription"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "kinesisvideo:GetDataEndpoint",
                "kinesisvideo:GetMedia"
            ],
            "Resource": "arn:aws:kinesisvideo:us-east-1:111122223333:stream/Chime*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "kinesisvideo:GetDataEndpoint",
                "kinesisvideo:GetMedia"
            ],
            "Resource": "arn:aws:kinesisvideo:us-east-1:111122223333:stream/*",
            "Condition": {
                "StringLike": {
                    "aws:ResourceTag/AWSServiceName": "ChimeSDK"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": ["kms:Decrypt"],
            "Resource": "arn:aws:kms:us-east-1:111122223333:key/*",
            "Condition": {
                "StringLike": {
                    "aws:ResourceTag/AWSServiceName": "ChimeSDK"
                }
            }
        }
    ]
}
```

------

También debe utilizar la siguiente política de confianza:

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "mediapipelines.chime.amazonaws.com"
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "StringEquals": {
            "aws:SourceAccount": "111122223333"
        },
        "ArnLike": {
            "aws:SourceARN": "arn:aws:chime:*:111122223333:*"
        }
        }
    }
  ]
}
```

------

## Política KinesisDataStreamSink
<a name="kds-stream-sink-policy"></a>

Si usa la `KinesisDataStreamSink`, añada la siguiente política:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
            "Effect": "Allow",
            "Action": [
                "kinesis:PutRecord"
            ],
            "Resource": [
                "arn:aws:kinesis:us-east-1:111122223333:stream/output_stream_name"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "kms:GenerateDataKey"
            ],
            "Resource": [
            "arn:aws:kms:us-east-1:111122223333:key/*"
            ],
            "Condition": {
                "StringLike": {
                    "aws:ResourceTag/AWSServiceName": "ChimeSDK"
                }
            }
        }
    ]
}
```

------

## Política S3RecordingSink
<a name="s3-recording-sink-policy"></a>

Si usa la `S3RecordingSink`, añada la siguiente política:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:PutObjectAcl",
                "s3:PutObjectTagging"
            ],
            "Resource": [
                "arn:aws:s3:::input_bucket_path/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "kinesisvideo:GetDataEndpoint",
                "kinesisvideo:ListFragments",
                "kinesisvideo:GetMediaForFragmentList"
            ],
            "Resource": [
                "arn:aws:kinesisvideo:us-east-1:111122223333:stream/*"
            ],
            "Condition": {
                "StringLike": {
                    "aws:ResourceTag/AWSServiceName": "ChimeSDK"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "kinesisvideo:ListFragments",
                "kinesisvideo:GetMediaForFragmentList"
            ],
            "Resource": [
            "arn:aws:kinesisvideo:us-east-1:111122223333:stream/Chime*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "kms:GenerateDataKey"
            ],
            "Resource": [
            "arn:aws:kms:us-east-1:111122223333:key/*"
            ],
            "Condition": {
                "StringLike": {
                    "aws:ResourceTag/AWSServiceName": "ChimeSDK"
                }
            }
        }
    ]
}
```

------

## Política de análisis posterior a las llamadas
<a name="post-call-analytics-policy"></a>

Si utiliza la característica de análisis posterior a las llamadas de `AmazonTranscribeCallAnalyticsProcessor`, añada la siguiente política:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "iam:PassRole"
            ],
            "Resource": [
                "arn:aws:iam::111122223333:role/transcribe_role_name"
            ],
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "transcribe.streaming.amazonaws.com"
                }
            }
        }
    ]
}
```

------

## Política VoiceEnhancementSinkConfiguration
<a name="enhancement-sink-config-policy"></a>

Si usa el elemento `VoiceEnhancementSinkConfiguration`, añada la siguiente política.

------
#### [ JSON ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Effect":"Allow",
         "Action":[
            "s3:GetObject",
            "s3:PutObject",
            "s3:PutObjectAcl",
            "s3:PutObjectTagging"
         ],
         "Resource":[
            "arn:aws:s3:::input_bucket_path/*"
         ]
      },
      {
         "Effect":"Allow",
         "Action":[
            "kinesisvideo:GetDataEndpoint",
            "kinesisvideo:ListFragments",
            "kinesisvideo:GetMediaForFragmentList"
         ],
         "Resource":[
            "arn:aws:kinesisvideo:us-east-1:111122223333:stream/*"
         ],
         "Condition":{
            "StringLike":{
               "aws:ResourceTag/AWSServiceName":"ChimeSDK"
            }
         }
      },
      {
         "Effect":"Allow",
         "Action":[
            "kinesisvideo:ListFragments",
            "kinesisvideo:GetMediaForFragmentList"
         ],
         "Resource":[
         "arn:aws:kinesisvideo:us-east-1:111122223333:stream/Chime*"
         ]
      },
      {
         "Effect":"Allow",
         "Action":[
            "kms:GenerateDataKey"
         ],
         "Resource":[
         "arn:aws:kms:us-east-1:111122223333:key/*"
         ],
         "Condition":{
            "StringLike":{
               "aws:ResourceTag/AWSServiceName":"ChimeSDK"
            }
         }
      }
   ]
}
```

------

## Política VoiceAnalyticsProcessor
<a name="voice-analytics-processor-policy"></a>

Si usa la `VoiceAnalyticsProcessor`, añada las políticas para los receptores `LambdaFunctionSink`, `SqsQueueSink`y `SnsTopicSink` en función de los receptores que haya definido.

Política de `LambdaFunctionSink`:    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "lambda:InvokeFunction",
        "lambda:GetPolicy"
       ],
      "Resource": [
          "arn:aws:lambda:us-east-1:111122223333:function:function_name"
       ],
      "Effect": "Allow"
    }
  ]
}
```

Política `SqsQueueSink`    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "sqs:SendMessage",
        "sqs:GetQueueAttributes"
       ],
      "Resource": [
      "arn:aws:sqs:us-east-1:111122223333:queue_name"
        ],
      "Effect": "Allow"
    },
    {
      "Effect": "Allow",
      "Action": ["kms:GenerateDataKey", "kms:Decrypt"],
      "Resource": "arn:aws:kms:us-east-1:111122223333:key/*",
      "Condition": {
        "StringLike": {
            "aws:ResourceTag/AWSServiceName": "ChimeSDK"
        }
      }
    }
  ]
}
```

Política de `SnsTopicSink`:    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "sns:Publish",
        "sns:GetTopicAttributes"
      ],
      "Resource": [
      "arn:aws:sns:us-east-1:111122223333:topic_name"
      ],
      "Effect": "Allow"
    },
    {
      "Effect": "Allow",
      "Action": ["kms:GenerateDataKey", "kms:Decrypt"],
      "Resource": "arn:aws:kms:us-east-1:111122223333:key/*",
      "Condition": {
        "StringLike": {
            "aws:ResourceTag/AWSServiceName": "ChimeSDK"
        }
      }
    }
  ]
}
```

# Descripción de los estados de análisis de llamadas para Amazon Chime SDK
<a name="call-analytics-statuses"></a>

Los canalizaciones de información multimedia rastrean un conjunto de estados al realizar una o ambas de las siguientes acciones: 
+ Utilice varios elementos de procesamiento de machine learning, como Amazon Transcribe y el análisis de voz.
+ Habilite la grabación de llamadas con o sin procesamiento de machine learning.

[Para obtener los estados de las canalizaciones y los elementos, usa la [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_GetMediaPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_GetMediaPipeline.html)API y EventBridge las notificaciones.](using-eventbridge-notifications.md)

Para obtener los estados de las tareas de análisis de voz, usa los objetivos [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_GetSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_GetSpeakerSearchTask.html)de [notificación y y análisis de voz](va-notification-targets.md). [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_GetVoiceToneAnalysisTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_GetVoiceToneAnalysisTask.html) APIs

Los canalizaciones de información multimedia rastrean los siguientes estados.
+ **Estado de la canalización**: el estado general de una canalización de análisis de llamadas, también conocida como canalización de información multimedia. Esto viene determinado por los estados de los elementos.
+ **Estado del elemento:** el estado de procesamiento de los elementos individuales de configuración de la canalización de información multimedia.
+ **Estado de la tarea**: el estado de procesamiento de una tarea de flujo de información de medios iniciada para el análisis de voz. El estado del elemento de `VoiceAnalyticsProcessor` viene determinado por los estados de las tareas. Ningún otro elemento de una canalización de análisis de llamadas tiene un estado de tarea.

  Para obtener más información sobre las tareas de canalización de información multimedia, consulte [Descripción de la terminología de análisis de llamadas para el Amazon Chime SDK](ca-terms-concepts.md) anteriormente en esta guía.

No todos los tipos de elementos de configuración de información multimedia tienen estados de elemento. En general, solo los elementos de configuración de información multimedia del tipo «procesador» tienen un estado de elemento. Además, los receptores de grabación y mejora de voz de Amazon S3 tienen estados de procesador. En concreto, existen estados de elementos para los siguientes tipos de elementos de configuración de información multimedia:
+ `AmazonTranscribeProcessor`
+ `AmazonTranscribeCallAnalyticsProcessor`
+ `S3RecordingSink`
+ `VoiceAnalyticsProcessor`
+ `VoiceEnhancementSink`

El estado de la canalización viene determinado por los estados de los elementos, de la siguiente manera:


| Estado de la canalización | Condición | 
| --- | --- | 
| NotStarted | No se han iniciado todos los estados de los elementos. | 
| Inicializando | Al menos un elemento se está inicializando y el resto no se ha iniciado. | 
| InProgress | Hay al menos un elemento en progreso.  | 
| Con error | Al menos un elemento ha fallado y los elementos restantes están parados. | 
| Detención | Consulte [Administración de canalizaciones de análisis de llamadas para Amazon Chime SDK](managing-call-analytics-pipelines.md) para obtener una lista completa de las condiciones de parada. | 
| Stopped | Todos los elementos están parados. | 
| Paused | Todos los elementos están en pausa. | 

A diferencia de otros estados de elementos, el elemento de `VoiceAnalyticsProcessor` tiene algunos matices. Como se mencionó anteriormente, el estado del elemento de `VoiceAnalyticsProcessor`, correspondiente a la característica de análisis de voz de Amazon Chime SDK, viene determinado por los estados de las tareas creados a partir de [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html) y [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartVoiceToneAnalysisTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartVoiceToneAnalysisTask.html).
+ El estado del elemento `VoiceAnalyticsProcessor` comienza en un estado `NotStarted`, ya que `StartSpeakerSearchTask` y `StartVoiceToneAnalysisTask` deben invocarse antes de que el elemento pueda cambiar el estado a `Initializing` y después a `InProgress`.
+ `VoiceAnalyticsProcessor` se mantiene en estado `InProgress` mientras se inicie una tarea y no se cumpla la [condición de parada](managing-call-analytics-pipelines.md) mientras la tarea se esté ejecutando.
+ Aunque `VoiceAnalyticsProcessor` sea `InProgress`, solo se le cobrará por el tiempo que se procesen las tareas.
+ Para limpiar los canales de información multimedia en los que se ha iniciado al menos una tarea de análisis de voz y no hay más tareas en ejecución, debe llamar a `DeleteMediaPipeline`.
+ Mientras una tarea se ejecute o se complete correctamente, el estado del elemento `VoiceAnalyticsProcessor` se mantiene como `InProgress`.

# Supervisión de los canales de análisis de llamadas para el SDK de Amazon Chime con Amazon CloudWatch
<a name="monitoring-with-cloudwatch"></a>

Puede utilizar Amazon CloudWatch para supervisar los canales de análisis de llamadas del SDK de Amazon Chime. También puede establecer alarmas que vigilen determinados umbrales y enviar notificaciones o realizar acciones cuando se cumplan dichos umbrales. Para obtener más información al respecto CloudWatch, consulta la [Guía del CloudWatch usuario de Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/).

**Topics**
+ [Requisitos previos](#monitoring-prereqs)
+ [Métricas de análisis de llamadas](#monitoring-metrics)
+ [CloudWatch dimensiones de las métricas de la canalización](#monitoring-dimensions)

## Requisitos previos
<a name="monitoring-prereqs"></a>

Para usar CloudWatch las métricas, primero debes crear un rol vinculado al servicio de Media Pipelines que conceda permisos para publicar métricas de servicio en Amazon. CloudWatch Para obtener más información acerca del rol vinculado a servicios, consulte [Creación de un rol vinculado a servicios para las canalizaciones de contenido multimedia de Amazon Chime SDK](create-pipeline-role.md) en esta guía.

## Métricas de análisis de llamadas
<a name="monitoring-metrics"></a>

El análisis de llamadas de Amazon Chime SDK publica las siguientes métricas en el espacio de nombres `AWS/ChimeSDK` de las canalizaciones de información multimedia que cree mediante una configuración de información multimedia.


| Métrica | Description (Descripción) | 
| --- | --- | 
|  `MediaInsightsPipelineCreated`  |  La canalización de información multimedia se creó de forma satisfactoria. Unidad: recuento  | 
|  `MediaInsightsPipelineStopped`  |  La canalización de información multimedia se detuvo de forma satisfactoria. Unidad: recuento  | 
|  `MediaInsightsPipelineFailed`  |  La canalización de información multimedia ha producido un error. Unidad: recuento  | 
|  `MediaInsightsPipelineDuration`  |  El tiempo transcurrido entre la creación de la canalización y la interrupción o el error. Unidad: segundos  | 
|  `MediaInsightsPipelineBillingDuration`  |  La duración de la facturación de la canalización de información multimedia. Unidad: recuento  | 
|  `RecordingFileSize`  |  El tamaño del archivo de grabación. Unidad: bytes  | 
|  `RecordingDuration `  |  La duración de la grabación. Unidad: segundos  | 

## CloudWatch dimensiones de las métricas de la canalización
<a name="monitoring-dimensions"></a>

En la siguiente tabla, se enumeran las CloudWatch dimensiones que puede utilizar para supervisar las canalizaciones de análisis de llamadas.


| Dimensión | Description (Descripción) | 
| --- | --- | 
| `MediaInsightsPipelineConfigurationId` | El ID de la configuración de la canalización de información multimedia. | 
| `MediaInsightsPipelineConfigurationName` | El nombre de la configuración de la canalización de información multimedia. | 

# Llamada al procesador de análisis y a los destinos de salida de Amazon Chime SDK
<a name="call-analytics-processor-and-output-destinations"></a>

 Solo puede especificar elementos únicos una vez por configuración de canalización de información multimedia. Todos los procesadores y receptores deben residir en la misma AWS cuenta y debe crearlos en la misma AWS región que el punto final al que llame. Por ejemplo, si usa el punto de conexión de `us-east-1` para las canalizaciones multimedia de Amazon Chime SDK, no podrá transferir un flujo de datos de Kinesis desde la región de `us-west-2`. 

Amplíe cada sección para obtener información sobre cada destino.

## Destinos del procesador de análisis de llamadas con Amazon Transcribe
<a name="amazon-transcribe-call-analytics-processor"></a>

Receptores compatibles: `KinesisDataStreamSink`.

No puede combinar este procesador con un procesador Amazon Transcribe. Para obtener más información sobre los análisis de llamadas con Amazon Transcribe, consulte [Análisis de llamadas en tiempo real](https://docs.aws.amazon.com/transcribe/latest/dg/call-analytics-streaming.html) en la *Guía para desarrolladores de Amazon Transcribe*. Si habilita el [análisis posterior a la llamada](https://docs.aws.amazon.com/transcribe/latest/dg/tca-post-call.html) mediante la inclusión de `PostCallAnalyticsSettings` en la llamada a la API `AmazonTranscribeCallAnalyticsProcessorConfiguration`, recibirá artefactos en la ubicación de Amazon S3 especificada cuando la canalización de información multimedia se detenga y finalice el procesamiento.

**nota**  
Si pausas la canalización durante más de 35 segundos y, a continuación, la reanudas, los artefactos posteriores a la llamada se generan en archivos separados con sesiones diferentes IDs en el bucket de Amazon S3.

Los artefactos posteriores a la llamada incluyen un archivo JSON de análisis y un archivo WAV u Opus de grabación de audio. La URL del bucket de Amazon S3 para los archivos de grabación redactados (si habilita la redacción de contenido) y no redactados se envía al flujo de datos de Kinesis una vez por cada sesión posterior a la llamada de análisis de llamadas con Amazon Transcribe como parte de `onetimeMetadata` en la sección de metadatos.

El análisis de llamadas con Amazon Transcribe utiliza los datos de audio introducidos desde la transmisión de video de Kinesis.
+ Codificación multimedia compatible: audio little-endian de 16 bits firmado por PCM.
+ Frecuencias de muestreo multimedia compatibles: entre 8000 Hz y 48 000 Hz.

Entrada de `StreamConfiguration` para un proceso de Amazon Transcribe Analytics:
+ Debe especificar el `KinesisVideoStreamArn` para cada transmisión.
+ (Opcional) El KVS de `FragmentNumber` inicia un trabajo de análisis de llamadas con el fragmento situado tras un fragmento especificado. Si no se proporciona, utiliza la última parte de la transmisión de video de Kinesis.
+ `StreamChannelDefinition` define quién habla. El análisis de llamadas con Amazon Transcribe requiere audio de dos canales. Debe especificar qué interlocutor está en qué canal cuando llame a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html). Por ejemplo, si el agente habla primero, se configura `ChannelId` para que `0` indique el primer canal y `ParticipantRole` para que `AGENT` indique que el agente está hablando.

**nota**  
Cuando utiliza un Voice Connector para crear una `MediaInsightsPipeline` con un procesador de análisis de llamadas con Amazon Transcribe, el audio del tramo de la cuenta de Voice Connector es `AGENT` y el audio del tramo de la PSTN es `CUSTOMER` para el `ParticipantRole`.  
En el caso del Voice Connector SIPREC, nos basamos en los metadatos del SIPREC. En la mayoría de los casos, la etiqueta de flujo con el valor lexicográfico más bajo se considera el `AGENT`.

El siguiente ejemplo muestra la entrada de Kinesis Video Stream para una transmisión de audio de dos canales.

```
"StreamChannelDefinition" : {
    "NumberOfChannels" : 2
    "ChannelDefinitions": [
        {
            "ChannelId": 0,
            "ParticipantRole": "AGENT"
        },
        {
            "ChannelId": 1,
            "ParticipantRole": "CUSTOMER"
        }
    ]
}
```

 Por el contrario, en el siguiente ejemplo se muestran dos entradas mono de dos transmisiones de video de Kinesis diferentes. 

```
KVS-1:
    "StreamChannelDefinition" : {
        "NumberOfChannels"  : 1
        "ChannelDefinitions": [
            {
                "ChannelId": 0,
               "ParticipantRole": "AGENT"
            }
        ]
    }
KVS-2:
    "StreamChannelDefinition" : {
        "NumberOfChannels"  : 1
        "ChannelDefinitions": [
            {
                "ChannelId": 1,
               "ParticipantRole": "CUSTOMER"
            }
        ]
    }
```

## Resultados de análisis de llamadas con Amazon Transcribe
<a name="amazon-transcribe-call-analytics-output"></a>

 Cada registro de Amazon Transcribe contiene un `UtteranceEvent` o un `CategoryEvent`, pero no ambos. `CategoryEvents` tienen un `detail-type` de `TranscribeCallAnalyticsCategoryEvent`. 

El siguiente ejemplo muestra el formato de salida de metadatos de un solo uso para Amazon Transcribe.

```
{
    "time": "string", // ISO8601 format
    "service-type": "CallAnalytics",
    "detail-type": "CallAnalyticsMetadata",
    "mediaInsightsPipelineId": "string",
    "metadata": "string" // JSON encoded string of the metadata object
}

// metadata object
{
    "voiceConnectorId": "string",
    "callId": "string",
    "transactionId": "string",
    "fromNumber": "string",
    "toNumber": "string",
    "direction": "string",
    "oneTimeMetadata": "string" // JSON encoded string of oneTimeMetadata object
}
 
// onetimeMetadata object
{
    "inviteHeaders": "string", // JSON encoded string of SIP Invite headers key-value pair
    "siprecMetadata": "string", // siprec metadata in XML 
    "siprecMetadataJson": "string", // siprec metadata in JSON (converted from above XML) 
    
    // If PostcallSettings are enabled for Amazon Transcribe Call Analytics
    "s3RecordingUrl": "string", 
    "s3RecordingUrlRedacted": "string"
}
 
// inviteHeaders object
{
    "string": "string"
}
```

 En el siguiente ejemplo se muestra el formato de salida del análisis de llamadas con Amazon Transcribe. 

```
{
    "time": "string", // ISO8601 format
    "service-type": "CallAnalytics",
    "detail-type": "TranscribeCallAnalytics",
    "mediaInsightsPipelineId": "string",
    "metadata": {
        "voiceConnectorId": "string",
        "callId": "string",
        "transactionId": "string",
        "fromNumber": "string",
        "toNumber": "string",
        "direction": "string"
    },
    "UtteranceEvent": {
        "UtteranceId": "string",
        "ParticipantRole": "string",
        "IsPartial": boolean,
        "BeginOffsetMillis": number,
        "EndOffsetMillis": number,
        "Transcript": "string",
        "Sentiment": "string",
        "Items": [{
            "Content": "string",
            "Confidence": number,
            "VocabularyFilterMatch": boolean,
            "Stable": boolean,
            "ItemType": "string",
            "BeginOffsetMillis": number,
            "EndOffsetMillis": number,
        }, ]
        "Entities": [{
            "Content": "string",
            "Confidence": number,
            "Category": "string", // Only PII is supported currently
            "Type": "string",
            "BeginOffset": number,
            "EndOffset": number,
        }, ],
        "IssuesDetected": [{
            "CharacterOffsets": {
                "Begin": number,
                "End": number
            }
        }]
    },
    "CategoryEvent": {
        "MatchedCategories": ["string"],
        "MatchedDetails": {
            "string": {
                "TimestampRanges": [{
                    "BeginOffsetMillis": number,
                    "EndOffsetMillis": number
                }]
            }
        }
    }
}
```

## Metadatos de actualizaciones de streaming de Voice Connector de Amazon Chime SDK
<a name="cvc-stream-update-metadata"></a>

Si la configuración de análisis de llamadas está asociada a un Voice Connector de Amazon Chime SDK, se enviará la siguiente carga de actualización del conector de voz cuando haya una [actualización de streaming del conector de voz](https://docs.aws.amazon.com/chime-sdk/latest/ag/automating-chime-with-cloudwatch-events.html).

El siguiente ejemplo muestra un formato de metadatos de actualización para el procesador Amazon Transcribe y el procesador de análisis de llamadas Transcribe.

```
{
    "time": "string", // ISO8601 format
    "service-type": "CallAnalytics",
    "detail-type": "CallAnalyticsMetadata",
    "callevent-type": "Update",
    "metadata": "string" // JSON encoded string of the metadata object
}

// metadata object
{
    "voiceConnectorId": "string",
    "callId": "string",
    "transactionId": "string",
    "fromNumber": "string",
    "toNumber": "string",
    "direction": "string",
    "oneTimeMetadata": "string" // JSON encoded string of oneTimeMetadata object
}
 
// onetimeMetadata object
{
    "sipHeaders": "string", // JSON encoded string of SIP Invite headers key-value pair
    "siprecMetadata": "string", // siprec metadata in XML 
    "siprecMetadataJson": "string" // siprec metadata in JSON (converted from above XML) 
}
 
// sipHeaders object
{
    "string": "string"
}
```

El siguiente ejemplo muestra un formato de metadatos de actualización para la grabación de Amazon S3 de análisis de llamadas.

```
{
    "time": "string", // ISO8601 format
    "service-type": "CallAnalytics",
    "detail-type": "Recording",
    "callevent-type": "Update",
    "metadata": "string" // JSON encoded string of the metadata object
}

// metadata object
{
    "voiceConnectorId": "string",
    "callId": "string",
    "transactionId": "string",
    "fromNumber": "string",
    "toNumber": "string",
    "direction": "string",
    "oneTimeMetadata": "string" // JSON encoded in string of oneTimeMetadata object
}

// onetimeMetadata object
{
    "sipHeaders": "string", // JSON encoded string of SIP Invite headers key-value pair
    "siprecMetadata": "string", // siprec metadata in XML 
    "siprecMetadataJson": "string" // siprec metadata in JSON (converted from above XML) 
}

// sipHeaders object
{
    "string": "string"
}
```

## Metadatos de grabación de llamadas SIP
<a name="sip-update-metadata"></a>

Los siguientes ejemplos muestran los metadatos para grabar una llamada SIP entre dos personas, Alice y Bob. Ambos participantes envían y reciben audio y video. Para simplificar, el ejemplo solo tiene fragmentos de SIP y SDP, y el SRC graba las transmisiones de cada participante en SRS sin mezclarlas.

```
INVITE sip:recorder@example.com SIP/2.0
   Via: SIP/2.0/TCP src.example.com;branch=z9hG4bKdf6b622b648d9
   From: <sip:2000@example.com>;tag=35e195d2-947d-4585-946f-09839247
   To: <sip:recorder@example.com>
   Call-ID: d253c800-b0d1ea39-4a7dd-3f0e20a
   Session-ID: ab30317f1a784dc48ff824d0d3715d86
    ;remote=00000000000000000000000000000000
   CSeq: 101 INVITE
   Max-Forwards: 70
   Require: siprec
   Accept: application/sdp, application/rs-metadata,
   application/rs-metadata-request
   Contact: <sip:2000@src.example.com>;+sip.src
   Content-Type: multipart/mixed;boundary=boundary
   Content-Length: [length]

   Content-Type: application/SDP
   ...
   m=audio 49170 RTP/AVP 0
   a=rtpmap:0 PCMU/8000
   a=label:96
   a=sendonly
   ...
   m=video 49174 RTP/AVPF 96
   a=rtpmap:96 H.264/90000
   a=label:97
   a=sendonly
   ...
   m=audio 51372 RTP/AVP 0
   a=rtpmap:0 PCMU/8000
   a=label:98
   a=sendonly
   ...
   m=video 49176 RTP/AVPF 96
   a=rtpmap:96 H.264/90000
   a=label:99
   a=sendonly
   ....

Content-Type: application/rs-metadata
Content-Disposition: recording-session

<?xml version="1.0" encoding="UTF-8"?>
<recording xmlns='urn:ietf:params:xml:ns:recording:1'>
  <datamode>complete</datamode>
        <group group_id="7+OTCyoxTmqmqyA/1weDAg==">
                <associate-time>2010-12-16T23:41:07Z</associate-time>
                <!-- Standardized extension -->
                <call-center xmlns='urn:ietf:params:xml:ns:callcenter'>
                        <supervisor>sip:alice@atlanta.com</supervisor>
                </call-center>
                <mydata xmlns='http://example.com/my'>
                        <structure>structure!</structure>
                        <whatever>structure</whatever>
                </mydata>
        </group>
        <session session_id="hVpd7YQgRW2nD22h7q60JQ==">
                <sipSessionID>ab30317f1a784dc48ff824d0d3715d86;
                                      remote=47755a9de7794ba387653f2099600ef2</sipSessionID>
                <group-ref>7+OTCyoxTmqmqyA/1weDAg==
                </group-ref>
                <!-- Standardized extension -->
                <mydata xmlns='http://example.com/my'>
                        <structure>FOO!</structure>
                        <whatever>bar</whatever>
                </mydata>
        </session>
        <participant
              participant_id="srfBElmCRp2QB23b7Mpk0w==">
                <nameID aor="sip:alice@atlanta.com">
                        <naSRCme xml:lang="it">Alice</name>
                </nameID>
                <!-- Standardized extension -->
                <mydata xmlns='http://example.com/my'>
                        <structure>FOO!</structure>
                        <whatever>bar</whatever>
                </mydata>
        </participant>
        <participant
               participant_id="zSfPoSvdSDCmU3A3TRDxAw==">
                <nameID aor="sip:bob@biloxy.com">
                        <name xml:lang="it">Bob</name>
                </nameID>
                <!-- Standardized extension -->
                <mydata xmlns='http://example.com/my'>
                        <structure>FOO!</structure>
                        <whatever>bar</whatever>
                </mydata>
        </participant>
        <stream stream_id="UAAMm5GRQKSCMVvLyl4rFw=="
               session_id="hVpd7YQgRW2nD22h7q60JQ==">
                <label>96</label>
        </stream>
        <stream stream_id="i1Pz3to5hGk8fuXl+PbwCw=="
               session_id="hVpd7YQgRW2nD22h7q60JQ==">
                <label>97</label>
        </stream>
        <stream stream_id="8zc6e0lYTlWIINA6GR+3ag=="
               session_id="hVpd7YQgRW2nD22h7q60JQ==">
                <label>98</label>
        </stream>
        <stream stream_id="EiXGlc+4TruqqoDaNE76ag=="
               session_id="hVpd7YQgRW2nD22h7q60JQ==">
                <label>99</label>
        </stream>
        <sessionrecordingassoc session_id="hVpd7YQgRW2nD22h7q60JQ==">
            <associate-time>2010-12-16T23:41:07Z</associate-time>
        </sessionrecordingassoc>
        <participantsessionassoc
              participant_id="srfBElmCRp2QB23b7Mpk0w=="
              session_id="hVpd7YQgRW2nD22h7q60JQ==">
                <associate-time>2010-12-16T23:41:07Z</associate-time>
        </participantsessionassoc>
        <participantsessionassoc
               participant_id="zSfPoSvdSDCmU3A3TRDxAw=="
               session_id="hVpd7YQgRW2nD22h7q60JQ==">
                <associate-time>2010-12-16T23:41:07Z</associate-time>
        </participantsessionassoc>
        <participantstreamassoc
              participant_id="srfBElmCRp2QB23b7Mpk0w==">
                <send>i1Pz3to5hGk8fuXl+PbwCw==</send>
                <send>UAAMm5GRQKSCMVvLyl4rFw==</send>
                <recv>8zc6e0lYTlWIINA6GR+3ag==</recv>
                <recv>EiXGlc+4TruqqoDaNE76ag==</recv>
        </participantstreamassoc>
        <participantstreamassoc
               participant_id="zSfPoSvdSDCmU3A3TRDxAw==">
                <send>8zc6e0lYTlWIINA6GR+3ag==</send>
                <send>EiXGlc+4TruqqoDaNE76ag==</send>
                <recv>UAAMm5GRQKSCMVvLyl4rFw==</recv>
                <recv>i1Pz3to5hGk8fuXl+PbwCw==</recv>
        </participantstreamassoc>
</recording>
```

En el siguiente ejemplo, se muestran los metadatos actualizados cuando un participante de la llamada pone al otro en espera. En este caso, `participant_id srfBElmCRp2QB23b7Mpk0w==` solo recibe secuencias de contenido multimedia y no envía ningún contenido multimedia, por lo que se omite el elemento XML `send`. Por el contrario, `participant_id zSfPoSvdSDCmU3A3TRDxAw==` envía contenido multimedia al otro participante, pero no recibe contenido de él, por lo que se omite el elemento XML `recv`.

```
INVITE sip:recorder@example.com SIP/2.0
            Via: SIP/2.0/TCP src.example.com;branch=z9hG4bKdf6b622b648d9
      From: <sip:2000@example.com>;tag=35e195d2-947d-4585-946f-09839247
      To: <sip:recorder@example.com>
      Call-ID: d253c800-b0d1ea39-4a7dd-3f0e20a
      Session-ID: ab30317f1a784dc48ff824d0d3715d86
       ;remote=f81d4fae7dec11d0a76500a0c91e6bf6
      CSeq: 101 INVITE
      Max-Forwards: 70
      Require: siprec
      Accept: application/sdp, application/rs-metadata,
      application/rs-metadata-request
      Contact: <sip:2000@src.example.com>;+sip.src
      Content-Type: multipart/mixed;boundary=foobar
      Content-Length: [length]

      Content-Type: application/SDP
      ...
      m=audio 49170 RTP/AVP 0
      a=rtpmap:0 PCMU/8000
      a=label:96
      a=sendonly
      ...
      m=video 49174 RTP/AVPF 96
      a=rtpmap:96 H.264/90000
      a=label:97
      a=sendonly
      ...
      m=audio 51372 RTP/AVP 0
      a=rtpmap:0 PCMU/8000
      a=label:98
      a=sendonly
      ...
      m=video 49176 RTP/AVPF 96
      a=rtpmap:96 H.264/90000
      a=label:99
      a=sendonly
      ....

   Content-Type: application/rs-metadata
   Content-Disposition: recording-session

      <?xml version="1.0" encoding="UTF-8"?>
        <recording xmlns='urn:ietf:params:xml:ns:recording:1'>
          <datamode>partial</datamode>
            <participantstreamassoc
             participant_id="srfBElmCRp2QB23b7Mpk0w==">
             <recv>8zc6e0lYTlWIINA6GR+3ag==</recv>
             <recv>EiXGlc+4TruqqoDaNE76ag==</recv>
            </participantstreamassoc>
            <participantstreamassoc
             participant_id="zSfPoSvdSDCmU3A3TRDxAw==">
              <send>8zc6e0lYTlWIINA6GR+3ag==</send>
              <send>EiXGlc+4TruqqoDaNE76ag==</send>
             </participantstreamassoc>
           </recording>
```

En el siguiente ejemplo, se muestra la actualización de metadatos cuando se reanuda la llamada. La carga ahora tiene los elementos XML `send` y `recv`.

```
INVITE sip:recorder@example.com SIP/2.0
      Via: SIP/2.0/TCP src.example.com;branch=z9hG4bKdf6b622b648d9
      From: <sip:2000@example.com>;tag=35e195d2-947d-4585-946f-09839247
      To: <sip:recorder@example.com>
      Call-ID: d253c800-b0d1ea39-4a7dd-3f0e20a
      Session-ID: ab30317f1a784dc48ff824d0d3715d86
       ;remote=f81d4fae7dec11d0a76500a0c91e6bf6
      CSeq: 101 INVITE
      Max-Forwards: 70
      Require: siprec
      Accept: application/sdp, application/rs-metadata,
      application/rs-metadata-request
      Contact: <sip:2000@src.example.com>;+sip.src
      Content-Type: multipart/mixed;boundary=foobar
      Content-Length: [length]

      Content-Type: application/SDP
      ...
      m=audio 49170 RTP/AVP 0
      a=rtpmap:0 PCMU/8000
      a=label:96
      a=sendonly
      ...
      m=video 49174 RTP/AVPF 96
      a=rtpmap:96 H.264/90000
      a=label:97
      a=sendonly
      ...
      m=audio 51372 RTP/AVP 0
      a=rtpmap:0 PCMU/8000
      a=label:98
      a=sendonly
      ...
      m=video 49176 RTP/AVPF 96
      a=rtpmap:96 H.264/90000
      a=label:99
      a=sendonly
      ....
    
   Content-Type: application/rs-metadata
   Content-Disposition: recording-session

      <?xml version="1.0" encoding="UTF-8"?>
        <recording xmlns='urn:ietf:params:xml:ns:recording:1'>
          <datamode>partial</datamode>
            <participantstreamassoc
             participant_id="srfBElmCRp2QB23b7Mpk0w==">
             <send>i1Pz3to5hGk8fuXl+PbwCw==</send>
             <send>UAAMm5GRQKSCMVvLyl4rFw==</send>
             <recv>8zc6e0lYTlWIINA6GR+3ag==</recv>
             <recv>EiXGlc+4TruqqoDaNE76ag==</recv>
            </participantstreamassoc>
            <participantstreamassoc
             participant_id="zSfPoSvdSDCmU3A3TRDxAw==">
              <send>8zc6e0lYTlWIINA6GR+3ag==</send>
              <send>EiXGlc+4TruqqoDaNE76ag==</send>
              <recv>i1Pz3to5hGk8fuXl+PbwCw==</recv>
             <recv>UAAMm5GRQKSCMVvLyl4rFw==</recv>
             </participantstreamassoc>
           </recording>
```

## Destinos del procesador Amazon Transcribe
<a name="amazon-transcribe-processors"></a>

Receptores compatibles: `KinesisDataStreamSink`.

No puede combinar este procesador con el análisis de llamadas con Amazon Transcribe. Para obtener más información sobre la entrada y la salida de Amazon Transcribe, consulte [Transcribir transmisión de audio](https://docs.aws.amazon.com/transcribe/latest/dg/streaming.html) en la *Guía para desarrolladores de Amazon Transcribe*.

La sesión de análisis de llamadas con Amazon Transcribe toma los datos de audio introducidos desde Kinesis Video Stream.
+ Compatible MediaEncoding: audio little-endian de 16 bits firmado por PCM.
+ Frecuencias MediaSampleRate de muestreo compatibles: entre 8.000 Hz y 48.000 Hz.

 `StreamConfiguration` de entrada para los procesadores Amazon Transcribe: 
+ Debe especificar el `KinesisVideoStreamArn` para cada transmisión.
+ (Opcional) `FragmentNumber` de KVS: inicia un trabajo de análisis de llamadas con el fragmento situado después de un fragmento específico. Si no se proporciona, utilizará el último fragmento disponible en Kinesis Video Stream.
+ La `StreamChannelDefinition` de Amazon Transcribe admite audio con dos canales. Debe especificar el `NumberOfChannels` en el tiempo de ejecución de la `StreamChannelDefinition`. Además, debe pasar el `ChannelId` si envía audio mono en dos canales separados. En su transcripción, a los canales se les asignan las etiquetas `ch_0` y `ch_1`. El siguiente ejemplo muestra la entrada KVS para una transmisión de un canal de audio mono.

```
"StreamChannelDefinition" : {"
    NumberOfChannels" : 1
}
```

 El siguiente ejemplo muestra la entrada KVS para dos entradas de audio mono en dos flujos diferentes. 

```
KVS-1:
    "StreamChannelDefinition" : {
        "NumberOfChannels"  : 1
        "ChannelDefinitions": [
            {
                "ChannelId": 0
            }
        ]
    }
KVS-2:
    "StreamChannelDefinition" : {
        "NumberOfChannels"  : 1
        "ChannelDefinitions": [
            {
                "ChannelId": 1
            }
        ]
    }
```

**nota**  
En el caso de la `MediaInsightsPipeline` creada por Voice Connector con un procesador Amazon Transcribe, se asigna el audio del tramo de la cuenta del Voice Connector a `channel-0` y el audio del tramo de la PSTN a `channel-1`.  
En el caso del Voice Connector SIPREC, nos basamos en los metadatos del SIPREC. En la mayoría de los casos, se asigna la etiqueta de flujo con el valor lexicográfico más bajo a `channel-0`.  
Para los procesadores de análisis de llamadas con Amazon Transcribe y Amazon Transcribe, si pasa dos transmisiones de Kinesis Video y cada transmisión contiene un canal de audio mono, intercalamos ambos canales en una sola transmisión de audio antes de procesar los datos de análisis de llamadas de Transcribe o Transcribe.

## Salida de Amazon Transcribe
<a name="amazon-transcribe-output"></a>

En el siguiente ejemplo se muestra un formato de salida de metadatos de un solo uso para Amazon Transcribe.

```
{
    "time": "string", // ISO8601 format
    "service-type": "CallAnalytics",
    "detail-type": "CallAnalyticsMetadata",
    "mediaInsightsPipelineId": "string",
    "metadata": "string" // JSON encoded string of the metadata object
}

// metadata object
{
    "voiceConnectorId": "string",
    "callId": "string",
    "transactionId": "string",
    "fromNumber": "string",
    "toNumber": "string",
    "direction": "string",
    "oneTimeMetadata": "string" // JSON encoded string of oneTimeMetadata object
}
 
// onetimeMetadata object
{
    "inviteHeaders": "string", // JSON encoded string of SIP Invite headers key-value pair
    "siprecMetadata": "string", // siprec metadata in XML 
    "siprecMetadataJson": "string" // siprec metadata in JSON (converted from above XML) 
}
 
// inviteHeaders object
{
    "string": "string"
}
```

En el siguiente ejemplo se muestra el formato de salida de Amazon Transcribe. 

```
{
    "time": "string", // ISO8601 format
    "service-type": "CallAnalytics",
    "detail-type": "Transcribe",
    "mediaInsightsPipelineId": "string",
    "metadata": {
        "voiceconnectorId": "string",
        "callId": "string",
        "transactionId": "string",
        "fromNumber": "string",
        "toNumber": "string",
        "direction": "string"
    }
    "TranscriptEvent": {
        "Transcript": {
            "Results": [{
                "Alternatives": [{
                    "Entities": [{
                        "Category": "string",
                        "Confidence": number,
                        "Content": "string",
                        "EndTime": number,
                        "StartTime": number,
                        "Type": "string"
                    }],
                    "Items": [{
                        "Confidence": number,
                        "Content": "string",
                        "EndTime": number,
                        "Speaker": "string",
                        "Stable": boolean,
                        "StartTime": number,
                        "Type": "string",
                        "VocabularyFilterMatch": boolean
                    }],
                    "Transcript": "string"
                }],
                "ChannelId": "string",
                "EndTime": number,
                "IsPartial": boolean,
                "LanguageCode": "string",
                "LanguageIdentification": [{
                    "LanguageCode": "string",
                    "Score": number
                }],
                "ResultId": "string",
                "StartTime": number
            }]
        }
    }
}
```

## Destinos de los procesadores de análisis de voz
<a name="voice-analytics-processor"></a>

 Receptores compatibles: `KinesisDataStreamSink`, `SqsQueueSink`, `SnsTopicSink` y`LambdaFunctionSink`. 

 Puede combinar este procesador con el procesador de análisis de llamadas con Amazon Transcribe, el procesador Amazon Transcribe o la grabación de llamadas. Debe utilizar la [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html)o [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartVoiceToneAnalysisTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartVoiceToneAnalysisTask.html) APIs para invocar un procesador de análisis de voz. Para obtener más información sobre el uso del análisis de voz, consulte [Uso del análisis de voz de Amazon Chime SDK](https://docs.aws.amazon.com/chime-sdk/latest/dg/voice-analytics.html). 

## Uso de un flujo de datos de Kinesis como receptor
<a name="kinesis-data-stream-destination"></a>

Los registros de flujo de datos de Kinesis (KDS) generados por el análisis de llamadas incluyen el ID del canal multimedia, el tipo de detalle, los metadatos y las secciones específicas del procesador. Para obtener información sobre el consumo de datos de una transmisión de datos de Kinesis, consulte [Lectura de datos de Amazon Kinesis Data Streams](https://docs.aws.amazon.com/streams/latest/dev/building-consumers.html), en la *Guía para desarrolladores de Amazon Kinesis Streams*. Para crear una configuración con este receptor, debe tener permiso de `kinesis:DescribeStream` en la transmisión especificada. 

 **Metadatos**

 La sección de `metadata` de los registros KDS generados contiene todos los pares clave-valor especificados en `CallAnalyticsRuntimeMetadata` durante la llamada a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html). Si un Voice Connector inició una sesión de análisis de llamadas, la sección de metadatos se rellena automáticamente con los siguientes parámetros: 
+ `transactionId`
+ `fromNumber`
+ `toNumber`
+ `callId`
+ `voiceConnectorId`
+ `direction`

 Además de los parámetros mostrados anteriormente, la sección de metadatos de las sesiones de análisis de llamadas iniciadas por Voice Connector se rellenará con un campo `oneTimeMetadata` que contiene: 
+ `inviteHeaders`
+ `siprecMetadata`

Esto se publica en Kinesis Data Streams solo una vez al principio de la sesión y tiene un `detail-type` de `CallAnalyticsMetadata`.

Puede pasar identificadores únicos de `MediaInsightsRuntimeMetadata` para cada llamada a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html) para poder identificar de forma única la fuente de cada registro entregado a su flujo de datos de Kinesis.

## Grabación de llamadas de Amazon S3
<a name="amazon-s3-call-recording"></a>

 La grabación de análisis de llamadas lee el audio de una transmisión de KVS, lo graba como un archivo de audio y lo carga en el bucket de Amazon S3 especificado. Tras grabar las llamadas, Analytics también envía los metadatos de la llamada junto con la ubicación del archivo a KDS. Si habilita un almacenamiento de datos, los metadatos de la llamada (incluidos los metadatos del SIPREC si se utilizó el SIPREC) se envían al almacenamiento de datos en un conjunto de tablas de Parquet que puede consultar.

Como cualquier otro procesador de análisis de llamadas, primero debe crear una configuración para la canalización. Puede utilizar la consola de Amazon Chime SDK o la CLI para crear la configuración. A continuación, usará la CLI para crear la canalización. Para obtener más información sobre el uso de la consola para crear configuraciones de grabación, consulte [Creaión de configuraciones de análisis de llamadas de Amazon Chime SDK](creating-ca-configuration.md) en la sección anterior. Para obtener más información sobre el uso de los flujos de trabajo de grabación, consulte [Descripción de los flujos de trabajo para grabar llamadas para Amazon Chime SDK](recording-workflows.md) en la sección anterior.

 **Para usar la CLI para crear una configuración**

 Use el siguiente comando: 

```
aws chime-sdk-media-pipeline create-media-insights-pipeline-configuration --cli-input-json file://configuration.json 
```

 En el siguiente ejemplo se muestra un archivo JSON de configuración con solo la grabación habilitada: 

```
{
    "MediaInsightsPipelineConfigurationName": configuration_name,
    "ResourceAccessRoleArn": role_arn,
    "Elements": [
        {
            "KinesisDataStreamSinkConfiguration": {
                "InsightsTarget": KDS_arn //Where recording live metadata will be delivered.
            },
            "Type": "KinesisDataStreamSink"
        },
        {
            "S3RecordingSinkConfiguration": {
                "Destination": "arn:aws:s3:::kvs-recording-testing",
                "RecordingFileFormat": file_format // Specify "Opus" or "WAV" as the recording file format.
            },
            "Type": "S3RecordingSink"
        }         
    ]
}
```

Recuerde lo siguiente:
+ Para habilitar la grabación de llamadas a través de Kinesis Video Streams, el audio debe ser little-endian de 16 bits firmado por PCM. La frecuencia de muestreo debe ser 8KHz. 
+ Los creadores deben establecer un período de retención de datos lo suficientemente largo para la transmisión de video de Kinesis a fin de garantizar que los fragmentos se retengan y pueda consumirlos un análisis de llamadas. 
+ Si habilita la grabación de llamadas, sola o en combinación con otros procesadores, debe suministrar dos Kinesis Video Stream ARNs para la grabación. La grabación de llamadas no admite una sola entrada de audio estéreo. 

## Salida de metadatos de grabación de llamadas de Amazon S3
<a name="s3-recording-metadata-output"></a>

El siguiente ejemplo muestra el formato de salida de los metadatos del análisis de llamada para la grabación de Amazon S3.

```
{
    "time": "string", // ISO8601 format
    "service-type": "CallAnalytics",
    "detail-type": "Recording",   
    "mediaInsightsPipelineId": "string",
    "s3MediaObjectConsoleUrl": "string",
    "recordingDurationSeconds": "number",
    "metadata": "string" // JSON encoded string of the metadata object
}

// metadata object
{
    "voiceConnectorId": "string",
    "callId": "string",
    "transactionId": "string",
    "fromNumber": "string",
    "toNumber": "string",
    "direction": "string",
    "startTime": "string", // ISO8601 format
    "endTime": "string", // ISO8601 format
    "oneTimeMetadata": "string" // JSON encoded in string of oneTimeMetadata object
}

// onetimeMetadata object
{
    "sipHeaders": "string", // JSON encoded string of SIP Invite headers key-value pair
    "siprecMetadata": "string", // siprec metadata in XML 
    "siprecMetadataJson": "string" // siprec metadata in JSON (converted from above XML) 
}

// sipHeaders object
{
    "string": "string"
}
```

## Habilitación de ajustes de voz
<a name="voice-enhancement-sink"></a>

Para habilitar la mejora de la voz, incluya un elemento `VoiceEnhancementSinkConfiguration` en una llamada a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html).

En este ejemplo se muestra un elemento típico.

```
{
  "Type":"VoiceEnhancementSink",
  "VoiceEnhancementSinkConfiguration": {
       "Disabled": Boolean (string) // FALSE ==> Voice Enhancement will be performed
}
```

Para actualizar una configuración, añada el elemento `VoiceEnhancementSinkConfiguration` a una llamada a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_UpdateMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_UpdateMediaInsightsPipelineConfiguration.html). Cuando lo haga, la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_GetMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_GetMediaInsightsPipelineConfiguration.html) incluirá el elemento `VoiceEnhancementSinkConfiguration` en los resultados.

Esta solicitud de ejemplo muestra cómo habilitar la mejora de voz y la grabación en Amazon S3.

```
POST /media-insights-pipeline-configurations HTTP/1.1
Content-type: application/json

{
   "MediaInsightsPipelineConfigurationName":"media_insights_configuration_name",
   "ResourceAccessRoleArn":"arn:aws:iam::account_id:role/resource_access_role",
   "Elements":[
      {
         "Type":"S3RecordingSink",
         "S3RecordingSinkConfiguration":{
            "Destination":"arn:aws:s3:::input_bucket_path",
            "RecordingFileFormat":"Wav"
         }
      },
      {
         "Type":"VoiceEnhancementSink",
         "VoiceEnhancementSinkConfiguration": {
            "disabled":"false"
         }
      }
   ],
   "ClientRequestToken":"client_request_token"
}
```

**nota**  
El elemento `VoiceEnhancementSink` siempre requiere un elemento `S3RecordingSink` en la configuración de análisis de llamadas.

# Combinación de la transcripción con los receptores de grabación para el Amazon Chime SDK
<a name="combining-recording-transcription"></a>

Puede combinar los procesadores Amazon Transcribe y análisis de llamadas con Amazon Transcribe con un receptor de grabación Amazon S3. Los desarrolladores pueden transferir un S3 RecordingSinkConfiguration además de los procesadores Amazon Transcribe en una llamada a la [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html)API o mediante la consola.

Junto con el receptor de grabación Amazon S3, puede utilizar un procesador Amazon Transcribe o análisis de llamadas con Amazon Transcribe, pero nunca ambos. También puede añadir análisis de voz a la misma configuración además de un receptor de grabación, con o sin un procesador de transcripción.

**nota**  
Puede habilitar la grabación con cualquiera de los procesadores enumerados anteriormente. Sin embargo, si habilita el análisis de llamadas con Amazon Transcribe junto con la grabación de llamadas de Amazon S3, debe ofrecer dos flujos de video de Kinesis y recibirá archivos de grabación duplicados, uno de análisis de llamadas con Amazon Transcribe y otro de la grabación de llamadas de Amazon S3.

Recuerde lo siguiente:
+ Debe utilizar un `MediaInsightsPipelineConfigurationName` único.
+ Para obtener información sobre el `ResourceAccessRoleArn`, consulte [Uso de la función de acceso a los recursos de análisis de llamadas de Amazon Chime SDK](call-analytics-resource-access-role.md) en esta guía.
+ El valor `Destination` debe ser un ARN de ruta S3. El bucket de Amazon S3 debe pertenecer a la misma cuenta.
+ Si utiliza una configuración con Transcribe y grabación para crear una canalización, las pausas y reanudaciones solo aparecen en la información generada por un flujo de datos de Kinesis. Todos los datos de las transmisiones de KVS se graban y se cargan en Amazon S3.
+ Si una configuración utiliza Amazon Transcribe o Transcribe Call Analytics (TCA) además de la grabación, la canalización de información multimedia proporciona información sobre la transcripción o Transcribe Call Analytics en tiempo real, seguida de la grabación de Amazon S3 al final de la llamada. Si los servicios de transcripción fallan durante el análisis de la llamada, el trabajo de grabación de S3 sigue intentando ejecutarse. Por el contrario, un error de grabación en Amazon S3 no afecta a la información de la transcripción, ya que se ejecuta una vez que se completa la transcripción.

Este ejemplo muestra una configuración con un procesador Amazon Transcribe y un receptor de grabación Amazon S3. El ejemplo también permite la estabilización parcial de los resultados, lo que puede reducir la latencia en la salida, pero puede afectar a la precisión. Para obtener más información, consulte [Estabilización de resultados parciales](https://docs.aws.amazon.com/transcribe/latest/dg/streaming-partial-results.html#streaming-partial-result-stabilization) en la *Guía para desarrolladores de Amazon Transcribe*.

```
{
    "MediaInsightsPipelineConfigurationName": unique_configuration_name,
    "ResourceAccessRoleArn": role_arn,
    "Elements": [{
            "AmazonTranscribeProcessorConfiguration": {
                "ContentIdentificationType": "string",
                "ContentRedactionType": "string",
                "EnablePartialResultsStabilization": boolean, //Enables partial result stabilization. Can reduce latency. May impact accuracy. 
                "FilterPartialResults": boolean, //To control partial utterance events
                "LanguageCode": "string",
                "LanguageModelName": "string",
                "PartialResultsStability": "string",
                "PiiEntityTypes": "string",
                "ShowSpeakerLabel": boolean,
                "VocabularyFilterMethod": "string",
                "VocabularyFilterName": "string",
                "VocabularyName": "string"
            },
            "Type": "AmazonTranscribeProcessor"
        },
        {
            "KinesisDataStreamSinkConfiguration": {
                "InsightsTarget": KDS_arn //Where recording and insights live metadata will be delivered.
            },
            "Type": "KinesisDataStreamSink"
        },
        {
            "S3RecordingSinkConfiguration": {
                "Destination": S3_Arn,
                "RecordingFileFormat": file_format // Specify "Opus" or "WAV" as the recording file format.
            },
            "Type": "S3RecordingSink"
        }
    ]
}
```

# Uso de EventBridge las notificaciones de Amazon para el SDK de Amazon Chime
<a name="using-eventbridge-notifications"></a>

El análisis de llamadas del SDK de Amazon Chime permite enviar eventos al EventBridge bus predeterminado cuando cambia el estado de la canalización de información multimedia o cuando se cumplen las condiciones de alerta en tiempo real de Call Analytics. Para actualizar el estado de los errores de Media Insights Pipeline, le recomendamos que configure un EventBridge objetivo para que le notifique si sus recursos fallan de forma asíncrona. Las notificaciones de análisis de llamadas tienen una fuente de aws.chime y varios tipos de detalles, que se muestran en las siguientes secciones. Para obtener más información, consulta la [Guía del EventBridge usuario de Amazon](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html).

**Topics**
+ [Actualizaciones de estado](#status-updates)
+ [Alertas en tiempo real](#realtime-alerts)

## Actualizaciones de estado
<a name="status-updates"></a>

 Los canales de información multimedia envían EventBridge notificaciones a medida que avanza una sesión de análisis de llamadas y finaliza correctamente o detecta errores. Recibirás una EventBridge notificación con el tipo de detalle «Media Insights State Change» cuando: 
+ Cambia el estado de una canalización de información multimedia.
+ Cambia el estado de un elemento del canalización de información multimedia.
+ Se detiene cualquier elemento de la canalización.
+ Falla cualquier elemento de la canalización.

La sección de detalles siempre incluye los siguientes campos:
+ `version`
+ `mediaInsightsPipelineArn`
+ `eventType`

La sección de detalles también incluye un campo `mediaInsightsPipelineElementStatuses` si la canalización de información multimedia contiene varios elementos, como procesadores de análisis y receptores de datos. Este campo indica los estados de cada elemento de la canalización. El estado posible de cada elemento de la canalización podría ser:
+ `NotStarted`
+ `InProgress`
+ `Stopped`
+ `Failed`

 La sección de detalles también incluye los pares clave-valor especificados de `MediaInsightsRuntimeMetadata` durante la llamada a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html). Si un Voice Connector inició una sesión de análisis de llamadas, la sección de metadatos se rellena automáticamente con los siguientes parámetros: 
+ `transactionId`
+ `fromNumber`
+ `toNumber`
+ `callId`
+ `voiceConnectorId`
+ `direction`

 Los siguientes tipos de eventos pueden aparecer siempre que una canalización de información multimedia contenga un solo elemento. Amplíe cada sección para obtener más información.

### Información multimedia sobre el Amazon Chime SDK en progreso
<a name="insights-in-progress"></a>

Este ejemplo muestra una estructura de eventos típica.

```
{
    "version": "0",
    "id": "string",
    "detail-type": "Media Insights State Change", 
    "source": "aws.chime", 
    "account": number,
    "region": "string",
    "time": "yyyy-mm-ddThh:mm:ssZ",
    "resources": [] 
    "detail": {
        "version": "0",
        "mediaInsightsPipelineArn": "string",
        "eventType": "chime:MediaInsightsInProgress",
        "version": "0",
        "callId": "string",
        "transactionId": "string",
        "fromNumber": "string",
        "toNumber": "string",
        "voiceConnectorId": "string", 
        "direction": "string"
    }
}
```

### Contenido multimedia de Amazon Chime SDK pausado
<a name="insights-paused"></a>

Este ejemplo muestra una estructura de eventos típica.

```
{
    "version": "0",
    "id": "string",
    "detail-type": "Media Insights State Change", 
    "source": "aws.chime", 
    "account": number,
    "region": "string",
    "time": "yyyy-mm-ddThh:mm:ssZ",
    "resources": [] 
    "detail": {
        "version": "0",
        "mediaInsightsPipelineArn": "string",
        "eventType": "chime:MediaInsightsPaused",
        "callId": "string",
        "transactionId": "string",
        "fromNumber": "string",
        "toNumber": "string",
        "voiceConnectorId": "string", 
        "direction": "string"
    }
}
```

### Contenido multimedia de Amazon Chime SDK detenido
<a name="insights-stoppped"></a>

Este ejemplo muestra una estructura de eventos típica.

```
{
    "version": "0",
    "id": "string",
    "detail-type": "Media Insights State Change", 
    "source": "aws.chime", 
    "account": number,
    "region": "string",
    "time": "yyyy-mm-ddThh:mm:ssZ",
    "resources": [] 
    "detail": {
        "version": "0",
        "mediaInsightsPipelineArn": "string",
        "eventType": "chime:MediaInsightsStopped",
        "callId": "string",
        "transactionId": "string",
        "fromNumber": "string",
        "toNumber": "string",
        "voiceConnectorId": "string", 
        "direction": "string"
    }
}
```

### Fallo temporal de la información multimedia de Amazon Chime SDK
<a name="insights-temp-failure"></a>

Indica que el servicio ha detectado un error temporal e intentará volver a intentarlo. No es necesario que realice ninguna acción.

Este ejemplo muestra una estructura de eventos típica.

```
{
    "version": "0",
    "id": "string",
    "detail-type": "Media Insights State Change", 
    "source": "aws.chime", 
    "account": number,
    "region": "string",
    "time": "yyyy-mm-ddThh:mm:ssZ",
    "resources": [] 
    "detail": {
        "version": "0",
        "mediaInsightsPipelineArn": "string",
        "eventType": "chime:MediaInsightsTemporaryFailure",
        "callId": "string",
        "transactionId": "string",
        "fromNumber": "string",
        "toNumber": "string",
        "voiceConnectorId": "string", 
        "direction": "string"
    }
}
```

### Fallo permanente de la información multimedia de Amazon Chime SDK
<a name="insights-perm-failure"></a>

Indica un error que requiere que tome medidas. Utilice la `failureReason` para solucionar el problema. Los errores típicos pueden incluir los siguientes:
+ Permisos insuficientes para el rol de acceso a recursos
+ Recursos ausentes o eliminados
+ Limitarse desde un AWS servicio que invoca el análisis en su nombre, como Amazon Transcribe o Amazon Kinesis.
+ Formatos multimedia incompatibles en las transmisiones de KVS

Este ejemplo muestra una estructura de eventos típica.

```
{
    "version": "0",
    "id": "string",
    "detail-type": "Media Insights State Change", 
    "source": "aws.chime", 
    "account": number,
    "region": "string",
    "time": "yyyy-mm-ddThh:mm:ssZ",
    "resources": [] 
    "detail": {
        "version": "0",
        "mediaInsightsPipelineArn": "string",
        "eventType": "chime:MediaInsightsPermanentFailure",
        "callId": "string",
        "transactionId": "string",
        "fromNumber": "string",
        "toNumber": "string",
        "voiceConnectorId": "string", 
        "direction": "string",
        "failureReason": "string"              
    }
}
```

**nota**  
El campo `failureReason` es opcional. Por ejemplo, una razón típica podría ser `Access denied when assuming resource access role`.

Los siguientes tipos de eventos pueden aparecer siempre que se cree una canalización de información multimedia, o cuando el intento de creación falle, para una sesión de análisis de llamadas iniciada por un Voice Connector de Amazon Chime SDK. Amplíe cada sección para obtener más información.

### Contenido multimedia de Amazon Chime SDK creado
<a name="vc-pipeline-created"></a>

En este ejemplo se muestra un evento de éxito típico.

```
{
    "version": "0",
    "id": "string",
    "detail-type": "Media Insights State Change", 
    "source": "aws.chime", 
    "account": number,
    "region": "string",
    "time": "yyyy-mm-ddThh:mm:ssZ",
    "resources": [] 
    "detail": 
    {
        "version": "0",
        "mediaInsightsPipelineConfigurationArn": "string",
        "mediaInsightsPipelineArn": "string",
        "eventType": "chime:MediaInsightsCreated",
        "callId": "string",
        "transactionId": "string",
        "fromNumber": "string",
        "toNumber": "string",
        "voiceConnectorId": "string", 
        "direction": "string",
    }
}
```

### Fallo en la creación de información multimedia de Amazon Chime SDK
<a name="vc-pipeline-failed"></a>

En este ejemplo, se muestra un evento de error típico.

```
{
    "version": "0",
    "id": "string",
    "detail-type": "Media Insights State Change",     
    "source": "aws.chime", 
    "account": number,
    "region": "string",
    "time": "yyyy-mm-ddThh:mm:ssZ",
    "resources": [] 
    "detail": 
    {
        "version": "0",
        "mediaInsightsPipelineConfigurationArn": "string",
        "eventType": "chime:MediaInsightsCreateFailed", 
        "callId": "string",
        "transactionId": "string",
        "fromNumber": "string",
        "toNumber": "string",
        "voiceConnectorId": "string", 
        "direction": "string",
        "failureOrigin": "Voice Connector",
        "httpStatusCode": "string",
        "failureReason": "string"
    }
}
```

Los siguientes tipos de eventos pueden aparecer cuando una canalización de información multimedia contiene varios elementos. Las notificaciones de ejemplo son para el `AmazonTranscribeProcessor` en combinación con el `S3RecordingSink`. Amplíe cada sección para obtener más información. 

### AmazonTranscribeProcessor está en curso y S3 no se ha iniciado RecordingSink
<a name="processor-running-sink-not-started"></a>

Este ejemplo muestra una estructura de eventos típica.

```
{
    "version": "0", 
    "id": "string",
    "detail-type": "Media Insights State Change", 
    "source": "aws.chime", 
    "account": number, 
    "region": "string",
    "time": "yyyy-mm-ddThh:mm:ssZ", 
    "resources": [],
    "detail": {
        "version": "0", 
        "mediaInsightsPipelineArn": "string", 
        "eventType": "chime:MediaInsightsInProgress",
        "mediaInsightsPipelineElementStatuses": [
            { 
                "type": "AmazonTranscribeProcessor", 
                "status": "InProgress",
                "updatedOn": 1686184070655             
            },
            { 
                "type": "S3RecordingSink", 
                "status": "NotStarted",
                "updatedOn": 1686184070655 
            }
        ] 
        "callId": "string", 
        "transactionId": "string", 
        "fromNumber": "string", 
        "toNumber": "string", 
        "voiceConnectorId": "string", 
        "direction": "string" 
    } 
}
```

### AmazonTranscribeProcessor ha tenido éxito y el S3 RecordingSink está en curso
<a name="processor-success-sink-in-progress"></a>

Este ejemplo muestra una estructura de eventos típica.

```
{
    "version": "0", 
    "id": "string",
    "detail-type": "Media Insights State Change", 
    "source": "aws.chime", 
    "account": number, 
    "region": "string",
    "time": "yyyy-mm-ddThh:mm:ssZ", 
    "resources": [],
    "detail": {
        "version": "0", 
        "mediaInsightsPipelineArn": "string", 
        "eventType": "chime:MediaInsightsInProgress",
        "mediaInsightsPipelineElementStatuses": [
            { 
                "type": "AmazonTranscribeProcessor", 
                "status": "Stopped",
                "updatedOn": 1686184070655             
            },
            { 
                "type": "S3RecordingSink", 
                "status": "InProgress",
                "updatedOn": 1686184070655 
            }
        ] 
        "callId": "string", 
        "transactionId": "string", 
        "fromNumber": "string", 
        "toNumber": "string", 
        "voiceConnectorId": "string", 
        "direction": "string" 
    } 
}
```

### AmazonTranscribeProcessor ha fallado y S3 RecordingSink está en curso
<a name="processor-fail-sink-in-process"></a>

Este ejemplo muestra una estructura de eventos típica.

```
{
    "version": "0", 
    "id": "string",
    "detail-type": "Media Insights State Change", 
    "source": "aws.chime", 
    "account": number, 
    "region": "string",
    "time": "yyyy-mm-ddThh:mm:ssZ", 
    "resources": [],
    "detail": {
        "version": "0", 
        "mediaInsightsPipelineArn": "string", 
        "eventType": "chime:MediaInsightsInProgress",
        "mediaInsightsPipelineElementStatuses": [
            { 
                "type": "AmazonTranscribeProcessor", 
                "status": "Failed",
                "updatedOn": 1686184070655             
            },
            { 
                "type": "S3RecordingSink", 
                "status": "InProgress",
                "updatedOn": 1686184070655 
            }
        ] 
        "callId": "string", 
        "transactionId": "string", 
        "fromNumber": "string", 
        "toNumber": "string", 
        "voiceConnectorId": "string", 
        "direction": "string" 
    } 
}
```

### AmazonTranscribeProcessor ha fallado y S3 RecordingSink ha tenido éxito
<a name="processor-fail-record-finish"></a>

Este ejemplo muestra una estructura de eventos típica.

```
{
    "version": "0", 
    "id": "string",
    "detail-type": "Media Insights State Change", 
    "source": "aws.chime", 
    "account": number, 
    "region": "string",
    "time": "yyyy-mm-ddThh:mm:ssZ", 
    "resources": [],
    "detail": {
        "version": "0", 
        "mediaInsightsPipelineArn": "string", 
        "eventType": "chime:MediaInsightsPermanentFailure",
        "mediaInsightsPipelineElementStatuses": [
            { 
                "type": "AmazonTranscribeProcessor", 
                "status": "Failed",
                "updatedOn": 1686184070655             
            },
            { 
                "type": "S3RecordingSink", 
                "status": "Stopped",
                "updatedOn": 1686184070655 
            }
        ] 
        "callId": "string", 
        "transactionId": "string", 
        "fromNumber": "string", 
        "toNumber": "string", 
        "voiceConnectorId": "string", 
        "direction": "string",
        "failureReason": "string" 
    } 
}
```

### AmazonTranscribeProcessor ha tenido éxito y S3 RecordingSink ha fallado
<a name="processor-success-recording-fail"></a>

Este ejemplo muestra una estructura de eventos típica.

```
{
    "version": "0", 
    "id": "string",
    "detail-type": "Media Insights State Change", 
    "source": "aws.chime", 
    "account": number, 
    "region": "string",
    "time": "yyyy-mm-ddThh:mm:ssZ", 
    "resources": [],
    "detail": {
        "version": "0", 
        "mediaInsightsPipelineArn": "string", 
        "eventType": "chime:MediaInsightsPermanentFailure",
        "mediaInsightsPipelineElementStatuses": [
            { 
                "type": "AmazonTranscribeProcessor", 
                "status": "Stopped",
                "updatedOn": 1686184070655             
            },
            { 
                "type": "S3RecordingSink", 
                "status": "Failed",
                "updatedOn": 1686184070655 
            }
        ] 
        "callId": "string", 
        "transactionId": "string", 
        "fromNumber": "string", 
        "toNumber": "string", 
        "voiceConnectorId": "string", 
        "direction": "string",
        "failureReason": "string" 
    } 
}
```

### AmazonTranscribeProcessor está en pausa y S3 no RecordingSink se ha iniciado
<a name="processor-pause-recording-no-start"></a>

Este ejemplo muestra una estructura de eventos típica.

```
{
    "version": "0", 
    "id": "string",
    "detail-type": "Media Insights State Change", 
    "source": "aws.chime", 
    "account": number, 
    "region": "string",
    "time": "yyyy-mm-ddThh:mm:ssZ", 
    "resources": [],
    "detail": {
        "version": "0", 
        "mediaInsightsPipelineArn": "string", 
        "eventType": "chime:MediaInsightsPaused",
        "mediaInsightsPipelineElementStatuses": [
            { 
                "type": "AmazonTranscribeProcessor", 
                "status": "Paused",
                "updatedOn": 1686184070655             
            },
            { 
                "type": "S3RecordingSink", 
                "status": "NotStarted",
                "updatedOn": 1686184070655 
            }
        ] 
        "callId": "string", 
        "transactionId": "string", 
        "fromNumber": "string", 
        "toNumber": "string", 
        "voiceConnectorId": "string", 
        "direction": "string" 
    } 
}
```

### AmazonTranscribeProcessor ha fallado temporalmente y S3 no RecordingSink se ha iniciado
<a name="processor-temp-fail-recording-no-start"></a>

Este ejemplo muestra una estructura de eventos típica.

```
{
    "version": "0", 
    "id": "string",
    "detail-type": "Media Insights State Change", 
    "source": "aws.chime", 
    "account": number, 
    "region": "string",
    "time": "yyyy-mm-ddThh:mm:ssZ", 
    "resources": [],
    "detail": {
        "version": "0", 
        "mediaInsightsPipelineArn": "string", 
        "eventType": "chime:MediaInsightsTemporaryFailure",
        "mediaInsightsPipelineElementStatuses": [
            { 
                "type": "AmazonTranscribeProcessor", 
                "status": "TemporarilyFailed",
                "updatedOn": 1686184070655             
            },
            { 
                "type": "S3RecordingSink", 
                "status": "NotStarted",
                "updatedOn": 1686184070655 
            }
        ] 
        "callId": "string", 
        "transactionId": "string", 
        "fromNumber": "string", 
        "toNumber": "string", 
        "voiceConnectorId": "string", 
        "direction": "string" 
    } 
}
```

### AmazonTranscribeProcessor y S3 RecordingSink lo consiguió
<a name="processor-sink-success"></a>

Este ejemplo muestra una estructura de eventos típica.

```
{
    "version": "0", 
    "id": "string",
    "detail-type": "Media Insights State Change", 
    "source": "aws.chime", 
    "account": number, 
    "region": "string",
    "time": "yyyy-mm-ddThh:mm:ssZ", 
    "resources": [],
    "detail": {
        "version": "0", 
        "mediaInsightsPipelineArn": "string", 
        "eventType": "chime:MediaInsightsStopped",
        "mediaInsightsPipelineElementStatuses": [
            { 
                "type": "AmazonTranscribeProcessor", 
                "status": "Stopped",
                "updatedOn": 1686184070655             
            },
            { 
                "type": "S3RecordingSink", 
                "status": "Stopped",
                "updatedOn": 1686184070655 
            }
        ] 
        "callId": "string", 
        "transactionId": "string", 
        "fromNumber": "string", 
        "toNumber": "string", 
        "voiceConnectorId": "string", 
        "direction": "string" 
    } 
}
```

### S3 RecordingSink tuvo éxito y VoiceEnhancement está en progreso
<a name="voice-enhancement-sink-inprogress"></a>

Este ejemplo muestra una estructura de eventos típica.

```
{
  "version": "0",
  "id": "string",
  "detail-type": "Media Insights State Change",
  "source": "aws.chime",
  "account": number,
  "time": "yyyy-mm-ddThh:mm:ssZ",
  "region": "string",
  "detail": {
    "mediaInsightsPipelineArn": "string",
    "eventType": "chime:MediaInsightsInProgress",
    "version": "0",
    "mediaInsightsPipelineElementStatuses": [
      {
        "type": "VoiceEnhancementSink",
        "status": "InProgress",
        "updatedOn": 1686184070655
      },
      {
        "type": "S3RecordingSink",
        "status": "Stopped",
        "updatedOn": 1686184070655
      }
    ]
  }
}
```

### S3 RecordingSink tuvo éxito y VoiceEnhancement falló debido a llamadas de más de 30 minutos
<a name="voice-enhancement-sink-fail-longerthan30minutes"></a>

Este ejemplo muestra una estructura de eventos típica.

```
{
  "version": "0",
  "id": "string",
  "detail-type": "Media Insights State Change",
  "source": "aws.chime",
  "account": number,
  "time": "yyyy-mm-ddThh:mm:ssZ",
  "region": "string",
  "detail": {
    "mediaInsightsPipelineArn": "string",
    "eventType": "chime:MediaInsightsStopped",
    "version": "0",
    "mediaInsightsPipelineElementStatuses": [
      {
        "type": "VoiceEnhancement",
        "status": "NotSupported",
        "updatedOn": 1686184070655,
        "statusDetail": "Unsupported recording length"
      },
      {
        "type": "S3RecordingSink",
        "status": "Stopped",
        "updatedOn": 1686184070655
      }
    ]
  }
}
```

### S3 RecordingSink tuvo éxito y VoiceEnhancement falló debido a que las llamadas duraron menos de 30 minutos
<a name="voice-enhancement-sink-fail-lessthan30minutes"></a>

Este ejemplo muestra una estructura de eventos típica.

```
{
  "version": "0",
  "id": "string",
  "detail-type": "Media Insights State Change",
  "source": "aws.chime",
  "account": number,
  "time": "yyyy-mm-ddThh:mm:ssZ",
  "region": "string",
  "detail": {
    "mediaInsightsPipelineArn": "string",
    "eventType": "chime:MediaInsightsPermanentFailure",
    "version": "0",
    "mediaInsightsPipelineElementStatuses": [
      {
        "type": "VoiceEnhancement",
        "status": "Failed",
        "updatedOn": 1686184070655
      },
      {
        "type": "S3RecordingSink",
        "status": "Stopped",
        "updatedOn": 1686184070655
      }
    ]
  }
}
```

## Alertas en tiempo real
<a name="realtime-alerts"></a>

**nota**  
Solo los procesadores Amazon Transcribe y de análisis de llamadas con Amazon Transcribe admiten alertas en tiempo real.

 El análisis de llamadas de Amazon Chime SDK permite a los desarrolladores configurar reglas para enviar alertas en tiempo real a través de un procesador durante una sesión de análisis. Las alertas se envían a Amazon EventBridge con el tipo de detalle`Media Insights Rules Matched`. EventBridge admite la integración con servicios descendentes como Lambda, Amazon SQS y Amazon SNS para activar notificaciones para el usuario final o iniciar otra lógica empresarial personalizada.

 Las alertas en tiempo real se configuran como parte del campo `RealTimeAlertConfiguration` para la `MediaInsightsPipelineConfiguration`. Puede usar la consola del SDK de Amazon Chime para configurar el campo o puede llamar al [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipelineConfiguration.html)o. [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_UpdateMediaInsightsPipelineConfiguration.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_UpdateMediaInsightsPipelineConfiguration.html) APIs 

 En este ejemplo, se muestra cómo crear o actualizar una configuración de alertas en tiempo real mediante la API. 

```
{
    "MediaInsightsPipelineConfigurationName": "config_name",
    "ResourceAccessRoleArn": "arn:aws:iam::account_id:role/role_name",
    "RealTimeAlertConfiguration": {
        "Disabled": false,
        "Rules": [{
                "Type": "KeywordMatch",
                "KeywordMatchConfiguration": {
                    "RuleName": "rule_name_1",
                    "Keywords": [
                        "hello",
                        "thank you"
                    ],
                    "Negate": false
                }
            },
            {
                "Type": "Sentiment",
                "RuleName": "rule_name_2",
                "SentimentType": "NEGATIVE",
                "TimePeriod": 60
            },
            {
                "Type": "IssueDetection",
                "RuleName": "rule_name_3"
            }
        ]
    },
    "Elements": [{
            "Type": "AmazonTranscribeCallAnalyticsProcessor",
            "AmazonTranscribeCallAnalyticsProcessorConfiguration": {
                "LanguageCode": "en-US"
            }
        },
        {
            "Type": "KinesisDataStreamSink",
            "KinesisDataStreamSinkConfiguration": {
                "InsightsTarget": "arn:aws:kinesis:us-east-1:account_id:stream/stream_name"
            }
        }
    ]
}
```

Cada regla de una configuración de alertas en tiempo real se activa de forma independiente. Es posible que reciba varias EventBridge notificaciones si se cumplen varias condiciones de la regla al mismo tiempo. Para crear una lista de reglas para sus alertas, puede seleccionar uno de los siguientes tipos de reglas:

Coincidencia de palabra clave  
Alerta cuando un conjunto específico de palabras clave o frases coincide en un evento de enunciado o transcripción. Puede configurar la alerta para que emita un evento si:  
+ Todas las palabras clave especificadas se pronuncian y `Negate` se configura como `false`.
+ Todas las palabras clave especificadas no se pronuncian durante toda la llamada, si `Negate` se establece como `true`.
Amazon Transcribe y Amazon Transcribe Analytics admiten este tipo de regla.

Análisis de opiniones  
Avisa cuando un tipo de sentimiento en particular está en curso durante un período de tiempo continuo. Solo Transcribe Call Analytics admite esta regla.

Detección de problema  
Alerta cuando se detecta un problema en un evento de enunciado. Solo Transcribe Call Analytics admite este tipo de regla.

En el siguiente ejemplo se muestra un evento de alerta en tiempo real para una regla de `KeywordMatch`.

```
{
    "version": "0",
    "id": "string",
    "detail-type": "Media Insights Rules Matched", 
    "source": "aws.chime", 
    "account": number,
    "region": "us-east-1",
    "time": "yyyy-mm-ddThh:mm:ssZ", 
    "resources": [],
    "detail":   {
        "version": "0",
        "sourceMetadata": {}
        "ruleName": "string"
        "utteranceId": "string",
        "beginTimestamp": "yyyy-mm-ddThh:mm:ssZ",
    }
}
```

Algunos EventBridge campos son específicos del tipo de regla que coincide:

**Campos de coincidencia de palabras clave**  
`utteranceId`: ID de la transcripción que contiene una palabra clave coincidente si utiliza el análisis de llamadas con Amazon Transcribe. Solo para la coincidencia de palabras clave pronunciadas.  
`resultId`: ID de la transcripción que contiene una palabra clave coincidente si utiliza Amazon Transcribe. Solo para la coincidencia de palabras clave pronunciadas.  
`beginTimestamp`: Hora de inicio de la transcripción que contiene una palabra clave coincidente. Solo para la coincidencia de palabras clave pronunciadas.

**Campos de análisis de sentimiento**  
`beginTimestamp`: Hora de inicio de la ventana móvil del sentimiento coincidente.  
`endTimestamp`: Hora de finalización de la ventana variable del sentimiento coincidente.

# Creación de un lago de datos de Amazon Chime SDK
<a name="ca-data-lake"></a>

El lago de datos de análisis de llamadas de Amazon Chime SDK le permite transmitir información basada en el machine learning y cualquier metadato de Amazon Kinesis Data Streams a su bucket de Amazon S3. Por ejemplo, usar el lago de datos para acceder URLs a las grabaciones. Para crear el lago de datos, debe implementar un conjunto de AWS CloudFormation plantillas desde la consola del SDK de Amazon Chime o mediante programación mediante. AWS CLI El lago de datos le permite consultar los metadatos de sus llamadas y los datos de análisis de voz haciendo referencia a las tablas de datos de AWS Glue en Amazon Athena.

**Topics**
+ [Requisitos previos](#data-lake-prereqs)
+ [Terminología y conceptos de lagos de datos](#data-lake-terms)
+ [Creación de lagos de datos](#creating-multiple-data-lakes)
+ [Disponibilidad regional de lago de datos](#data-lake-regions)
+ [Arquitectura de lagos de datos](#data-lake-architecture)
+ [Configuración del lago de datos](#data-lake-setup)

## Requisitos previos
<a name="data-lake-prereqs"></a>

Debe tener los siguientes elementos para crear un lago de Amazon Chime SDK:
+ Un Amazon Kinesis Data Streams. Para obtener más información, consulte [Creación de una transmisión mediante la consola de administración de AWS](https://docs.aws.amazon.com/streams/latest/dev/how-do-i-create-a-stream.html) en la *Guía para desarrolladores de Amazon Kinesis Streams*.
+ Un bucket de S3. Para obtener más información, consulte [Cómo crear su primer bucket de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-bucket.html) en la *Guía del usuario de Amazon S3*.

## Terminología y conceptos de lagos de datos
<a name="data-lake-terms"></a>

Utilice los siguientes términos y conceptos para comprender cómo funciona el lago de datos.

**Amazon Kinesis Data Firehose**  
Un servicio de extracción, transformación y carga (ETL) que captura, transforma y entrega datos de manera fiable a lagos de datos, almacenes de datos y servicios de análisis. Para obtener más información, consulte ¿Qué es Amazon Kinesis Data Firehose?.

**Amazon Athena**  
Amazon Athena es un servicio de consulta interactivo que le permite analizar datos en Amazon S3 usando SQL estándar. Athena funciona sin servidor, por lo que no hay una infraestructura para administrar y solo pagará por las consultas que ejecute. Para usar Athena, señale sus datos en Amazon S3, defina el esquema y utilice consultas SQL estándar. También puede usar grupos de trabajo para agrupar a los usuarios y controlar los recursos a los que tienen acceso cuando ejecutan consultas. Los grupos de trabajo le permiten administrar la simultaneidad de consultas y priorizar la ejecución de las consultas en diferentes grupos de usuarios y cargas de trabajo.

**Catálogo de datos de Glue**  
En Amazon Athena, las tablas y bases de datos son contenedores de los metadatos que definen un esquema para los datos de origen subyacentes. Para cada conjunto de datos debe existir una tabla en Athena. Los metadatos de la tabla indican a Athena la ubicación del bucket de Amazon S3. También especifica la estructura de datos, como los nombres de las columnas, los tipos de datos y el nombre de la tabla. Las bases de datos solo contienen los metadatos y la información del esquema de un conjunto de datos.

## Creación de lagos de datos
<a name="creating-multiple-data-lakes"></a>

Se pueden crear varios lagos de datos proporcionando un nombre único de base de datos de Glue para especificar dónde almacenar la información sobre las llamadas. Para una AWS cuenta determinada, puede haber varias configuraciones de análisis de llamadas, cada una con su correspondiente lago de datos. Esto significa que la separación de datos se puede aplicar para determinados casos de uso, como la personalización de la política de retención y la política de acceso sobre cómo se almacenan los datos. Se pueden aplicar diferentes políticas de seguridad para el acceso a la información, las grabaciones y los metadatos.

## Disponibilidad regional de lago de datos
<a name="data-lake-regions"></a>

El lago de datos de Amazon Chime SDK está disponible en las siguientes regiones.


| Region | Tabla de Glue | Quick | 
| --- | --- | --- | 
| us-east-1 | Disponible | Disponible | 
| us-west-2 | Disponible | Disponible | 
| eu-central-1 | Disponible | Disponible | 

## Arquitectura de lagos de datos
<a name="data-lake-architecture"></a>

En el siguiente diagrama se muestra la arquitectura de lago de datos. Los números del dibujo corresponden al texto numerado que aparece a continuación.

![\[El programa fluye a través de un lago de datos.\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/images/call-analytics-data-lake-architecture.png)


En el diagrama, una vez que utilice la AWS consola para implementar la CloudFormation plantilla desde el flujo de trabajo de configuración del pipeline de Media Insights, los siguientes datos fluyen al bucket de Amazon S3:

1. El análisis de llamadas de Amazon Chime SDK empezará a transmitir datos en tiempo real al flujo de datos de Kinesis del cliente. 

1. Amazon Kinesis Firehose almacena en búfer estos datos en tiempo real hasta que acumulen 128 mb o hasta que pasen 60 segundos, lo que ocurra primero. A continuación, Firehose utiliza el `amazon_chime_sdk_call_analytics_firehose_schema` en el catálogo de datos de Glue para comprimir los datos y transformar los registros JSON en un archivo tipo parquet.

1. El archivo parquet se encuentra en su bucket de Amazon S3, en un formato particionado.

1. Además de los datos en tiempo real, los archivos.wav de resumen de análisis de llamadas con Amazon Transcribe posteriores a la llamada (redactados y no redactados, si se especifica en la configuración) y los archivos.wav de grabación de llamadas también se envían a su bucket de Amazon S3. 

1. Puede utilizar Amazon Athena y SQL estándar para consultar los datos del bucket de Amazon S3.

1. La CloudFormation plantilla también crea un catálogo de datos de Glue para consultar estos datos resumidos posteriores a la llamada a través de Athena.

1. Todos los datos del bucket de Amazon S3 también se pueden visualizar con Quick. QuickSight crea una conexión con un bucket de Amazon S3 mediante Amazon Athena.

La tabla Amazon Athena utiliza las siguientes características para optimizar el rendimiento de las consultas:

**Particiones de datos**  
Las particiones dividen la tabla en partes y mantienen los datos relacionados juntos de acuerdo con propiedades como la fecha, el país o la región. Las claves de partición actúan como columnas virtuales. En este caso, la CloudFormation plantilla define las particiones al crear la tabla, lo que ayuda a reducir la cantidad de datos escaneados por consulta y mejora el rendimiento. También puede filtrar por partición para restringir la cantidad de datos escaneados por una consulta. Para obtener más información, consulte [Particiones de datos en Athena](https://docs.aws.amazon.com/athena/latest/ug/partitions.html) en la *Guía del usuario de Amazon Athena*.  
En este ejemplo se muestra la estructura de particiones con una fecha del 1 de enero de 2023:  

1. 

   ```
   s3://example-bucket/amazon_chime_sdk_data_lake
                               /serviceType=CallAnalytics/detailType={DETAIL_TYPE}/year=2023
                               /month=01/day=01/example-file.parquet
   ```

1. donde `DETAIL_TYPE` es uno de los siguientes:

   1. `CallAnalyticsMetadata`

   1. `TranscribeCallAnalytics`

   1. `TranscribeCallAnalyticsCategoryEvents`

   1. `Transcribe`

   1. `Recording`

   1. `VoiceAnalyticsStatus`

   1. `SpeakerSearchStatus`

   1. `VoiceToneAnalysisStatus`

**Optimizar la generación de almacenes de datos en columnas**  
Apache Parquet utiliza la compresión por columnas, la compresión basada en el tipo de datos y la compresión de predicados para almacenar los datos. Unos índices de compresión mejores o la omisión de bloques de datos implican leer menos bytes del bucket de Amazon S3. Esto conduce a un mejor rendimiento de las consultas y a una reducción de los costos. Para esta optimización, la conversión de datos de JSON a parquet está habilitada en Amazon Kinesis Data Firehose.

**Proyección de particiones**  
Esta característica de Athena crea particiones automáticamente para cada día para mejorar el rendimiento de las consultas basadas en fechas.

## Configuración del lago de datos
<a name="data-lake-setup"></a>

Utilice la consola de Amazon Chime SDK para completar los siguientes pasos.

1. **Inicie la consola del SDK de Amazon Chime ([ https://console.aws.amazon.com/chime-sdk/principal](https://console.aws.amazon.com/chime-sdk/home)) y, en el panel de navegación, en **Call Analytics**, elija Configuraciones.**

1. Complete el paso 1, seleccione **Siguiente** y, en la página del paso 2, seleccione la casilla **Análisis de voz**.

1. En **Detalles de salida**, seleccione la casilla **Almacén de datos para realizar un análisis histórico** y, a continuación, seleccione el enlace **Implementar CloudFormation pila**.

   El sistema lo envía a la página de **creación rápida de pilas** en la CloudFormation consola.

1. Indique un nombre para la pila y, a continuación, los siguientes parámetros:

   1. `DataLakeType`— Elija **Crear análisis de llamadas DataLake**.

   1. `KinesisDataStreamName`— Seleccione su transmisión. Debe ser la transmisión utilizada para la transmisión de análisis de llamadas.

   1. `S3BucketURI`— Seleccione su bucket de Amazon S3. La URI debe tener el prefijo `s3://bucket-name`

   1. `GlueDatabaseName`— Seleccione un nombre único para la base de datos de AWS Glue. No puede reutilizar una base de datos existente en la cuenta de AWS .

1. Seleccione la casilla de confirmación y, a continuación, seleccione **Crear lago de datos**. Espere 10 minutos para que el sistema cree el lago.

### Configuración del lago de datos mediante AWS CLI
<a name="data-lake-setup-using-cli"></a>

Se usa AWS CLI para crear un rol con permisos para llamar a CloudFormation la pila de creación. Siga el procedimiento que se indica a continuación para crear y configurar los roles de IAM. Para obtener más información, consulte [Creación de una pila](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-cli-creating-stack.html) en la *Guía del AWS CloudFormation usuario*.

1. Cree un rol denominado *AmazonChimeSdkCallAnalytics-Datalake-Provisioning-Role y adjunte una política de confianza al rol* que permita asumirlo. CloudFormation 

   1. Cree una política de confianza de IAM con la siguiente plantilla y guarde el archivo en formato.json.

------
#### [ JSON ]

****  

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Effect": "Allow",
                  "Principal": {
                      "Service": "cloudformation.amazonaws.com"
                  },
                  "Action": "sts:AssumeRole",
                  "Condition": {}
              }
          ]
      }
      ```

------

   1. Ejecute el comando **aws iam create-role** y pase la política de confianza como parámetro.

      ```
                                          aws iam create-role \
          --role-name AmazonChimeSdkCallAnalytics-Datalake-Provisioning-Role
          --assume-role-policy-document file://role-trust-policy.json
      ```

   1. Anote el *ARN de rol* que devuelve la respuesta. Se requiere *un ARN de rol* en el siguiente paso.

1. Cree una política con permiso para crear una pila. CloudFormation

   1. Cree una política de IAM con la siguiente plantilla y guarde el archivo en formato.json. Este archivo es obligatorio para llamar a create-policy.

------
#### [ JSON ]

****  

      ```
      {  
          "Version":"2012-10-17",		 	 	   
          "Statement": [  
              {  
                  "Sid": "DeployCloudFormationStack",  
                  "Effect": "Allow",  
                  "Action": [  
                      "cloudformation:CreateStack"
                  ],
                  "Resource": "*"
              }
          ]
      }
      ```

------

   1. Ejecute **aws iam create-policy** y pase la política de creación de pila como parámetro.

      ```
                                      aws iam create-policy --policy-name testCreateStackPolicy 
      --policy-document file://create-cloudformation-stack-policy.json
      ```

   1. Anote el *ARN de rol* que devuelve la respuesta. Se requiere *un ARN de rol* en el siguiente paso.

1. Asocie la política de **aws iam attach-role-policy** al rol.

   ```
                               aws iam attach-role-policy --role-name {Role name created above}
   --policy-arn {Policy ARN created above}
   ```

1. Cree una CloudFormation pila e introduzca los parámetros necesarios:**aws cloudformation create-stack**.

   Proporcione los valores de los parámetros para cada ParameterKey uso ParameterValue.

   ```
                               aws cloudformation create-stack  --capabilities CAPABILITY_NAMED_IAM 
   --stack-name testDeploymentStack 
   --template-url https://chime-sdk-assets.s3.amazonaws.com/public_templates/AmazonChimeSDKDataLake.yaml 
   --parameters  ParameterKey=S3BucketURI,ParameterValue={S3 URI}
   ParameterKey=DataLakeType,ParameterValue="Create call analytics datalake" 
   ParameterKey=KinesisDataStreamName,ParameterValue={Name of Kinesis Data Stream}
   --role-arn {Role ARN created above}
   ```

#### Recursos creados por la configuración del lago de datos
<a name="cf-resources"></a>

La siguiente tabla muestra los recursos que se crean al crear un lago de datos.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/ca-data-lake.html)

# Configuración de un panel rápido para el SDK de Amazon Chime
<a name="quicksight-setup-setup"></a>

Una vez que haya configurado el lago de datos, podrá configurar un panel rápido con métricas predefinidas que visualicen sus datos. Con los paneles, puede crear lo siguiente:
+ **Transcribir el análisis de llamadas \$1 el análisis de voz**. Las métricas incluyen imágenes resumidas y detalladas de las turn-by-turn transcripciones, los problemas detectados, los resultados, la detección de entidades y las coincidencias de los identificadores de los perfiles de voz.
+ **Transcribir \$1 análisis de voz**. Las métricas incluyen imágenes resumidas y detalladas de las turn-by-turn transcripciones, las coincidencias de vocabulario, el tono de voz y las coincidencias de los identificadores del perfil de voz.

En los siguientes temas se explica cómo configurar una cuenta Quick si aún no la tiene y cómo configurar un panel.

**Topics**
+ [Crear una QuickSight cuenta](#create-quicksight-account)
+ [Configurando tu QuickSight cuenta](#configure-qs-acct)
+ [Crear un panel QuickSight](#create-qs-dashboard)

## Crear una QuickSight cuenta
<a name="create-quicksight-account"></a>

Los pasos de esta sección explican cómo crear una cuenta Quick. Si ya tiene una cuenta, puede pasar a [Crear un panel QuickSight](#create-qs-dashboard).

Puede crear una QuickSight cuenta de la siguiente manera:
+ Uso de CloudFormation plantillas de Amazon.
+ Uso de la consola de Amazon Chime SDK.

### Requisitos previos
<a name="qs-account-prereqs"></a>

Recopile la información necesaria antes de empezar:
+ El nombre del bucket de Amazon S3 de análisis de llamadas.
+ Dirección de correo electrónico de notificación. El sistema envía QuickSight las notificaciones a esta dirección.

### Uso CloudFormation de plantillas para crear una cuenta
<a name="account-by-cft"></a>

En los siguientes pasos se explica cómo crear una cuenta rápida mediante el despliegue de una CloudFormation plantilla de Amazon. El proceso solo lo suscribe a una cuenta empresarial. Para obtener información sobre los precios, consulta [Quick Pricing](https://aws.amazon.com/quicksight/pricing/).

**Para implementar la plantilla**

1. Inicie la AWS consola e inicie sesión en su cuenta de AWS.

1. Pegue la siguiente URL en la barra de direcciones del navegador. Asegúrese de introducir su región tal y como se indica.

   `https://region.console.aws.amazon.com/cloudformation/home?region=region#/stacks/quickcreate?templateURL=https://chime-sdk-assets.s3.amazonaws.com/public_templates/AmazonChimeSDKQuickSightSubscription.yaml`.

1. En la página **Creación rápida de pila**, indique los siguientes parámetros:

   1. En **Nombre de pila**, indique un nombre para su cuenta.

   1. En **QuickSightNotificationEmail**la dirección de correo electrónico que recopiló anteriormente.

   1. En **QuickSightSubscriptionForDataVisualization**, selecciona **Crear nueva AWS QuickSight cuenta**.

   1. En **S3 BucketName**, introduce el nombre de tu bucket de Amazon S3.

   1. Seleccione **Acepto que AWS CloudFormation podría crear recursos de IAM**. casilla de verificación.

1. Seleccione **Creación de pila**.

   Las pilas tardan unos 10 minutos en crearse.

1. Cuando finalice la construcción, selecciona **Ir a la sección Rápida** e introduce tu dirección de correo electrónico para iniciar sesión en tu cuenta.

### Usar la consola para crear una cuenta
<a name="account-by-console"></a>

En los siguientes pasos se explica cómo usar la consola del SDK de Amazon Chime para crear una cuenta Quick. Debe utilizar una cuenta Enterprise o Enterprise \$1 Q.

**Para utilizar la consola de**

1. Inicie la consola del SDK de Amazon Chime en [ https://console.aws.amazon.com/chime-sdk/casa](https://console.aws.amazon.com/chime-sdk/home)**QuickSight**, busque y elija en los resultados de búsqueda. **QuickSight**  
![\[Un resultado de búsqueda que enlaza con Quick.\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/images/quicksightsetup-1.png)

1. Selecciona **Registrarse en QuickSight**. 

1. Seleccione **Enterprise** o **Enterprise \$1 Q y**, a continuación, seleccione **Continuar**.

1. Indique su nombre, apellidos, número de teléfono y la dirección de correo electrónico que recopiló anteriormente y, a continuación, seleccione **Continuar**.

1. Haga lo siguiente:

   1. En **Método de autenticación**, seleccione una opción. 
**nota**  
Si elige la opción con usuarios federados, necesitará los permisos de IAM correctos. Para obtener más información, consulte Cómo [suscribirse a una suscripción rápida](https://docs.aws.amazon.com/quicksight/latest/user/signing-up.html) en la *Guía rápida del usuario*.

   1. En **QuickSight Región**, selecciona una región.

   1. En **Información de la cuenta**, introduzca un nombre para la cuenta y la dirección de correo electrónico que recopiló anteriormente.

   1. En **QuickSight Acceso a los servicios de AWS**, utilice el rol predeterminado o elija **Usar un rol existente** y seleccione un rol de la lista.

   1. (Opcional) según sea necesario, en **Permitir el acceso y la detección automática de estos recursos**, seleccione recursos adicionales.

   1. Cuando termine, seleccione **Finalizar**.

   1. Cuando finalice la creación, elija **Ir a la sección Rápida** e introduzca su dirección de correo electrónico para iniciar sesión en su cuenta.

## Configurando tu QuickSight cuenta
<a name="configure-qs-acct"></a>

Después de iniciar sesión en su QuickSight cuenta, debe configurar la seguridad y agregarse a un grupo creado por el proceso de configuración.

**Para configurar la seguridad**

1. Selecciona el icono del perfil en la esquina superior derecha y, a continuación, selecciona **Administrar** en el QuickSight menú que aparece.  
![\[Un menú con el comando QuickSight Administrar.\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/images/quicksightsetup-1-a.png)

1. En el panel de navegación, seleccione **Seguridad y permisos**.

1. En el **QuickSight área de acceso a AWS los servicios**, seleccione **Administrar** y asegúrese de que estén seleccionados los siguientes servicios.
   + Amazon Redshift
   + Amazon RDS
   + Amazon S3
   + Amazon Athena
   +  IAM

1. Seleccione el enlace **Seleccionar buckets de Amazon S3**.

1. Seleccione la casilla de verificación situada junto a su bucket de Amazon S3 y, a continuación, la situada a la derecha, en la columna **Permiso de escritura para grupo de trabajo de Athena**.

1. Seleccione **Finalizar**.

1. Seleccione **Save**.

**Para añadirse al grupo**

1. En el panel de navegación, seleccione **Administrar grupos** y, a continuación, seleccione el grupo con **Admins** en el nombre. Por ejemplo, *S3 BucketName* — **Admins.**

1. Seleccione **Añadir usuario** e introduzca su alias de correo electrónico en el cuadro que aparece.

   Su nombre aparece como **Admin, es decir,** *su alias*.

1. Elija **Añadir**.

## Crear un panel QuickSight
<a name="create-qs-dashboard"></a>

Después de crear un lago de datos, puede crear un QuickSight panel que visualice sus datos. Puede usar una CloudFormation plantilla de Amazon o la consola del SDK de Amazon Chime para crear el panel. En los siguientes pasos se explican ambos métodos.

**Para utilizar una plantilla**

1. Inicia la CloudFormation consola Amazon.

1. Pegue el siguiente enlace en la barra de direcciones de su navegador: `https://region.console.aws.amazon.com/cloudformation/home?region=region#/stacks/quickcreate?templateURL=https://chime-sdk-assets.s3.amazonaws.com/public_templates/AmazonChimeSDKQuickSightDashboards.yaml`

1. En la página de **Creación rápida de pila**, en **Nombre de pila**, introduzca un nombre para la cuenta.

1. En **ActiveQuickSightAccount**, selecciona **True**.

1. En **QuicksightDashboardSelection**, selecciona el panel **Análisis de llamadas — Transcribe el panel de análisis de llamadas y análisis de voz o el panel** Análisis de **llamadas: Transcribe y análisis** de voz.

1. En **Amazon S3 BucketName**, introduzca el URI de su bucket de Amazon S3.

1. En **GlueDatabaseName**, introduzca la base de datos de Glue en la que desea que se despliegue el QuickSight panel.

1. Seleccione la **casilla Acepto que AWS CloudFormation podría crear recursos de IAM** y, a continuación, seleccione **Crear pila**.

**Para configurar un QuickSight panel de forma manual**

1. Navegue hasta su QuickSight cuenta.

1. En la esquina superior derecha, selecciona el icono del perfil y, a continuación, selecciona **Administrar QuickSight**.  
![\[El cuadro de diálogo de la QuickSight cuenta y el QuickSight comando Administrar.\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/images/quicksightsetup-1-a.png)

1. En el panel de navegación, seleccione **Administrar grupos** y, a continuación, el grupo creado por el proceso de configuración.

1. Seleccione **Añadir usuario**, introduzca su dirección de correo electrónico y, a continuación, seleccione **Añadir**.

   El sistema tarda 10 minutos en implementar la página.

1. Utilice la consola del SDK de Amazon Chime para iniciar sesión en su QuickSight cuenta y utilizar el panel de control.

# El modelo de datos de análisis de llamadas de Amazon Chime SDK.
<a name="ca-data-model"></a>

La información de esta sección muestra y describe el modelo de datos de análisis de llamadas del SDK de Amazon Chime, un conjunto de tablas de un catálogo de datos de AWS Glue.

**Topics**
+ [Descripción de la estructura de tablas del catálogo de AWS Glue datos del SDK de Amazon Chime](ca-data-model-diagram.md)
+ [Descripción de las tablas del catálogo de AWS Glue datos del SDK de Amazon Chime](glue-tables.md)
+ [Extracción de datos de su catálogo de AWS Glue datos para el análisis de llamadas del SDK de Amazon Chime](ca-data-model-queries.md)

# Descripción de la estructura de tablas del catálogo de AWS Glue datos del SDK de Amazon Chime
<a name="ca-data-model-diagram"></a>

El siguiente diagrama muestra la estructura de tablas del catálogo de datos de AWS Glue creado para las sesiones de análisis de llamadas y análisis de voz del SDK de Amazon Chime.

![\[Las tablas del catálogo de datos de análisis de llamadas Glue.\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/images/glue-cat-diag-12-03.jpg)


En la siguiente sección se enumeran y describen las tablas y los campos del catálogo. 

# Descripción de las tablas del catálogo de AWS Glue datos del SDK de Amazon Chime
<a name="glue-tables"></a>

En las siguientes tablas se enumeran y describen las columnas, los tipos de datos y los elementos de un catálogo de datos de Glue para análisis de llamadas de Amazon Chime SDK.

**Topics**
+ [call\$1analytics\$1metadata](#ca-glue-metadata)
+ [call\$1analytics\$1recording\$1metadata](#ca-glue-analytics-recording)
+ [transcribe\$1call\$1analytics](#ca-glue-transcribe-ca)
+ [transcribe\$1call\$1analytics\$1category\$1events](#ca-glue-transcribe-ca-events)
+ [transcribe\$1call\$1analytics\$1post\$1call](#ca-glue-transcribe)
+ [transcribe](#ca-glue-transcribe)
+ [voice\$1analytics\$1status](#ca-glue-va-status)
+ [speaker\$1search\$1status](#ca-glue-speaker-status)
+ [voice\$1tone\$1analysis\$1status](#ca-glue-tone-status)

## call\$1analytics\$1metadata
<a name="ca-glue-metadata"></a>

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/glue-tables.html)

## call\$1analytics\$1recording\$1metadata
<a name="ca-glue-analytics-recording"></a>

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/glue-tables.html)

## transcribe\$1call\$1analytics
<a name="ca-glue-transcribe-ca"></a>

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/glue-tables.html)

## transcribe\$1call\$1analytics\$1category\$1events
<a name="ca-glue-transcribe-ca-events"></a>

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/glue-tables.html)

## transcribe\$1call\$1analytics\$1post\$1call
<a name="ca-glue-transcribe"></a>

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/glue-tables.html)

## transcribe
<a name="ca-glue-transcribe"></a>

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/glue-tables.html)

## voice\$1analytics\$1status
<a name="ca-glue-va-status"></a>

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/glue-tables.html)

## speaker\$1search\$1status
<a name="ca-glue-speaker-status"></a>

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/glue-tables.html)

## voice\$1tone\$1analysis\$1status
<a name="ca-glue-tone-status"></a>

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/glue-tables.html)

# Extracción de datos de su catálogo de AWS Glue datos para el análisis de llamadas del SDK de Amazon Chime
<a name="ca-data-model-queries"></a>

Utilice estas consultas de ejemplo para extraer y organizar los datos de su catálogo de datos de Glue para análisis de llamadas de Amazon Chime SDK. 

**nota**  
Para obtener información sobre cómo conectarse a Amazon Athena y consultar el catálogo de datos de Glue, consulte [Conexión a Amazon Athena con ODBC](https://docs.aws.amazon.com/athena/latest/ug/connect-with-odbc.html).

Amplíe cada sección según sea necesario.

## Extraer valores de los metadatos (tipo de datos STRING) de la tabla call\$1analytics\$1metadata
<a name="qry-insights-metadata"></a>

`call_analytics_metadata` tiene el campo `metadata` en formato de cadena JSON. Utilice la función [json\$1extract\$1scalar](https://docs.aws.amazon.com/athena/latest/ug/extracting-data-from-JSON.html) de Athena para consultar los elementos de esta cadena.

```
SELECT
    json_extract_scalar(metadata,'$.voiceConnectorId') AS "VoiceConnector ID",
    json_extract_scalar(metadata,'$.fromNumber') AS "From Number",
    json_extract_scalar(metadata,'$.toNumber') AS "To Number",
    json_extract_scalar(metadata,'$.callId') AS "Call ID",
    json_extract_scalar(metadata,'$.direction') AS Direction,
    json_extract_scalar(metadata,'$.transactionId') AS "Transaction ID"
FROM 
    "GlueDatabaseName"."call_analytics_metadata"
```

## Consultando SIPRECMetadata las actualizaciones en la tabla call\$1analytics\$1metadata
<a name="qry-insights-siprec-metadata"></a>

El `call_analytics_metadata` campo tiene el campo de metadatos en formato de cadena JSON. `metadata`tiene otro objeto anidado denominado`oneTimeMetadata`, este objeto contiene SIPRec metadatos en formato XML original y JSON transformado. Utilice la función `json_extract_scalar` de Athena para consultar los elementos de esta cadena.

```
SELECT
    json_extract_scalar(metadata,'$.voiceConnectorId') AS "VoiceConnector ID",
    json_extract_scalar(metadata,'$.fromNumber') AS "From Number",
    json_extract_scalar(metadata,'$.toNumber') AS "To Number",
    json_extract_scalar(metadata,'$.callId') AS "Call ID",
    json_extract_scalar(metadata,'$.direction') AS Direction,
    json_extract_scalar(metadata,'$.transactionId') AS "Transaction ID",
    json_extract_scalar(json_extract_scalar(metadata,'$.oneTimeMetadata'),'$.siprecMetadata') AS "siprec Metadata XML",
    json_extract_scalar(json_extract_scalar(metadata,'$.oneTimeMetadata'),'$.siprecMetadataJson') AS "Siprec Metadata JSON",
    json_extract_scalar(json_extract_scalar(metadata,'$.oneTimeMetadata'),'$.inviteHeaders') AS "Invite Headers"
FROM 
    "GlueDatabaseName"."call_analytics_metadata"
WHERE 
    callevent-type = "update";
```

## Extraer valores de los metadatos (tipo de datos CADENA) de la tabla call\$1analytics\$1recording\$1metadata
<a name="qry-recording-metadata"></a>

`call_analytics_recording_metadata` tiene el campo de metadatos en formato de cadena JSON. Utilice la función [json\$1extract\$1scalar](https://docs.aws.amazon.com/athena/latest/ug/extracting-data-from-JSON.html) de Athena para consultar los elementos de esta cadena.

```
SELECT
    json_extract_scalar(metadata,'$.voiceConnectorId') AS "VoiceConnector ID",
    json_extract_scalar(metadata,'$.fromNumber') AS "From Number",
    json_extract_scalar(metadata,'$.toNumber') AS "To Number",
    json_extract_scalar(metadata,'$.callId') AS "Call ID",
    json_extract_scalar(metadata,'$.direction') AS Direction,
    json_extract_scalar(metadata,'$.transactionId') AS "Transaction ID"
FROM 
    "GlueDatabaseName"."call_analytics_recording_metadata"
WHERE 
    detail-subtype = "Recording"
```

## Extraer valores de los detalles (tipo de datos STRUCT) de la tabla voice\$1analytics\$1status
<a name="qry-va-status"></a>

`voice_analytics_status` tiene un campo de detalles en el tipo de datos `struct`. En el siguiente ejemplo, se muestra cómo consultar un campo de tipo de datos `struct`:

```
SELECT
    detail.transactionId AS "Transaction ID",
    detail.voiceConnectorId AS "VoiceConnector ID",
    detail.siprecmetadata AS "Siprec Metadata",
    detail.inviteheaders AS "Invite Headers",
    detail.streamStartTime AS "Stream Start Time"
FROM 
    "GlueDatabaseName"."voice_analytics_status"
```

## Unir las tablas voice\$1analytics\$1status y call\$1analytics\$1metadata
<a name="qry-join-va-meta"></a>

En el siguiente ejemplo de consulta, se unen `call_analytics_metadata` y `voice_analytics_status`:

```
SELECT
    a.detail.transactionId AS "Transaction ID",
    a.detail.voiceConnectorId AS "VoiceConnector ID",
    a.detail.siprecmetadata AS "Siprec Metadata",
    a.detail.inviteheaders AS "Invite Headers",
    a.detail.streamStartTime AS "Stream Start Time"
    json_extract_scalar(b.metadata,'$.fromNumber') AS "From Number",
    json_extract_scalar(b.metadata,'$.toNumber') AS "To Number",
    json_extract_scalar(b.metadata,'$.callId') AS "Call ID",
    json_extract_scalar(b.metadata,'$.direction') AS Direction
FROM 
    "GlueDatabaseName"."voice_analytics_status" a
INNER JOIN 
    "GlueDatabaseName"."call_analytics_metadata" b
ON a.detail.transactionId = json_extract_scalar(b.metadata,'$.transactionId')
```

## Extraer transcripciones de la tabla transcribe\$1call\$1analytics\$1post\$1call
<a name="qry-transcribe-ca-post-call"></a>

transcribe\$1call\$1analytics\$1post\$1call has transcript field in struct format with nested arrays. Use la siguiente consulta para separar las matrices:

```
SELECT 
    jobstatus,
    languagecode,
    IF(CARDINALITY(m.transcript)=0 OR CARDINALITY(m.transcript) IS NULL, NULL, e.transcript.id) AS utteranceId,
    IF(CARDINALITY(m.transcript)=0 OR CARDINALITY(m.transcript) IS NULL, NULL, e.transcript.content) AS transcript,
    accountid,
    channel,
    sessionid,
    contentmetadata.output AS "Redaction"
FROM 
    "GlueDatabaseName"."transcribe_call_analytics_post_call" m
CROSS JOIN UNNEST
    (IF(CARDINALITY(m.transcript)=0, ARRAY[NULL], transcript)) AS e(transcript)
```

## Joining the transcribe\$1call\$1analytics\$1post\$1call and call\$1analytics\$1metadata tables
<a name="qry-va-status"></a>

La siguiente consulta permite unirse a las tablas transcribe\$1call\$1analytics\$1post\$1call y call\$1analytics\$1metadata:

```
WITH metadata AS(
  SELECT 
    from_iso8601_timestamp(time) AS "Timestamp",
    date_parse(date_format(from_iso8601_timestamp(time), '%m/%d/%Y %H:%i:%s') , '%m/%d/%Y %H:%i:%s') AS "DateTime",
    date_parse(date_format(from_iso8601_timestamp(time) , '%m/%d/%Y') , '%m/%d/%Y') AS "Date",
    date_format(from_iso8601_timestamp(time) , '%H:%i:%s')  AS "Time",
    mediainsightspipelineid,
    json_extract_scalar(metadata,'$.toNumber') AS "To Number",
    json_extract_scalar(metadata,'$.voiceConnectorId') AS "VoiceConnector ID",
    json_extract_scalar(metadata,'$.fromNumber') AS "From Number",
    json_extract_scalar(metadata,'$.callId') AS "Call ID",
    json_extract_scalar(metadata,'$.direction') AS Direction,
    json_extract_scalar(metadata,'$.transactionId') AS "Transaction ID",
    REGEXP_REPLACE(REGEXP_EXTRACT(json_extract_scalar(metadata,'$.oneTimeMetadata.s3RecordingUrl'), '[^/]+(?=\.[^.]+$)'), '\.wav$', '') AS "SessionID"
  FROM 
    "GlueDatabaseName"."call_analytics_metadata"
),
transcript_events AS(
  SELECT 
    jobstatus,
    languagecode,
    IF(CARDINALITY(m.transcript)=0 OR CARDINALITY(m.transcript) IS NULL, NULL, e.transcript.id) AS utteranceId,
    IF(CARDINALITY(m.transcript)=0 OR CARDINALITY(m.transcript) IS NULL, NULL, e.transcript.content) AS transcript,
    accountid,
    channel,
    sessionid,
    contentmetadata.output AS "Redaction"
  FROM 
    "GlueDatabaseName"."transcribe_call_analytics_post_call" m
  CROSS JOIN UNNEST
    (IF(CARDINALITY(m.transcript)=0, ARRAY[NULL], transcript)) AS e(transcript)
)
SELECT 
    jobstatus,
    languagecode,
    a.utteranceId,
    transcript,
    accountid,
    channel,
    a.sessionid,
    "Redaction"
    "Timestamp",
    "DateTime",
    "Date",
    "Time",
    mediainsightspipelineid,
    "To Number",
    "VoiceConnector ID",
    "From Number",
    "Call ID",
    Direction,
    "Transaction ID"
FROM 
    "GlueDatabaseName"."transcribe_call_analytics_post_call" a
LEFT JOIN 
    metadata b
ON 
    a.sessionid = b.SessionID
```

## Consultando un objeto multimedia URLs para la grabación de llamadas con mejora de voz
<a name="qry-voice-enhancement-call-recording"></a>

El siguiente ejemplo de consulta une la URL `Voice enhancement call recording`:

```
SELECT 
    json_extract_scalar(metadata,'$.voiceConnectorId') AS "VoiceConnector ID",
    json_extract_scalar(metadata,'$.fromNumber') AS "From Number",
    json_extract_scalar(metadata,'$.toNumber') AS "To Number",
    json_extract_scalar(metadata,'$.callId') AS "Call ID",
    json_extract_scalar(metadata,'$.direction') AS Direction,
    json_extract_scalar(metadata,'$.transactionId') AS "Transaction ID",
    s3MediaObjectConsoleUrl
FROM
    {GlueDatabaseName}."call_analytics_recording_metadata"
WHERE
    detail-subtype = "VoiceEnhancement"
```

# Uso de análisis de voz de Amazon Chime SDK
<a name="voice-analytics"></a>

La característica de análisis de voz de Amazon Chime SDK le permite implementar la búsqueda de altavoces y el análisis del tono de voz. La búsqueda de hablantes se utiliza para identificar e inscribir a nuevas personas que llaman, así como para identificar a las personas que llaman con más frecuencia y asignar una puntuación de confianza a esas identificaciones. Utilizará el análisis del tono de voz para predecir el sentimiento de la persona que llama como `negative`, `neutral` o `positive`.

El análisis de voz se ejecuta como un componente opcional de una sesión de análisis de llamadas de Amazon Chime SDK.

El análisis de voz funciona con canales de información multimedia o llamadas de Voice Connectors de Amazon Chime SDK. Recomendamos utilizar el [SDK de Media Pipelines](media-pipelines.md) e invocar las tareas de una canalización de información multimedia para tener un control más preciso de las tareas y obtener información sobre ellas.

Puedes usar Voice Connectors para garantizar la compatibilidad con versiones anteriores, pero solo actualizamos la cartera de información multimedia APIs con nuevas funciones.

Para obtener más información sobre la creación y el uso de conectores de voz, consulte [Administración de los conectores de voz de Amazon Chime SDK](https://docs.aws.amazon.com/chime-sdk/latest/ag/voice-connectors.html) en la *Guía del administrador de Amazon Chime SDK*.

El análisis de voz también proporciona:
+ Procesamiento asíncrono de tareas. Las tareas se ejecutan de forma independiente unas de otras.
+ Controle cuándo procesa la información.

Para iniciar el análisis de voz, llame al [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html)y [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartVoiceToneAnalysisTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartVoiceToneAnalysisTask.html) APIs.

En los siguientes temas, se explica cómo utilizar análisis de voz.

**Topics**
+ [Descripción de la arquitectura de análisis de voz de Amazon Chime SDK](va-architecture.md)
+ [Descripción de los flujos de trabajo de búsqueda de hablantes de Amazon Chime SDK](va-data-flow.md)
+ [Ejemplo de flujo de trabajo de análisis de tonos de voz para Amazon Chime SDK](va-tone-flow.md)
+ [Sondeo de los resultados de las tareas de Amazon Chime SDK](va-task-result-poll.md)
+ [Descripción de las notificaciones de Amazon Chime SDK](va-notification-targets.md)
+ [Descripción de las políticas de almacenamiento de datos, exclusión y retención de datos para el Amazon Chime SDK](va-opt-out.md)
+ [Uso de APIs la voz para ejecutar análisis de voz para el SDK de Amazon Chime](va-in-voice-namespace.md)

# Descripción de la arquitectura de análisis de voz de Amazon Chime SDK
<a name="va-architecture"></a>

En los temas de esta sección se da una visión general de la arquitectura de análisis de voz de Amazon Chime SDK, incluidos los flujos de datos de cada característica.

En este diagrama se da una visión general de cómo fluyen datos a través de análisis de voz.

![\[Un diagrama que muestra el flujo de datos de alto nivel a través del análisis de voz.\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/images/va-architecture-kvs.png)


En el diagrama:

1. El audio se transmite a una transmisión de video de Kinesis para la persona que llama y el agente. Para ello, puede utilizar un productor de Kinesis Video Streams o el conector de voz Amazon Chime SDK Voice Connector. Para obtener más información, consulte [Descripción de los flujos de trabajo de las analíticas basadas en el machine learning para el Amazon Chime SDK](ml-based-analytics.md) en esta guía y [transmita contenido multimedia del conector de voz de Amazon Chime SDK a Kinesis](https://docs.aws.amazon.com/chime-sdk/latest/ag/start-kinesis-vc.html) en la *Guía del administrador de Amazon Chime SDK.*

1. Una aplicación o un creador activan la búsqueda del altavoz, el análisis del tono de voz o ambos para la transmisión de audio después de que la persona que llama dé su consentimiento.

1. Durante la llamada, el análisis de voz envía notificaciones a un objetivo, ya sea Amazon Simple Queue Service (SQS), Amazon Simple Notification Service (SNS), AWS Lambda, o Amazon Kinesis Data Streams.

Además, el análisis de voz proporciona estas herramientas para administrar los datos que genera.

**Perfiles de voz**  
La combinación de una incrustación de voz, el identificador único de la incrustación y su fecha de caducidad. Los perfiles de voz caducan a los tres años por motivos de seguridad y porque las voces cambian con el tiempo. Para evitar volver a crear los perfiles de voz, llame a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_UpdateVoiceProfile.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_UpdateVoiceProfile.html). Para obtener más información sobre las fechas de vencimiento, consulte [Descripción la retención de datos de análisis de voz de Amazon Chime SDK](va-data-retention.md).  
Para inscribir una incrustación de voz o actualizar una incrustación de voz inscrita, debe llamar al [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateVoiceProfile.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateVoiceProfile.html)o [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_UpdateVoiceProfile.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_UpdateVoiceProfile.html) APIs dentro de las 24 horas siguientes a la finalización de la llamada. 

**Dominios de perfiles de voz**  
Colección de perfiles de voz.

# Descripción de los flujos de trabajo de búsqueda de hablantes de Amazon Chime SDK
<a name="va-data-flow"></a>

En esta sección, le mostramos un ejemplo de flujo de datos y programas para un análisis de búsqueda de hablantes de Amazon Chime SDK.

La función de búsqueda de interlocutores implica la creación de una incrustación de voz, que se puede utilizar para comparar la voz de la persona que llama con los datos de voz almacenados anteriormente. La recopilación, el uso, el almacenamiento y la conservación de los identificadores biométricos y la información biométrica en forma de huella de voz digital pueden requerir el consentimiento informado de la persona que llama mediante una autorización por escrito. Diversas leyes estatales exigen dicho consentimiento, incluidas las leyes de biometría de Illinois, Texas y Washington y otras leyes estatales de privacidad. Antes de utilizar la característica de búsqueda de ponentes, debe proporcionar todos los avisos y obtener todos los consentimientos exigidos por la legislación aplicable y según las [condiciones de servicio de AWS](https://aws.amazon.com/service-terms/) que rigen el uso de la función. 

En el siguiente diagrama se muestra un ejemplo de flujo de datos a través de una tarea de análisis de búsqueda de interlocutores. Las descripciones numeradas que aparecen debajo del diagrama explican cada paso del proceso. En el diagrama se supone que ya ha configurado un conector de voz de Amazon Chime SDK con una configuración de análisis de llamadas que tiene un `VoiceAnalyticsProcessor`. Para obtener más información, consulte [Grabar llamadas de Voice Connector](record-vc-calls.md).

![\[Un diagrama que muestra el flujo de datos a través de un análisis de búsqueda de interlocutores.\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/images/speaker-search-workflow-2.png)


1. Usted o un administrador del sistema crean un dominio de perfiles de voz para almacenar las incrustaciones de voz y los perfiles de voz. Para obtener más información sobre la creación de dominios de perfiles de voz, consulte [Creación de dominios de perfiles de voz](https://docs.aws.amazon.com/chime-sdk/latest/ag/create-vp-domain.html) en la *Guía del administrador de Amazon Chime SDK*. También puede usar la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateVoiceProfileDomain.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateVoiceProfileDomain.html).

1. Una persona llama con un número de teléfono asignado a un conector de voz de Amazon Chime SDK. O bien, un agente usa un número de Voice Connector para realizar una llamada saliente.

1. El servicio Amazon Chime SDK Voice Connector crea un identificador de transacción y lo asocia a la llamada.

1. Suponiendo que la aplicación se suscriba a EventBridge los eventos, la aplicación llama a la [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html)API con la configuración de canalización de Media Insights y a Kinesis Video ARNs Stream para la llamada de Voice Connector.

   Para obtener más información sobre el uso EventBridge, consulte. [Descripción de los flujos de trabajo de las analíticas basadas en el machine learning para el Amazon Chime SDK](ml-based-analytics.md)

1. Su aplicación (por ejemplo, un sistema de respuesta de voz interactiva) o su agente notifican a la persona que llama sobre la grabación de llamadas y el uso de incrustaciones de voz para el análisis de la voz y solicita su consentimiento para participar.

1. Una vez que la persona que llama dé su consentimiento, su aplicación o agente podrá llamar a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartSpeakerSearchTask.html) a través [SDK de voz](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_Operations_Amazon_Chime_SDK_Voice.html) si dispone de un conector de voz y un identificador de transacción. O bien, si tiene un ID de canalización de información multimedia en lugar de un ID de transacción, llame a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html) en el [SDK de canalizaciones de medios](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_Operations_Amazon_Chime_SDK_Media_Pipelines.html).

   Una vez que la persona que llama dé su consentimiento, su aplicación o agente llamará a la API `StartSpeakerSearchTask`. Debe pasar el ID del conector de voz, el ID de transacción y el ID de dominio del perfil de voz a la API. Se devuelve un identificador de tarea de búsqueda de hablantes para identificar la tarea asincrónica.
**nota**  
Antes de invocar la `StartSpeakerSearchTask` API en cualquiera de los dos SDKs, debe proporcionar las notificaciones necesarias y obtener los consentimientos necesarios, según lo exige la ley y las condiciones de [servicio de AWS](https://aws.amazon.com/service-terms/).

1. El sistema acumula 10 segundos de la voz de la persona que llama. La persona que llama debe hablar durante al menos ese tiempo. El sistema no captura ni analiza el silencio.

1. El canal de información multimedia compara la voz con los perfiles de voz del dominio y enumera las 10 coincidencias con mayor confianza. Si no encuentra ninguna coincidencia, el Voice Connector crea un perfil de voz.

1. El servicio de canalización de información multimedia envía un evento de notificación a los destinos de notificación configurados.

1. La persona que llama sigue hablando y proporciona 10 segundos adicionales de voz sin silencio.

1. El canal de información multimedia genera una función de registro de voz integrada que se puede utilizar para crear un perfil de voz o actualizar un perfil de voz existente.

1. El canal de información multimedia envía una notificación de `VoiceprintGenerationSuccessful` a los destinatarios de notificaciones configurados.

1. La aplicación llama al [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateVoiceProfile.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateVoiceProfile.html)o [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_UpdateVoiceProfile.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_UpdateVoiceProfile.html) APIs para crear o actualizar el perfil.

1. La aplicación llama a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_GetSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_GetSpeakerSearchTask.html) según sea necesario para obtener el estado más reciente de la tarea de búsqueda de interlocutores.

# Ejemplo de flujo de trabajo de análisis de tonos de voz para Amazon Chime SDK
<a name="va-tone-flow"></a>

**importante**  
El análisis del tono de voz implica hacer predicciones sobre el sentimiento del hablante en función de la información lingüística y tonal. No debe utilizar el análisis de opiniones de ninguna manera que esté prohibida por la ley, ni siquiera en relación con la toma de decisiones sobre una persona que puedan tener repercusiones legales o similares significativas en esa persona (por ejemplo, en relación con el empleo, la vivienda, la solvencia crediticia o las ofertas financieras, etc.). 

El análisis del tono de voz analiza las voces de las personas que participan en una llamada y predice sus sentimientos, ya sea `positive`, `negative` o `neutral`.

En el siguiente diagrama se muestra un ejemplo de flujo de trabajo para un análisis de tonos de voz. Los elementos numerados que aparecen debajo de la imagen describen cada paso del proceso

**nota**  
En el diagrama se supone que ya ha configurado un conector de voz de Amazon Chime SDK con una configuración de análisis de llamadas que tiene un `VoiceAnalyticsProcessor`. Para obtener más información, consulte [Grabar llamadas de Voice Connector](record-vc-calls.md).

![\[Un diagrama que muestra el flujo de datos a través de un análisis del tono de voz.\]](http://docs.aws.amazon.com/es_es/chime-sdk/latest/dg/images/voice-tone-workflow-v2.png)


En el diagrama:

1. Una persona llama con un número de teléfono asignado a un conector de voz de Amazon Chime SDK. O bien, un agente usa un número de Voice Connector para realizar una llamada saliente.

1. El servicio Voice Connector crea un identificador de transacción y lo asocia a la llamada.

1. Su aplicación (por ejemplo, un sistema de respuesta de voz interactiva) o su agente notifican a la persona que llama sobre la grabación de llamadas y el uso de incrustaciones de voz para el análisis de la voz y solicita su consentimiento para participar.

1. Suponiendo que la aplicación se suscriba a EventBridge los eventos, la aplicación llama a la [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_CreateMediaInsightsPipeline.html)API con la configuración de canalización de Media Insights y a Kinesis Video ARNs Stream para la llamada de Voice Connector.

   Para obtener más información sobre el uso EventBridge, consulte. [Descripción de los flujos de trabajo de las analíticas basadas en el machine learning para el Amazon Chime SDK](ml-based-analytics.md)

1. Una vez que la persona que llama dé su consentimiento, su aplicación o agente podrá llamar a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartSpeakerSearchTask.html) a través [SDK de voz](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_Operations_Amazon_Chime_SDK_Voice.html) si dispone de un conector de voz y un identificador de transacción. O bien, si tiene un ID de canalización de información multimedia en lugar de un ID de transacción, llame a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_StartSpeakerSearchTask.html) en el [SDK de canalizaciones de medios](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_Operations_Amazon_Chime_SDK_Media_Pipelines.html).

   Una vez que la persona que llama dé su consentimiento, su aplicación o agente llamará a la API `StartSpeakerSearchTask`. Debe pasar el ID del conector de voz, el ID de transacción y el ID de dominio del perfil de voz a la API. Se devuelve un identificador de tarea de búsqueda de hablantes para identificar la tarea asincrónica.

1. El usuario habla durante toda la llamada.

1. El agente habla durante toda la llamada.

1. Cada 5 segundos, Media Insights Pipeline utiliza un modelo de machine learning para analizar los últimos 30 segundos del discurso y predecir el tono de la persona que llama durante ese intervalo y para toda la llamada desde el momento en que se llamó a `StartVoiceToneAnalysisTask` por primera vez.

1. El canal de información multimedia envía una notificación con esa información a los destinatarios de notificaciones configurados. Puede identificar la notificación en función del ARN de la transmisión y del ID del canal. Para obtener más información, consulte [Descripción de las notificaciones de Amazon Chime SDK](va-notification-targets.md) más adelante en esta sección.

1. Repita los pasos 9 y 10 hasta que finalice la llamada.

1. Al final de la llamada, Media Insights Pipeline envía una última notificación con la predicción del tono promedio actual para los últimos 30 segundos, además del tono promedio de toda la llamada.

1. La aplicación llama a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_GetVoiceToneAnalysisTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_GetVoiceToneAnalysisTask.html) según sea necesario para obtener el estado más reciente de la tarea de análisis del tono de voz. 
**nota**  
La API `GetVoiceToneAnalysisTask` no transmite los datos de tono.

**nota**  
La API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_GetVoiceToneAnalysisTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_GetVoiceToneAnalysisTask.html) no devuelve datos de tonos de voz.

# Sondeo de los resultados de las tareas de Amazon Chime SDK
<a name="va-task-result-poll"></a>

**importante**  
De forma predeterminada, el análisis de voz hace que los resultados estén disponibles durante 7 días y, a continuación, elimina los datos automáticamente. Debe almacenar los datos de sus tareas si desea utilizarlos durante más tiempo o para cumplir con las leyes de retención de datos. Para obtener más información, consulte [Descripción la retención de datos de análisis de voz de Amazon Chime SDK](va-data-retention.md) más adelante en esta guía.

El análisis de voz intenta garantizar al menos una entrega del resultado de cada tarea. Sin embargo, los problemas de red pueden aumentar la latencia. [Para evitar posibles problemas, o si prefiere los procesos sincrónicos, puede usar lo siguiente APIs en el SDK de [Media Pipelines o en el SDK](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_Operations_Amazon_Chime_SDK_Media_Pipelines.html) de Voice:](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_Operations_Amazon_Chime_SDK_Voice.html)
+  [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_GetSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_GetSpeakerSearchTask.html) 
+  [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_GetVoiceToneAnalysisTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_GetVoiceToneAnalysisTask.html)
**importante**  
La API `GetVoiceToneAnalysisTask` solo devuelve el estado de una tarea. No devuelve los resultados de la tarea. Para ver los resultados, utilice un destino de notificaciones de Amazon SQS, Amazon SNS o AWS Lambda.

La API `GetSpeakerSearchTask` obtiene los últimos resultados de forma sincrónica para un identificador de tarea, los mensajes retrasados o los mensajes que llegan fuera de orden. No obstante, recomendamos utilizar destinos de notificaciones y procesamiento asincrónico. Hacerlo consume menos recursos de computación.

# Descripción de las notificaciones de Amazon Chime SDK
<a name="va-notification-targets"></a>

El análisis de voz envía automáticamente los eventos a un objetivo cuando se inician las tareas de búsqueda de interlocutores o análisis del tono de voz, mientras se ejecutan y cuando terminan. Los objetivos de notificación se utilizan para recibir esos eventos. Recomendamos utilizar varios objetivos de notificación si su flujo de trabajo o aplicación necesitan una alta disponibilidad.

Además, debe utilizar un rol de IAM con las políticas necesarias para acceder a sus objetivos de notificación. Para obtener más información, consulte [Uso de la función de acceso a los recursos de análisis de llamadas de Amazon Chime SDK](call-analytics-resource-access-role.md).

**nota**  
En el caso de Amazon SQS y Amazon SNS, no admitimos colas. first-in-first-out Como resultado, es posible que los mensajes lleguen desordenados. Recomendamos comprobar las marcas de tiempo para ordenar los mensajes según sea necesario y conservar los mensajes en un almacén de datos como Amazon DynamoDB. También puede utilizar el comando Get APIs descrito en [Sondeo de los resultados de las tareas de Amazon Chime SDK](va-task-result-poll.md) para recibir los resultados más recientes.

En la siguiente tabla se enumeran los eventos y sus tipos de detalles correspondientes.


| Evento de notificación | Tipo de detalle | 
| --- | --- | 
| Metadatos de análisis de voz | `VoiceAnalyticsStatus` | 
| Búsqueda de interlocutores | `SpeakerSearchStatus` | 
| Análisis del tono de voz | `VoiceToneAnalysisStatus` | 

# Descripción de las políticas de IAM para los objetivos de notificación de Amazon Chime SDK
<a name="va-iam-target-policies"></a>

Debe utilizar políticas del rol de IAM en una configuración de Call Analytics que permitan el acceso a sus destinos de notificación de Amazon SQS, Amazon SNS, AWS Lambda o Amazon KDS. Para obtener más información, consulte la sección [Uso de la función de acceso a los recursos de análisis de llamadas de Amazon Chime SDK](call-analytics-resource-access-role.md) de esta guía.

## Eventos de búsqueda de hablantes
<a name="va-speaker-search-events"></a>

Los eventos de búsqueda de hablantes tienen el tipo de detalle `SpeakerSearchStatus`.

Los conectores de voz de Amazon Chime SDK envían los siguientes eventos de búsqueda de hablantes:
+ Coincidencias de identificación
+ Generación de incrustaciones de voz

Los eventos pueden tener los siguientes estados:
+ `IdentificationSuccessful`: se identificó correctamente al menos un ID de perfil de voz coincidente con una puntuación de confianza alta en el dominio del perfil de voz determinado.
+ `IdentificationFailure`: no se pudo realizar la identificación. Causas: el llamante no habla durante al menos 10 segundos, mala calidad de audio.
+ `IdentificationNoMatchesFound`: no se ha podido encontrar una coincidencia de alta confianza en el dominio del perfil de voz indicado. Es posible que la persona que llama sea nueva o que su voz haya cambiado.
+ `VoiceprintGenerationSuccessful`: el sistema ha generado una incrustación de voz utilizando 20 segundos de audio no silencioso.
+ `VoiceprintGenerationFailure`: el sistema no ha podido generar una incrustación de voz. Causas: el llamante no habla durante al menos 20 segundos, mala calidad de audio.

### Coincidencias de identificación
<a name="va-id-matches"></a>

Una vez que se llama a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartSpeakerSearchTask](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartSpeakerSearchTask) de un `transactionId` concreto, el servicio Voice Connector devuelve una notificación de coincidencia de identificación tras 10 segundos de voz no silenciosa. El servicio muestra las 10 coincidencias más frecuentes, junto con un identificador de perfil de voz y una puntuación de confianza que oscila entre [0, 1]. Cuanto más alto sea el puntaje de confianza, mayor será la probabilidad de que el hablante de la llamada coincida con el ID del perfil de voz. Si el modelo de machine learning no encuentra coincidencias, el campo de la notificación `detailStatus` contiene `IdentificationNoMatchesFound`.

En el siguiente ejemplo, se muestra la notificación de una coincidencia correcta.

```
{    
    "version": "0",
    "id": "12345678-1234-1234-1234-111122223333",
    "detail-type": "SpeakerSearchStatus",
    "service-type": "VoiceAnalytics",
    "source": "aws.chime",
    "account": "111122223333",
    "time": "yyyy-mm-ddThh:mm:ssZ",
    "region": "us-east-1",
    "resources": [],
    "detail": {
        "taskId": "uuid",
        "detailStatus": "IdentificationSuccessful",
        "speakerSearchDetails" : {
            "results": [
                {
                    "voiceProfileId": "vp-505e0992-82da-49eb-9d4a-4b34772b96b6",
                    "confidenceScore": "0.94567856",
                },
                {
                    "voiceProfileId": "vp-fba9cbfa-4b8d-4f10-9e41-9dfdd66545ab",
                    "confidenceScore": "0.82783350",
                },
                {
                    "voiceProfileId": "vp-746995fd-16dc-45b9-8965-89569d1cf787",
                    "confidenceScore": "0.77136436",
                }
            ]
        },
        "mediaInsightsPipelineId": "87654321-33ca-4dc6-9cdf-abcde6612345",
        "sourceArn": "arn:aws:chime:us-east-1:111122223333:media-pipeline/87654321-33ca-4dc6-9cdf-abcde6612345",
        "streamArn": "arn:aws:kinesisvideo:us-east-1:111122223333:stream/my-stream/0123456789012",
        "channelId": 0
    }
}
```

### Generación de incrustaciones de voz
<a name="va-voice-print-generation"></a>

Tras 10 segundos adicionales de voz no silenciosa, el conector de voz envía una notificación de generación de incrustaciones de voz a los destinatarios de la notificación. Puede inscribir nuevas incorporaciones de voz en un perfil de voz o actualizar una copia impresa que ya esté en un perfil de voz.

En el siguiente ejemplo, se muestra la notificación de una coincidencia correcta, lo que significa que puede actualizar el perfil de voz asociado.

```
{
    "version": "0",
    "id": "12345678-1234-1234-1234-111122223333",
    "detail-type": "SpeakerSearchStatus",
    "service-type": "VoiceAnalytics",
    "source": "aws.chime",
    "account": "111122223333",
    "time": "yyyy-mm-ddThh:mm:ssZ",
    "region": "us-east-1",
    "resources": [],
    "detail": {
        "taskId": "guid",
        "detailStatus": "VoiceprintGenerationSuccess",
        "mediaInsightsPipelineId": "87654321-33ca-4dc6-9cdf-abcde6612345",
        "sourceArn": "arn:aws:chime:us-east-1:111122223333:media-pipeline/87654321-33ca-4dc6-9cdf-abcde6612345",
        "streamArn": "arn:aws:kinesisvideo:us-east-1:111122223333:stream/my-stream/0123456789012",
        "channelId": 0
    }
}
```

## Eventos de análisis del tono de voz
<a name="va-tone-status"></a>

Los eventos de análisis del tono de voz tienen el tipo de detalle `VoiceToneAnalysisStatus`. Los análisis pueden devolver los siguientes estados:
+ `VoiceToneAnalysisSuccessful`: se han analizado satisfactoriamente las voces de la persona que llamaba y del agente en función de las probabilidades de emitir un sentimiento: positivo, negativo o neutral.
+ `VoiceToneAnalysisFailure`: no se ha podido realizar el análisis del tono. Esto puede suceder si la persona que llama se queda sin hablar durante 10 segundos o si la calidad del audio es demasiado mala.
+ `VoiceToneAnalysisCompleted`: se han analizado correctamente las voces del usuario y del agente para determinar las probabilidades de opinión durante toda la llamada. Este es el evento final, que se envía cuando finaliza el análisis del tono de voz.

En el siguiente ejemplo, se muestra un evento de análisis de tono de voz típico.

```
{
  "detail-type": "VoiceToneAnalysisStatus",
  "service-type": "VoiceAnalytics",
  "source": "aws.chime",
  "account": "216539279014",
  "time": "2022-08-26T17:55:15.563441Z",
  "region": "us-east-1",
  "detail": {
    "taskId": "uuid",
    "detailStatus": "VoiceToneAnalysisSuccessful",
    "voiceToneAnalysisDetails": {
      "currentAverageVoiceTone": {
          "startTime": "2022-08-26T17:55:15.563Z",
          "endTime": "2022-08-26T17:55:45.720Z",
          "voiceToneLabel": "neutral",
          "voiceToneScore": {    
            "neutral": "0.83",    
            "positive": "0.13",    
            "negative": "0.04"
          }
      },
      "overallAverageVoiceTone": {
          "startTime": "2022-08-26T16:23:13.344Z",
          "endTime": "2022-08-26T17:55:45.720Z",
          "voiceToneLabel": "positive",
          "voiceToneScore": {    
            "neutral": "0.25",    
            "positive": "0.65",    
            "negative": "0.1"
          }
      }
    },
        "startFragmentNumber": "01234567890123456789",
        "mediaInsightsPipelineId": "87654321-33ca-4dc6-9cdf-abcde6612345",
        "sourceArn": "arn:aws:chime:us-east-1:111122223333:media-pipeline/87654321-33ca-4dc6-9cdf-abcde6612345",
        "streamArn": "arn:aws:kinesisvideo:us-east-1:111122223333:stream/my-stream/0123456789012",
        "channelId": 0
  },
  "version": "0",
  "id": "Id-f928dfe3-f44b-4965-8a17-612f9fb92d59"
}
```

## Resumen de eventos posteriores a la llamada
<a name="va-post-call-summary-events"></a>

Los eventos resumidos posteriores a la llamada se envían 5 minutos después de que la llamada haya finalizado. Estos resúmenes proporcionan una visión general de las tareas de búsqueda de interlocutores que se realizaron durante la llamada.

En el siguiente ejemplo, se muestra un resumen posterior a la llamada con el perfil de voz que mejor coincide, la identidad confirmada del altavoz y una lista de los perfiles de voz creados o actualizados mediante las llamadas a la API `CreateVoiceProfile` y `UpdateVoiceProfile` realizadas durante la llamada.

```
{
    "version": "0",
    "id": "12345678-1234-1234-1234-111122223333",
    "detail-type": "VoiceAnalyticsStatus",
    "service-type": "VoiceAnalytics",
    "source": "aws.chime",
    "account": "111122223333",
    "time": "yyyy-mm-ddThh:mm:ssZ",    
    "region": "us-east-1",
    "resources": [],
    "detail": {
        "detailStatus": "PostCallVoiceAnalytics",
        "callId": "22e8dee8-bbd7-4f94-927b-2d0ebaeddc1c",
        "transactionId": "daaeb6bf-2fe2-4e51-984e-d0fbf2f09436",
        "voiceConnectorId": "abcdef1ghij2klmno3pqr4",
        "isCaller": true | false,
        "speakerSearchResults": {
            "bestMatchedVoiceProfileId": "vp-04c25ba1-a059-4fd3-8495-4ac91b55e2bf",
            "customerValidatedCallerIdentity": "vp-04c25ba1-a059-4fd3-8495-4ac91b55e2bf",
            "createVoiceProfileTransactions": [
                {
                    "voiceProfileId": "vp-04c25ba1-a059-4fd3-8495-4ac91b55e2bf",
                    "requestTimestamp": "2022-12-14T18:38:38.796Z"
                },
                {
                    "voiceProfileId": "vp-04c25ba1-a059-4fd3-8495-4ac91b55e2bf",
                    "requestTimestamp": "2022-12-14T18:38:38.796Z",
                }
            ],
            "updateVoiceProfileTransactions": [
                {
                    "voiceProfileId": "vp-04c25ba1-a059-4fd3-8495-4ac91b55e2bf",
                    "requestTimestamp": "2022-12-14T18:38:38.796Z",
                },
                {
                    "voiceProfileId": "vp-04c25ba1-a059-4fd3-8495-4ac91b55e2bf",
                    "requestTimestamp": "2022-12-14T18:38:38.796Z",
                }
            ]
        }
    }
}
```

# Ejemplo de análisis de voz: función de Lambda para Amazon Chime SDK
<a name="va-sample-lambda"></a>

El código de Python del siguiente ejemplo procesa las notificaciones recibidas de un conector de voz. Puede añadir el código a una función AWS Lambda. También puede utilizarla para activar su cola de Amazon SQS, un tema de Amazon SNS o Amazon Kinesis Data Streams. A continuación, puede almacenar las notificaciones en un futuro procesamiento de `EventTable`. Para conocer los formatos de notificación exactos, consulte [Descripción de las notificaciones de Amazon Chime SDK](va-notification-targets.md).

```
import base64
import boto3
import json
import logging
import time

from datetime import datetime
from enum import Enum

log = logging.getLogger()
log.setLevel(logging.INFO)

dynamo = boto3.client("dynamodb")

EVENT_TABLE_NAME = "EventTable"

class EventType(Enum):
    """
    This example code uses a single Lambda processor to handle either
    triggers from SQS, SNS, Lambda, or Kinesis. You can adapt it to fit your
    desired infrastructure depending on what you prefer. To distinguish
    where we get events from, we use an EventType enum as an
    example to show the different ways of parsing the notifications.
    """
    SQS = "SQS"
    SNS = "SNS"
    LAMBDA = "LAMBDA"
    KINESIS = "KINESIS"


class AnalyticsType(Enum):
    """
    Define the various analytics event types that this Lambda will
    handle.
    """
    SPEAKER_SEARCH = "SpeakerSearch"
    VOICE_TONE_ANALYSIS = "VoiceToneAnalysis"
    ANALYTICS_READY = "AnalyticsReady"
    UNKNOWN = "UNKNOWN"
 
   
class DetailType(Enum):
    """
    Define the  various detail types that Voice Connector's voice
    analytics feature can return.
    """
    SPEAKER_SEARCH_TYPE = "SpeakerSearchStatus"
    VOICE_TONE_ANALYSIS_TYPE = "VoiceToneAnalysisStatus"
    ANALYTICS_READY = "VoiceAnalyticsStatus"
 

def handle(event, context):
    """
    Example of how to handle incoming Voice Analytics notification messages
    from Voice Connector.
    """
    logging.info(f"Received event of type {type(event)} with payload {event}")
    is_lambda = True
    
    # Handle triggers from SQS, SNS, and KDS. Use the below code if you would like
    # to use this Lambda as a trigger for an existing SQS queue, SNS topic or Kinesis
    # stream.
    if "Records" in event:
        logging.info("Handling event from SQS or SNS since Records exists")
        is_lambda = False
        for record in event.get("Records", []):
            _process_record(record)
    
    # If you would prefer to have your Lambda invoked directly, use the
    # below code to have the Voice Connector directly invoke your Lambda.
    # In this scenario, there are no "Records" passed.
    if is_lambda:
        logging.info(f"Handling event from Lambda")
        event_type = EventType.LAMBDA
        _process_notification_event(event_type, event)


def _process_record(record):
    # SQS and Kinesis use eventSource.
    event_source = record.get("eventSource")
    
    # SNS uses EventSource.
    if not event_source:
        event_source = record.get("EventSource")

    # Assign the event type explicitly based on the event source value.
    event_type = None
    if event_source == "aws:sqs":
        event = record["body"]
        event_type = EventType.SQS
    elif event_source == "aws:sns":
        event = record["Sns"]["Message"]
        event_type = EventType.SNS
    elif event_source == "aws:kinesis":
        raw_data = record["kinesis"]["data"]
        raw_message = base64.b64decode(raw_data).decode('utf-8')
        event = json.loads(raw_message)
        event_type = EventType.KINESIS
    else:
        raise Exception(f"Event source {event_source} is not supported")

    _process_notification_event(event_type, event)


def _process_notification_event(
    event_type: EventType,
    event: dict
):
    """
    Extract the attributes from the Voice Analytics notification message
    and store it as a DynamoDB item to process later.
    """
    message_id = event.get("id")
    analytics_type = _get_analytics_type(event.get("detail-type"))
    pk = None
    if analytics_type == AnalyticsType.ANALYTICS_READY.value or analytics_type == AnalyticsType.UNKNOWN.value:
        transaction_id = event.get("detail").get("transactionId")
        pk = f"transactionId#{transaction_id}#notificationType#{event_type.value}#analyticsType#{analytics_type}"
    else:
        task_id = event.get("detail").get("taskId")
        pk = f"taskId#{task_id}#notificationType#{event_type.value}#analyticsType#{analytics_type}"
    logging.info(f"Generated PK {pk}")
    _create_request_record(pk, message_id, json.dumps(event))


def _create_request_record(pk: str, sk: str, body: str):
    """
    Record this notification message into the Dynamo db table
    """
    try:
        # Use consistent ISO8601 date format.
        # 2019-08-01T23:09:35.369156 -> 2019-08-01T23:09:35.369Z
        time_now = (
            datetime.utcnow().isoformat()[:-3] + "Z"
        )
        response = dynamo.put_item(
            Item={
                "PK": {"S": pk},
                "SK": {"S": sk},
                "body": {"S": body},
                "createdOn": {"S": time_now},
            },
            TableName=EVENT_TABLE_NAME,
        )
        logging.info(f"Added record in table {EVENT_TABLE_NAME}, response : {response}")
    except Exception as e:
        logging.error(f"Error in adding record: {e}")


def _get_analytics_type(detail_type: str):
    """
    Get analytics type based on message detail type value.
    """
    if detail_type == DetailType.SPEAKER_SEARCH_TYPE.value:
        return AnalyticsType.SPEAKER_SEARCH.value
    elif detail_type == DetailType.VOICE_TONE_ANALYSIS_TYPE.value:
        return AnalyticsType.VOICE_TONE_ANALYSIS.value
    elif detail_type == DetailType.ANALYTICS_READY.value:
        return AnalyticsType.ANALYTICS_READY.value
    else:
        return AnalyticsType.UNKNOWN.value
```

**importante**  
Debe recibir el consentimiento antes de llamar al [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartSpeakerSearchTask](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartSpeakerSearchTask)quirófano [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartVoiceToneAnalysis.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartVoiceToneAnalysis.html) APIs. Le recomendamos que mantenga los eventos en un área de espera, como Amazon DynamoDB, hasta que reciba el consentimiento.

# Descripción de las políticas de almacenamiento de datos, exclusión y retención de datos para el Amazon Chime SDK
<a name="va-opt-out"></a>

Amazon Chime SDK utiliza datos de voz para proporcionar y mejorar el servicio de búsqueda de interlocutores. Como parte de ello, utilizamos el audio de las inscripciones, es decir, los fragmentos grabados que se utilizan para crear incrustaciones de voz, para entrenar nuestros modelos de machine learning e inteligencia artificial. Puede optar por que sus datos no se utilicen para entrenar los modelos, y en los temas de esta sección se explica cómo hacerlo.

**Topics**
+ [Descripción del almacenamiento de datos para la búsqueda de interlocutores de Amazon Chime SDK](speaker-search-data-storage.md)
+ [Gestión de las exclusiones de la búsqueda de interlocutores de Amazon Chime SDK](va-handle-opt-outs.md)
+ [Descripción la retención de datos de análisis de voz de Amazon Chime SDK](va-data-retention.md)

# Descripción del almacenamiento de datos para la búsqueda de interlocutores de Amazon Chime SDK
<a name="speaker-search-data-storage"></a>

Amazon Chime SDK almacena los siguientes datos para la búsqueda de interlocutores:
+ Las incrustaciones de voz adjuntas a los perfiles de voz que utilizamos para proporcionar la función de búsqueda de interlocutores.
+ Audio de inscripción: fragmentos de voz grabados que se utilizan para crear las incrustaciones de voz de cada perfil de voz. Usamos las grabaciones de audio de la inscripción para:
  + Mantener actualizados los modelos de búsqueda de interlocutores, una parte fundamental de la prestación de la característica de búsqueda de interlocutores.
  + Entrenar el modelo de machine learning para desarrollar y mejorar el servicio. El uso del audio de inscripción para la formación es opcional y puede excluirse de este uso seleccionando una política de exclusión tal como se describe en la siguiente sección.

# Gestión de las exclusiones de la búsqueda de interlocutores de Amazon Chime SDK
<a name="va-handle-opt-outs"></a>

Puede gestionar la exclusión voluntaria para usuarios finales y organizaciones enteras. La exclusión tiene los siguientes efectos:
+ Una vez que se dé de baja, Voice Analytics no utilizará ningún audio de inscripción nuevo para la formación modelo ni utilizará ningún audio de inscripción recopilado y almacenado antes de la exclusión.
+ Una vez que se dé de baja, Voice Analytics almacenará y utilizará el audio de la inscripción para proporcionar el servicio de búsqueda de interlocutores.

**aviso**  
Las siguientes acciones de exclusión son irreversibles. Los datos eliminados no se pueden recuperar.

**Gestionar las exclusiones de los usuarios finales**  
Cuando los usuarios finales quieran excluirse de la búsqueda de interlocutores, llame a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_DeleteVoiceProfile.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_DeleteVoiceProfile.html). Esta acción elimina el perfil de voz, además de las incrustaciones de voz y el audio de inscripción.

Para eliminar un grupo de incrustaciones de voz, llame a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_DeleteVoiceProfileDomain.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_DeleteVoiceProfileDomain.html) para eliminar el dominio. Esta acción elimina *todos* los perfiles de voz de un dominio.

**Gestionar la exclusión a nivel organizativo**  
Para gestionar las exclusiones de toda una organización, utiliza una AWS política de exclusión de Organizations. Use el nombre del servicio de `chimesdkvoiceanalytics`. Para obtener información sobre las políticas, consulte las [políticas de exclusión de los servicios de IA](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html) en la *Guía del usuario de Organizations de AWS *.

**nota**  
Para utilizar una política de exclusión voluntaria, AWS Organizations debe gestionar sus cuentas de AWS forma centralizada. Si aún no ha creado una organización para sus cuentas de AWS , consulte [Creación y administración de una organización](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org.html) en la *Guía del usuario de AWS Organizations*.

# Descripción la retención de datos de análisis de voz de Amazon Chime SDK
<a name="va-data-retention"></a>

De forma predeterminada, el análisis de voz de Amazon Chime SDK elimina las incrustaciones de voz después de 3 años. Lo hacemos porque las voces de las personas cambian con el tiempo y también por motivos de seguridad. Puede usar la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_UpdateVoiceProfile.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_UpdateVoiceProfile.html) para actualizar las incrustaciones de voz caducadas.

Los resultados de [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartSpeakerSearchTask.html)las [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartVoiceToneAnalysisTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartVoiceToneAnalysisTask.html)mismas y también estarán disponibles en sus respectivas [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_GetSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_GetSpeakerSearchTask.html)páginas y [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_GetVoiceToneAnalysisTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_GetVoiceToneAnalysisTask.html) APIs durante un máximo de 7 días.

Las incrustaciones de voz generadas a partir de un [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartSpeakerSearchTask.html)están disponibles para su persistencia a través de [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateVoiceProfile.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateVoiceProfile.html)y [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_UpdateVoiceProfile.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_UpdateVoiceProfile.html) APIs durante 24 horas, después de lo cual se eliminan y dejan de estar disponibles.

Para eliminar los resultados y gestionar las retiradas de consentimiento de los clientes, consulte la sección anterior.

# Uso de APIs la voz para ejecutar análisis de voz para el SDK de Amazon Chime
<a name="va-in-voice-namespace"></a>

Para garantizar la compatibilidad con versiones anteriores, puede usar Amazon Chime SDK Voice APIs para iniciar y administrar el análisis de voz. Sin embargo, solo la cartera de información multimedia APIs para el análisis de voz ofrece nuevas funciones, por lo que recomendamos encarecidamente utilizarlas en su lugar.

En las siguientes secciones se explican las diferencias entre los canales de información de voz y multimedia. APIs

## Detención de tareas
<a name="va-stopping-tasks"></a>

Si utiliza un conector de voz para iniciar las tareas de análisis de voz y, a continuación, utilice la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_UpdateMediaInsightsPipelineStatus.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_media-pipelines-chime_UpdateMediaInsightsPipelineStatus.html) para pausar la canalización, las tareas seguirán ejecutándose. Para detener las tareas, debe llamar al comando [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StopSpeakerSearchTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StopSpeakerSearchTask.html)y [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StopVoiceToneAnalysisTask.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StopVoiceToneAnalysisTask.html) APIs.

## Descripción de las diferencias de notificaciones
<a name="va-notification-differences"></a>

Cuando utilizas la voz APIs para realizar análisis de voz, las notificaciones son diferentes de las generadas por los canales de información multimedia.
+ Los eventos preparados para el análisis de voz solo están disponibles para las tareas que se inician con la voz APIs.
+ Debe usar los campos `voiceConnectorId`, `transactionId` o `callId` de sus notificaciones para asociar una tarea de análisis de voz a una llamada. Si utiliza canales de información multimedia para ejecutar el análisis de voz, utilice los campos `mediaInsightsPipelineId`, `streamArn` o `channelId` o para asociar una tarea a una llamada.

En los siguientes temas se explica cómo usar las notificaciones con voz APIs.

**Topics**
+ [Eventos preparados para el análisis de voz](#va-ready-events)
+ [Eventos de búsqueda de hablantes](#va-speaker-search-events)
+ [Eventos de análisis del tono de voz](#va-tone-status)

### Eventos preparados para el análisis de voz
<a name="va-ready-events"></a>

Los eventos preparados para el análisis de voz tienen el tipo de detalle `VoiceAnalyticsStatus`. 

Utilice los conectores de voz de Amazon Chime SDK para iniciar las tareas de análisis. Cuando reciba un evento preparado para el análisis de voz, puede activar una tarea de búsqueda de interlocutores o análisis del tono de voz de la llamada, identificada por las siguientes propiedades:
+ `voiceConnectorId`
+ `transactionId`

**nota**  
Esta notificación solo se proporciona cuando tienes una configuración de canalización de Media Insights con el análisis de voz activado y asociado a un conector de voz. Esta notificación NO se proporciona cuando los clientes llaman a la API `CreateMediaInsightsPipeline` e inician una tarea de búsqueda de interlocutores o de análisis del tono de voz mediante el SDK de Media Pipelines.

Los encabezados SIP devueltos por un conector de voz contienen el `transactionId`. Si no tiene acceso a los encabezados SIP, el evento de notificación `AnalyticsReady` también contiene las letras `voiceConnectorId` y `transactionId`. Esto le permite recibir la información mediante programación y llamar al [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartSpeakerSearchTask](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartSpeakerSearchTask), o. [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartVoiceToneAnalysis.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartVoiceToneAnalysis.html) APIs

Cuando el análisis de voz está listo para su procesamiento, el Voice Connector envía un evento con `"detailStatus": "AnalyticsReady"` al destino de la notificación en forma de cuerpo JSON. Si utiliza Amazon SNS o Amazon SQS, ese cuerpo aparece en el campo «Registros» de la carga útil de Amazon SNS o Amazon SQS.

A continuación se muestra un ejemplo típico de cuerpo de JSON.

```
{
    "detail-type": "VoiceAnalyticsStatus",
    "version": "0",
    "id": "Id-f928dfe3-f44b-4965-8a17-612f9fb92d59",
    "source": "aws.chime",
    "account": "123456789012",
    "time": "2022-08-26T17:55:15.563441Z",
    "region": "us-east-1",
    "resources": [],
    "detail": {
        "detailStatus": "AnalyticsReady",
        "callDetails": {
            "isCaller": false,
            "transactionId": "daaeb6bf-2fe2-4e51-984e-d0fbf2f09436",
            "voiceConnectorId": "fuiopl1fsv9caobmqf2vy7"
        }
    }
}
```

Esta notificación le permite activar llamadas adicionales a su aplicación y gestionar cualquier requisito legal, como la notificación y el consentimiento, antes de iniciar la tarea de análisis de voz. APIs

### Eventos de búsqueda de hablantes
<a name="va-speaker-search-events"></a>

Los eventos de búsqueda de hablantes tienen el tipo de detalle `SpeakerSearchStatus`.

Los conectores de voz de Amazon Chime SDK envían los siguientes eventos de búsqueda de hablantes:
+ Coincidencias de identificación
+ Generación de incrustaciones de voz

Los eventos pueden tener los siguientes estados:
+ `IdentificationSuccessful`: se identificó correctamente al menos un ID de perfil de voz coincidente con una puntuación de confianza alta en el dominio del perfil de voz determinado.
+ `IdentificationFailure`: no se pudo realizar la identificación. Causas: el llamante no habla durante al menos 10 segundos, mala calidad de audio.
+ `IdentificationNoMatchesFound`: no se ha podido encontrar una coincidencia de alta confianza en el dominio del perfil de voz indicado. Es posible que la persona que llama sea nueva o que su voz haya cambiado.
+ `VoiceprintGenerationSuccessful`: el sistema ha generado una incrustación de voz utilizando 20 segundos de audio no silencioso.
+ `VoiceprintGenerationFailure`: el sistema no ha podido generar una incrustación de voz. Causas: el llamante no habla durante al menos 20 segundos, mala calidad de audio.

#### Coincidencias de identificación
<a name="va-id-matches"></a>

Una vez que se llama a la API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartSpeakerSearchTask](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_StartSpeakerSearchTask) de un `transactionId` concreto, el servicio Voice Connector devuelve una notificación de coincidencia de identificación tras 10 segundos de voz no silenciosa. El servicio muestra las 10 coincidencias más frecuentes, junto con un identificador de perfil de voz y una puntuación de confianza que oscila entre [0, 1]. Cuanto más alto sea el puntaje de confianza, mayor será la probabilidad de que el hablante de la llamada coincida con el ID del perfil de voz. Si el modelo de machine learning no encuentra coincidencias, el campo de la notificación `detailStatus` contiene `IdentificationNoMatchesFound`.

En el siguiente ejemplo, se muestra la notificación de una coincidencia correcta.

```
{    
    "version": "0",
    "id": "12345678-1234-1234-1234-111122223333",
    "detail-type": "SpeakerSearchStatus",
    "service-type": "VoiceAnalytics",
    "source": "aws.chime",
    "account": "111122223333",
    "time": "yyyy-mm-ddThh:mm:ssZ",
    "region": "us-east-1",
    "resources": [],
    "detail": {
        "taskId": "uuid",
        "detailStatus": "IdentificationSuccessful",
        "speakerSearchDetails" : {
            "results": [
                {
                    "voiceProfileId": "vp-505e0992-82da-49eb-9d4a-4b34772b96b6",
                    "confidenceScore": "0.94567856",
                },
                {
                    "voiceProfileId": "vp-fba9cbfa-4b8d-4f10-9e41-9dfdd66545ab",
                    "confidenceScore": "0.82783350",
                },
                {
                    "voiceProfileId": "vp-746995fd-16dc-45b9-8965-89569d1cf787",
                    "confidenceScore": "0.77136436",
                }
            ]
        },
        "isCaller": false,
        "voiceConnectorId": "abcdef1ghij2klmno3pqr4",
        "transactionId": "daaeb6bf-2fe2-4e51-984e-d0fbf2f09436"
    }
}
```

#### Generación de incrustaciones de voz
<a name="va-voice-print-generation"></a>

Tras 10 segundos adicionales de voz no silenciosa, el conector de voz envía una notificación de generación de incrustaciones de voz a los destinatarios de la notificación. Puede inscribir nuevas incorporaciones de voz en un perfil de voz o actualizar una copia impresa que ya esté en un perfil de voz.

En el siguiente ejemplo, se muestra la notificación de una coincidencia correcta, lo que significa que puede actualizar el perfil de voz asociado.

```
{
    "version": "0",
    "id": "12345678-1234-1234-1234-111122223333",
    "detail-type": "SpeakerSearchStatus",
    "service-type": "VoiceAnalytics",
    "source": "aws.chime",
    "account": "111122223333",
    "time": "yyyy-mm-ddThh:mm:ssZ",
    "region": "us-east-1",
    "resources": [],
    "detail": {
        "taskId": "guid",
        "detailStatus": "VoiceprintGenerationSuccess",
        "isCaller": false,
        "transactionId": "12345678-1234-1234",
        "voiceConnectorId": "abcdef1ghij2klmno3pqr"
    }
}
```

### Eventos de análisis del tono de voz
<a name="va-tone-status"></a>

Los eventos de análisis del tono de voz tienen el tipo de detalle `VoiceToneAnalysisStatus`. Los análisis pueden devolver los siguientes estados:
+ `VoiceToneAnalysisSuccessful`: se han analizado satisfactoriamente las voces de la persona que llamaba y del agente en función de las probabilidades de emitir un sentimiento: positivo, negativo o neutral.
+ `VoiceToneAnalysisFailure`: no se ha podido realizar el análisis del tono. Esto puede suceder si la persona que llama se queda sin hablar durante 10 segundos o si la calidad del audio es demasiado mala.
+ `VoiceToneAnalysisCompleted`: se han analizado correctamente las voces del usuario y del agente para determinar las probabilidades de opinión durante toda la llamada. Este es el evento final, que se envía cuando finaliza el análisis del tono de voz.

En el siguiente ejemplo, se muestra un evento de análisis de tono de voz típico.

```
{
  "detail-type": "VoiceToneAnalysisStatus",
  "service-type": "VoiceAnalytics",
  "source": "aws.chime",
  "account": "216539279014",
  "time": "2022-08-26T17:55:15.563441Z",
  "region": "us-east-1",
  "detail": {
    "taskId": "uuid",
    "detailStatus": "VoiceToneAnalysisSuccessful",
    "voiceToneAnalysisDetails": {
      "currentAverageVoiceTone": {
          "startTime": "2022-08-26T17:55:15.563Z",
          "endTime": "2022-08-26T17:55:45.720Z",
          "voiceToneLabel": "neutral",
          "voiceToneScore": {    
            "neutral": "0.83",    
            "positive": "0.13",    
            "negative": "0.04"
          }
      },
      "overallAverageVoiceTone": {
          "startTime": "2022-08-26T16:23:13.344Z",
          "endTime": "2022-08-26T17:55:45.720Z",
          "voiceToneLabel": "positive",
          "voiceToneScore": {    
            "neutral": "0.25",    
            "positive": "0.65",    
            "negative": "0.1"
          }
      }
    },
    "isCaller": true,
    "transactionId": "daaeb6bf-2fe2-4e51-984e-d0fbf2f09436",
    "voiceConnectorId": "fuiopl1fsv9caobmqf2vy7"
  },
  "version": "0",
  "id": "Id-f928dfe3-f44b-4965-8a17-612f9fb92d59"
}
```

# Cuotas de servicio de análisis de llamadas de Amazon Chime SDK
<a name="ca-regions"></a>

En las tablas de esta sección se enumeran las Service Quotas para el análisis de llamadas de Amazon Chime SDK.

Para obtener más información acerca de las regiones de análisis de llamadas, consulte [Regiones de AWS disponibles para Amazon Chime SDK](sdk-available-regions.md) anteriormente en esta guía.

Los análisis de llamadas y voz de Amazon Chime SDK tienen las siguientes Service Quotas.


| Recurso | Límite predeterminado | Ajustable | 
| --- | --- | --- | 
| Configuraciones de canalización de información multimedia por región | 100 | Sí | 
| Canalizaciones de información multimedia activas por región | 20 | Sí | 
| Dominios de perfiles de voz por región | 3 | Sí | 
| Perfiles de voz por dominio de perfil de voz | 20 | Sí | 
| Tareas de búsqueda de interlocutores activos por región | 25 | Sí | 
| Tareas activas de análisis del tono de voz por región | 25 | Sí | 
| Llamadas activas con Voice Connector con análisis de voz por región | 25 | Sí | 
| Tareas activas de búsqueda de interlocutores por llamada de Voice Connector y por identificador de transacción | 1 | No | 
| Tarea activa de análisis del tono de voz por llamada de Voice Connector y por identificador de transacción | 1 | No | 
| Número máximo de llamadas simultáneas a la API por dominio de perfil de voz | 1 | Sí | 
| Número máximo de llamadas simultáneas a la API por perfil de voz | 1 | Sí | 
| Número máximo de llamadas simultáneas a la API por tarea de búsqueda de interlocutores | 1 | Sí | 
| Número máximo de llamadas simultáneas a la API por tarea de análisis del tono de voz | 1 | Sí | 

Para obtener más información sobre las tasas y cuotas de las API, consulte [Puntos de conexión y cuotas de Amazon Chime SDK](https://docs.aws.amazon.com/general/latest/gr/chime-sdk.html) en la *Referencia general de AWS *.

**nota**  
Si supera la cuota de cualquier región, recibirá una excepción por **superación del límite de recursos**. Puede utilizar la página **Service Quotas** de la AWS consola para solicitar un aumento o puede ponerse en contacto con su [representante de atención al cliente](https://docs.aws.amazon.com/awssupport/latest/user/getting-started.html).  
Varios de los análisis de llamadas APIs crean recursos y solicitudes de API para otros AWS servicios. Esas cantidades adicionales se descontarán de las cuotas de su cuenta. Si solicitas una cuota o un transactions-per-second aumento a partir del análisis de llamadas, también debes solicitar aumentos para esos otros AWS servicios. De lo contrario, es posible que sus solicitudes se limiten y no se acepten.