Service Level Agreement (SLA)
Overview
In the Citizen Complaint Resolution System, the SLA or Service Level Agreement specifies how long a grievance can remain in a specific status before it is automatically escalated to the next level (for example, assigned to a higher authority). DIGIT offers an auto-escalation mechanism that monitors each complaint’s workflow and advances it if no action is taken within the designated time.
This configuration ensures:
Timely handling of complaints
Less manual intervention
Efficient and automated escalation
Configure SLA
Open configuration file
Navigate to: data/pg/Workflow/AutoEscalation.json
The SLA values are configured here.
Each entry in this file defines:
Which business service (like PGR)
Which workflow state (like PENDING)
What action to perform when SLA is breached
The SLA duration in days
And which Kafka topic the escalation event should be pushed to
Sample Configuration
🔹 1. Escalate from PENDINGATLME State
{
"businessService": "PGR",
"module": "pgr-services",
"state": "PENDINGATLME",
"action": "FORWARD",
"active": "true",
"stateSLA": 0.01,
"businessSLA": null,
"topic": "pgr-auto-escalation"
}
If a complaint is in the PENDINGATLME state for more than ~14 minutes (0.01 days), and no action is taken.
The system will automatically trigger the "FORWARD" action.
This moves the complaint forward in the workflow (usually to the next responsible officer).
The message is sent to Kafka topic pgr-auto-escalation for processing.
🔹 2. Escalate from PENDINGFORASSIGNMENT State
{
"businessService": "PGR",
"module": "pgr-services",
"state": "PENDINGFORASSIGNMENT",
"action": "ASSIGNEDBYAUTOESCALATION",
"active": "true",
"stateSLA": 0.01,
"businessSLA": null,
"topic": "pgr-auto-escalation"
}
If a complaint is waiting for an assignee (PENDINGFORASSIGNMENT) for more than ~14 minutes,
The system auto-assigns it using the "ASSIGNEDBYAUTOESCALATION" action.
This ensures the complaint does not remain unassigned.
🔹 3. Escalate from REJECTED State
{
"businessService": "PGR",
"module": "pgr-services",
"state": "REJECTED",
"action": "CANCEL",
"active": "true",
"stateSLA": 0.01,
"businessSLA": null,
"topic": "pgr-auto-escalation"
}
If a complaint is in REJECTED state for more than ~14 minutes,
It will be moved to a CANCELLED status automatically using the "CANCEL" action.
This helps clean up rejected complaints that are not manually closed.
Key Parameters
businessService
The module this SLA applies to (PGR in this case)
state
The complaint's current workflow state
action
The next step the system will auto-trigger
stateSLA
Time in days before auto-escalation (e.g., 0.01 = ~14 minutes)
topic
Kafka topic where the escalation event is published
active
Whether this escalation rule is currently active
Example Use Case
Imagine a citizen raises a complaint about a streetlight not working:
It lands in PENDINGATLME state.
If no one takes action in 14 minutes, the system auto-forwards it to the next level.
If it's stuck waiting for an assignment, it gets auto-assigned.
If someone rejects it and doesn’t close it manually, it gets cancelled automatically.
Last updated
Was this helpful?