Documentación
Agentes de Voz.md

Variables y funciones en las instrucciones

Usa {{variables}} para que tu agente de voz personalice cada llamada y menciona sus funciones en las instrucciones con /.

En las Instrucciones del agente y en el Mensaje de apertura puedes usar variables: datos que cambian en cada llamada (el nombre de la persona, su teléfono, la fecha de hoy…). También puedes mencionar las funciones del agente para indicarle cuándo usar cada una.

Atajos del editor

Escribe Qué pasa
/ Se abre la lista de funciones de este agente. Elige una y queda escrita en el texto. Desde la pestaña Crear nueva abres el selector de funciones.
{{ Se abre la lista de variables, en tres pestañas: Del agente, Sistema y Llamada y contacto. Elige una y queda escrita como {{nombre}}.

Usa las flechas ↑ ↓ para moverte, Enter para elegir y Esc para cerrar. Las funciones se ven resaltadas en azul y las variables en violeta.

Cómo funcionan las variables

Al empezar cada llamada, el agente reemplaza cada {{variable}} por su valor. Si una variable no llega en esa llamada, queda vacía, así que conviene escribir la frase para que se entienda igual.

Ejemplo: Hola {{nombre}}, te llamo de Clínica Sol. → «Hola Ana, te llamo de Clínica Sol.»

Variables de sistema

Las completa ⚡ VPower solo, en todas las llamadas:

Variable Qué contiene
{{current_time}} Fecha y hora de la llamada, con el día (zona horaria del agente). Ej.: martes 21/10/2026 15:30
{{current_calendar}} Fecha de hoy, AAAA-MM-DD
{{current_hour}} Hora actual, HH:MM
{{current_time_ZONA}} Fecha y hora en otra zona horaria. Ej.: {{current_time_Europe/Madrid}}. También {{current_calendar_ZONA}} y {{current_hour_ZONA}}
{{user_number}} Teléfono de la persona (vacío en llamadas web)
{{agent_number}} Número del agente
{{direction}} inbound (entrante), outbound (saliente), web o text (prueba en texto)
{{call_type}} phone_call o web_call
{{call_id}} Identificador de la llamada

La zona horaria es un nombre como America/Argentina/Buenos_Aires, America/Mexico_City o Europe/Madrid.

Variables de la llamada y del contacto

Llegan con la llamada, según desde dónde se inicie:

  • Llamadas entrantes: {{telefono}} y {{caller_number}} (quien llama) y {{called_number}} (el número al que llamaron).
  • Campañas salientes: cada columna del archivo de contactos es una variable con el mismo nombre. Por ejemplo, si el archivo tiene las columnas nombre, monto y vencimiento, puedes usar {{nombre}}, {{monto}} y {{vencimiento}}.
  • API de llamadas: las variables que mandes en dynamic_variables al crear la llamada. Ver Crear una llamada telefónica.

Variables del agente

En la pestaña Del agente aparecen las variables que ya usas en las instrucciones o en el mensaje de apertura de este agente, para reutilizarlas sin errores de escritura. Puedes crear una nueva escribiendo su nombre entre llaves dobles: {{numero_de_socio}}. Recuerda mandarla al iniciar la llamada (campaña o API).

💡 Los nombres de las variables usan letras, números y guion bajo, sin espacios ni tildes: {{nombre_paciente}}, no {{nombre paciente}}.

Datos antes de atender

En Funciones del agente → Antes de atender eliges una función que el agente ejecuta antes de saludar, con un dato que ya llegó con la llamada. Lo que devuelve la función queda como variables para las instrucciones y el mensaje de apertura. Así puede saludar por el nombre y no preguntar lo que ya sabe.

Ejemplo: la llamada llega con {{dni}}. Antes de atender, el agente ejecuta consultar_socio con ese DNI y la función devuelve {"nombre": "Ana", "domicilio": "San Martín 120", "socio": "SI"}. El mensaje de apertura puede ser Hola {{nombre}}, ¿en qué te puedo ayudar?, y en las instrucciones puedes usar {{domicilio}} y {{socio}}.

Cómo configurarlo:

  1. Elige la función (de API o de código). Con Ninguna queda desactivado.
  2. Indica qué dato recibe cada parámetro, con las variables de la llamada: {{dni}}, {{celular}}, {{user_number}}…
  3. Elige la espera máxima (de 2 a 8 segundos).

Qué tienes que saber:

  • Cada dato de primer nivel que devuelve la función se vuelve una variable con el mismo nombre. Si devuelve un objeto adentro, sus datos llevan el nombre del objeto adelante: {"plan": {"tipo": "Oro"}} da {{plan_tipo}}.
  • Si a la llamada le falta el dato (por ejemplo, en una llamada por teléfono no llega el DNI), la función no se ejecuta y la llamada sigue como siempre.
  • Si la función falla o tarda más que el tope, la llamada sigue sin esos datos.
  • Lo que devuelve no reemplaza variables que ya llegaron con un valor.
  • {{precall_ok}} vale si cuando la consulta trajo datos y no cuando no. Úsala para que el agente sepa qué hacer en cada caso: «Si {{precall_ok}} es no, pide el DNI».
  • Como la consulta se hace mientras se conecta la llamada, la persona casi no nota la espera.

Mencionar funciones

Nombrar la función en las instrucciones ayuda al agente a saber cuándo usarla. Por ejemplo:

Antes de derivar la llamada, usa siempre derivar_llamada.
Si la persona da su DNI, verifícalo con rena_consulta.

La mención es texto: el nombre tiene que coincidir con el de la función. Si después renombras una función, actualiza también las instrucciones.

Variables en las funciones

Las funciones también reciben estos datos:

  • Funciones con tu API (webhook): puedes usar {{variables}} en la URL, en las cabeceras y en los parámetros de URL. Ver Funciones con tu API.
  • Funciones de código: las variables llegan en dv (por ejemplo, dv.user_number o dv.direction). Ver Funciones de código.
Esc