{
  "name": "Reporte Semanal JeanCRG",
  "nodes": [
    {
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "cronExpression",
              "expression": "0 8 * * 1"
            }
          ]
        }
      },
      "id": "f511775b-144e-43ec-9cb5-1e24b27d67a6",
      "name": "Lunes 8AM",
      "type": "n8n-nodes-base.scheduleTrigger",
      "typeVersion": 1.2,
      "position": [
        0,
        0
      ]
    },
    {
      "parameters": {
        "url": "={{ $env.SUPABASE_URL + '/rest/v1/conversaciones?select=id,role,contacto_id,created_at&created_at=gt.' + encodeURIComponent($now.minus(7, 'days').toISO()) + '&limit=1000' }}",
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "apikey",
              "value": "={{ $env.SUPABASE_SERVICE_KEY }}"
            },
            {
              "name": "Authorization",
              "value": "={{ 'Bearer ' + $env.SUPABASE_SERVICE_KEY }}"
            }
          ]
        },
        "options": {}
      },
      "id": "22c98de9-8adc-4095-9af3-a14281abd0ae",
      "name": "Obtener Conversaciones",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        224,
        0
      ]
    },
    {
      "parameters": {
        "url": "={{ $env.SUPABASE_URL + '/rest/v1/leads?select=id,created_at&created_at=gt.' + encodeURIComponent($now.minus(7, 'days').toISO()) + '&limit=500' }}",
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "apikey",
              "value": "={{ $env.SUPABASE_SERVICE_KEY }}"
            },
            {
              "name": "Authorization",
              "value": "={{ 'Bearer ' + $env.SUPABASE_SERVICE_KEY }}"
            }
          ]
        },
        "options": {}
      },
      "id": "4fca9ab6-15f6-4860-81d8-c271236a4e8b",
      "name": "Obtener Leads",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        464,
        0
      ]
    },
    {
      "parameters": {
        "jsCode": "const conv = $('Obtener Conversaciones').all().flatMap(i => i.json).flat(1).filter(r => r && typeof r === 'object' && !Array.isArray(r));\nconst leads = $('Obtener Leads').all().flatMap(i => i.json).flat(1).filter(r => r && typeof r === 'object' && !Array.isArray(r));\nconst usuarios = conv.filter(c => c.role === 'user').length;\nconst asistentes = conv.filter(c => c.role === 'assistant').length;\nconst contactosUnicos = new Set(conv.map(c => c.contacto_id)).size;\nconst texto = '\ud83d\udcca *Reporte Semanal \u2014 JeanCRG*\\n\\n\ud83d\udcac Conversaciones (7 dias): ' + conv.length + '\\n\ud83d\udc64 Contactos activos: ' + contactosUnicos + '\\n\ud83d\udce5 Mensajes de clientes: ' + usuarios + '\\n\ud83e\udd16 Respuestas del bot: ' + asistentes + '\\n\ud83c\udfaf Leads capturados: ' + leads.length + '\\n\\nSemana del ' + $now.minus(7, 'days').toFormat('dd/MM') + ' al ' + $now.toFormat('dd/MM/yyyy');\nreturn [{ json: { texto } }];"
      },
      "id": "abbf3766-cebb-4570-b745-b78136dede6c",
      "name": "Armar Reporte",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        704,
        0
      ]
    },
    {
      "parameters": {
        "method": "POST",
        "url": "={{ 'https://api.telegram.org/bot8807842110:AAGgU6QDADaN-Lvt_hqZV_orFIhG0dwrT1E/sendMessage' }}",
        "sendBody": true,
        "specifyBody": "json",
        "jsonBody": "={{ { chat_id: 7309831214, text: $json.texto, parse_mode: 'Markdown' } }}",
        "options": {}
      },
      "id": "78dae439-1564-4a10-b8c1-399ae9389d46",
      "name": "Enviar Reporte Telegram",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        944,
        0
      ]
    }
  ],
  "connections": {
    "Lunes 8AM": {
      "main": [
        [
          {
            "node": "Obtener Conversaciones",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Obtener Conversaciones": {
      "main": [
        [
          {
            "node": "Obtener Leads",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Obtener Leads": {
      "main": [
        [
          {
            "node": "Armar Reporte",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Armar Reporte": {
      "main": [
        [
          {
            "node": "Enviar Reporte Telegram",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {
    "executionOrder": "v1",
    "binaryMode": "separate",
    "availableInMCP": false
  }
}