Aller au contenu principal

Alertes SLA et Digest Email

Les plaintes ont un délai de traitement par phase et un délai global (SLA). Le SIG signale les retards par des endpoints d'alerte, un digest e-mail quotidien et une escalade automatique.

Endpoints​

MéthodeEndpointAccèsDescription
GET/api/plaintes/alertesutilisateur connectéPlaintes en retard et compteurs
GET/api/plaintes/alertes/statsutilisateur connectéCompteurs seuls
GET/api/plaintes/alertes/resumeutilisateur connectéRésumé pour le tableau de bord de l'utilisateur
POST/api/plaintes/alertes/checkROLE_ADMINLance la vérification et l'envoi des alertes

GET /api/plaintes/alertes/stats​

{
"success": true,
"data": {
"total_ouvertes": 60,
"en_retard_phase": 8,
"en_retard_sla": 5,
"echeance_proche": 12,
"critiques": 2
}
}

critiques compte les plaintes en retard de plus de 3 jours.

GET /api/plaintes/alertes/resume​

{
"success": true,
"data": {
"totalOuvertes": 60,
"enRetardPhase": 8,
"enRetardSla": 5,
"echeanceProche": 12,
"critiques": 2,
"plaintesUrgentes": [
{
"id": "…",
"reference": "PLT-2026-000123",
"plaignant": "…",
"priorite": "haute",
"joursRestantsPhase": -2,
"joursRestantsSla": 1,
"isPhaseEnRetard": true,
"isSlaEnRetard": false
}
],
"hasAlertes": true
}
}

POST /api/plaintes/alertes/check​

Réponse : { "success": true, "message": "Vérification des alertes effectuée", "data": { … } }.


Digest quotidien​

Le digest n'a pas d'endpoint : il part d'une commande planifiée.

php bin/console app:plaintes:send-digest # envoi
php bin/console app:plaintes:send-digest --dry-run # simulation
  • Chaque utilisateur reçoit un seul e-mail listant toutes les plaintes en retard SLA qui le concernent, avec le projet de chaque plainte.
  • Une plainte déjà signalée dans les 24 dernières heures n'est pas reprise.
  • Les e-mails passent par la file asynchrone (Messenger), jamais par un envoi SMTP dans la requête.
  • ENABLE_PLAINTE_ALERTS=false désactive les alertes.

Planification recommandée : une fois par jour à 8 h.

0 8 * * * php bin/console app:plaintes:send-digest

Vérification des retards​

php bin/console app:plaintes:check-overdue [--dry-run] [--stats-only]

Escalade automatique​

php bin/console app:plaintes:escalade [--dry-run]

Quand la phase du workflow ne configure pas ses propres niveaux, l'escalade suit deux paliers :

NiveauDestinataireDéclenchement
0AgentPas d'escalade
1Coordinateur de composante, selon le module de la plainteDélai d'escalade dépassé une fois
2Coordinateur nationalDélai dépassé deux fois

Pour les cas sensibles, le délai est divisé par deux. Planification recommandée : toutes les deux heures.

0 */2 * * * php bin/console app:plaintes:escalade

L'escalade manuelle est décrite dans Escalade.