diff --git a/glmway-workflow.json b/glmway-workflow.json index d60cb29..279eaaa 100644 --- a/glmway-workflow.json +++ b/glmway-workflow.json @@ -1,6 +1,6 @@ { "$json": { - "updatedAt": "2026-06-26T15:27:25.559Z", + "updatedAt": "2026-06-26T18:50:10.552Z", "createdAt": "2026-06-08T13:50:12.174Z", "id": "F1iPg8hktNAebZua", "name": "GLMWay", @@ -1120,7 +1120,7 @@ "type": "n8n-nodes-base.gmail", "typeVersion": 2.2, "position": [ - 2096, + 2272, -224 ], "id": "e6c3acf5-d54b-4e00-b7a9-74038d27e387", @@ -1147,7 +1147,7 @@ "type": "n8n-nodes-base.gmail", "typeVersion": 2.2, "position": [ - 2096, + 2272, -400 ], "id": "f173c8d1-9311-405c-a7ee-164726df32f1", @@ -1181,7 +1181,7 @@ "parameters": { "content": "## Recordatorio a coordinador RRHH 48 y 24 horas antes de la sesion\n", "height": 496, - "width": 1728, + "width": 2640, "color": 6 }, "type": "n8n-nodes-base.stickyNote", @@ -1213,7 +1213,7 @@ "parameters": { "content": "## Notificacion inicial\n\nEnvia notificacion de sesion en el primer dia de trabajo del empleado", "height": 608, - "width": 2672, + "width": 2784, "color": 6 }, "type": "n8n-nodes-base.stickyNote", @@ -1292,7 +1292,7 @@ "parameters": { "content": "## Completar datos y enviar invitacion", "height": 544, - "width": 3328, + "width": 3472, "color": 6 }, "type": "n8n-nodes-base.stickyNote", @@ -1472,7 +1472,7 @@ "type": "n8n-nodes-base.if", "typeVersion": 2.3, "position": [ - 2432, + 2592, 352 ], "id": "30b3a4dd-6d50-405d-9c77-27febcc50aa4", @@ -1517,7 +1517,7 @@ "type": "n8n-nodes-base.httpRequest", "typeVersion": 4.2, "position": [ - 2608, + 2768, 432 ], "id": "67928478-7604-45a4-9ab0-851079e1470c", @@ -1537,7 +1537,7 @@ "type": "n8n-nodes-base.gmail", "typeVersion": 2.2, "position": [ - 2080, + 2240, 272 ], "id": "32302b24-aa4c-4f9a-afc8-ef7e86cad56b", @@ -1564,7 +1564,7 @@ "type": "n8n-nodes-base.gmail", "typeVersion": 2.2, "position": [ - 2080, + 2240, 448 ], "id": "db2cb6a3-1da8-472a-95eb-1a02de2a5fa4", @@ -1730,7 +1730,7 @@ "type": "n8n-nodes-base.wait", "typeVersion": 1.1, "position": [ - 2784, + 2944, 352 ], "id": "98185de1-e81a-440f-8951-f98bd78c707b", @@ -1929,7 +1929,7 @@ "type": "n8n-nodes-base.googleSheets", "typeVersion": 4.7, "position": [ - 2272, + 2432, 352 ], "id": "3a6f198b-e136-49fb-a171-78164e10b600", @@ -2021,8 +2021,8 @@ "type": "n8n-nodes-base.googleCalendar", "typeVersion": 1.3, "position": [ - 1632, - 1568 + 1520, + 2080 ], "id": "7dd9a706-4d80-45c6-942a-c703eb074a20", "name": "Entrenamiento español2", @@ -2051,8 +2051,8 @@ "type": "n8n-nodes-base.googleCalendar", "typeVersion": 1.3, "position": [ - 1632, - 1392 + 1520, + 1904 ], "id": "d8253a7a-4e37-4c14-b4da-e0029571cd21", "name": "Entrenamiento ingles5", @@ -2708,8 +2708,8 @@ "type": "n8n-nodes-base.gmail", "typeVersion": 2.2, "position": [ - 1088, - 1488 + 1744, + 1584 ], "id": "39331d88-6f2b-4df1-ac76-dda9ff47dfec", "name": "Send a message espanol3", @@ -2735,8 +2735,8 @@ "type": "n8n-nodes-base.gmail", "typeVersion": 2.2, "position": [ - 1088, - 1312 + 1744, + 1408 ], "id": "9d4f57a4-ac2f-49bd-b5fa-50658a8d928e", "name": "Send a message ingles3", @@ -2763,7 +2763,7 @@ "typeVersion": 1.3, "position": [ -352, - 1488 + 1568 ], "id": "6951af7d-5098-4156-81bd-8f67034fcf70", "name": "Schedule Trigger3" @@ -2775,8 +2775,8 @@ "type": "n8n-nodes-base.splitInBatches", "typeVersion": 3, "position": [ - 272, - 1488 + -16, + 1568 ], "id": "7545364a-df0a-4420-a1af-5bcd4f8c9602", "name": "Loop Over Items2" @@ -2788,8 +2788,8 @@ "type": "n8n-nodes-base.wait", "typeVersion": 1.1, "position": [ - 1472, - 1616 + 1536, + 1296 ], "id": "617ab85d-23a6-4546-9331-eff343d9b1c5", "name": "Wait3", @@ -2807,7 +2807,7 @@ "conditions": [ { "id": "9674fd7e-dd62-42d4-8931-6c67e59e3dd7", - "leftValue": "={{ $('Obtener notificados1').item.json.pais }}", + "leftValue": "={{ Object.keys($json)[0] }}", "rightValue": "Jamaica", "operator": { "type": "string", @@ -2816,7 +2816,7 @@ }, { "id": "32931394-f4ea-4055-b866-906a81988173", - "leftValue": "={{ $('Obtener notificados1').item.json.pais }}", + "leftValue": "={{ Object.keys($json)[0] }}", "rightValue": "Trinidad and Tobago", "operator": { "type": "string", @@ -2825,7 +2825,7 @@ }, { "id": "ea2a8466-96c6-460f-b08f-d23c06b2d18c", - "leftValue": "={{ $('Obtener notificados1').item.json.pais }}", + "leftValue": "={{ Object.keys($json)[0] }}", "rightValue": "Barbados", "operator": { "type": "string", @@ -2834,7 +2834,7 @@ }, { "id": "28e49217-0c1a-4462-9642-676e54926d3e", - "leftValue": "={{ $('Obtener notificados1').item.json.pais }}", + "leftValue": "={{ Object.keys($json)[0] }}", "rightValue": "Saint Thomas", "operator": { "type": "string", @@ -2843,7 +2843,7 @@ }, { "id": "c6a6aea5-48f4-44dc-92ca-a9f9de9cacf9", - "leftValue": "={{ $('Obtener notificados1').item.json.pais }}", + "leftValue": "={{ Object.keys($json)[0] }}", "rightValue": "St. Croix", "operator": { "type": "string", @@ -2852,7 +2852,7 @@ }, { "id": "e6f52339-ea7c-462f-bdc2-8b7353160e4c", - "leftValue": "={{ $('Obtener notificados1').item.json.pais }}", + "leftValue": "={{ Object.keys($json)[0] }}", "rightValue": "Tobago", "operator": { "type": "string", @@ -2861,7 +2861,7 @@ }, { "id": "b308c2b6-53b4-4d49-b540-cdc03e36528b", - "leftValue": "={{ $('Obtener notificados1').item.json.pais }}", + "leftValue": "={{ Object.keys($json)[0] }}", "rightValue": "Guyana", "operator": { "type": "string", @@ -2870,7 +2870,7 @@ }, { "id": "35a50a33-a2b5-4116-9336-11300357569e", - "leftValue": "={{ $('Obtener notificados1').item.json.pais }}", + "leftValue": "={{ Object.keys($json)[0] }}", "rightValue": "Aruba", "operator": { "type": "string", @@ -2885,77 +2885,12 @@ "type": "n8n-nodes-base.if", "typeVersion": 2.2, "position": [ - 896, - 1392 + 1424, + 1440 ], "id": "13ee807a-f1cd-48ef-921b-7b5c260ba116", "name": "Pais?3" }, - { - "parameters": { - "operation": "get", - "tableId": "coordinadores_rrhh_glmway", - "filters": { - "conditions": [ - { - "keyName": "estado", - "keyValue": "=no_notificado" - } - ] - } - }, - "type": "n8n-nodes-base.supabase", - "typeVersion": 1, - "position": [ - 144, - 1296 - ], - "id": "0457dbf8-9c04-4f2d-9928-4f770eb51cc0", - "name": "Obtener notificados1", - "credentials": { - "supabaseApi": { - "id": "2PlsR6rpK7rQTIEn", - "name": "Sofia test - Supabase account" - } - } - }, - { - "parameters": { - "operation": "update", - "tableId": "inscritos_glmway", - "filters": { - "conditions": [ - { - "keyName": "empleado_id", - "condition": "eq", - "keyValue": "={{ $('Loop Over Items2').item.json.empleado_id }}" - } - ] - }, - "fieldsUi": { - "fieldValues": [ - { - "fieldId": "estado", - "fieldValue": "recordado" - } - ] - } - }, - "type": "n8n-nodes-base.supabase", - "typeVersion": 1, - "position": [ - 1296, - 1408 - ], - "id": "0881ba84-bd04-4e91-9c09-0ba18e28ed28", - "name": "Actualizar estado a recordado1", - "credentials": { - "supabaseApi": { - "id": "2PlsR6rpK7rQTIEn", - "name": "Sofia test - Supabase account" - } - } - }, { "parameters": { "conditions": { @@ -2984,8 +2919,8 @@ "type": "n8n-nodes-base.if", "typeVersion": 2.2, "position": [ - 704, - 1488 + 416, + 1568 ], "id": "0fea4950-f873-4375-8964-45cfc3fead02", "name": "Falta 48h para el evento?1" @@ -3217,7 +3152,7 @@ "type": "n8n-nodes-base.scheduleTrigger", "typeVersion": 1.3, "position": [ - 2368, + 2496, -352 ], "id": "ca136518-b776-45ba-b1a2-ad5327dd4cca", @@ -3268,7 +3203,7 @@ "type": "n8n-nodes-base.googleSheets", "typeVersion": 4.7, "position": [ - 3264, + 3392, -352 ], "id": "7c321f7d-bce9-447c-b94c-35f6967a48e3", @@ -3286,7 +3221,7 @@ "type": "n8n-nodes-base.wait", "typeVersion": 1.1, "position": [ - 3088, + 3216, -352 ], "id": "27531838-5dc7-4169-a08a-f4da93899580", @@ -3316,7 +3251,7 @@ "type": "n8n-nodes-base.googleSheets", "typeVersion": 4.7, "position": [ - 2912, + 3040, -352 ], "id": "bd8cb535-6aa3-46df-9ca0-6efc0555f2e4", @@ -3337,7 +3272,7 @@ }, "type": "n8n-nodes-base.stickyNote", "position": [ - 2336, + 2464, -480 ], "typeVersion": 1, @@ -3629,19 +3564,6 @@ } } }, - { - "parameters": { - "jsCode": "const fecha_sesion = $input.first().json.fecha_sesion_inscrito;\n\n// Fecha de hoy\nconst fecha_hoy = new Date().toISOString().split('T')[0];\nconst hoy = new Date(fecha_hoy);\nconst sesion = new Date(fecha_sesion);\n\n// Diferencia en días\nconst diferenciaDias = Math.floor(\n (sesion - hoy) / (1000 * 60 * 60 * 24)\n);\n\n// True si es hoy (0 días), mañana (1 día) o pasado mañana (2 días)\nconst isValid = diferenciaDias >= 0 && diferenciaDias <= 2;\n\nreturn [\n {\n json: {\n fecha_sesion,\n fecha_hoy,\n diferenciaDias,\n isValid\n }\n }\n];" - }, - "type": "n8n-nodes-base.code", - "typeVersion": 2, - "position": [ - 480, - 1488 - ], - "id": "3e2b4cde-d7aa-4879-aa55-f1a169c16bd3", - "name": "Calcular falta 48h o 24h" - }, { "parameters": { "content": "## Aviso a instructor si no hay nadie inscrito a la sesion del dia\n", @@ -3678,7 +3600,7 @@ "type": "n8n-nodes-base.googleCalendar", "typeVersion": 1.3, "position": [ - 2560, + 2688, -352 ], "id": "b2b03ce6-6010-4e4f-be7a-d9040286e295", @@ -3697,7 +3619,7 @@ "type": "n8n-nodes-base.code", "typeVersion": 2, "position": [ - 2736, + 2864, -352 ], "id": "73c39af9-bc01-4d97-81ee-846aff70b3a6", @@ -3716,7 +3638,7 @@ "type": "n8n-nodes-base.scheduleTrigger", "typeVersion": 1.3, "position": [ - 2368, + 2496, -48 ], "id": "55a755d8-8b74-440f-93c6-8a1ecba4c666", @@ -3730,7 +3652,7 @@ }, "type": "n8n-nodes-base.stickyNote", "position": [ - 2336, + 2464, -160 ], "typeVersion": 1, @@ -3757,7 +3679,7 @@ "type": "n8n-nodes-base.googleCalendar", "typeVersion": 1.3, "position": [ - 3664, + 3792, -208 ], "id": "3c32f96e-cd34-4be4-8c24-b4be7a8f29d9", @@ -3790,7 +3712,7 @@ "type": "n8n-nodes-base.googleSheets", "typeVersion": 4.7, "position": [ - 2544, + 2672, -48 ], "id": "73089147-ba1f-4fb4-ac17-d5670b263fd8", @@ -3828,7 +3750,7 @@ "type": "n8n-nodes-base.httpRequest", "typeVersion": 4.4, "position": [ - 2880, + 3008, -48 ], "id": "231f396b-855a-4c50-8d6d-096018e6d2ac", @@ -3843,7 +3765,7 @@ "type": "n8n-nodes-base.aggregate", "typeVersion": 1, "position": [ - 2704, + 2832, -48 ], "id": "e51bd2d5-22b5-46cf-b346-c1ba16bb5c34", @@ -3874,7 +3796,7 @@ "type": "n8n-nodes-base.httpRequest", "typeVersion": 4.4, "position": [ - 4464, + 4592, -304 ], "id": "3f4a0807-5f29-49cb-a851-41100e04f5bf", @@ -3889,7 +3811,7 @@ "type": "n8n-nodes-base.aggregate", "typeVersion": 1, "position": [ - 4320, + 4448, -304 ], "id": "3ecbb0c7-f5f5-4644-9f42-8be9502e814d", @@ -3904,7 +3826,7 @@ "type": "n8n-nodes-base.set", "typeVersion": 3.4, "position": [ - 4176, + 4304, -304 ], "id": "a099259d-36e3-48b6-aa77-d8132f33f85e", @@ -3927,7 +3849,7 @@ "type": "n8n-nodes-base.merge", "typeVersion": 3.2, "position": [ - 4032, + 4160, -304 ], "id": "456bcbe4-cc98-48fc-bcd2-40f8961934ae", @@ -3941,7 +3863,7 @@ }, "type": "n8n-nodes-base.stickyNote", "position": [ - 3456, + 3584, -480 ], "typeVersion": 1, @@ -3965,7 +3887,7 @@ "type": "n8n-nodes-base.scheduleTrigger", "typeVersion": 1.3, "position": [ - 3504, + 3632, -288 ], "id": "6ef829bf-1d52-4093-bcc5-45d922393611", @@ -3992,7 +3914,7 @@ "type": "n8n-nodes-base.googleSheets", "typeVersion": 4.7, "position": [ - 3664, + 3792, -384 ], "id": "f1bf8c51-43cf-41d4-93c4-1a1d0a0dac7a", @@ -4036,7 +3958,7 @@ "type": "n8n-nodes-base.code", "typeVersion": 2, "position": [ - 3840, + 3968, -208 ], "id": "8f80d9ca-1e4b-4753-b482-df7b0fd24f61", @@ -4243,7 +4165,7 @@ "typeVersion": 1, "position": [ -192, - 1488 + 1568 ], "id": "a4fc1575-5326-467f-8b05-f8c9569cdca1", "name": "Obtener sesiones", @@ -4256,16 +4178,320 @@ }, { "parameters": { - "jsCode": "const fecha_sesion = $input.first().json.fecha_sesion_inscrito;\n\n// Fecha de hoy\nconst fecha_hoy = new Date().toISOString().split('T')[0];\nconst hoy = new Date(fecha_hoy);\nconst sesion = new Date(fecha_sesion);\n\n// Diferencia en días\nconst diferenciaDias = Math.floor(\n (sesion - hoy) / (1000 * 60 * 60 * 24)\n);\n\n// True si es hoy (0 días), mañana (1 día) o pasado mañana (2 días)\nconst isValid = diferenciaDias >= 0 && diferenciaDias <= 2;\n\nreturn [\n {\n json: {\n fecha_sesion,\n fecha_hoy,\n diferenciaDias,\n isValid\n }\n }\n];" + "operation": "update", + "tableId": "sesiones_glmway", + "filters": { + "conditions": [ + { + "keyName": "fecha_sesion", + "condition": "eq", + "keyValue": "={{ $json.fecha_sesion_inscrito }}" + } + ] + }, + "fieldsUi": { + "fieldValues": [ + {} + ] + } + }, + "type": "n8n-nodes-base.supabase", + "typeVersion": 1, + "position": [ + 3200, + 176 + ], + "id": "df865311-bf25-4b35-ac8a-da71a3d93e05", + "name": "Añadir a listado de participantes1", + "credentials": { + "supabaseApi": { + "id": "2PlsR6rpK7rQTIEn", + "name": "Sofia test - Supabase account" + } + } + }, + { + "parameters": { + "method": "POST", + "url": "https://dbit.digitalcompass.agency/rest/v1/rpc/insertar_participantes_sesion_glmway", + "sendHeaders": true, + "headerParameters": { + "parameters": [ + { + "name": "apikey", + "value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q" + }, + { + "name": "Authorization", + "value": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q" + } + ] + }, + "sendBody": true, + "specifyBody": "json", + "jsonBody": "={\n \"p_sesion_id\": \"{{ $('Calcular sesion mas cercana2').item.json.session.id }}\",\n \"p_pais\": \"{{ $json.pais }}\",\n \"p_empleados\": [\n {\n \"nombre\": \"{{ $json.nombre }}\",\n \"correo\": \"{{ $json.email }}\",\n \"departamento\": \"{{ $json.departamento }}\",\n \"division\": \"{{ $json.division }}\"\n }\n ]\n}", + "options": {} + }, + "type": "n8n-nodes-base.httpRequest", + "typeVersion": 4.4, + "position": [ + 2080, + 272 + ], + "id": "f3df197d-b557-45d7-94bb-76f3c300ae61", + "name": "Insertar/actualizar coordinadores a la bd1" + }, + { + "parameters": { + "method": "POST", + "url": "https://dbit.digitalcompass.agency/rest/v1/rpc/insertar_participantes_sesion_glmway", + "sendHeaders": true, + "headerParameters": { + "parameters": [ + { + "name": "apikey", + "value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q" + }, + { + "name": "Authorization", + "value": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q" + } + ] + }, + "sendBody": true, + "specifyBody": "json", + "jsonBody": "={\n \"p_sesion_id\": \"{{ $('Calcular sesion mas cercana2').item.json.session.id }}\",\n \"p_pais\": \"{{ $json.pais }}\",\n \"p_empleados\": [\n {\n \"nombre\": \"{{ $json.nombre }}\",\n \"correo\": \"{{ $json.email }}\",\n \"departamento\": \"{{ $json.departamento }}\",\n \"division\": \"{{ $json.division }}\"\n }\n ]\n}", + "options": {} + }, + "type": "n8n-nodes-base.httpRequest", + "typeVersion": 4.4, + "position": [ + 2080, + 448 + ], + "id": "23ac8709-b0ac-4bb6-911a-1e7641be075d", + "name": "Insertar/actualizar coordinadores a la bd2" + }, + { + "parameters": { + "method": "POST", + "url": "https://dbit.digitalcompass.agency/rest/v1/rpc/insertar_participantes_sesion_glmway", + "sendHeaders": true, + "headerParameters": { + "parameters": [ + { + "name": "apikey", + "value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q" + }, + { + "name": "Authorization", + "value": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q" + } + ] + }, + "sendBody": true, + "specifyBody": "json", + "jsonBody": "={\n \"p_sesion_id\": \"{{ $('Calcular sesion mas cercana2').item.json.session.id }}\",\n \"p_pais\": \"{{ $json.pais }}\",\n \"p_empleados\": [\n {\n \"nombre\": \"{{ $json.nombre }}\",\n \"correo\": \"{{ $json.email }}\",\n \"departamento\": \"{{ $json.departamento }}\",\n \"division\": \"{{ $json.division }}\"\n }\n ]\n}", + "options": {} + }, + "type": "n8n-nodes-base.httpRequest", + "typeVersion": 4.4, + "position": [ + 2096, + -400 + ], + "id": "4ab5f973-c2e1-410e-9212-8ed3b9d372e3", + "name": "Insertar/actualizar coordinadores a la bd3" + }, + { + "parameters": { + "method": "POST", + "url": "https://dbit.digitalcompass.agency/rest/v1/rpc/insertar_participantes_sesion_glmway", + "sendHeaders": true, + "headerParameters": { + "parameters": [ + { + "name": "apikey", + "value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q" + }, + { + "name": "Authorization", + "value": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q" + } + ] + }, + "sendBody": true, + "specifyBody": "json", + "jsonBody": "={\n \"p_sesion_id\": \"{{ $('Calcular sesion mas cercana2').item.json.session.id }}\",\n \"p_pais\": \"{{ $json.pais }}\",\n \"p_empleados\": [\n {\n \"nombre\": \"{{ $json.nombre }}\",\n \"correo\": \"{{ $json.email }}\",\n \"departamento\": \"{{ $json.departamento }}\",\n \"division\": \"{{ $json.division }}\"\n }\n ]\n}", + "options": {} + }, + "type": "n8n-nodes-base.httpRequest", + "typeVersion": 4.4, + "position": [ + 2096, + -224 + ], + "id": "5e69165f-16a2-4f7a-ad48-d24c70f3c88b", + "name": "Insertar/actualizar coordinadores a la bd4" + }, + { + "parameters": { + "jsCode": "const item = $input.first().json;\nconst fecha_sesion = item.fecha_sesion;\n\n// Hoy\nconst hoy = new Date();\nhoy.setHours(0, 0, 0, 0);\n\n// Formatear hoy como \"26 June\"\nconst fecha_hoy = hoy.toLocaleDateString('en-GB', {\n day: 'numeric',\n month: 'long'\n});\n\n// Crear la fecha de la sesión usando el año actual\nlet sesion = new Date(`${fecha_sesion} ${hoy.getFullYear()}`);\nsesion.setHours(0, 0, 0, 0);\n\n// Si ya pasó este año, asumir el próximo\nif (sesion < hoy) {\n sesion = new Date(`${fecha_sesion} ${hoy.getFullYear() + 1}`);\n sesion.setHours(0, 0, 0, 0);\n}\n\n// Diferencia en días\nconst diferenciaDias = Math.floor(\n (sesion - hoy) / (1000 * 60 * 60 * 24)\n);\n\nconst isValid = diferenciaDias >= 0 && diferenciaDias <= 2;\n\n// Si no cumple la condición, no retornar nada\nif (!isValid) {\n return [];\n}\n\n// Retornar la sesión dentro de la llave \"sesion\"\nreturn [\n {\n json: {\n sesion: item,\n fecha_hoy,\n diferenciaDias,\n isValid\n }\n }\n];" }, "type": "n8n-nodes-base.code", "typeVersion": 2, "position": [ - 0, - 1488 + 208, + 1568 ], "id": "e8d383b8-9081-4829-8516-a03f6f5a1b63", - "name": "Calcular falta 48h o 24h1" + "name": "Calcular falta 48h o 24h" + }, + { + "parameters": { + "operation": "getAll", + "tableId": "coordinadores_rrhh_glmway", + "returnAll": true, + "filters": { + "conditions": [ + { + "keyName": "estado", + "condition": "eq", + "keyValue": "=no_notificado" + }, + { + "keyName": "pais", + "condition": "eq", + "keyValue": "={{ $json.sesion.participantes }}" + } + ] + } + }, + "type": "n8n-nodes-base.supabase", + "typeVersion": 1, + "position": [ + 768, + 1440 + ], + "id": "0457dbf8-9c04-4f2d-9928-4f770eb51cc0", + "name": "Obtener coordinadores1", + "credentials": { + "supabaseApi": { + "id": "2PlsR6rpK7rQTIEn", + "name": "Sofia test - Supabase account" + } + } + }, + { + "parameters": { + "conditions": { + "options": { + "caseSensitive": true, + "leftValue": "", + "typeValidation": "strict", + "version": 3 + }, + "conditions": [ + { + "id": "19e418dd-962b-4fe6-82db-19247f0e8165", + "leftValue": "={{ $json.sesion.participantes }}", + "rightValue": "", + "operator": { + "type": "object", + "operation": "notEmpty", + "singleValue": true + } + } + ], + "combinator": "and" + }, + "options": {} + }, + "type": "n8n-nodes-base.if", + "typeVersion": 2.3, + "position": [ + 592, + 1568 + ], + "id": "334a5703-db8a-4a88-b528-8468ee61ddbc", + "name": "Hay inscritos en la sesion?" + }, + { + "parameters": { + "jsCode": "// Sesión válida (salida del nodo \"Calcular falta 48h o 24h\")\nconst sesion = $(\"Calcular falta 48h o 24h\").first().json.sesion;\n\n// Coordinadores\nconst coordinadores = $(\"Obtener coordinadores1\").all().map(i => i.json);\n\nconst resultado = [];\n\n// Participantes viene como:\n// {\n// \"Colombia\": [...],\n// \"Mexico\": [...]\n// }\nconst participantesPorPais = sesion.participantes || {};\n\nfor (const [pais, participantes] of Object.entries(participantesPorPais)) {\n\n // Buscar coordinador del país\n const coordinador = coordinadores.find(c => c.pais === pais);\n\n resultado.push({\n json: {\n [pais]: {\n coordinador: coordinador\n ? {\n nombre: coordinador.nombre,\n correo: coordinador.correo\n }\n : null,\n\n participantes\n }\n }\n });\n\n}\n\nreturn resultado;" + }, + "type": "n8n-nodes-base.code", + "typeVersion": 2, + "position": [ + 960, + 1440 + ], + "id": "3073d739-a2c7-4ba1-81bc-aeae266ad3ff", + "name": "Matchear coordinador y pais inscrito" + }, + { + "parameters": { + "options": {} + }, + "type": "n8n-nodes-base.splitInBatches", + "typeVersion": 3, + "position": [ + 1152, + 1440 + ], + "id": "15c6bc9c-047f-4f56-ac8e-9a1d40b816a7", + "name": "Loop Over Items3" + }, + { + "parameters": { + "amount": 2 + }, + "type": "n8n-nodes-base.wait", + "typeVersion": 1.1, + "position": [ + 2128, + 1504 + ], + "id": "8fef83c7-d197-484c-b40f-817a198bf5fc", + "name": "Wait6", + "webhookId": "09d53dc8-c92a-43d2-a47f-477c0d1317af" + }, + { + "parameters": { + "operation": "update", + "tableId": "coordinadores_rrhh_glmway", + "filters": { + "conditions": [ + { + "keyName": "pais", + "condition": "eq", + "keyValue": "={{ Object.keys($json)[0] }}" + } + ] + }, + "fieldsUi": { + "fieldValues": [ + { + "fieldId": "estado", + "fieldValue": "notificado" + } + ] + } + }, + "type": "n8n-nodes-base.supabase", + "typeVersion": 1, + "position": [ + 1952, + 1504 + ], + "id": "0881ba84-bd04-4e91-9c09-0ba18e28ed28", + "name": "Actualizar estado a notificado", + "credentials": { + "supabaseApi": { + "id": "2PlsR6rpK7rQTIEn", + "name": "Sofia test - Supabase account" + } + } } ], "connections": { @@ -4850,7 +5076,7 @@ "main": [ [ { - "node": "Send a message ingles", + "node": "Insertar/actualizar coordinadores a la bd3", "type": "main", "index": 0 } @@ -4861,7 +5087,7 @@ "main": [ [ { - "node": "Send a message espanol", + "node": "Insertar/actualizar coordinadores a la bd4", "type": "main", "index": 0 } @@ -4934,7 +5160,7 @@ "main": [ [ { - "node": "Send a message espanol1", + "node": "Insertar/actualizar coordinadores a la bd1", "type": "main", "index": 0 } @@ -4996,7 +5222,7 @@ "main": [ [ { - "node": "Actualizar estado a recordado1", + "node": "Actualizar estado a notificado", "type": "main", "index": 0 } @@ -5007,7 +5233,7 @@ "main": [ [ { - "node": "Actualizar estado a recordado1", + "node": "Actualizar estado a notificado", "type": "main", "index": 0 } @@ -5066,38 +5292,16 @@ ] ] }, - "Obtener notificados1": { - "main": [ - [] - ] - }, - "Actualizar estado a recordado1": { - "main": [ - [ - { - "node": "Wait3", - "type": "main", - "index": 0 - } - ] - ] - }, "Falta 48h para el evento?1": { "main": [ [ { - "node": "Pais?3", + "node": "Hay inscritos en la sesion?", "type": "main", "index": 0 } ], - [ - { - "node": "Wait3", - "type": "main", - "index": 0 - } - ] + [] ] }, "Calcular falta 24h o es el mismo dia": { @@ -5115,7 +5319,7 @@ "main": [ [ { - "node": "Send a message ingles1", + "node": "Insertar/actualizar coordinadores a la bd2", "type": "main", "index": 0 } @@ -5222,17 +5426,6 @@ ] ] }, - "Calcular falta 48h o 24h": { - "main": [ - [ - { - "node": "Falta 48h para el evento?1", - "type": "main", - "index": 0 - } - ] - ] - }, "Obtener entrenamientos ingles y espanol": { "main": [ [ @@ -5441,7 +5634,142 @@ "main": [ [ { - "node": "Calcular falta 48h o 24h1", + "node": "Loop Over Items2", + "type": "main", + "index": 0 + } + ] + ] + }, + "Insertar/actualizar coordinadores a la bd1": { + "main": [ + [ + { + "node": "Send a message espanol1", + "type": "main", + "index": 0 + } + ] + ] + }, + "Insertar/actualizar coordinadores a la bd2": { + "main": [ + [ + { + "node": "Send a message ingles1", + "type": "main", + "index": 0 + } + ] + ] + }, + "Insertar/actualizar coordinadores a la bd3": { + "main": [ + [ + { + "node": "Send a message ingles", + "type": "main", + "index": 0 + } + ] + ] + }, + "Insertar/actualizar coordinadores a la bd4": { + "main": [ + [ + { + "node": "Send a message espanol", + "type": "main", + "index": 0 + } + ] + ] + }, + "Calcular falta 48h o 24h": { + "main": [ + [ + { + "node": "Falta 48h para el evento?1", + "type": "main", + "index": 0 + } + ] + ] + }, + "Obtener coordinadores1": { + "main": [ + [ + { + "node": "Matchear coordinador y pais inscrito", + "type": "main", + "index": 0 + } + ] + ] + }, + "Hay inscritos en la sesion?": { + "main": [ + [ + { + "node": "Obtener coordinadores1", + "type": "main", + "index": 0 + } + ], + [ + { + "node": "Wait3", + "type": "main", + "index": 0 + } + ] + ] + }, + "Matchear coordinador y pais inscrito": { + "main": [ + [ + { + "node": "Loop Over Items3", + "type": "main", + "index": 0 + } + ] + ] + }, + "Loop Over Items3": { + "main": [ + [ + { + "node": "Wait3", + "type": "main", + "index": 0 + } + ], + [ + { + "node": "Pais?3", + "type": "main", + "index": 0 + } + ] + ] + }, + "Wait6": { + "main": [ + [ + { + "node": "Loop Over Items3", + "type": "main", + "index": 0 + } + ] + ] + }, + "Actualizar estado a notificado": { + "main": [ + [ + { + "node": "Wait6", "type": "main", "index": 0 } @@ -5470,19 +5798,19 @@ "recurrenceRules": [] }, "node:Comenzo evento ingles": { - "lastTimeChecked": "2026-06-26T15:00:02Z" + "lastTimeChecked": "2026-06-26T18:50:13Z" }, "node:Comenzo evento español": { - "lastTimeChecked": "2026-06-26T15:00:04Z" + "lastTimeChecked": "2026-06-26T18:50:13Z" }, "node:Termino evento español": { - "lastTimeChecked": "2026-06-26T15:00:40Z" + "lastTimeChecked": "2026-06-26T18:50:13Z" }, "node:Termino evento ingles": { - "lastTimeChecked": "2026-06-26T15:00:50Z" + "lastTimeChecked": "2026-06-26T18:50:14Z" }, "node:Prueba": { - "lastTimeChecked": "2026-06-26T15:00:21Z" + "lastTimeChecked": "2026-06-26T18:50:14Z" }, "node:Schedule Trigger2": { "recurrenceRules": [] @@ -5759,11 +6087,941 @@ "item": 0 } } + ], + "Obtener sesiones": [ + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "26 June", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "fc77eb7b-5c29-4cf8-ac79-967553bb6258", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260107T230000Z", + "participantes": { + "Colombia": [ + { + "correo": "pnossa@gomezlee.marketing", + "nombre": "Pedro Alejandro Nossa Mateus", + "division": "Whirlpool", + "departamento": "Field Force" + }, + { + "correo": "eortiz02@gomezlee.marketing", + "nombre": "Evelyn Ortiz Montoya", + "division": "Whirlpool", + "departamento": "Field Force" + } + ], + "Puerto Rico": [ + { + "correo": "johndoe@gomezlee.marketing", + "nombre": "John Doe", + "division": "Whirlpool", + "departamento": "Field Force" + }, + { + "correo": "ejemplo@gomezlee.marketing", + "nombre": "Nombre Ejemplo", + "division": "Whirlpool", + "departamento": "Field Force" + } + ] + } + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "21 January", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "cd6fe4dd-ebee-42fa-a91b-2bc045e7ce18", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260121T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "4 February", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "58387a88-1420-45da-aeeb-8fd7ef55b801", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260204T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "18 February", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "7b63f9d7-2332-47c0-972a-a5c36cc84588", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260218T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "25 February", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "7c81e311-9ca3-4df3-8ac1-30dd54f0b7d2", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260225T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "4 March", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "62ce5944-1046-4d60-8566-19610fc899d3", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260304T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "11 March", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "d9edbcb7-d9a5-4ba4-921a-07316f915b9e", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260311T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "18 March", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "fe9cd801-f6b8-4199-96b1-c3a0d665285d", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260318T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "25 March", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "bb836c6b-90bd-4fb8-a030-f06915ec6829", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260325T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "1 April", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "7df3d6ea-3f33-4966-84e4-177265b649ff", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260401T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "8 April", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "ff283fae-7d15-4b0e-90c1-95a59fd78ac8", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260408T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "15 April", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "c0633e67-c36d-49b5-a63d-c918ae6df4f5", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260415T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "22 April", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "6d262384-f976-4800-beda-8229ac4fd015", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260422T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "29 April", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "655725db-9ec4-41a7-828a-f32835cdfbe9", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260429T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "6 May", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "1c162202-38c5-47ac-b15c-c6df8627ce19", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260506T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "13 May", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "11ffe359-daee-431f-bb6f-aab7aa98446a", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260513T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "20 May", + "hora_inicio": "19:00", + "hora_fin": "19:00", + "instructor": "Gabriel", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "ec38560f-fa60-4ab5-a7b4-ae75e6015009", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260520T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "27 May", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Francis", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "3553b681-fb15-47f1-9135-0bf18c35ecdd", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260527T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "3 June", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Luis Matos", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "eaf67650-dd4f-4c5e-974d-710dd245dd4a", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260603T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "10 June", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Cher", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "55e77ba9-92ee-4daf-b599-73fe426f0785", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260610T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "17 June", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "José Fernando", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "22eedc5d-c272-4170-8d89-542820d0e021", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260617T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "24 June", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Liz", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "9c482ab0-c644-4843-a5e4-f6def353de48", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260624T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "8 July", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Francis", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "7781debb-b253-4768-8f0b-b72a4773696c", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260708T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "15 July", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Poul", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "b4b66241-7172-4f00-b0f8-297d2d93e054", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260715T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "22 July", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Francis", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "eb17c8a3-618f-470c-9bc1-eb6b0c45c869", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260722T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "29 July", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Pablo", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "367813be-f9b6-4209-85f7-0ea63a9777fb", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260729T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "5 August", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Lil", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "0ffb6207-8b33-4853-8008-a5d801a48353", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260805T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "12 August", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Yanelly", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "77984a4e-abb8-4b8a-ba67-04d2abbdf4e6", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260812T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "19 August", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Jose Leopoldo", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "19724904-e9b1-4a14-a39d-86bfded42326", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260819T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "26 August", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Jorge Mendieta", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "625a4465-19d6-4381-a648-b3de25d6132b", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260826T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "2 September", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Maximo", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "7ce860c1-aa2d-4649-a2fc-65de64027d6e", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260902T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "9 September", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Gerardo", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "247fbd24-c17f-4ac7-b6fb-541990abd6ad", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260909T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "16 September", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Lil", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "0788a80e-cfa1-4774-9a42-555e10b148b6", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260916T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "23 September", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Poul", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "22aa6454-4dc0-405d-88b2-99993a779a72", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260923T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "28 January", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "f2047f89-a15c-4351-bb13-9611c4f0c3a8", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260128T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "30 September", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Liz", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "137d23c1-b266-41af-9e41-18771b23a651", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20260930T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "7 October", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Gabriel", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "225df60f-113a-4cef-99f4-a33ce48d62a9", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20261007T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "14 October", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Cher", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "34e91064-98ab-49f9-a1eb-abbe26c334e8", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20261014T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "21 October", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Lucy", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "29376839-a81c-4618-83cd-3d973e68d09c", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20261021T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "28 October", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Jose Leopoldo", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "0b80e04d-869d-485f-8d32-28628b7c976c", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20261028T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "4 November", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Christian Coreas", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "d67863de-75c2-42a3-8624-ab909a50ad10", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20261104T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "11 November", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Francis", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "00eb9ba5-d439-4f7e-8ea2-683094b9be18", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20261111T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "18 November", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Luis Matos", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "d98a1bf9-72de-4f98-89a4-e25f0498e46e", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20261118T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "25 November", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Maximo", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "3889b22e-ba3e-42eb-8dfe-44caafa3d50f", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20261125T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "2 December", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "José Fernando", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "53c7c467-3f48-4746-a56e-4584a0b70368", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20261202T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "9 December", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Lil", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "17aa07b3-3461-4aa9-8e5a-4439ca5b1fd2", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20261209T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "16 December", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Nathalia Suárez", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "5e08b1ae-c52f-4a10-8d03-7a97762cfc1f", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20261216T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "#TheGLMWay Training", + "descripcion": null, + "fecha_sesion": "23 December", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Jose Leopoldo", + "enlace_reunion": "https://meet.google.com/mmc-iupp-sao", + "idioma": "EN", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "fae9a197-561b-4589-a9bf-f73cfb96719b", + "correo_instructor": "null", + "meet_id": "c82i08rqs6mt3gg9j4it0mulmc_20261223T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "30 December", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Gabriel", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "9a6a2ec8-3e7f-448f-9595-4247687ae4a3", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20261230T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "1 July", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "Nathalia Suárez", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "55f071e9-95ab-45d5-ad30-cb70d55ec7ac", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260701T230000Z", + "participantes": { + "Colombia": [ + { + "correo": "pnossa@gomezlee.marketing", + "nombre": "Pedro Alejandro Nossa Mateus", + "division": "Whirlpool", + "departamento": "Field Force" + }, + { + "correo": "eortiz02@gomezlee.marketing", + "nombre": "Evelyn Ortiz Montoya", + "division": "Whirlpool", + "departamento": "Field Force" + } + ] + } + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "14 January", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "46eb7333-e063-4aac-9d52-024b26759667", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260114T230000Z", + "participantes": null + } + }, + { + "json": { + "titulo": "Entrenamiento #TheGLMWay", + "descripcion": null, + "fecha_sesion": "11 February", + "hora_inicio": "20:00", + "hora_fin": "20:00", + "instructor": "null", + "enlace_reunion": "https://meet.google.com/aao-ixkr-uwu", + "idioma": "ES", + "created_at": "2026-06-25T21:44:29.483246+00:00", + "id": "470b29ca-b362-4c45-a02d-c56a879b7535", + "correo_instructor": "null", + "meet_id": "3ul4moq4isoavr9jhqpcbs7juu_20260211T230000Z", + "participantes": null + } + } ] }, - "versionId": "3ec500c0-d2a7-47a2-a3b8-e2b6ead3acf4", - "activeVersionId": "ee6ea14b-3e4e-4e19-90d4-c1b6a96c4dc7", - "versionCounter": 2950, + "versionId": "1d1a07dd-faf7-4c39-87b5-5a43ed24e5e6", + "activeVersionId": "1d1a07dd-faf7-4c39-87b5-5a43ed24e5e6", + "versionCounter": 3157, "triggerCount": 13, "shared": [ { @@ -5786,9 +7044,9 @@ ], "tags": [], "activeVersion": { - "updatedAt": "2026-06-25T22:03:18.000Z", - "createdAt": "2026-06-25T21:57:43.560Z", - "versionId": "ee6ea14b-3e4e-4e19-90d4-c1b6a96c4dc7", + "updatedAt": "2026-06-26T18:50:14.000Z", + "createdAt": "2026-06-26T18:50:10.559Z", + "versionId": "1d1a07dd-faf7-4c39-87b5-5a43ed24e5e6", "workflowId": "F1iPg8hktNAebZua", "nodes": [ { @@ -6614,19 +7872,6 @@ "id": "deb40073-dc0e-41e4-ad7c-6df18de25b4f", "name": "Empleado le falta info?" }, - { - "parameters": { - "jsCode": "const today = new Date();\n\n// Formato YYYY-MM-DD\nconst formattedDate = today.toISOString().split('T')[0];\n\nreturn [\n {\n json: {\n date: formattedDate\n }\n }\n];" - }, - "type": "n8n-nodes-base.code", - "typeVersion": 2, - "position": [ - 2240, - 1312 - ], - "id": "0db9e6a4-2e5e-4513-97fd-71d22aa90822", - "name": "Fecha hoy" - }, { "parameters": { "content": "## Formato fecha\nyyyy-mm-dd\n", @@ -6916,7 +8161,7 @@ "type": "n8n-nodes-base.gmail", "typeVersion": 2.2, "position": [ - 2096, + 2272, -224 ], "id": "e6c3acf5-d54b-4e00-b7a9-74038d27e387", @@ -6943,7 +8188,7 @@ "type": "n8n-nodes-base.gmail", "typeVersion": 2.2, "position": [ - 2096, + 2272, -400 ], "id": "f173c8d1-9311-405c-a7ee-164726df32f1", @@ -6977,7 +8222,7 @@ "parameters": { "content": "## Recordatorio a coordinador RRHH 48 y 24 horas antes de la sesion\n", "height": 496, - "width": 1728, + "width": 2640, "color": 6 }, "type": "n8n-nodes-base.stickyNote", @@ -7009,7 +8254,7 @@ "parameters": { "content": "## Notificacion inicial\n\nEnvia notificacion de sesion en el primer dia de trabajo del empleado", "height": 608, - "width": 2672, + "width": 2784, "color": 6 }, "type": "n8n-nodes-base.stickyNote", @@ -7088,7 +8333,7 @@ "parameters": { "content": "## Completar datos y enviar invitacion", "height": 544, - "width": 3328, + "width": 3472, "color": 6 }, "type": "n8n-nodes-base.stickyNote", @@ -7268,7 +8513,7 @@ "type": "n8n-nodes-base.if", "typeVersion": 2.3, "position": [ - 2432, + 2592, 352 ], "id": "30b3a4dd-6d50-405d-9c77-27febcc50aa4", @@ -7313,7 +8558,7 @@ "type": "n8n-nodes-base.httpRequest", "typeVersion": 4.2, "position": [ - 2608, + 2768, 432 ], "id": "67928478-7604-45a4-9ab0-851079e1470c", @@ -7333,7 +8578,7 @@ "type": "n8n-nodes-base.gmail", "typeVersion": 2.2, "position": [ - 2080, + 2240, 272 ], "id": "32302b24-aa4c-4f9a-afc8-ef7e86cad56b", @@ -7360,7 +8605,7 @@ "type": "n8n-nodes-base.gmail", "typeVersion": 2.2, "position": [ - 2080, + 2240, 448 ], "id": "db2cb6a3-1da8-472a-95eb-1a02de2a5fa4", @@ -7526,7 +8771,7 @@ "type": "n8n-nodes-base.wait", "typeVersion": 1.1, "position": [ - 2784, + 2944, 352 ], "id": "98185de1-e81a-440f-8951-f98bd78c707b", @@ -7725,7 +8970,7 @@ "type": "n8n-nodes-base.googleSheets", "typeVersion": 4.7, "position": [ - 2272, + 2432, 352 ], "id": "3a6f198b-e136-49fb-a171-78164e10b600", @@ -7817,8 +9062,8 @@ "type": "n8n-nodes-base.googleCalendar", "typeVersion": 1.3, "position": [ - 1632, - 1568 + 1520, + 2080 ], "id": "7dd9a706-4d80-45c6-942a-c703eb074a20", "name": "Entrenamiento español2", @@ -7847,8 +9092,8 @@ "type": "n8n-nodes-base.googleCalendar", "typeVersion": 1.3, "position": [ - 1632, - 1392 + 1520, + 1904 ], "id": "d8253a7a-4e37-4c14-b4da-e0029571cd21", "name": "Entrenamiento ingles5", @@ -7993,7 +9238,7 @@ }, { "parameters": { - "jsCode": "const hireDate = new Date(\n $('Entra hoy?').first().json.hireDate\n);\n\nconst sessions = $input.all();\n\nconst validSessions = sessions.filter(item => {\n const sessionDate = new Date(item.json.fecha_sesion);\n return sessionDate >= hireDate;\n});\n\nvalidSessions.sort((a, b) =>\n new Date(a.json.fecha_sesion) - new Date(b.json.fecha_sesion)\n);\n\nconst nearestSession = validSessions[0];\n\nreturn [\n {\n json: {\n hireDate: hireDate.toISOString().split('T')[0],\n foundSession: !!nearestSession,\n session: nearestSession?.json ?? null\n }\n }\n];" + "jsCode": "const hireDate = new Date(\n $('Entra hoy?1').first().json.hireDate\n);\nconst sessions = $input.all();\n\n// Helper para parsear \"14 January\" → Date\nfunction parseSessionDate(dateStr) {\n if (!dateStr) return null;\n const [day, month] = dateStr.split(' ');\n const currentYear = new Date().getFullYear();\n return new Date(`${month} ${day}, ${currentYear}`);\n}\n\nconst validSessions = sessions.filter(item => {\n const sessionDate = parseSessionDate(item.json.fecha_sesion);\n return sessionDate && sessionDate >= hireDate;\n});\n\nvalidSessions.sort((a, b) =>\n parseSessionDate(a.json.fecha_sesion) - parseSessionDate(b.json.fecha_sesion)\n);\n\nconst nearestSession = validSessions[0];\nreturn [\n {\n json: {\n hireDate: hireDate.toISOString().split('T')[0],\n foundSession: !!nearestSession,\n session: nearestSession?.json ?? null\n }\n }\n];" }, "type": "n8n-nodes-base.code", "typeVersion": 2, @@ -8006,7 +9251,7 @@ }, { "parameters": { - "jsCode": "const hireDate = new Date(\n $('Entra hoy?').first().json.hireDate\n);\n\nconst sessions = $input.all();\n\nconst validSessions = sessions.filter(item => {\n const sessionDate = new Date(item.json.fecha_sesion);\n return sessionDate >= hireDate;\n});\n\nvalidSessions.sort((a, b) =>\n new Date(a.json.fecha_sesion) - new Date(b.json.fecha_sesion)\n);\n\nconst nearestSession = validSessions[0];\n\nreturn [\n {\n json: {\n hireDate: hireDate.toISOString().split('T')[0],\n foundSession: !!nearestSession,\n session: nearestSession?.json ?? null\n }\n }\n];" + "jsCode": "const hireDate = new Date(\n $('Entra hoy?1').first().json.hireDate\n);\nconst sessions = $input.all();\n\n// Helper para parsear \"14 January\" → Date\nfunction parseSessionDate(dateStr) {\n if (!dateStr) return null;\n const [day, month] = dateStr.split(' ');\n const currentYear = new Date().getFullYear();\n return new Date(`${month} ${day}, ${currentYear}`);\n}\n\nconst validSessions = sessions.filter(item => {\n const sessionDate = parseSessionDate(item.json.fecha_sesion);\n return sessionDate && sessionDate >= hireDate;\n});\n\nvalidSessions.sort((a, b) =>\n parseSessionDate(a.json.fecha_sesion) - parseSessionDate(b.json.fecha_sesion)\n);\n\nconst nearestSession = validSessions[0];\nreturn [\n {\n json: {\n hireDate: hireDate.toISOString().split('T')[0],\n foundSession: !!nearestSession,\n session: nearestSession?.json ?? null\n }\n }\n];" }, "type": "n8n-nodes-base.code", "typeVersion": 2, @@ -8065,7 +9310,7 @@ }, { "parameters": { - "jsCode": "const hireDate = new Date(\n $('Entra hoy?1').first().json.hireDate\n);\n\nconst sessions = $input.all();\n\nconst validSessions = sessions.filter(item => {\n const sessionDate = new Date(item.json.fecha_sesion);\n return sessionDate >= hireDate;\n});\n\nvalidSessions.sort((a, b) =>\n new Date(a.json.fecha_sesion) - new Date(b.json.fecha_sesion)\n);\n\nconst nearestSession = validSessions[0];\n\nreturn [\n {\n json: {\n hireDate: hireDate.toISOString().split('T')[0],\n foundSession: !!nearestSession,\n session: nearestSession?.json ?? null\n }\n }\n];" + "jsCode": "const hireDate = new Date(\n $('Entra hoy?1').first().json.hireDate\n);\nconst sessions = $input.all();\n\n// Helper para parsear \"14 January\" → Date\nfunction parseSessionDate(dateStr) {\n if (!dateStr) return null;\n const [day, month] = dateStr.split(' ');\n const currentYear = new Date().getFullYear();\n return new Date(`${month} ${day}, ${currentYear}`);\n}\n\nconst validSessions = sessions.filter(item => {\n const sessionDate = parseSessionDate(item.json.fecha_sesion);\n return sessionDate && sessionDate >= hireDate;\n});\n\nvalidSessions.sort((a, b) =>\n parseSessionDate(a.json.fecha_sesion) - parseSessionDate(b.json.fecha_sesion)\n);\n\nconst nearestSession = validSessions[0];\nreturn [\n {\n json: {\n hireDate: hireDate.toISOString().split('T')[0],\n foundSession: !!nearestSession,\n session: nearestSession?.json ?? null\n }\n }\n];" }, "type": "n8n-nodes-base.code", "typeVersion": 2, @@ -8078,7 +9323,7 @@ }, { "parameters": { - "jsCode": "const hireDate = new Date(\n $('Entra hoy?1').first().json.hireDate\n);\n\nconst sessions = $input.all();\n\nconst validSessions = sessions.filter(item => {\n const sessionDate = new Date(item.json.fecha_sesion);\n return sessionDate >= hireDate;\n});\n\nvalidSessions.sort((a, b) =>\n new Date(a.json.fecha_sesion) - new Date(b.json.fecha_sesion)\n);\n\nconst nearestSession = validSessions[0];\n\nreturn [\n {\n json: {\n hireDate: hireDate.toISOString().split('T')[0],\n foundSession: !!nearestSession,\n session: nearestSession?.json ?? null\n }\n }\n];" + "jsCode": "const hireDate = new Date(\n $('Entra hoy?1').first().json.hireDate\n);\nconst sessions = $input.all();\n\n// Helper para parsear \"14 January\" → Date\nfunction parseSessionDate(dateStr) {\n if (!dateStr) return null;\n const [day, month] = dateStr.split(' ');\n const currentYear = new Date().getFullYear();\n return new Date(`${month} ${day}, ${currentYear}`);\n}\n\nconst validSessions = sessions.filter(item => {\n const sessionDate = parseSessionDate(item.json.fecha_sesion);\n return sessionDate && sessionDate >= hireDate;\n});\n\nvalidSessions.sort((a, b) =>\n parseSessionDate(a.json.fecha_sesion) - parseSessionDate(b.json.fecha_sesion)\n);\n\nconst nearestSession = validSessions[0];\nreturn [\n {\n json: {\n hireDate: hireDate.toISOString().split('T')[0],\n foundSession: !!nearestSession,\n session: nearestSession?.json ?? null\n }\n }\n];" }, "type": "n8n-nodes-base.code", "typeVersion": 2, @@ -8504,8 +9749,8 @@ "type": "n8n-nodes-base.gmail", "typeVersion": 2.2, "position": [ - 816, - 1488 + 1744, + 1584 ], "id": "39331d88-6f2b-4df1-ac76-dda9ff47dfec", "name": "Send a message espanol3", @@ -8531,8 +9776,8 @@ "type": "n8n-nodes-base.gmail", "typeVersion": 2.2, "position": [ - 816, - 1312 + 1744, + 1408 ], "id": "9d4f57a4-ac2f-49bd-b5fa-50658a8d928e", "name": "Send a message ingles3", @@ -8559,7 +9804,7 @@ "typeVersion": 1.3, "position": [ -352, - 1488 + 1568 ], "id": "6951af7d-5098-4156-81bd-8f67034fcf70", "name": "Schedule Trigger3" @@ -8571,8 +9816,8 @@ "type": "n8n-nodes-base.splitInBatches", "typeVersion": 3, "position": [ - 0, - 1488 + -16, + 1568 ], "id": "7545364a-df0a-4420-a1af-5bcd4f8c9602", "name": "Loop Over Items2" @@ -8584,8 +9829,8 @@ "type": "n8n-nodes-base.wait", "typeVersion": 1.1, "position": [ - 1200, - 1616 + 1536, + 1296 ], "id": "617ab85d-23a6-4546-9331-eff343d9b1c5", "name": "Wait3", @@ -8603,7 +9848,7 @@ "conditions": [ { "id": "9674fd7e-dd62-42d4-8931-6c67e59e3dd7", - "leftValue": "={{ $('Obtener notificados1').item.json.pais }}", + "leftValue": "={{ Object.keys($json)[0] }}", "rightValue": "Jamaica", "operator": { "type": "string", @@ -8612,7 +9857,7 @@ }, { "id": "32931394-f4ea-4055-b866-906a81988173", - "leftValue": "={{ $('Obtener notificados1').item.json.pais }}", + "leftValue": "={{ Object.keys($json)[0] }}", "rightValue": "Trinidad and Tobago", "operator": { "type": "string", @@ -8621,7 +9866,7 @@ }, { "id": "ea2a8466-96c6-460f-b08f-d23c06b2d18c", - "leftValue": "={{ $('Obtener notificados1').item.json.pais }}", + "leftValue": "={{ Object.keys($json)[0] }}", "rightValue": "Barbados", "operator": { "type": "string", @@ -8630,7 +9875,7 @@ }, { "id": "28e49217-0c1a-4462-9642-676e54926d3e", - "leftValue": "={{ $('Obtener notificados1').item.json.pais }}", + "leftValue": "={{ Object.keys($json)[0] }}", "rightValue": "Saint Thomas", "operator": { "type": "string", @@ -8639,7 +9884,7 @@ }, { "id": "c6a6aea5-48f4-44dc-92ca-a9f9de9cacf9", - "leftValue": "={{ $('Obtener notificados1').item.json.pais }}", + "leftValue": "={{ Object.keys($json)[0] }}", "rightValue": "St. Croix", "operator": { "type": "string", @@ -8648,7 +9893,7 @@ }, { "id": "e6f52339-ea7c-462f-bdc2-8b7353160e4c", - "leftValue": "={{ $('Obtener notificados1').item.json.pais }}", + "leftValue": "={{ Object.keys($json)[0] }}", "rightValue": "Tobago", "operator": { "type": "string", @@ -8657,7 +9902,7 @@ }, { "id": "b308c2b6-53b4-4d49-b540-cdc03e36528b", - "leftValue": "={{ $('Obtener notificados1').item.json.pais }}", + "leftValue": "={{ Object.keys($json)[0] }}", "rightValue": "Guyana", "operator": { "type": "string", @@ -8666,7 +9911,7 @@ }, { "id": "35a50a33-a2b5-4116-9336-11300357569e", - "leftValue": "={{ $('Obtener notificados1').item.json.pais }}", + "leftValue": "={{ Object.keys($json)[0] }}", "rightValue": "Aruba", "operator": { "type": "string", @@ -8681,77 +9926,12 @@ "type": "n8n-nodes-base.if", "typeVersion": 2.2, "position": [ - 624, - 1392 + 1424, + 1440 ], "id": "13ee807a-f1cd-48ef-921b-7b5c260ba116", "name": "Pais?3" }, - { - "parameters": { - "operation": "get", - "tableId": "coordinadores_rrhh_glmway", - "filters": { - "conditions": [ - { - "keyName": "estado", - "keyValue": "=no_notificado" - } - ] - } - }, - "type": "n8n-nodes-base.supabase", - "typeVersion": 1, - "position": [ - -176, - 1488 - ], - "id": "0457dbf8-9c04-4f2d-9928-4f770eb51cc0", - "name": "Obtener notificados1", - "credentials": { - "supabaseApi": { - "id": "2PlsR6rpK7rQTIEn", - "name": "Sofia test - Supabase account" - } - } - }, - { - "parameters": { - "operation": "update", - "tableId": "inscritos_glmway", - "filters": { - "conditions": [ - { - "keyName": "empleado_id", - "condition": "eq", - "keyValue": "={{ $('Loop Over Items2').item.json.empleado_id }}" - } - ] - }, - "fieldsUi": { - "fieldValues": [ - { - "fieldId": "estado", - "fieldValue": "recordado" - } - ] - } - }, - "type": "n8n-nodes-base.supabase", - "typeVersion": 1, - "position": [ - 1024, - 1408 - ], - "id": "0881ba84-bd04-4e91-9c09-0ba18e28ed28", - "name": "Actualizar estado a recordado1", - "credentials": { - "supabaseApi": { - "id": "2PlsR6rpK7rQTIEn", - "name": "Sofia test - Supabase account" - } - } - }, { "parameters": { "conditions": { @@ -8780,15 +9960,15 @@ "type": "n8n-nodes-base.if", "typeVersion": 2.2, "position": [ - 432, - 1488 + 416, + 1568 ], "id": "0fea4950-f873-4375-8964-45cfc3fead02", "name": "Falta 48h para el evento?1" }, { "parameters": { - "jsCode": "const fecha_sesion = $input.first().json.fecha_sesion_inscrito;\n\n// Fecha de hoy\nconst fecha_hoy = new Date().toISOString().split('T')[0];\n\nconst hoy = new Date(fecha_hoy);\nconst sesion = new Date(fecha_sesion);\n\n// Diferencia en días\nconst diferenciaDias = Math.floor(\n (sesion - hoy) / (1000 * 60 * 60 * 24)\n);\n\n// True si es hoy (0 días) o mañana (1 día)\nconst isValid = diferenciaDias >= 0 && diferenciaDias <= 1;\n\nreturn [\n {\n json: {\n fecha_sesion,\n fecha_hoy,\n diferenciaDias,\n isValid\n }\n }\n];" + "jsCode": "// Helper para parsear \"14 December\" → Date (año actual)\nfunction parseSessionDate(dateStr) {\n if (!dateStr) return null;\n const [day, month] = dateStr.split(' ');\n const year = new Date().getFullYear();\n return new Date(`${month} ${day}, ${year}`);\n}\n\n// Formatear fecha como \"26 June\"\nfunction formatDate(date) {\n const day = date.getDate();\n const month = date.toLocaleString('en-US', { month: 'long' });\n return `${day} ${month}`;\n}\n\nconst fecha_sesion = $input.first().json.fecha_sesion_inscrito;\n\n// Fecha de hoy normalizada a medianoche\nconst hoy = new Date();\nhoy.setHours(0, 0, 0, 0);\n\nconst sesion = parseSessionDate(fecha_sesion);\nsesion.setHours(0, 0, 0, 0);\n\n// Diferencia en días\nconst diferenciaDias = Math.floor(\n (sesion - hoy) / (1000 * 60 * 60 * 24)\n);\n\n// True si es hoy (0 días) o mañana (1 día)\nconst isValid = diferenciaDias >= 0 && diferenciaDias <= 1;\n\nreturn [\n {\n json: {\n fecha_sesion,\n fecha_hoy: formatDate(hoy),\n diferenciaDias,\n isValid\n }\n }\n];" }, "type": "n8n-nodes-base.code", "typeVersion": 2, @@ -9013,7 +10193,7 @@ "type": "n8n-nodes-base.scheduleTrigger", "typeVersion": 1.3, "position": [ - 2368, + 2496, -352 ], "id": "ca136518-b776-45ba-b1a2-ad5327dd4cca", @@ -9064,7 +10244,7 @@ "type": "n8n-nodes-base.googleSheets", "typeVersion": 4.7, "position": [ - 3264, + 3392, -352 ], "id": "7c321f7d-bce9-447c-b94c-35f6967a48e3", @@ -9082,7 +10262,7 @@ "type": "n8n-nodes-base.wait", "typeVersion": 1.1, "position": [ - 3088, + 3216, -352 ], "id": "27531838-5dc7-4169-a08a-f4da93899580", @@ -9112,7 +10292,7 @@ "type": "n8n-nodes-base.googleSheets", "typeVersion": 4.7, "position": [ - 2912, + 3040, -352 ], "id": "bd8cb535-6aa3-46df-9ca0-6efc0555f2e4", @@ -9133,7 +10313,7 @@ }, "type": "n8n-nodes-base.stickyNote", "position": [ - 2336, + 2464, -480 ], "typeVersion": 1, @@ -9425,19 +10605,6 @@ } } }, - { - "parameters": { - "jsCode": "const fecha_sesion = $input.first().json.fecha_sesion_inscrito;\n\n// Fecha de hoy\nconst fecha_hoy = new Date().toISOString().split('T')[0];\nconst hoy = new Date(fecha_hoy);\nconst sesion = new Date(fecha_sesion);\n\n// Diferencia en días\nconst diferenciaDias = Math.floor(\n (sesion - hoy) / (1000 * 60 * 60 * 24)\n);\n\n// True si es hoy (0 días), mañana (1 día) o pasado mañana (2 días)\nconst isValid = diferenciaDias >= 0 && diferenciaDias <= 2;\n\nreturn [\n {\n json: {\n fecha_sesion,\n fecha_hoy,\n diferenciaDias,\n isValid\n }\n }\n];" - }, - "type": "n8n-nodes-base.code", - "typeVersion": 2, - "position": [ - 208, - 1488 - ], - "id": "3e2b4cde-d7aa-4879-aa55-f1a169c16bd3", - "name": "Calcular falta 48h o 24h" - }, { "parameters": { "content": "## Aviso a instructor si no hay nadie inscrito a la sesion del dia\n", @@ -9474,7 +10641,7 @@ "type": "n8n-nodes-base.googleCalendar", "typeVersion": 1.3, "position": [ - 2560, + 2688, -352 ], "id": "b2b03ce6-6010-4e4f-be7a-d9040286e295", @@ -9493,7 +10660,7 @@ "type": "n8n-nodes-base.code", "typeVersion": 2, "position": [ - 2736, + 2864, -352 ], "id": "73c39af9-bc01-4d97-81ee-846aff70b3a6", @@ -9512,7 +10679,7 @@ "type": "n8n-nodes-base.scheduleTrigger", "typeVersion": 1.3, "position": [ - 2368, + 2496, -48 ], "id": "55a755d8-8b74-440f-93c6-8a1ecba4c666", @@ -9526,7 +10693,7 @@ }, "type": "n8n-nodes-base.stickyNote", "position": [ - 2336, + 2464, -160 ], "typeVersion": 1, @@ -9553,7 +10720,7 @@ "type": "n8n-nodes-base.googleCalendar", "typeVersion": 1.3, "position": [ - 3664, + 3792, -208 ], "id": "3c32f96e-cd34-4be4-8c24-b4be7a8f29d9", @@ -9586,7 +10753,7 @@ "type": "n8n-nodes-base.googleSheets", "typeVersion": 4.7, "position": [ - 2544, + 2672, -48 ], "id": "73089147-ba1f-4fb4-ac17-d5670b263fd8", @@ -9624,7 +10791,7 @@ "type": "n8n-nodes-base.httpRequest", "typeVersion": 4.4, "position": [ - 2880, + 3008, -48 ], "id": "231f396b-855a-4c50-8d6d-096018e6d2ac", @@ -9639,7 +10806,7 @@ "type": "n8n-nodes-base.aggregate", "typeVersion": 1, "position": [ - 2704, + 2832, -48 ], "id": "e51bd2d5-22b5-46cf-b346-c1ba16bb5c34", @@ -9670,7 +10837,7 @@ "type": "n8n-nodes-base.httpRequest", "typeVersion": 4.4, "position": [ - 4464, + 4592, -304 ], "id": "3f4a0807-5f29-49cb-a851-41100e04f5bf", @@ -9685,7 +10852,7 @@ "type": "n8n-nodes-base.aggregate", "typeVersion": 1, "position": [ - 4320, + 4448, -304 ], "id": "3ecbb0c7-f5f5-4644-9f42-8be9502e814d", @@ -9700,7 +10867,7 @@ "type": "n8n-nodes-base.set", "typeVersion": 3.4, "position": [ - 4176, + 4304, -304 ], "id": "a099259d-36e3-48b6-aa77-d8132f33f85e", @@ -9723,7 +10890,7 @@ "type": "n8n-nodes-base.merge", "typeVersion": 3.2, "position": [ - 4032, + 4160, -304 ], "id": "456bcbe4-cc98-48fc-bcd2-40f8961934ae", @@ -9737,7 +10904,7 @@ }, "type": "n8n-nodes-base.stickyNote", "position": [ - 3456, + 3584, -480 ], "typeVersion": 1, @@ -9761,7 +10928,7 @@ "type": "n8n-nodes-base.scheduleTrigger", "typeVersion": 1.3, "position": [ - 3504, + 3632, -288 ], "id": "6ef829bf-1d52-4093-bcc5-45d922393611", @@ -9788,7 +10955,7 @@ "type": "n8n-nodes-base.googleSheets", "typeVersion": 4.7, "position": [ - 3664, + 3792, -384 ], "id": "f1bf8c51-43cf-41d4-93c4-1a1d0a0dac7a", @@ -9803,12 +10970,17 @@ }, { "parameters": { - "operation": "getAll" + "operation": "getAll", + "tableId": "sesiones_glmway", + "returnAll": true, + "filters": { + "conditions": [] + } }, "type": "n8n-nodes-base.supabase", "typeVersion": 1, "position": [ - 1632, + 1600, 928 ], "id": "d34e225b-25bb-4a0a-845c-b9e274529000", @@ -9827,7 +10999,7 @@ "type": "n8n-nodes-base.code", "typeVersion": 2, "position": [ - 3840, + 3968, -208 ], "id": "8f80d9ca-1e4b-4753-b482-df7b0fd24f61", @@ -9858,6 +11030,509 @@ ], "id": "cded5025-8e1b-4609-b7c6-5acb81244bdf", "name": "Formatear fecha y detectar idioma1" + }, + { + "parameters": { + "jsCode": "const today = new Date();\ntoday.setHours(0, 0, 0, 0);\n\nconst sessions = $input.all();\n\n// Helper para parsear \"14 January\" → Date (año actual)\nfunction parseSessionDate(dateStr) {\n if (!dateStr) return null;\n const [day, month] = dateStr.split(' ');\n const year = new Date().getFullYear();\n return new Date(`${month} ${day}, ${year}`);\n}\n\n// Formatear fecha como \"26 June\"\nfunction formatDate(date) {\n const day = date.getDate();\n const month = date.toLocaleString('en-US', { month: 'long' });\n return `${day} ${month}`;\n}\n\n// Iterar hasta encontrar la sesión que hace match con hoy\nlet matchedSession = null;\n\nfor (const item of sessions) {\n const sessionDate = parseSessionDate(item.json.fecha_sesion);\n if (!sessionDate) continue;\n\n sessionDate.setHours(0, 0, 0, 0);\n\n if (sessionDate.getTime() === today.getTime()) {\n matchedSession = item;\n break;\n }\n}\n\nreturn [\n {\n json: {\n today: formatDate(today),\n foundSession: !!matchedSession,\n session: matchedSession?.json ?? null\n }\n }\n];" + }, + "type": "n8n-nodes-base.code", + "typeVersion": 2, + "position": [ + 1776, + 928 + ], + "id": "0db9e6a4-2e5e-4513-97fd-71d22aa90822", + "name": "Calcular sesion mas cercana4" + }, + { + "parameters": { + "sendTo": "eidan.then14@gmail.com", + "subject": "Entrenamiento #TheGLMWay", + "emailType": "text", + "message": "=¡Hola, GLMer!\n\nEste es un recordatorio de tu entrenamiento, donde te transmitiremos nuestra cultura, nuestro ADN y por qué somos diferentes al resto.\n\n¡Te esperamos puntual y con toda la energía para aprender!\n\nÚnete aquí:\n{{ $json.conferenceData.entryPoints[0].uri }}", + "options": { + "appendAttribution": false + } + }, + "type": "n8n-nodes-base.gmail", + "typeVersion": 2.2, + "position": [ + 2368, + 1008 + ], + "id": "0cf2219c-db12-4231-bac6-8e5f2816530f", + "name": "Send a message espanol5", + "webhookId": "a6043707-89d1-4c99-8de2-e60d9aaf7ed2", + "credentials": { + "gmailOAuth2": { + "id": "QWNicjw1khRm5BVI", + "name": "Eidan - Gmail account" + } + }, + "disabled": true + }, + { + "parameters": { + "sendTo": "eidan.then14@gmail.com", + "subject": "#TheGLMWay Training", + "emailType": "text", + "message": "=Hello, GLMer!\n\nThis is a reminder about your training session, where we'll share our culture, our DNA, and what makes us different from the rest.\n\nWe're looking forward to seeing you on time and ready to learn!\n\nJoin here:\n{{ $json.conferenceData.entryPoints[0].uri }}", + "options": { + "appendAttribution": false + } + }, + "type": "n8n-nodes-base.gmail", + "typeVersion": 2.2, + "position": [ + 2368, + 832 + ], + "id": "96bac1b9-d921-418d-947d-f07980bb76aa", + "name": "Send a message ingles5", + "webhookId": "a6043707-89d1-4c99-8de2-e60d9aaf7ed2", + "credentials": { + "gmailOAuth2": { + "id": "QWNicjw1khRm5BVI", + "name": "Eidan - Gmail account" + } + }, + "disabled": true + }, + { + "parameters": { + "conditions": { + "options": { + "caseSensitive": true, + "leftValue": "", + "typeValidation": "strict", + "version": 3 + }, + "conditions": [ + { + "id": "df25aa3e-d48f-4e52-ae1f-47678e954d52", + "leftValue": "={{ $json.session.idioma }}", + "rightValue": "EN", + "operator": { + "type": "string", + "operation": "equals", + "name": "filter.operator.equals" + } + } + ], + "combinator": "and" + }, + "options": {} + }, + "type": "n8n-nodes-base.if", + "typeVersion": 2.3, + "position": [ + 2144, + 928 + ], + "id": "748f3ae7-7e6d-41f5-be1d-861a9566ec00", + "name": "Es espanol o ingles" + }, + { + "parameters": { + "content": "## Falta añadir mensaje de aviso" + }, + "type": "n8n-nodes-base.stickyNote", + "position": [ + 2528, + 896 + ], + "typeVersion": 1, + "id": "2d9a27b5-9ca6-4518-bd06-3a91389c4736", + "name": "Sticky Note9" + }, + { + "parameters": { + "conditions": { + "options": { + "caseSensitive": true, + "leftValue": "", + "typeValidation": "strict", + "version": 3 + }, + "conditions": [ + { + "id": "df25aa3e-d48f-4e52-ae1f-47678e954d52", + "leftValue": "={{ $json.foundSession }}", + "rightValue": "EN", + "operator": { + "type": "boolean", + "operation": "true", + "singleValue": true + } + } + ], + "combinator": "and" + }, + "options": {} + }, + "type": "n8n-nodes-base.if", + "typeVersion": 2.3, + "position": [ + 1936, + 928 + ], + "id": "03832c44-864b-4277-a9fb-f94d56dc0f1c", + "name": "Hay sesion?" + }, + { + "parameters": { + "content": "## Al final añadir flujo para resetear los estados de los coordinadores e instructores", + "height": 272 + }, + "type": "n8n-nodes-base.stickyNote", + "position": [ + 992, + 2656 + ], + "typeVersion": 1, + "id": "a9266141-49ab-41f7-b8ab-dc45e746ed1c", + "name": "Sticky Note14" + }, + { + "parameters": { + "operation": "getAll", + "tableId": "sesiones_glmway", + "returnAll": true, + "filters": { + "conditions": [] + } + }, + "type": "n8n-nodes-base.supabase", + "typeVersion": 1, + "position": [ + -192, + 1568 + ], + "id": "a4fc1575-5326-467f-8b05-f8c9569cdca1", + "name": "Obtener sesiones", + "credentials": { + "supabaseApi": { + "id": "2PlsR6rpK7rQTIEn", + "name": "Sofia test - Supabase account" + } + } + }, + { + "parameters": { + "operation": "update", + "tableId": "sesiones_glmway", + "filters": { + "conditions": [ + { + "keyName": "fecha_sesion", + "condition": "eq", + "keyValue": "={{ $json.fecha_sesion_inscrito }}" + } + ] + }, + "fieldsUi": { + "fieldValues": [ + {} + ] + } + }, + "type": "n8n-nodes-base.supabase", + "typeVersion": 1, + "position": [ + 3200, + 176 + ], + "id": "df865311-bf25-4b35-ac8a-da71a3d93e05", + "name": "Añadir a listado de participantes1", + "credentials": { + "supabaseApi": { + "id": "2PlsR6rpK7rQTIEn", + "name": "Sofia test - Supabase account" + } + } + }, + { + "parameters": { + "method": "POST", + "url": "https://dbit.digitalcompass.agency/rest/v1/rpc/insertar_participantes_sesion_glmway", + "sendHeaders": true, + "headerParameters": { + "parameters": [ + { + "name": "apikey", + "value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q" + }, + { + "name": "Authorization", + "value": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q" + } + ] + }, + "sendBody": true, + "specifyBody": "json", + "jsonBody": "={\n \"p_sesion_id\": \"{{ $('Calcular sesion mas cercana2').item.json.session.id }}\",\n \"p_pais\": \"{{ $json.pais }}\",\n \"p_empleados\": [\n {\n \"nombre\": \"{{ $json.nombre }}\",\n \"correo\": \"{{ $json.email }}\",\n \"departamento\": \"{{ $json.departamento }}\",\n \"division\": \"{{ $json.division }}\"\n }\n ]\n}", + "options": {} + }, + "type": "n8n-nodes-base.httpRequest", + "typeVersion": 4.4, + "position": [ + 2080, + 272 + ], + "id": "f3df197d-b557-45d7-94bb-76f3c300ae61", + "name": "Insertar/actualizar coordinadores a la bd1" + }, + { + "parameters": { + "method": "POST", + "url": "https://dbit.digitalcompass.agency/rest/v1/rpc/insertar_participantes_sesion_glmway", + "sendHeaders": true, + "headerParameters": { + "parameters": [ + { + "name": "apikey", + "value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q" + }, + { + "name": "Authorization", + "value": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q" + } + ] + }, + "sendBody": true, + "specifyBody": "json", + "jsonBody": "={\n \"p_sesion_id\": \"{{ $('Calcular sesion mas cercana2').item.json.session.id }}\",\n \"p_pais\": \"{{ $json.pais }}\",\n \"p_empleados\": [\n {\n \"nombre\": \"{{ $json.nombre }}\",\n \"correo\": \"{{ $json.email }}\",\n \"departamento\": \"{{ $json.departamento }}\",\n \"division\": \"{{ $json.division }}\"\n }\n ]\n}", + "options": {} + }, + "type": "n8n-nodes-base.httpRequest", + "typeVersion": 4.4, + "position": [ + 2080, + 448 + ], + "id": "23ac8709-b0ac-4bb6-911a-1e7641be075d", + "name": "Insertar/actualizar coordinadores a la bd2" + }, + { + "parameters": { + "method": "POST", + "url": "https://dbit.digitalcompass.agency/rest/v1/rpc/insertar_participantes_sesion_glmway", + "sendHeaders": true, + "headerParameters": { + "parameters": [ + { + "name": "apikey", + "value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q" + }, + { + "name": "Authorization", + "value": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q" + } + ] + }, + "sendBody": true, + "specifyBody": "json", + "jsonBody": "={\n \"p_sesion_id\": \"{{ $('Calcular sesion mas cercana2').item.json.session.id }}\",\n \"p_pais\": \"{{ $json.pais }}\",\n \"p_empleados\": [\n {\n \"nombre\": \"{{ $json.nombre }}\",\n \"correo\": \"{{ $json.email }}\",\n \"departamento\": \"{{ $json.departamento }}\",\n \"division\": \"{{ $json.division }}\"\n }\n ]\n}", + "options": {} + }, + "type": "n8n-nodes-base.httpRequest", + "typeVersion": 4.4, + "position": [ + 2096, + -400 + ], + "id": "4ab5f973-c2e1-410e-9212-8ed3b9d372e3", + "name": "Insertar/actualizar coordinadores a la bd3" + }, + { + "parameters": { + "method": "POST", + "url": "https://dbit.digitalcompass.agency/rest/v1/rpc/insertar_participantes_sesion_glmway", + "sendHeaders": true, + "headerParameters": { + "parameters": [ + { + "name": "apikey", + "value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q" + }, + { + "name": "Authorization", + "value": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q" + } + ] + }, + "sendBody": true, + "specifyBody": "json", + "jsonBody": "={\n \"p_sesion_id\": \"{{ $('Calcular sesion mas cercana2').item.json.session.id }}\",\n \"p_pais\": \"{{ $json.pais }}\",\n \"p_empleados\": [\n {\n \"nombre\": \"{{ $json.nombre }}\",\n \"correo\": \"{{ $json.email }}\",\n \"departamento\": \"{{ $json.departamento }}\",\n \"division\": \"{{ $json.division }}\"\n }\n ]\n}", + "options": {} + }, + "type": "n8n-nodes-base.httpRequest", + "typeVersion": 4.4, + "position": [ + 2096, + -224 + ], + "id": "5e69165f-16a2-4f7a-ad48-d24c70f3c88b", + "name": "Insertar/actualizar coordinadores a la bd4" + }, + { + "parameters": { + "jsCode": "const item = $input.first().json;\nconst fecha_sesion = item.fecha_sesion;\n\n// Hoy\nconst hoy = new Date();\nhoy.setHours(0, 0, 0, 0);\n\n// Formatear hoy como \"26 June\"\nconst fecha_hoy = hoy.toLocaleDateString('en-GB', {\n day: 'numeric',\n month: 'long'\n});\n\n// Crear la fecha de la sesión usando el año actual\nlet sesion = new Date(`${fecha_sesion} ${hoy.getFullYear()}`);\nsesion.setHours(0, 0, 0, 0);\n\n// Si ya pasó este año, asumir el próximo\nif (sesion < hoy) {\n sesion = new Date(`${fecha_sesion} ${hoy.getFullYear() + 1}`);\n sesion.setHours(0, 0, 0, 0);\n}\n\n// Diferencia en días\nconst diferenciaDias = Math.floor(\n (sesion - hoy) / (1000 * 60 * 60 * 24)\n);\n\nconst isValid = diferenciaDias >= 0 && diferenciaDias <= 2;\n\n// Si no cumple la condición, no retornar nada\nif (!isValid) {\n return [];\n}\n\n// Retornar la sesión dentro de la llave \"sesion\"\nreturn [\n {\n json: {\n sesion: item,\n fecha_hoy,\n diferenciaDias,\n isValid\n }\n }\n];" + }, + "type": "n8n-nodes-base.code", + "typeVersion": 2, + "position": [ + 208, + 1568 + ], + "id": "e8d383b8-9081-4829-8516-a03f6f5a1b63", + "name": "Calcular falta 48h o 24h" + }, + { + "parameters": { + "operation": "getAll", + "tableId": "coordinadores_rrhh_glmway", + "returnAll": true, + "filters": { + "conditions": [ + { + "keyName": "estado", + "condition": "eq", + "keyValue": "=no_notificado" + }, + { + "keyName": "pais", + "condition": "eq", + "keyValue": "={{ $json.sesion.participantes }}" + } + ] + } + }, + "type": "n8n-nodes-base.supabase", + "typeVersion": 1, + "position": [ + 768, + 1440 + ], + "id": "0457dbf8-9c04-4f2d-9928-4f770eb51cc0", + "name": "Obtener coordinadores1", + "credentials": { + "supabaseApi": { + "id": "2PlsR6rpK7rQTIEn", + "name": "Sofia test - Supabase account" + } + } + }, + { + "parameters": { + "conditions": { + "options": { + "caseSensitive": true, + "leftValue": "", + "typeValidation": "strict", + "version": 3 + }, + "conditions": [ + { + "id": "19e418dd-962b-4fe6-82db-19247f0e8165", + "leftValue": "={{ $json.sesion.participantes }}", + "rightValue": "", + "operator": { + "type": "object", + "operation": "notEmpty", + "singleValue": true + } + } + ], + "combinator": "and" + }, + "options": {} + }, + "type": "n8n-nodes-base.if", + "typeVersion": 2.3, + "position": [ + 592, + 1568 + ], + "id": "334a5703-db8a-4a88-b528-8468ee61ddbc", + "name": "Hay inscritos en la sesion?" + }, + { + "parameters": { + "jsCode": "// Sesión válida (salida del nodo \"Calcular falta 48h o 24h\")\nconst sesion = $(\"Calcular falta 48h o 24h\").first().json.sesion;\n\n// Coordinadores\nconst coordinadores = $(\"Obtener coordinadores1\").all().map(i => i.json);\n\nconst resultado = [];\n\n// Participantes viene como:\n// {\n// \"Colombia\": [...],\n// \"Mexico\": [...]\n// }\nconst participantesPorPais = sesion.participantes || {};\n\nfor (const [pais, participantes] of Object.entries(participantesPorPais)) {\n\n // Buscar coordinador del país\n const coordinador = coordinadores.find(c => c.pais === pais);\n\n resultado.push({\n json: {\n [pais]: {\n coordinador: coordinador\n ? {\n nombre: coordinador.nombre,\n correo: coordinador.correo\n }\n : null,\n\n participantes\n }\n }\n });\n\n}\n\nreturn resultado;" + }, + "type": "n8n-nodes-base.code", + "typeVersion": 2, + "position": [ + 960, + 1440 + ], + "id": "3073d739-a2c7-4ba1-81bc-aeae266ad3ff", + "name": "Matchear coordinador y pais inscrito" + }, + { + "parameters": { + "options": {} + }, + "type": "n8n-nodes-base.splitInBatches", + "typeVersion": 3, + "position": [ + 1152, + 1440 + ], + "id": "15c6bc9c-047f-4f56-ac8e-9a1d40b816a7", + "name": "Loop Over Items3" + }, + { + "parameters": { + "amount": 2 + }, + "type": "n8n-nodes-base.wait", + "typeVersion": 1.1, + "position": [ + 2128, + 1504 + ], + "id": "8fef83c7-d197-484c-b40f-817a198bf5fc", + "name": "Wait6", + "webhookId": "09d53dc8-c92a-43d2-a47f-477c0d1317af" + }, + { + "parameters": { + "operation": "update", + "tableId": "coordinadores_rrhh_glmway", + "filters": { + "conditions": [ + { + "keyName": "pais", + "condition": "eq", + "keyValue": "={{ Object.keys($json)[0] }}" + } + ] + }, + "fieldsUi": { + "fieldValues": [ + { + "fieldId": "estado", + "fieldValue": "notificado" + } + ] + } + }, + "type": "n8n-nodes-base.supabase", + "typeVersion": 1, + "position": [ + 1952, + 1504 + ], + "id": "0881ba84-bd04-4e91-9c09-0ba18e28ed28", + "name": "Actualizar estado a notificado", + "credentials": { + "supabaseApi": { + "id": "2PlsR6rpK7rQTIEn", + "name": "Sofia test - Supabase account" + } + } } ], "connections": { @@ -9994,11 +11669,6 @@ ] ] }, - "Fecha hoy": { - "main": [ - [] - ] - }, "Entra hoy?": { "main": [ [ @@ -10447,7 +12117,7 @@ "main": [ [ { - "node": "Send a message ingles", + "node": "Insertar/actualizar coordinadores a la bd3", "type": "main", "index": 0 } @@ -10458,7 +12128,7 @@ "main": [ [ { - "node": "Send a message espanol", + "node": "Insertar/actualizar coordinadores a la bd4", "type": "main", "index": 0 } @@ -10531,7 +12201,7 @@ "main": [ [ { - "node": "Send a message espanol1", + "node": "Insertar/actualizar coordinadores a la bd1", "type": "main", "index": 0 } @@ -10593,7 +12263,7 @@ "main": [ [ { - "node": "Actualizar estado a recordado1", + "node": "Actualizar estado a notificado", "type": "main", "index": 0 } @@ -10604,7 +12274,7 @@ "main": [ [ { - "node": "Actualizar estado a recordado1", + "node": "Actualizar estado a notificado", "type": "main", "index": 0 } @@ -10615,7 +12285,7 @@ "main": [ [ { - "node": "Obtener notificados1", + "node": "Obtener sesiones", "type": "main", "index": 0 } @@ -10663,44 +12333,16 @@ ] ] }, - "Obtener notificados1": { - "main": [ - [ - { - "node": "Loop Over Items2", - "type": "main", - "index": 0 - } - ] - ] - }, - "Actualizar estado a recordado1": { - "main": [ - [ - { - "node": "Wait3", - "type": "main", - "index": 0 - } - ] - ] - }, "Falta 48h para el evento?1": { "main": [ [ { - "node": "Pais?3", + "node": "Hay inscritos en la sesion?", "type": "main", "index": 0 } ], - [ - { - "node": "Wait3", - "type": "main", - "index": 0 - } - ] + [] ] }, "Calcular falta 24h o es el mismo dia": { @@ -10718,7 +12360,7 @@ "main": [ [ { - "node": "Send a message ingles1", + "node": "Insertar/actualizar coordinadores a la bd2", "type": "main", "index": 0 } @@ -10825,17 +12467,6 @@ ] ] }, - "Calcular falta 48h o 24h": { - "main": [ - [ - { - "node": "Falta 48h para el evento?1", - "type": "main", - "index": 0 - } - ] - ] - }, "Obtener entrenamientos ingles y espanol": { "main": [ [ @@ -10977,18 +12608,226 @@ "main": [ [] ] + }, + "Schedule Trigger": { + "main": [ + [ + { + "node": "Get many rows", + "type": "main", + "index": 0 + } + ] + ] + }, + "Calcular sesion mas cercana4": { + "main": [ + [ + { + "node": "Hay sesion?", + "type": "main", + "index": 0 + } + ] + ] + }, + "Get many rows": { + "main": [ + [ + { + "node": "Calcular sesion mas cercana4", + "type": "main", + "index": 0 + } + ] + ] + }, + "Es espanol o ingles": { + "main": [ + [ + { + "node": "Send a message ingles5", + "type": "main", + "index": 0 + } + ], + [ + { + "node": "Send a message espanol5", + "type": "main", + "index": 0 + } + ] + ] + }, + "Hay sesion?": { + "main": [ + [ + { + "node": "Es espanol o ingles", + "type": "main", + "index": 0 + } + ] + ] + }, + "Obtener sesiones": { + "main": [ + [ + { + "node": "Loop Over Items2", + "type": "main", + "index": 0 + } + ] + ] + }, + "Insertar/actualizar coordinadores a la bd1": { + "main": [ + [ + { + "node": "Send a message espanol1", + "type": "main", + "index": 0 + } + ] + ] + }, + "Insertar/actualizar coordinadores a la bd2": { + "main": [ + [ + { + "node": "Send a message ingles1", + "type": "main", + "index": 0 + } + ] + ] + }, + "Insertar/actualizar coordinadores a la bd3": { + "main": [ + [ + { + "node": "Send a message ingles", + "type": "main", + "index": 0 + } + ] + ] + }, + "Insertar/actualizar coordinadores a la bd4": { + "main": [ + [ + { + "node": "Send a message espanol", + "type": "main", + "index": 0 + } + ] + ] + }, + "Calcular falta 48h o 24h": { + "main": [ + [ + { + "node": "Falta 48h para el evento?1", + "type": "main", + "index": 0 + } + ] + ] + }, + "Obtener coordinadores1": { + "main": [ + [ + { + "node": "Matchear coordinador y pais inscrito", + "type": "main", + "index": 0 + } + ] + ] + }, + "Hay inscritos en la sesion?": { + "main": [ + [ + { + "node": "Obtener coordinadores1", + "type": "main", + "index": 0 + } + ], + [ + { + "node": "Wait3", + "type": "main", + "index": 0 + } + ] + ] + }, + "Matchear coordinador y pais inscrito": { + "main": [ + [ + { + "node": "Loop Over Items3", + "type": "main", + "index": 0 + } + ] + ] + }, + "Loop Over Items3": { + "main": [ + [ + { + "node": "Wait3", + "type": "main", + "index": 0 + } + ], + [ + { + "node": "Pais?3", + "type": "main", + "index": 0 + } + ] + ] + }, + "Wait6": { + "main": [ + [ + { + "node": "Loop Over Items3", + "type": "main", + "index": 0 + } + ] + ] + }, + "Actualizar estado a notificado": { + "main": [ + [ + { + "node": "Wait6", + "type": "main", + "index": 0 + } + ] + ] } }, "authors": "Eidan Then", - "name": "Version ee6ea14b", + "name": "Version 1d1a07dd", "description": "", "autosaved": true, "workflowPublishHistory": [ { - "createdAt": "2026-06-25T22:03:18.449Z", - "id": 1889, + "createdAt": "2026-06-26T18:50:14.433Z", + "id": 1915, "workflowId": "F1iPg8hktNAebZua", - "versionId": "ee6ea14b-3e4e-4e19-90d4-c1b6a96c4dc7", + "versionId": "1d1a07dd-faf7-4c39-87b5-5a43ed24e5e6", "event": "activated", "userId": "de14e7e5-491b-4983-abb2-f88af42e92fd" }