Construire un centre d'alertes d'automatisation personnel avec n8n et Echobell
n8n gère bien l'automatisation des workflows, mais ses notifications intégrées sont limitées. L'associer à Echobell comble ce manque : n8n s'occupe de la logique, Echobell délivre des alertes push ou des appels téléphoniques qui vous atteignent réellement.
Configurer votre premier workflow d'alerte
Un point de départ pratique : être notifié quand l'utilisation CPU d'un serveur dépasse 80 %.
Étape 1 : Créer un canal Echobell
- Ouvrez Echobell → Nouveau canal
- Nommez-le « Server Alerts »
- Copiez votre URL Webhook depuis les paramètres du canal
Étape 2 : Construire le 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"
}
]
}
}
}
]
}Étape 3 : Configurer le modèle de notification
Dans votre canal Echobell :
Title: 🔥 Server {{server_name}} CPU Critical!
Body: CPU usage at {{cpu_usage}}%. Immediate attention needed.Réglez le type de notification sur Appel pour les alertes critiques.
Autres exemples de workflows
Alertes d'échec GitHub Actions
// n8n Webhook trigger configuration
{
"path": "github-actions",
"responseMode": "onReceived"
}Connectez votre Webhook GitHub à n8n, filtrez pour action: completed et conclusion: failure, puis envoyez un POST à votre Webhook Echobell.
Alertes de seuil de prix crypto
// 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;Événements critiques de maison connectée
Transférez les événements critiques de Home Assistant (capteurs de fuite d'eau, détecteurs de fumée, capteurs de porte/fenêtre en cas d'absence) via n8n vers Echobell. Voir le guide d'intégration Home Assistant pour les détails.
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')"
}Surveillance des tâches cron
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()
}
};
}Bonnes pratiques
Utilisez des canaux séparés par priorité
- Critique : Production hors ligne, alertes de sécurité → Appel téléphonique
- Avertissement : Espace disque, CPU élevé → Push urgent
- Info : Rapports quotidiens, résumés → Push normal
Utilisez les Conditions pour réduire le bruit
La fonctionnalité Conditions d'Echobell vous permet de filtrer au niveau de la livraison :
// Only call during off-hours
hour < 8 || hour > 18Gardez les modèles courts et exploitables
Good: 🔴 Disk Full on server-01
Bad: The disk on server number one in the production environment has become completely fullAjoutez un test hebdomadaire
// Every Friday at 5 PM
if (new Date().getDay() === 5 && new Date().getHours() === 17) {
return { json: { test: "Weekly system check" } };
}Commencez avec un workflow, puis développez à partir de là. La documentation Webhook couvre l'API Echobell complète.