Cómo ver y entender las variables disponibles en wolkvox Studio
Table of Contents
Introducción
En wolkvox Studio, las variables son “datos dinámicos” que el sistema captura durante una interacción (voz, chat, email/interacciones, eventos del CRM, analítica, etc.) y que puedes reutilizar dentro de un flujo para tomar decisiones, personalizar mensajes, enviar información a servicios externos (webhooks), registrar trazabilidad o automatizar acciones.
La buena noticia es que wolkvox Studio muestra, por cada tipo de flujo, una lista oficial de variables disponibles en un panel de ayuda.
¿Cómo ver la lista de variables en wolkvox Studio?
El proceso es el mismo para cada tipo de flujo (voz, chat, interacciones, CRM…): Abre el routing point en wolkvox Studio (según el tipo que vayas a editar).
- En la barra superior del diseñador, haz clic en el ícono de Variables (se muestra como un botón con una “x”).
- Se abrirá un panel lateral (o ventana) con la pestaña variables, donde verás el listado disponible para ese tipo de routing.
- Nota práctica: el panel solo “expone” variables que aplican al tipo de flujo que estás editando. Por eso, la lista cambia si estás en Voice routing, Chat routing, Interaction routing o Routing CRM.

Variables por tipo de Routing Point
Routing Point de Voz (Voice routing / llamadas)
Estas variables representan datos técnicos de la llamada y del origen/destino:
-
$ani (Automatic Number Identification): número de origen (caller ID).
- Para qué sirve: identificar quién llama, enrutar por número, buscar/crear cliente en CRM, bloquear/permitir números.
- Qué información guarda: el número telefónico entrante (origen).
-
$dnis (Dialed Number Information Service): número marcado (destino).
- Para qué sirve: enrutar según el número al que llamaron (líneas distintas, campañas, sedes).
- Qué información guarda: el DID/entrada marcada por el cliente.
-
$type_call: tipo de llamada.
- Para qué sirve: condicionar el flujo según si es inbound (llamada entrante), internal (llamada interna), outbound_ma (llamada de salida manual), out_pre (llamada de salida desde campaña predictiva).
- Qué información guarda: el “modo” de la llamada.
- Valores predeterminados:
- inbound
- internal
- outbound_ma
- out_pre
-
$id_customer: identificador del cliente dentro del sistema/base.
- Para qué sirve: relacionar la llamada con un registro de cliente, consultar historial, disparar acciones en CRM.
- Qué información guarda: ID del cliente asociado.
-
$id_call: identificador único de la llamada.
- Para qué sirve: trazabilidad, auditoría, integraciones externas, logs, correlación con grabaciones/QA.
- Qué información guarda: ID único de esa llamada.
-
$webrtc: indica si la llamada viene desde el chat widget y si fue audio o video (contexto WebRTC).
- Para qué sirve: adaptar el flujo si el origen es web (por ejemplo: validar navegador, canal, experiencia).
- Qué información guarda: el tipo de comunicación WebRTC (audio/video) cuando aplica.
- Valores predeterminados:
- audio
- video

Routing Point de Chat (Chat routing)
Aplica para chats provenientes de: widget web, WhatsApp, Instagram Direct, Facebook Messenger (y otros canales listados en $channel).

Variables de contenido y contexto del chat
-
$txt_query: texto enviado por el cliente.
- Para qué sirve: analizar intención, ejecutar lógica por palabras clave, alimentar NLP/IA, generar respuestas.
- Qué información guarda: el último mensaje (texto) del cliente.
-
$cust_email: email del cliente (si está disponible).
- Para qué sirve: identificación, actualización/creación en CRM, notificaciones.
- Qué información guarda: correo del contacto.
-
$cust_phone: teléfono del cliente (si el canal lo entrega).
- Para qué sirve: identificación, match con CRM, escalamiento a llamada, validaciones.
- Qué información guarda: número del cliente.
-
$cust_name: nombre del cliente.
- Para qué sirve: personalizar mensajes, crear registro en CRM, saludo contextual.
- Qué información guarda: nombre disponible en el canal.
-
$id_customer: ID del cliente.
- Para qué sirve: enlazar chat con el registro del cliente.
- Qué información guarda: identificador interno del cliente.
-
$chat_id: ID único del chat.
- Para qué sirve: trazabilidad, auditoría, integraciones y correlación de eventos.
- Qué información guarda: identificador único de la conversación.
Variables de archivos, audios y formatos
-
$file_url: URL del archivo enviado.
- Para qué sirve: descargar/analizar archivo, enviarlo a un sistema externo, registrar evidencia.
- Qué información guarda: enlace al archivo.
-
$ext_url: extensión/formato del archivo enviado por chat.
- Para qué sirve: validar tipos permitidos, decidir procesamiento (pdf/jpg/mp3, etc.).
- Qué información guarda: extensión del archivo.
-
$is_audio: indica si el cliente envió un audio (sí/no).
- Para qué sirve: activar transcripción, enrutar a agente, pedir confirmación por texto.
- Qué información guarda: bandera de audio.
- Valores predeterminados:
- yes
- no
-
$quoted_message (solo conectores de tipo WhatsApp mobile): mensaje citado por el cliente.
- Para qué sirve: entender contexto de respuesta, continuar un hilo específico.
- Qué información guarda: el texto citado.
Variables de contactos, catálogos y flujos interactivos
-
$contact_info: datos de contacto enviados al bot.
- Para qué sirve: capturar contactos, crear lead/registro, enriquecer CRM.
- Qué información guarda: información compartida como contacto.
-
$story_reply: indica si el contacto viene como respuesta a una story (sí/no).
- Para qué sirve: atribución de origen, segmentación de campaña.
- Qué información guarda: bandera de story reply.
- Valores predeterminados:
- yes
- no
-
$catalog_info: información de catálogos existentes.
- Para qué sirve: respuestas basadas en catálogo, selección de productos/servicios.
- Qué información guarda: payload/estructura del catálogo.
-
$flow_response_json / $interactive_flow_response: respuesta del usuario a plantillas/flows interactivos (formato JSON).
- Para qué sirve: capturar elecciones de botones/listas, formularios interactivos, decisiones guiadas.
- Qué información guarda: JSON con la respuesta del usuario.
Variable de canal y atribución (muy importante para marketing/Ads)
-
$channel: canal de origen (ej.: web, whatsapp, facebook, line, telegram, configurationbox).
- Para qué sirve: enrutar por canal, personalizar tono, aplicar reglas distintas por plataforma.
- Qué información guarda: el tipo del canal.
- Valores predeterminados:
- configurationbox
-
$wa_source_url / $wa_source_type / $wa_source_id / $wa_headline / $wa_media_type / $wa_image_url / $wa_video_url / $wa_ctwa_clid: datos de atribución cuando el chat se origina desde anuncios “Click to WhatsApp” o contenido de Meta.
- Para qué sirve: atribuir conversaciones a campaña/anuncio, guardar evidencia de origen, segmentar flujos y reportes.
- Qué información guarda: URLs, IDs y metadata del anuncio/post y el click ID (clid).
Routing Point de Interacciones (Interaction routing)
Aplica para comentarios en redes y correo electrónico (según integración), y también incluye variables generales.

Variables para Email
-
$id_case: ID del caso/interacción asignado por la plataforma de mail.
- Para qué sirve: trazabilidad y correlación del hilo.
- Qué información guarda: identificador del caso.
-
$from / $to: origen y destino del correo.
- Para qué sirve: validaciones de dominios, enrutamiento por remitente/destinatario.
- Qué información guarda: emails origen/destino.
-
$subject: asunto del correo.
- Para qué sirve: clasificación, reglas de priorización, respuestas automáticas.
- Qué información guarda: texto del asunto.
-
$fromname / $toname: nombres asociados al remitente/destinatario.
- Para qué sirve: personalización y registro.
- Qué información guarda: nombres.
Variables generales para Interacciones
-
$routing_point: routing point donde entra la interacción.
- Para qué sirve: auditoría y trazabilidad.
- Qué información guarda: identificador/nombre del routing.
-
$txt_query: cuerpo del email o contenido principal de la interacción.
- Para qué sirve: análisis, automatización, clasificación, IA.
- Qué información guarda: texto completo del cuerpo.
-
$agent_response: respuesta del último agente que cerró la interacción.
- Para qué sirve: auditoría, QA, resumen de cierre.
- Qué información guarda: último mensaje/respuesta registrada.
-
$cod_act: código de tipificación/actividad del cierre.
- Para qué sirve: métricas, clasificación, reportes.
- Qué información guarda: código de actividad.
-
$id_agent: extensión/ID del último agente que cerró la interacción.
- Para qué sirve: atribución, reporting por agente.
- Qué información guarda: ID/extensión del agente.
-
$count_attach: número de adjuntos.
- Para qué sirve: validar si hay evidencias, condicionar flujos (pedir adjunto si no existe).
- Qué información guarda: contador.
-
$url_attach_1 … $url_attach_n: URLs de adjuntos.
- Para qué sirve: descarga, procesamiento, registro o envío a un sistema externo.
- Qué información guarda: enlaces a adjuntos.
Routing Point de CRM + Webhook + Cron + AutoQAi + wvx Copilot
Este tipo de routing concentra variables “evento” (CRM) y variables “analíticas” (AutoQAi / VOC RT / wvx Copilot) además de variables de webhook predictivo.

Variables de CRM (evento de CRM)
-
$crm_action: acción ejecutada en el CRM (insert, update o delete).
- Para qué sirve: automatizar lógica distinta según el evento.
- Qué información guarda: tipo de acción.
-
$crm_module: módulo del CRM desde donde se originó la acción.
- Para qué sirve: enrutar automatizaciones según el módulo afectado.
- Qué información guarda: nombre del módulo.
- Importante: los campos del CRM pueden llegar como variables con el mismo nombre con el que fueron creados en el CRM.
Variables de AutoQAi (analítica)
-
$channel_analytics: Canal analizado (voice, chat-whatsapp, chat-web, chat-instagram, chat-facebook, etc.).
- Para qué sirve: segmentar automatizaciones según el canal.
- Qué información guarda: nombre del canal de la interacción analizada.
-
$conversation_analytics: Texto completo de la conversación entre el cliente y el agente.
- Para qué sirve: análisis de contenido, envío a IA externa, clasificación automática.
- Qué información guarda: conversación íntegra de la interacción.
-
$summary_analytics: Resumen generado de la conversación.
- Para qué sirve: registrar insights rápidos, guardar resumen en CRM, disparar flujos.
- Qué información guarda: texto resumido de la interacción.
-
$idagent_analytics: ID del agente que atendió la interacción.
- Para qué sirve: trazabilidad, métricas por agente.
- Qué información guarda: identificador del agente.
-
$idinteraction_analytics: ID de la interacción.
- Para qué sirve: correlación con grabaciones, QA o CRM.
- Qué información guarda: identificador único de la interacción.
-
$ani_analytics: Número origen de la interacción (aplica a algunos canales).
- Para qué sirve: identificación del cliente o atribución de origen.
- Qué información guarda: número telefónico fuente.
-
$duration_analytics: Duración de la interacción en segundos.
- Para qué sirve: métricas, reglas por duración mínima/máxima.
- Qué información guarda: tiempo total en segundos.
-
$hhmmss_analytics: Duración de la interacción en formato hh:mm:ss.
- Para qué sirve: visualización legible y reportes.
- Qué información guarda: duración formateada.
-
$date_analytics: Fecha y hora de la interacción (YYYY-MM-DD hh-mm-ss).
- Para qué sirve: segmentación temporal y auditoría.
- Qué información guarda: timestamp completo del evento.
-
$calltype_analytics: Tipo de llamada (inbound, outbound_ma, out_pre, conference, transfer).
- Para qué sirve: automatización específica según tipo de llamada.
- Qué información guarda: modalidad de la interacción.
-
$idskill_analytics: ID del skill.
- Para qué sirve: segmentación por cola o campaña.
- Qué información guarda: identificador del skill.
-
$codact_analytics: Código de tipificación de la interacción.
- Para qué sirve: clasificación, reportes y métricas.
- Qué información guarda: código de actividad final.
-
$codact2_analytics: Código de tipificación 2 (si está habilitado).
- Para qué sirve: segmentación avanzada.
- Qué información guarda: segundo código de actividad.
-
$qamonthagent_analytics: Número de calificaciones QA del mes para el agente.
- Para qué sirve: reglas basadas en desempeño.
- Qué información guarda: total de evaluaciones QA del agente en el mes actual.
-
$idcampaing_analytics: ID de campaña (aplica a outbound predictivo).
- Para qué sirve: segmentación por campaña.
- Qué información guarda: identificador de campaña.
-
$idcustomer_analytics: Identificación del cliente.
- Para qué sirve: asociación con CRM.
- Qué información guarda: ID del cliente.
-
$sentiment: Sentimiento del cliente (-10, -5, 0, 5, 10).
- Para qué sirve: disparar alertas, flujos de retención o seguimiento.
- Qué información guarda: valor numérico del análisis de sentimiento.
Variables de wvx Copilot (anteriormente llamado “Mr. Wizard”) & VOC en Tiempo Real
-
$channel_wvxCopilot: Canal analizado (voice, chat).
- Para qué sirve: adaptar respuestas según el canal.
- Qué información guarda: tipo de canal.
-
$total_conversation_voc_rt: Conversación completa del cliente.
- Para qué sirve: análisis en tiempo real, generación de respuesta inteligente.
- Qué información guarda: texto completo de la conversación.
-
$last_phrase_voc_rt: Última frase del cliente.
- Para qué sirve: generar respuesta contextual inmediata.
- Qué información guarda: último mensaje del cliente.
-
$idagent_voc_rt: ID del agente que atiende la interacción.
- Para qué sirve: personalización y trazabilidad.
- Qué información guarda: identificador del agente.
-
$idinteraction_voc_rt: ID de la interacción.
- Para qué sirve: correlación con otros sistemas.
- Qué información guarda: identificador único.
-
$ani_voc_rt: Número origen (cuando aplica).
- Para qué sirve: identificación del cliente.
- Qué información guarda: número telefónico.
-
$language_voc_rt: Idioma de la conversación (es, en, etc.).
- Para qué sirve: adaptar respuesta automática al idioma correcto.
- Qué información guarda: código de idioma.
-
$duration_voc_rt: Duración en segundos.
- Para qué sirve: reglas por duración.
- Qué información guarda: tiempo acumulado.
-
$calltype_voc_rt: Tipo de llamada (inbound, outbound_ma, out_pre, conference, transfer).
- Para qué sirve: condicionar lógica según tipo.
- Qué información guarda: modalidad de la llamada.
-
$idskill_voc_rt: ID del skill.
- Para qué sirve: segmentación por cola.
- Qué información guarda: identificador del skill.
-
$idcampaing_voc_rt: ID de campaña (predictivo).
- Para qué sirve: análisis y automatización por campaña.
- Qué información guarda: identificador de campaña.
-
$idcustomer_voc_rt: Identificación del cliente.
- Para qué sirve: integración con CRM.
- Qué información guarda: ID del cliente.
-
$wvxCopilotRes: Variable para colocar la respuesta generada por wvx Copilot.
- Para qué sirve: insertar la respuesta automática dentro del flujo.
- Qué información guarda: texto generado por wvx Copilot.
Variables para Predictive Routing Point Web Hook
-
$customer_name / $customer_lastname: Nombre y apellido del cliente.
- Para qué sirve: personalización y registro.
- Qué información guarda: nombre y apellido.
-
$id_customer: Identificación del cliente.
- Para qué sirve: asociación con CRM.
- Qué información guarda: ID del cliente.
-
$phone: Teléfono del cliente.
- Para qué sirve: contacto o validación.
- Qué información guarda: número telefónico.
-
$age: Edad del cliente.
- Para qué sirve: segmentación.
- Qué información guarda: edad.
-
$sex: Género del cliente.
- Para qué sirve: segmentación o análisis.
- Qué información guarda: género.
-
$country / $city: País y ciudad del cliente.
- Para qué sirve: segmentación geográfica.
- Qué información guarda: ubicación.
-
$opt1 … $opt12: Campos opcionales personalizados.
- Para qué sirve: almacenar información adicional de la base.
- Qué información guarda: valores definidos en la base predictiva.
-
$tel1 … $tel10: Teléfonos adicionales del cliente.
- Para qué sirve: intentos múltiples de contacto.
- Qué información guarda: números adicionales.
-
$email: Correo electrónico del cliente.
- Para qué sirve: contacto alternativo e integración CRM.
- Qué información guarda: email del cliente.
Modo Webhook (Requisito Técnico)
Para usar este routing en modo webhook, se debe enviar una solicitud POST con las variables en formato JSON en el primer nivel.
Ejemplo en PHP:
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '{$wolkvox_server}/ipdialbox/omnibox/route-crm/{$operation}-{$routing_point}.php',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"name":"John",
"last_name":"Nash",
"profession":"mathematician",
"nationality":"usa",
"spouse":"Alicia Nash",
"company":"Massachusetts Institute of Technology",
"age":"86"
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: text/plain'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Variables para Agent Scripting (Guion del Agente)
Estas variables están disponibles dentro del módulo Agent Scripting en wolkvox Studio y permiten personalizar el guion dinámicamente según el contexto de la llamada, el agente o la campaña predictiva.

Variables del Scripting (Contexto del Agente y la Llamada)
-
$id_agent: Identificador único del agente.
- Para qué sirve: personalizar el guion según el agente, enviar información a sistemas externos o registrar trazabilidad.
- Qué información guarda: ID interno del agente en la operación.
-
$user_so: Usuario del sistema operativo del equipo del agente.
- Para qué sirve: auditoría técnica o validaciones por estación.
- Qué información guarda: nombre del usuario del sistema operativo del equipo del agente.
-
$agent_workstation: Nombre del computador donde trabaja el agente.
- Para qué sirve: identificar desde qué equipo se atiende la llamada, validaciones técnicas o control de dispositivos.
- Qué información guarda: nombre de la estación de trabajo del agente.
-
$operation: Nombre de la operación en wolkvox.
- Para qué sirve: segmentar automatizaciones cuando existen múltiples operaciones.
- Qué información guarda: nombre configurado de la operación.
-
$ip: IP pública del agente.
- Para qué sirve: auditoría, validaciones de seguridad o integraciones externas.
- Qué información guarda: dirección IP pública desde donde el agente está conectado.
-
$type_of_call: Tipo de llamada (inbound, outbound_ma, out_pre).
- Para qué sirve: adaptar el guion según el tipo de contacto (entrante o saliente).
- Qué información guarda: modalidad de la llamada.
-
$TELEFONO: Teléfono del cliente.
- Para qué sirve: mostrar el número al agente, validar identidad o registrar datos en CRM.
- Qué información guarda: número telefónico del cliente.
-
$IDQUEUE: Skill donde ingresa la llamada.
- Para qué sirve: personalizar el discurso según la cola o campaña.
- Qué información guarda: identificador del skill o cola.
-
$ID_CALL: ID de la llamada.
- Para qué sirve: trazabilidad, auditoría, correlación con grabaciones y QA.
- Qué información guarda: identificador único de la llamada.
Variables del Predictivo (Disponibles en Campañas Predictivas)
Estas variables están disponibles cuando el las llamadas provienen de una campaña de tipo predictiva. Los datos provienen de la base de datos de los clientes cargada en cada campaña.
-
$NOMBRE: Nombre del cliente en la base.
- Para qué sirve: personalización del saludo o discurso.
- Qué información guarda: nombre registrado en la base predictiva.
-
$APELLIDOS: Apellido del cliente en la base.
- Para qué sirve: personalización formal o validación de identidad.
- Qué información guarda: apellidos del cliente.
-
$TYPE_ID: Tipo de documento del cliente.
- Para qué sirve: validación de identidad durante la llamada.
- Qué información guarda: tipo de identificación (CC, DNI, Passport, etc.).
-
$id_customer: ID del cliente en la base.
- Para qué sirve: correlacionar con CRM o sistemas externos.
- Qué información guarda: identificador único del cliente en la base.
-
$EDAD: Edad del cliente.
- Para qué sirve: segmentación del discurso o validaciones comerciales.
- Qué información guarda: edad registrada en la base.
-
$SEXO: Género del cliente.
- Para qué sirve: adaptar el discurso o segmentación comercial.
- Qué información guarda: género del cliente.
-
$PAIS: País del cliente.
- Para qué sirve: segmentación geográfica o validación de cobertura.
- Qué información guarda: país registrado en la base.
-
$DEPARTAMENTO: Departamento o estado del cliente.
- Para qué sirve: segmentación territorial.
- Qué información guarda: departamento o estado.
-
$CIUAD: Ciudad del cliente.
- Para qué sirve: personalización o segmentación local.
- Qué información guarda: ciudad registrada.
-
$ZONA: Zona del cliente.
- Para qué sirve: segmentación comercial o logística.
- Qué información guarda: zona asignada en la base.
-
$DIR: Dirección del cliente.
- Para qué sirve: validación de datos o gestión logística.
- Qué información guarda: dirección registrada en la base.
-
$opt1 … $opt#: Campos opcionales personalizados de la base.
- Para qué sirve: utilizar información adicional definida por la empresa (segmentación, scoring, producto, etc.).
- Qué información guarda: valores personalizados configurados en la base predictiva.
-
$email: Correo electrónico del cliente.
- Para qué sirve: validación, actualización o contacto alternativo.
- Qué información guarda: email registrado en la base.
-
$id_camp: ID de la base o campaña.
- Para qué sirve: identificar desde qué campaña predictiva se originó la llamada.
- Qué información guarda: identificador de la campaña/base cargada.
Nota: Estas variables de campañas de tipo predictiva solo estarán disponibles si esa información fue incluida correctamente al momento de cargar la base de datos (archivo CSV) de la campaña predictiva. Si el campo no fue cargado en el CSV o no fue mapeado correctamente durante la configuración de la campaña, el sistema no podrá reconocerlo ya que wolkvox no “crea” ni “completa” automáticamente estos datos, únicamente expone la información que existe en la base cargada. En consecuencia, la variable aparecerá vacía.