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.
Uso de las API de voz para ejecutar análisis de voz
Por compatibilidad con versiones anteriores, puede utilizar API de voz de Amazon Chime SDK para iniciar y gestionar análisis de voz. Sin embargo, solo las API de canalización de información multimedia para el análisis de voz ofrecen nuevas características, por lo que recomendamos encarecidamente utilizarlas en su lugar.
En las siguientes secciones se explican las diferencias entre las API de Voice Insights Pipelines y Media Insights.
Detención de tareas
Si utilizas un conector de voz para iniciar las tareas de análisis de voz y, a continuación, utilizas la UpdateMediaInsightsPipelineStatusAPI para pausar la canalización, las tareas seguirán ejecutándose. Para detener las tareas, debe llamar a las StopVoiceToneAnalysisTaskAPI StopSpeakerSearchTasky.
Descripción de las diferencias de notificaciones
Cuando utiliza las API de voz para ejecutar el análisis de voz, las notificaciones difieren 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 iniciadas con las API de voz.
Debe usar los campos
voiceConnectorId
,transactionId
ocallId
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 camposmediaInsightsPipelineId
,streamArn
ochannelId
o para asociar una tarea a una llamada.
En los siguientes temas, se explica cómo utilizar notificaciones con API de voz.
Temas
Eventos preparados para el análisis de voz
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 a las StartSpeakerSearchTask, o StartVoiceToneAnalysisTaskAPI.
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 llamar a las API de tareas de análisis de voz.
Eventos de búsqueda de hablantes
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
Una vez que se llama a la StartSpeakerSearchTaskAPI en un momento dadotransactionId
, 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
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
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
" }