mirror of
https://github.com/idrainformatica/PecFlow.git
synced 2026-06-16 12:45:42 +02:00
Fix parsing
This commit is contained in:
@@ -14,6 +14,7 @@ Il risultato della classificazione determina:
|
||||
|
||||
State machine messaggi outbound:
|
||||
sent/queued → accepted (ricevuta di accettazione o presa in carico)
|
||||
sent/queued → delivered (ricevuta di consegna arrivata prima dell'accettazione)
|
||||
accepted → delivered (ricevuta di avvenuta consegna)
|
||||
any valid → anomaly (non-accettazione, mancata consegna, errore, virus)
|
||||
"""
|
||||
@@ -146,9 +147,13 @@ _RECEIPT_TO_STATE: dict[str, str] = {
|
||||
|
||||
# Transizioni di stato valide per ciascuno stato corrente
|
||||
# Solo le transizioni in avanti sono permesse (no retrocessioni)
|
||||
# NOTA: "delivered" e' ammesso anche da "sent"/"queued" perche' i gestori PEC
|
||||
# possono inviare la ricevuta di consegna prima di quella di accettazione
|
||||
# (o in assenza della ricevuta di accettazione). Se arriva prima la consegna
|
||||
# lo stato deve diventare "delivered" indipendentemente dall'ordine di arrivo.
|
||||
VALID_OUTBOUND_TRANSITIONS: dict[str, set[str]] = {
|
||||
"queued": {"accepted", "anomaly"},
|
||||
"sent": {"accepted", "anomaly"},
|
||||
"queued": {"accepted", "delivered", "anomaly"},
|
||||
"sent": {"accepted", "delivered", "anomaly"},
|
||||
"accepted": {"delivered", "anomaly"},
|
||||
# delivered e anomaly sono terminali: nessuna transizione
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user