Regole di Escalation
Configurazione delle regole di escalation automatica per allarmi, manutenzioni e attività scadute.
Panoramica
Le regole di escalation consentono di definire azioni automatiche quando determinati eventi non vengono gestiti entro il tempo previsto. Il sistema valuta periodicamente le condizioni ed esegue i passaggi di notifica configurati.
Tipi di trigger
| Tipo | Descrizione |
|---|---|
alarm_unack | Allarme non riconosciuto entro il tempo limite |
maintenance_overdue | Manutenzione preventiva scaduta |
task_overdue | Attività non completata entro la scadenza |
Creare una regola di escalation
{
"name": "Allarme critico non riconosciuto",
"trigger_type": "alarm_unack",
"conditions": {
"min_severity": "high",
"source_id": "src_compressor_01",
"asset_id": "ast_001"
},
"steps": [
{
"delay_minutes": 5,
"label": "Notificare il tecnico di turno",
"channels": ["in_app", "whatsapp"]
},
{
"delay_minutes": 15,
"label": "Escalare al supervisore",
"channels": ["email", "whatsapp", "in_app"]
},
{
"delay_minutes": 30,
"label": "Escalare al responsabile di impianto",
"channels": ["email", "whatsapp"]
}
],
"enabled": true
}Il campo delay_minutes in ogni passaggio è cumulativo dal momento dell'evento originale.
Un passaggio con delay di 15 minuti viene eseguito 15 minuti dopo l'evento, non 15 minuti
dopo il passaggio precedente.
Condizioni
Le condizioni filtrano quando una regola deve attivarsi:
| Condizione | Descrizione | Applicabile a |
|---|---|---|
min_severity | Gravità minima dell'evento | alarm_unack |
source_id | Fonte dati specifica | alarm_unack |
asset_id | Asset specifico | Tutti |
overdue_minutes | Minuti di ritardo minimi | maintenance_overdue, task_overdue |
Se non vengono specificate condizioni, la regola si applicherà a tutti gli eventi del tipo di trigger configurato. Utilizzare le condizioni per evitare un eccesso di notifiche.
Passaggi di escalation
Ogni passaggio definisce:
- delay_minutes — Tempo di attesa dall'evento originale
- label — Descrizione del passaggio per l'audit
- channels — Lista dei canali di notifica da utilizzare
Canali disponibili per passaggio
email— Invio tramite Postmarkwhatsapp— Invio tramite Evolution APIin_app— Notifica nella dashboard
Integrazione con Cloud Scheduler
Le regole di escalation vengono valutate da un job di Cloud Scheduler che viene eseguito ogni minuto. Il job invoca l'endpoint di valutazione:
POST /api/v1/notifications/escalation/evaluateQuesto endpoint:
- Recupera tutti gli eventi in attesa di escalation
- Valuta le condizioni per ogni regola attiva
- Esegue i passaggi il cui delay è stato raggiunto
- Segna i passaggi eseguiti per evitare duplicazioni
Escalation allarmi esistenti
Oltre alle regole configurabili, il sistema supporta l'escalation degli allarmi dalle impostazioni del machine agent:
{
"alarm_escalation": {
"enabled": true,
"unack_timeout_minutes": 10,
"notify_roles": ["supervisor", "plant_manager"],
"channels": ["email", "whatsapp"]
}
}Questa configurazione viene definita nelle impostazioni del machine agent e si applica a tutti gli allarmi generati da quell'agente specifico.
Traccia di audit
Ogni esecuzione di escalation viene registrata con:
- Regola eseguita
- Passaggio eseguito
- Destinatari notificati
- Risultato per canale (sent/failed)
- Timestamp di esecuzione