WorldTeams Docs
N8nOps

HB - Extraccion Ordenes

Workflow de n8n activo · 24 nodos

Página generada automáticamente desde n8n. No la edites a mano — se sobreescribe en la próxima corrida. Para cambiar el contenido, cambiá el workflow o el prompt del colector.

Qué hace

Cuando ingresa un correo a la casilla de Gmail vinculado a solicitudes de Toll Brothers o una respuesta de WorldTeams sobre un hilo existente, el flujo procesa el mensaje según su tipo. Si es una orden nueva, extrae el código de orden, la división y la fecha para darla de alta como pendiente en Google Sheets y en Supabase. Si es una respuesta de aceptación de un PM de WorldTeams, actualiza el estado a aceptado y, tras 1 día (y un segundo aviso a los 2 días adicionales), verifica si faltan asignar roles para enviar alertas automáticas al canal de Slack.

Cuándo se rompe

  • Una orden nueva entra a la casilla pero no aparece en la planilla ni en el sistema: ocurre cuando el asunto del correo no incluye las palabras clave esperadas (como TBI, RFI o Request for Service) o no trae un código identificador válido (como AO, RV o MR seguido de números).
  • El PM responde tomando la orden pero el estado sigue figurando pendiente: pasa si el correo de respuesta no se envió desde una cuenta con dominio @worldteams.com o si el texto de la respuesta no contiene la palabra "accept" antes de la firma.
  • No se disparan las alertas de Slack tras cumplirse los plazos: sucede si la orden no se encuentra cargada en la tabla de seguimiento del PM o si el hilo original del correo no pudo vincularse correctamente con el registro inicial.

Detalle técnico

  • El disparador Gmail Trigger consulta la casilla cada minuto y el nodo If bifurca según si el mensaje inicia un hilo (id == threadId) o es una respuesta.
  • En altas nuevas, Code in JavaScript y Code in JavaScript1 procesan el asunto con expresiones regulares para extraer el código AO, normalizan la división geográfica con un mapa de estados (ESTADO_MAP) y guardan el registro en Append row in sheet (Google Sheets) y Create a row (tabla toll_ordenes_trabajo de Supabase).
  • En respuestas, Code in JavaScript2 recorta las firmas y disclaimers para buscar la palabra clave "accept", mientras Filter1 y If3 validan que provenga del dominio @worldteams.com y que no haya sido aceptada previamente.
  • La actualización de estado a ACCEPTED se ejecuta en paralelo en Supabase (Update a row) y Google Sheets (Update row in sheet) macheando por el campo thread_id.
  • El seguimiento posterior usa nodos Wait (1 día) y Wait1 (2 días), consultando la tabla toll_worksheet_pm por ao_numero para verificar si drafter_nombre, corrector_nombre y visibility siguen vacíos antes de postear las alertas al canal de Slack toll-brothers-notif.

Diagrama

Ficha

Estado🟢 Activo
DisparadorGmail Trigger
Nodos24
ServiciosGoogle Sheets, Slack, Supabase, gmailTrigger
CredencialesGmail account Admin Toll, Google Sheets - Leandro, Slack - Leandro, Supabase WPC

| Abrir en n8n | Me8dsBm6ws6PnmCN |

On this page