Source: factory.core/extend.ticket/ObjTicketSlaMixin.py
Mixin — SLA config, deadlines, and compliance
for ticket objects.
| Method | Signature | Description |
|---|---|---|
| sla_read | sla_read(package: str, priority: str) -> int |
Load SLA config for a package/priority |
| sla_create | sla_create(package: str, priority: str, response_minutes: int = 30, resolution_minutes: int = 480, escalation_minutes: int = 60, escalation_contact: str = '') -> None |
Insert a new SLA definition. |
| sla_update | sla_update() -> None |
Update the current SLA record. |
| get_response_deadline | get_response_deadline(package: str, priority: str, from_time: datetime | None = None) -> datetime | None |
Calculate response deadline from SLA config. |
| get_resolution_deadline | get_resolution_deadline(package: str, priority: str, from_time: datetime | None = None) -> datetime | None |
Calculate resolution deadline from SLA |
| get_escalation_deadline | get_escalation_deadline(package: str, priority: str, from_time: datetime | None = None) -> datetime | None |
Calculate escalation deadline from SLA |
| check_response_compliance | check_response_compliance(created_date: datetime, response_deadline: datetime, first_response_date: datetime | None = None) -> str | None |
Check if response SLA was met. |
| check_resolution_compliance | check_resolution_compliance(created_date: datetime, resolution_deadline: datetime, resolved_date: datetime | None = None) -> str | None |
Check if resolution SLA was met. |
| get_escalation_contact | get_escalation_contact(package: str, priority: str) -> str |
Get the escalation contact for a |
| get_sla_by_package | get_sla_by_package(package: str) -> list |
Get all SLA definitions for a package. |
| get_raci_contacts | get_raci_contacts(package: str, priority: str) -> dict |
Load RACI contacts for a priority level. |