Entrada y Salida
En Hablla, toda entrada y salida de un componente se realiza en formato JSON. Esto significa que cada acción dentro del flujo de automatización recibe información (entrada), procesa esos datos y devuelve un resultado (salida). Vamos a entender mejor cómo funciona esto y cómo puedes utilizar esta información en tu día a día.
🏗 Flujo de Datos en Hablla
1️⃣ Entrada → El componente recibe un conjunto de datos en JSON, provenientes de otras etapas del flujo. 2️⃣ Procesamiento → El componente manipula los datos y realiza solicitudes internas o externas. 3️⃣ Salida → El componente devuelve un JSON con la información procesada, incluyendo estado, detalles de la solicitud y resultados obtenidos.
📌 Ejemplo real en Hablla: Imagina que un componente recibe datos de un contacto de WhatsApp y necesita crear una tarjeta de atención en el sistema.
📥 Entrada de Datos
La entrada contiene toda la información disponible para el componente. Esa información proviene de componentes anteriores en el flujo.
Ejemplo de entrada (JSON):
{
"whatsapp": {
"name": "Marcus Barboza",
"phone_number": "5517997275046"
},
"person": {
"name": "Marcus Barboza",
"customer_status": "lead",
"id": "675c7667dc2708736e804575"
},
"service": {
"type": "whatsapp",
"status": "in_bot",
"id": "67c7503f15788872a1f61328"
},
"content": {
"body": "Hablla, buenas tardes!"
}
}
Los datos en Hablla se generan a partir de interacciones del usuario, capturados de sistemas externos o añadidos por componentes anteriores en el flujo de automatización. Las automatizaciones en Hablla pueden iniciarse por eventos disparados desde componentes receptivos como WhatsApp, Instagram, Messenger, Telegram, Email, Teléfono, además de integraciones vía Webhooks, CRON y Trigger.
Esos eventos (trigger) pueden activarse por diferentes tipos de acciones dentro de la plataforma, como: ✅ Interacciones con Personas → Leads, clientes o usuarios realizando acciones en el sistema. ✅ Organizaciones → Actualizaciones en empresas registradas. ✅ Tarjetas → Movimientos dentro de tableros y pipelines. ✅ Bot y Chat → Mensajes enviados o recibidos por IA u operadores humanos. ✅ Llamadas Telefónicas y Correos → Registros y actualizaciones de comunicaciones. ✅ Campos Personalizados (Custom Fields) → Cambios en datos específicos dentro del CRM. ✅ Eventos de Sesión → Inicio de sesión, cierre de sesión, sesión expirada, estado en línea/desconectado. ✅ Servicios y Transferencias → Asignaciones de atenciones y movimientos entre sectores. ✅ Etiquetas y Usuarios → Acciones relacionadas con segmentación y permisos de usuarios. ✅ Tareas y Diccionario de Datos → Actualizaciones en tareas o información estructurada. ✅ Conversiones y Cambios de Estado → Cambios en etapas del embudo de ventas y atención.
Siempre que uno de estos eventos se activa en Hablla, dispara un trigger que recibe los datos del evento y ejecuta acciones configuradas, como: Crear, Actualizar, Eliminar, Fusionar, entre otras. 🚀
⚙ Procesamiento de Datos
Entre la entrada y la salida, el componente manipula los datos recibidos. Puede: ✅ Consultar una base de datos → Buscar información de clientes, pedidos, etc. ✅ Realizar una llamada a una API externa → Como integrar un ERP u otro sistema con API abierta. ✅ Aplicar reglas de automatización → Crear, actualizar o eliminar registros en Hablla según las reglas del flujo.
📤 Salida de Datos
La salida contiene el resultado de la operación del componente. Siempre sigue el mismo formato e incluye:
1️⃣ value → Resultado de la operación (ejemplo: éxito o error). 2️⃣ headers → Encabezados de la solicitud (útil para depuración y seguridad). 3️⃣ config → Configuración de la solicitud, como URL y tiempo de respuesta. 4️⃣ request → Ruta de la llamada realizada por el componente. 5️⃣ data → El resultado final de la operación.
Ejemplo de salida (JSON):
{
"status": "fulfilled",
"value": {
"status": 200,
"statusText": "OK",
"headers": {
"content-type": "application/json; charset=utf-8",
"date": "Tue, 04 Mar 2025 19:10:56 GMT"
},
"config": {
"method": "GET",
"url": "https://api.hablla.com/v3/workspaces/643d802021b6aa9234eb9797/cards"
},
"request": {
"method": "GET",
"path": "/v3/workspaces/643d802021b6aa9234eb9797/cards?person=675c7667dc2708736e804575"
},
"data": {
"results": [],
"count": 0,
"totalItems": 0
}
}
}
🔹 ¿Qué significan estos datos?
✅ status: Indica si la operación fue exitosa (fulfilled
) o si hubo un error.
✅ value.status: El código de respuesta HTTP (200
significa éxito, 400
error de solicitud, etc.).
✅ config.url: La URL utilizada en la solicitud.
✅ request.path: La ruta exacta de la API llamada.
✅ data: El resultado de la solicitud (en este caso, no encontró ninguna tarjeta para esa persona).
🛠 Cómo Usar Estos Datos en el Flujo
💡 Puedes acceder a cualquier valor de la entrada o de la salida del componente dentro del flujo usando la sintaxis:
{{$data?.codigoDelComponente?.rutaVariable}}
📌 Hay ejemplos en Usando variables
🚀 Conclusión
🔹 La entrada contiene los datos disponibles antes de que el componente se ejecute. 🔹 El componente procesa esos datos, realiza solicitudes y aplica reglas de automatización. 🔹 La salida muestra el resultado de la operación, permitiendo que el flujo continúe automáticamente.
💡 Consejo: Siempre analiza la entrada y la salida para entender cómo los datos están fluyendo dentro de la automatización. ¡Esto facilita identificar errores y configurar tus reglas correctamente! 🚀
Última actualización
¿Te fue útil?