You are viewing the Spanish (Mexico) site, but your language preference is set to English. Switch to English site →

Menu

Expand
Calificar esta página:

TwiML™ Voice: <Record>

El verbo <Record> graba la voz del agente de llamada y te devuelve la URL de un archivo que contiene la grabación de audio. De forma opcional, puedes generar transcripciones de texto de llamadas grabadas mediante el establecimiento del atributo transcribe del verbo <Record> en true.

Implicaciones legales de grabar llamadas

Si decides grabar llamadas de voz o videollamadas, deberás cumplir ciertas leyes y normativas, incluidas las relativas a la obtención del consentimiento para grabar (como la Ley de Invasión de la Privacidad de California y leyes similares en otras jurisdicciones). Puedes encontrar información adicional sobre las implicaciones legales de grabar llamadas aquí.

Aviso: Twilio te recomienda que consultes con tu asesor legal para asegurarte de que estás cumpliendo con todas las leyes aplicables en relación con las comunicaciones que grabes o almacenes usando Twilio.

Atributos del verbo

El verbo <Record> admite los siguientes atributos que modifican su comportamiento:

Nombre de atributo | Valores permitidos | Valor predeterminado

:------------- | :-------------- | :------------

action | URL relativa o absoluta | URL del documento actual

method | GET, POST | POST

timeout | Número entero positivo | 5

finishOnKey | Cualquier digito, #, * | 1234567890*#

maxLength | Número entero mayor que 1 | 3600 (1 hora)

playBeep | true, false | true

trim | trim-silence, do-not-trim | trim-silence

recordingStatusCallback| URL relativa o absoluta | Ninguno

recordingStatusCallbackMethod | GET, POST | POST

recordingStatusCallbackEvent | in-progress, completed, absent | completed

transcribe | true, false | false

transcribeCallback | URL relativa o absoluta | Ninguno

Usa uno o más de estos atributos en un verbo <Record>, de la siguiente forma:

        
        
        

        action

        El atributo action toma como valor una URL relativa o absoluta. Cuando la grabación haya terminado, Twilio hará una solicitud GET o POST a esta URL incluidos los parámetros que se indican a continuación. Si no se proporciona action, <Record> solicitará la URL del documento actual.

        Después de hacer esta solicitud, Twilio continuará con la llamada actual usando el TwiML recibido en tu respuesta. Ten en cuenta que por defecto Twilio volverá a solicitar la URL del documento actual. Esto puede llevar a un comportamiento de bucle no deseado si no tienes cuidado. Cualquier verbo de TwiML que ocurra después de un <Record> es inalcanzable.

        Por defecto, Twilio guarda las grabaciones silenciosas. Si no necesitas conservar grabaciones silenciosas, comunícate con Asistencia Técnica de Twilio.

        Cuando se modifica una llamada en vivo para redirigir a un verbo <Record>, se debe proporcionar una URL de acción. Si no se proporciona una dirección URL de acción, se producirá un error 11100.

        If you started or updated a call with a twiml parameter, the action URLs for <Record>, <Gather>, and <Pay> must be absolute.

        The Call Resource API Docs have language-specific examples of creating and updating Calls with TwiML:

        • See "Create a Call resource with TwiML" under Create a Call Resource to see examples of creating a call with a twiml parameter.
        • See "Update a Call resource with TwiML" under Update a Call Resource to see examples of updating a call with a twiml parameter.

        Parámetros de solicitud

        Twilio transferirá los siguientes parámetros además de los parámetros estándar de solicitud de TwiML Voice con su solicitud a la URL de action:

        Parámetro Descripción
        RecordingUrl La URL del audio grabado. Puede que el archivo de grabación no sea aún accesible cuando se envíe la devolución de llamada action. Utiliza recordingStatusCallback para obtener una notificación confiable cuando la grabación esté disponible para el acceso.
        RecordingDuration Duración del audio grabado (en segundos). Para obtener una duración de grabación final precisa después de recortar el silencio, utiliza recordingStatusCallback.
        Digits La tecla (si la hay) pulsada para finalizar la grabación o hangup si el agente de llamada cuelga.

        Una solicitud a RecordingUrl devolverá una grabación en formato de audio WAV binario de forma predeterminada. Para solicitar la grabación en formato MP3, agrega ".mp3" al valor RecordingUrl.

        method

        El atributo method toma el valor de GET o POST. Esto le dice a Twilio si debe solicitar la URL de action mediante la HTTP GET o POST. Este atributo se modela a partir del atributo method del formulario HTML. POST es el valor predeterminado.

        timeout

        El atributo timeout le dice a Twilio que finalice la grabación después de que hayan pasado varios segundos de silencio. Para desactivar esta función, establece timeout en 0. El valor predeterminado es 5 segundos.

        finishOnKey

        El atributo finishOnKey te permite elegir un conjunto de dígitos que, una vez introducidos, terminan la grabación. Por ejemplo, si pones finishOnKey en # y el agente de llamada presiona la tecla #, Twilio parará de inmediato la grabación y enviará RecordingUrl, RecordingDuration y # como parámetros en una solicitud a la URL de action. Los valores permitidos son los dígitos de 0 a 9, # y *. El valor predeterminado es 1234567890*#, es decir, cualquier tecla finalizará la grabación. A diferencia de <Gather>, puedes especificar más de un carácter como valor de finishOnKey.

        En algunos casos, cuando se utiliza el atributo finishOnKey, es posible que no se grabe la última parte del audio (aproximadamente un segundo antes de pulsar la tecla).

        maxLength

        El atributo maxLength te permite establecer la duración máxima de la grabación en segundos. Si ajustas maxLength a 30, la grabación finalizará de forma automática después de que hayan transcurrido 30 segundos de tiempo grabado. Los valores predeterminados son 3600 segundos (una hora) para una grabación normal y 120 segundos (dos minutos) en una grabación transcrita. Las llamadas de Twilio Client usando <Record> están limitadas a 600 segundos (diez minutos).

        playBeep

        El atributo playBeep te permite alternar si reproducir un sonido antes del inicio de una grabación. Si ajustas el valor a false, no se reproducirá ningún sonido de pitido.

        trim

        El atributo trim te permite especificar si deseas recortar el silencio inicial y final de tus archivos de audio. El valor predeterminado es trim-silence, que elimina cualquier silencio al principio y al final de la grabación. Esto puede provocar que la duración de la grabación sea ligeramente inferior a la duración de la llamada.

        recordingStatusCallback

        El atributo recordingStatusCallback toma una dirección URL relativa o absoluta como argumento. Si se brinda una URL de recordingStatusCallback, Twilio hará una solicitud GET o POST a la URL especificada cuando se pueda acceder a la grabación.

        Parámetros de solicitud

        Twilio transferirá los siguientes parámetros con tu solicitud a la URL de recordingStatusCallback:

        Parámetro Descripción
        AccountSid El identificador único de la cuenta responsable de esta grabación.
        CallSid Un identificador único de la llamada asociada a la grabación.
        RecordingSid El identificador único de la grabación.
        RecordingUrl La URL del audio grabado.
        RecordingStatus Estado de la grabación. Estos son los valores posibles: completed, failed.
        RecordingDuration Duración de la grabación, en segundos.
        RecordingChannels El número de canales en el archivo de grabación final como un número entero. Solo se admite un canal para el verbo <Record>.
        RecordingSource El método de inicio utilizado a fin de crear esta grabación. RecordVerb es devuelto para grabaciones iniciadas mediante el verbo <Record>.

        recordingStatusCallbackMethod

        Este atributo indica qué método HTTP se debe utilizar cuando se solicita recordingStatusCallback. El valor predeterminado es POST.

        recordingStatusCallbackEvent

        recordingStatusCallbackEvent te permite especificar qué cambios de estado de grabación deben generar un webhook para la URL especificada en el atributo recordingStatusCallback. Estos son los valores disponibles:

        • in-progress: la grabación ha comenzado.
        • completed: la grabación está completa y disponible.
        • absent: la grabación está ausente e inaccesible.

        Para especificar más de un valor, sepáralos con un espacio. El valor predeterminado es completed.

        transcribe

        El atributo transcribe le dice a Twilio que deseas una representación de texto del audio de la grabación. Twilio transferirá esta grabación a nuestro motor de conversión de voz a texto e intentará convertir el audio en texto legible. La opción transcribe no está habilitada de forma predeterminada. Si no deseas realizar la transcripción, solo no incluyas el atributo transcribe.

        Notas

        1. La transcripción es una función pagada. Si incluyes un atributo transcribe o transcribeCallback en tu verbo Record, se te cobrará a tu cuenta. Consulta la página de precios para conocer nuestros precios de transcripción.
        2. La transcripción solo se admite en inglés estadounidense.

        Además, en la actualidad, la transcripción está limitada a grabaciones iniciadas mediante el verbo <Record> de TwiML con una duración superior a 2 segundos e inferior a 120 segundos. Si solicitas una transcripción para una grabación fuera de estos límites de duración, Twilio escribirá una advertencia en tu registro de depuración en lugar de transcribir la grabación.

        transcribeCallback

        El atributo transcribeCallback se utiliza junto con el atributo transcribe. Te permite especificar una URL a la que Twilio hará una solicitud POST asincrónica cuando la transcripción esté completa. No se trata de una solicitud para TwiML y la respuesta no cambiará el flujo de llamadas, pero la solicitud contendrá los parámetros de solicitud estándar de TwiML, así como los parámetros específicos de transcripción.

        Si se especifica transcribeCallback, entonces no es necesario especificar transcribe=true; está implícito. Si especificas transcribe=true sin una transcribeCallback, la transcripción completada se almacenará para que la recuperes más tarde (consulta la sección de API REST de Transcripciones), pero Twilio no notificará tu aplicación de forma asincrónica.

        Twilio no solicitará la URL de transcribeCallback si la grabación de voz está ausente o falta.

        El atributo de URL transcribeCallback se considera que no es PII.

        Parámetros de solicitud

        Twilio pasará los siguientes parámetros con su solicitud a la URL transcribeCallback:

        Parámetro Descripción
        TranscriptionSid El ID único de 34 caracteres de la transcripción.
        TranscriptionText El texto de la transcripción.
        TranscriptionStatus El estado del intento de transcripción: ya sea completed o failed.
        TranscriptionUrl La URL del recurso API REST de la transcripción.
        RecordingSid El ID único de 34 caracteres de la grabación a partir de la cual se generó la transcripción.
        RecordingUrl La URL del recurso de grabación de origen de la transcripción.
        CallSid Un identificador único para esta llamada, generado por Twilio.
        AccountSid El ID de tu cuenta de Twilio. Tiene 34 caracteres y siempre comienza con las letras AC.
        From El número de teléfono o identificador de cliente de la persona que inició la llamada. El formato de los números de teléfono tiene un signo de + y el código del país; por ejemplo,+16175551212 (formato [E.164][e164]). Los identificadores de cliente comienzan con el esquema URI client:; por ejemplo, en el caso de una llamada desde un cliente llamado tommy, el parámetro From será client:tommy.
        To El número de teléfono o identificador de cliente de la persona a la que se llama. El formato de los números de teléfono tiene un signo de + y el código del país; por ejemplo,+16175551212 (formato [E.164][e164]). Los identificadores de cliente comienzan con el esquema URI client:; por ejemplo, en el caso de una llamada a un cliente llamado joey, el parámetro To será client:joey.
        CallStatus Estado descriptivo de la llamada. El valor es uno de estos: queued, ringing, in-progress, completed, busy, failed o no-answer. Consulta la sección CallStatusa fin de obtener más información.
        ApiVersion La versión de la API de Twilio utilizada para manejar esta llamada. En el caso de las llamadas entrantes, esto está determinado por la versión de la API establecida en el número al que se llama. En el caso de las llamadas salientes, se trata de la versión de la API utilizada por la solicitud API REST de la llamada saliente.
        Direction Una cadena que describe la dirección de la llamada: inbound para llamadas entrantes, outbound-api en llamadas iniciadas mediante la API REST o outbound-dial en llamadas iniciadas por un verbo <Dial>.
        ForwardedFrom Este parámetro se establece solo cuando Twilio recibe una llamada desviada, pero su valor depende del operador móvil del agente de llamada, incluida la información cuando se reenvía. No todos los operadores móviles admiten la transferencia de esta información.

        Reglas de anidamiento

        No puedes anidar ningún verbo dentro de <Record> y no puedes anidar <Record> en ningún otro verbo.

        Consulta también

        Ejemplos

        Ejemplo 1: grabación Simple

        Twilio ejecutará el verbo <Record>, lo que hará que el agente de llamada escuche un pitido y comience la grabación. Si el agente de llamada permanece en silencio durante más de cinco segundos, pulsa la tecla # o se llega al tiempo de grabación de maxlength, Twilio hará una solicitud HTTP de POST a la URL predeterminada de action (es decir, la URL actual del documento) con los parámetros RecordingUrl y RecordingDuration.

              
              
              

              Ejemplo 2: grabar un mensaje de buzón de voz

              En este ejemplo, se muestra un mensaje de buzón de voz simple. Se le pide al agente de llamada que deje un mensaje cuando suena el pitido. El verbo <Record> emite un pitido y comienza a grabar hasta 20 segundos de audio.

                    
                    
                    
                    • Si el agente de llamada habla menos de 20 segundos y, luego, está en silencio durante 5 segundos, Twilio hace una solicitud GET a la URL de action. El verbo <Say> nunca se alcanza.
                    • Si la persona que llama habla durante los 20 segundos completos, Twilio hace una solicitud GET a la URL de action. El verbo <Say> nunca se alcanza.

                    Ejemplo 3: transcribir una grabación

                    Twilio grabará al agente de llamada. Una vez finalizada la grabación, Twilio transcribirá la grabación y hará una solicitud HTTP de POST a la URL de transcribeCallback con un parámetro que contiene una transcripción de la grabación.

                          
                          
                          

                          Consejos y usos avanzados

                          • Twilio recortará el silencio inicial y final de tus archivos de audio. Esto puede hacer que la duración de los archivos sea ligeramente menor que el tiempo que pasa el agente de llamada grabándolos.
                          Calificar esta página:

                          ¿Necesitas ayuda?

                          Todos la necesitamos a veces; la programación es difícil. Obtén ayuda ahora de nuestro equipo de soporte, o recurre a la sabiduría de la multitud visitando Stack Overflow Collective de Twilio o navegando por la etiqueta de Twilio en Stack Overflow.

                                
                                
                                

                                Gracias por tus comentarios.

                                Selecciona los motivos de tus comentarios. La información adicional que nos brindas nos ayuda a mejorar nuestra documentación:

                                Enviando tus comentarios…
                                🎉 Gracias por tus comentarios.
                                Se produjo un error. Inténtalo de nuevo.

                                Gracias por tus comentarios.

                                ¡Recomiéndanos y gana USD 10 en 3 pasos sencillos!

                                Paso 1

                                Obtén un enlace

                                Obtén un enlace gratuito de referencia personal aquí

                                Paso 2

                                Regala USD 10

                                Tu usuario se registra y actualiza mediante el enlace

                                Paso 3

                                Obtén USD 10

                                1250 SMS gratuitos
                                O 1000 minutos gratuitos de voz
                                O 12 000 chats
                                O más