Guida / Workflow

Workflow e automazioni

Automatizza il lavoro ripetitivo disegnando il flusso sul canvas dello Studio workflow: trigger, condizioni, azioni, attese e diramazioni. Con prova a vuoto (dry-run), ciclo bozza/pubblicato e gestione dei job falliti.

Chi può farlo

La configurazione dei workflow richiede il permesso di gestione workflow, assegnabile a un ruolo dal dialog dei permessi (gli amministratori lo hanno sempre: vedi Utenti e permessi). L'esecuzione avviene in background nel worker: assicurati che il servizio crm-go-worker sia attivo (vedi Installazione).

01Anatomia di un workflow

Lo schema resta semplice: Trigger (quando) → Condizioni (se) → Azioni (allora); ma sul canvas può diventare un vero percorso: diramazioni con più rami, attese che sospendono il flusso per giorni, punti di ricongiunzione.

Un workflow è legato a un modulo (core o custom) e opera sui suoi record.

02Lo Studio workflow (editor visuale)

L'editor di riferimento è un canvas a tutto schermo: trascini i blocchi dalla palette, li colleghi tirando un filo da una porta di uscita a un ingresso, e configuri il blocco selezionato nel pannello a destra.

BloccoCosa fa
TriggerIl punto d'ingresso: evento e pianificazione.
AzioneEsegue una delle azioni disponibili (vedi sotto).
AttesaSospende il percorso per un intervallo o fino a un campo data (± offset).
DiramazioneSe/altrimenti: più rotte provate dall'alto, con fallback «Altrimenti».
UnisciFa confluire più rami: i passi successivi si definiscono una volta sola.
FineChiude esplicitamente un percorso.
Condizione / AND / ORBlocchi logici (fili viola): compongono condizioni annidate e si collegano alle rotte della Diramazione.

Il canvas è un editor completo: selezione multipla trascinando sul vuoto, menu contestuale col tasto destro (copia, taglia, duplica, scollega, elimina; «incolla qui» e riordino automatico sull'area vuota), scorciatoie Ctrl+C/X/V, Canc e Ctrl+Z per annullare.

Esiste anche un builder guidato a 3 passi (trigger → condizioni → azioni), adatto ai workflow lineari; lo Studio visuale copre tutto ciò che fa il guidato, in più attese e diramazioni.

03Trigger e pianificazione

TriggerQuando scatta
on_createAlla creazione di un nuovo record nel modulo.
on_updateAlla modifica di un record, opzionalmente solo se cambiano certi campi.
time_basedSu pianificazione, in tre modalità: ogni N minuti, cron giornaliero (a un'ora precisa, nei giorni della settimana scelti) oppure relativa a un campo data del record (± N giorni: es. «3 giorni prima della scadenza»).

04Condizioni

Le condizioni confrontano i campi del record con oltre venti operatori: uguaglianza e confronto, testo (contiene, inizia con, regex), liste, campo vuoto/non vuoto, operatori di data relativa («è oggi», «meno di N giorni fa», «entro i prossimi N giorni») e, sugli aggiornamenti, gli operatori «è cambiato» / «è diventato» / «era», che guardano il valore prima e dopo la modifica.

Più condizioni si combinano con AND/OR, anche in gruppi annidati (es. A AND (B OR C)). Nello Studio visuale puoi anche costruire la logica coi blocchi Condizione/AND/OR collegati alle rotte della Diramazione: utile quando l'annidamento cresce.

Esempio: modulo Trattative, trigger on_update, condizione stato è diventato "vinta".

05Le azioni disponibili

Le azioni vengono eseguite nell'ordine in cui le disponi lungo il percorso.

06Attese e sequenze

Il blocco Attesa sospende il percorso e lo riprende da solo: dopo un intervallo (minuti/ore/giorni) oppure a ridosso di un campo data del record (con scostamento anche negativo: «3 giorni prima del rinnovo»). Alla ripresa le condizioni si rivalutano sul record aggiornato.

Con un'Attesa nel flusso, il workflow diventa una sequenza e sul Trigger compaiono due controlli:

07Provalo senza rischi (dry-run)

Un workflow nuovo nasce in bozza e disattivato: puoi costruirlo e provarlo con calma. Il dry-run simula l'esecuzione su un record reale senza produrre alcun effetto (niente email, niente webhook, niente modifiche):

Ogni blocco del canvas mostra inoltre i contatori delle esecuzioni reali.

08Pubblicazione e protezioni

09Monitoraggio delle esecuzioni

Ogni esecuzione viene registrata con esito, durata ed eventuale errore: lo storico esecuzioni (con filtri e totali reali) è la prima cosa da guardare quando un'automazione non fa quello che ti aspetti. Oltre a ok e fallita esiste l'esito saltata (skipped): un salto dichiarato e spiegato (ad esempio un'attesa su un campo data vuoto, o un evento fermato dalla protezione anti-loop), mai un silenzio.

I workflow girano in una coda job gestita dal worker, con tentativi ripetuti e backoff; nella tab Operatività vedi lo stato della coda e le prossime esecuzioni pianificate. La salute della coda è esposta anche via GET /api/ops/health (vedi Ops e health).

10Job falliti e dead-letter

Un job che continua a fallire dopo tutti i tentativi finisce nella dead-letter queue: non viene perso, ma messo da parte e reso visibile. Da lì puoi ispezionare l'errore e decidere:

Attenzione

Scegli Riprendi quando le azioni non sono idempotenti (es. un'email già inviata o un record già creato): Da capo le rieseguirebbe tutte, rischiando duplicati.

Per creare e gestire i workflow via API (inclusi trigger, condizioni, azioni ed esecuzione manuale) vedi API · Workflow.