Sumário
- Configurando seu primeiro workflow de alerta
- Passo 1: crie um canal no Echobell
- Passo 2: monte o workflow no n8n
- Passo 3: configure o modelo de notificação
- Mais exemplos de workflow
- Alertas de falha do GitHub Actions
- Alertas de limite de preço de criptomoedas
- Eventos críticos da casa inteligente
- Resumo de RSS/newsletter
- Monitoramento de cron jobs
- Boas práticas
- Use canais separados por prioridade
- Use condições para reduzir o ruído
- Mantenha os modelos curtos e acionáveis
- Adicione um teste semanal
O n8n dá conta bem da automação de workflows, mas suas notificações integradas são fracas. Combiná-lo com o Echobell / Google Play preenche essa lacuna: o n8n cuida da lógica e o Echobell entrega alertas push ou chamadas telefônicas que realmente chegam até você.
Configurando seu primeiro workflow de alerta
Um ponto de partida prático: ser avisado quando a CPU do servidor passar de 80%.
Passo 1: crie um canal no Echobell
- Abra o Echobell → Novo canal
- Dê a ele o nome "Server Alerts"
- Copie a URL do webhook nas configurações do canal
Passo 2: monte o workflow no 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: configure o modelo de notificação
No seu canal do Echobell:
Title: 🔥 Server {{server_name}} CPU Critical!
Body: CPU usage at {{cpu_usage}}%. Immediate attention needed.
Defina o tipo de notificação como Chamada para alertas críticos.
Mais exemplos de workflow
Alertas de falha do GitHub Actions
// n8n Webhook trigger configuration
{
"path": "github-actions",
"responseMode": "onReceived"
}
Conecte o webhook do GitHub ao n8n, filtre por action: completed e conclusion: failure e então faça um POST para o seu webhook do Echobell.
Alertas de limite de preço de criptomoedas
// 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;
Eventos críticos da casa inteligente
Encaminhe eventos críticos do Home Assistant (sensores de vazamento de água, detectores de fumaça, sensores de porta/janela quando você não está em casa) via n8n para o Echobell. Veja o guia de integração com o Home Assistant para mais detalhes.
Resumo de 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')"
}
Monitoramento de cron jobs
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()
}
};
}
Boas práticas
Use canais separados por prioridade
- Crítico: produção fora do ar, alertas de segurança → chamada telefônica
- Aviso: espaço em disco, CPU alta → push urgente
- Informativo: relatórios diários, resumos → push normal
Use condições para reduzir o ruído
O recurso de Condições do Echobell permite filtrar na camada de entrega:
// Only call during off-hours
hour < 8 || hour > 18
Mantenha os modelos curtos e acionáveis
Good: 🔴 Disk Full on server-01
Bad: The disk on server number one in the production environment has become completely full
Adicione um teste semanal
// Every Friday at 5 PM
if (new Date().getDay() === 5 && new Date().getHours() === 17) {
return { json: { test: "Weekly system check" } };
}
Comece com um workflow e evolua a partir daí. A documentação de webhooks cobre a API completa do Echobell.