Costruire un centro avvisi personale per le automazioni con n8n e Echobell

Come collegare i workflow di n8n a Echobell per trasformare qualsiasi API, webhook o attività pianificata in chiamate telefoniche o notifiche push istantanee.

Indice

n8n gestisce bene l'automazione dei workflow, ma le sue notifiche integrate sono deboli. Abbinarlo a Echobell / Google Play colma questa lacuna: n8n si occupa della logica, Echobell recapita avvisi push o chiamate telefoniche che ti raggiungono davvero.

Configurare il primo workflow di avviso

Un punto di partenza pratico: farti avvisare quando la CPU del server supera l'80%.

Passo 1: creare un canale Echobell

  1. Apri Echobell → Nuovo canale
  2. Chiamalo "Server Alerts"
  3. Copia l'URL del webhook dalle impostazioni del canale

Passo 2: costruire il workflow n8n

{
  "nodes": [
    {
      "name": "Cron",
      "type": "n8n-nodes-base.cron",
      "parameters": {
        "rule": {
          "interval": [{"field": "minutes", "minutesInterval": 5}]
        }
      }
    },
    {
      "name": "HTTP Request",
      "type": "n8n-nodes-base.httpRequest",
      "parameters": {
        "url": "https://api.your-monitoring.com/stats",
        "method": "GET"
      }
    },
    {
      "name": "IF",
      "type": "n8n-nodes-base.if",
      "parameters": {
        "conditions": {
          "number": [
            {
              "value1": "={{ $json.cpu_usage }}",
              "operation": "gt",
              "value2": 80
            }
          ]
        }
      }
    },
    {
      "name": "Echobell Alert",
      "type": "n8n-nodes-base.httpRequest",
      "parameters": {
        "url": "YOUR_ECHOBELL_WEBHOOK_URL",
        "method": "POST",
        "bodyParameters": {
          "parameters": [
            {
              "name": "server_name",
              "value": "production-01"
            },
            {
              "name": "cpu_usage",
              "value": "={{ $json.cpu_usage }}"
            },
            {
              "name": "alert_type",
              "value": "CPU Alert"
            }
          ]
        }
      }
    }
  ]
}

Passo 3: configurare il modello di notifica

Nel canale Echobell:

Title: 🔥 Server {{server_name}} CPU Critical!
Body: CPU usage at {{cpu_usage}}%. Immediate attention needed.

Per gli avvisi critici imposta il tipo di notifica su Chiamata.

Altri esempi di workflow

Avvisi di errore di GitHub Actions

// n8n Webhook trigger configuration
{
  "path": "github-actions",
  "responseMode": "onReceived"
}

Collega il webhook di GitHub a n8n, filtra su action: completed e conclusion: failure, poi invia un POST al tuo webhook Echobell.

Avvisi di soglia sul prezzo delle criptovalute

// In n8n's Function node
const price = $json.price;
const threshold = 50000;

if (price < threshold) {
  return {
    json: {
      symbol: "BTC",
      price: price,
      alert: "Price dropped below $50,000"
    }
  };
}
return null;

Eventi critici della smart home

Inoltra a Echobell tramite n8n gli eventi critici di Home Assistant (sensori di perdite d'acqua, rilevatori di fumo, sensori di porte e finestre quando sei fuori casa). Trovi i dettagli nella guida all'integrazione con Home Assistant.

Digest RSS/newsletter

// Cron trigger → RSS Read → Filter new items → Echobell
{
  "cron": "0 8 * * *",
  "rss_url": "https://your-favorite-blog.com/feed",
  "condition": "contains({{title}}, 'AI')"
}

Monitoraggio dei cron job

const lastRun = new Date($json.last_execution);
const now = new Date();
const hoursSince = (now - lastRun) / (1000 * 60 * 60);

if (hoursSince > 24) {
  return {
    json: {
      job: "daily-backup",
      status: "OVERDUE",
      last_run: lastRun.toISOString()
    }
  };
}

Buone pratiche

Usa canali separati per priorità

  • Critico: produzione fuori uso, avvisi di sicurezza → chiamata telefonica
  • Attenzione: spazio su disco, CPU alta → push urgente
  • Info: report giornalieri, digest → push normale

Usa le condizioni per ridurre il rumore

Le condizioni di Echobell ti permettono di filtrare al momento della consegna:

// Only call during off-hours
hour < 8 || hour > 18

Mantieni i modelli brevi e orientati all'azione

Good: 🔴 Disk Full on server-01
Bad:  The disk on server number one in the production environment has become completely full

Aggiungi un test settimanale

// Every Friday at 5 PM
if (new Date().getDay() === 5 && new Date().getHours() === 17) {
  return { json: { test: "Weekly system check" } };
}

Parti da un solo workflow, poi amplia da lì. La documentazione sui webhook copre l'intera API di Echobell.

Articoli correlati