Open in
Herramientas integradas
Indica a los agentes de ThunderPhone que finalicen llamadas, transfieran a quienes llaman, naveguen teclados, esperen en línea, busquen conocimiento, reproduzcan sonidos y envíen correos electrónicos.
Las herramientas integradas permiten que un agente realice acciones comunes en llamadas sin conectar tu propia API. La mayoría están disponibles automáticamente; el correo electrónico, los sonidos y la búsqueda de conocimiento aparecen solo después de que configuras el ajuste o la fuente relacionados. Indícale al agente cuándo usar cada acción en su prompt.
| Herramienta | Úsala para | Cómo habilitarla | Llamadas compatibles |
|---|---|---|---|
end_call | Finalizar una conversación completada | Siempre disponible | Teléfono, Talk en el navegador, widget, simulación y Realtime |
transfer_call | Redirigir a quien llama por teléfono | Configura el enrutamiento en el prompt | Llamadas telefónicas normales; Realtime integrado con call_events puede usar transferencia en frío. Realtime de agente guardado la omite. |
send_keypad_input | Pulsar teclas en un menú telefónico | Siempre disponible en llamadas telefónicas normales | Llamadas telefónicas; Realtime saliente integrado con call_events. Realtime de agente guardado la omite. |
no_response | Seguir escuchando mientras habla un menú automatizado o quien llama piensa en voz alta; quien llama y le pide al agente que espere recibe solo "Claro." | Siempre disponible | Todos los tipos de llamadas |
wait_on_hold | Esperar en silencio a que una persona regrese | Incluida en las llamadas salientes | Sesiones telefónicas salientes y sesiones Realtime salientes integradas |
search_knowledge_base | Responder con información de fuentes adjuntas | Adjunta conocimiento al agente | Llamadas de agente guardado con conocimiento adjunto |
play_sound | Reproducir un sonido de notificación configurado | Avanzado → Sonido de herramienta | Llamadas de agente guardado |
send_email | Enviar un correo electrónico a un destinatario fijo | Avanzado → Enviar correo electrónico | Llamadas de agente guardado |
end_call
Finaliza la llamada actual cuando el prompt le indica al modelo que lo haga. Está disponible de forma predeterminada y no tiene configuración del agente.
Escribe la condición y cualquier despedida necesaria en el prompt:
When the caller confirms they need nothing else, say goodbye and end the call.Una llamada finalizada por el modelo tiene end_reason: "ai_hangup", incluida una que termina después de la advertencia de límite de tiempo de llamada. La llamada termina con max_duration solo si se alcanza primero el límite de tiempo, y con balance_exhausted cuando se agota el saldo prepagado.
transfer_call
Transfiere a quien llama por teléfono a un número fijo proporcionado por el modelo. La transferencia en frío es inmediata. Una transferencia en caliente con filtrado llama de forma privada al destino antes de conectar a las partes. La transferencia en caliente requiere un número VoIP importado y verificado que pueda realizar llamadas salientes.
Incluye el número de destino y la condición exacta de enrutamiento en el prompt:
If the caller asks for billing, transfer them to +15551234567.Una transferencia en frío exitosa tiene end_reason: "ai_transfer"; una transferencia en caliente completada tiene end_reason: "ai_warm_transfer". Un intento en caliente fallido devuelve el control al agente, por lo que la finalización posterior de la llamada determina su motivo de finalización. En sesiones que no son telefónicas, una solicitud de transferencia finaliza la sesión.
Consulta Transferir llamadas para conocer la configuración del dashboard y la API, el enrutamiento, el filtrado, el manejo de fallos, los límites y las pruebas.
send_keypad_input
Envía dígitos DTMF (teclado telefónico) 0–9, * y # a una línea telefónica. El modelo la usa para navegar un IVR, el menú automatizado que les pide a quienes llaman que presionen teclas. Está disponible de forma predeterminada y no tiene configuración del agente.
Indícale al modelo qué menús puede navegar y de dónde provienen los valores solicitados. No le pidas que adivine las opciones del menú:
Follow the phone menu for account status. Press a key only after the menu
states what that key does. Enter the account number supplied by the caller.La plataforma elimina los caracteres no compatibles y envía los dígitos válidos en orden. Si no quedan dígitos válidos o la llamada no puede enviar entrada de teclado, el fallo se devuelve al agente para que pueda recuperarse.
no_response
Mantiene al agente en silencio mientras un sistema automatizado sigue hablando o le pide que continúe escuchando, y mientras quien llama piensa en voz alta ("eh, déjeme ver") o se gira para hablar con otra persona. Cuando quien llama le pide al agente que espere mientras hace algo ("un segundo", "déjeme revisar", "¿puede esperar un segundo?") y no le da nada más que responder, el agente dice solo "Claro." (no "Tómese su tiempo") y espera a que quien llama vuelva a hablar. Las comprobaciones de silencio del agente siguen ejecutándose y siempre se expresan en voz alta si la línea permanece en silencio. No es para el saludo de una persona en vivo, una pregunta ni una cola de espera real. Está disponible de forma predeterminada y no tiene una configuración del agente.
Si tu prompt le indica al agente qué decir cuando quien llama pide un momento, el prompt tiene prioridad.
Por lo general, la descripción integrada es suficiente. Para llamadas con mucho uso de IVR, refuerza el límite en el prompt:
Stay silent while a phone menu is still speaking. Answer a live person as soon
as they address you.Esta acción no finaliza la llamada.
wait_on_hold
Coloca a un agente saliente en un estado de espera silenciosa hasta que una persona regrese. El modelo lo usa solo después de que la otra persona indique explícitamente que pondrá al agente en espera. Está disponible automáticamente en las llamadas salientes y no tiene ninguna configuración en el panel.
If a person explicitly puts you on hold, wait silently. When they return,
continue from the question you were discussing.No indiques al agente que lo use para un mensaje de «espere por favor» de un IVR. La espera dura
hasta 15 minutos de forma predeterminada. Para llamadas salientes normales, POST /v1/call
acepta un max_hold_seconds de entero positivo; Realtime integrado restringe
max_hold_seconds a entre 10 y 900 segundos. Si la persona
regresa, el agente reanuda la conversación sin cambiar el motivo de finalización de la llamada. Si el límite
vence, la plataforma finaliza la llamada con end_reason: "ai_hangup".
search_knowledge_base
Busca documentos adjuntos al agente y devuelve fragmentos relevantes. Adjunta una base de conocimientos o documentos de conocimientos individuales para habilitarla, y luego indica al modelo qué respuestas deben provenir de esas fuentes:
Search the knowledge base before answering policy questions. If the first
search is inconclusive, try once more with different key terms.Si falla una búsqueda, el resultado se devuelve al agente. Consulta Base de conocimientos para configurar el panel y la API.
play_sound
Reproduce el sonido de notificación configurado del agente después de cualquier intervención en el mismo turno. En el panel, configura Avanzado → Sonido de herramienta como Chime, Ding o Beep, y luego implementa el agente. Ninguno elimina la herramienta.
Con la API de Agents, prepara play_sound_asset como
"chime", "ding" o "beep", y luego implementa. Configúralo como "" para desactivar
la herramienta.
After confirming that an appointment was saved, say "You're all set" and play
the notification sound.Un error de reproducción se devuelve al agente y no finaliza la llamada.
send_email
Envía un correo electrónico de texto sin formato al único destinatario configurado por el propietario del agente. El modelo proporciona el asunto y el cuerpo. Nunca ve un parámetro de destinatario ni puede elegir o cambiar la dirección.
En el panel, habilita Avanzado → Enviar correo electrónico, guarda una dirección de destinatario
y luego implementa el agente. Con la API de Agents, prepara tanto
send_email_enabled: true como un send_email_recipient no vacío, y luego implementa.
Define el desencadenante y el contenido obligatorio en el prompt:
When the caller asks to leave a message, collect their name, callback number,
and message. Read the details back for confirmation, then email them.Una llamada puede intentar enviar como máximo tres correos electrónicos. Cada asunto está limitado a 300 caracteres y cada cuerpo a 20.000 caracteres. La configuración faltante, el contenido no válido, el límite por llamada y los errores de entrega se devuelven al agente. Una entrega fallida sigue usando uno de los tres intentos.
Prueba con un destinatario controlado antes de implementar ampliamente. Browser Talk y las simulaciones envían correos electrónicos reales; no existe un modo de ejecución en seco.
Nota de compatibilidad
La configuración Avanzado → Divulgaciones ininterrumpibles y el campo heredado
speak_uninterruptible_enabled se mantienen por compatibilidad, pero habilitarlos
no tiene ningún efecto. Deja la configuración desactivada; ningún prompt puede activar esta herramienta.
Para una divulgación obligatoria al inicio de la llamada, usa Anuncio de consentimiento. Se reproduce literalmente antes de la conversación normal y no puede interrumpirse. Consulta Leyes de consentimiento para la grabación de llamadas.
Prueba y supervisa las herramientas integradas
Usa Browser Talk o una simulación para comprobar los prompts, la búsqueda de conocimientos, los sonidos y el correo electrónico. Esos entornos no pueden reproducir el comportamiento de la red telefónica. Prueba la navegación por teclado y la espera en una llamada telefónica saliente, y prueba una transferencia asistida completa en una llamada real con un número VoIP importado elegible. La compatibilidad con Realtime es limitada, como se muestra en la tabla anterior.
Llamadas, precios y webhooks
Las acciones integradas no tienen una tarifa por uso de herramienta. Se siguen aplicando los cargos normales por llamadas y del proveedor; consulta Precios. Sus llamadas y resultados pueden aparecer en la transcripción completada, pero no emiten telephony.tool ni web.tool. Esos eventos son para funciones definidas por el usuario. Solo una finalización de llamada o transferencia completada cambia el end_reason de la llamada; otros errores se devuelven al agente. Consulta Webhooks de finalización para ver el registro de la llamada.