Documentazione

Schedule (cron)

Innesca una pipeline a intervalli regolari — giornalieri, settimanali o con un'espressione cron arbitraria.

Schedule (cron)

Il canale schedule innesca una pipeline secondo un calendario definito. È l'equivalente di un cron, ma gestito dal pannello di amministrazione e registrato come ogni altro exchange.

Perché questo canale

Non tutte le pipeline sono reattive (a un'email, una chiamata, un webhook). Molte sono proattive: report giornaliero, follow-up settimanale, controllo orario di un sistema esterno. È questo ciò che copre il canale schedule.

Configurazione

  1. Amministrazione → Schedule → Nuova attività.
  2. Scegli:
    • Pipeline di destinazione
    • Calendario — costruiscilo visivamente con il CronBuilder (giornaliero, settimanale, giorni e ore), oppure inserisci un'espressione cron classica (0 8 * * 1-5 = alle 8 nei giorni feriali) o una scorciatoia (@daily, @hourly). Nessuna conoscenza della sintassi cron richiesta.
    • Fuso orario — per impostazione predefinita, il fuso orario dell'organizzazione. Configurabile per attività.
    • Obiettivo — un'etichetta libera (ad es. briefing_hebdo, alerte_impayes) passata alla pipeline per instradarla.
    • Payload statico — JSON arbitrario passato come input alla pipeline.

Una pipeline, più obiettivi. La stessa pipeline può essere innescata da più attività pianificate, ognuna con un objectif diverso. Le condizioni (filter) all'inizio della pipeline dirigono quindi l'esecuzione in base all'obiettivo ricevuto — ad esempio un briefing settimanale il lunedì e un alert giornaliero nello stesso template (vedi CFO IA).

Cosa riceve la pipeline

A ogni trigger, viene creato un exchange con:

  • schedule.task_id — identificatore dell'attività pianificata
  • schedule.objectif — l'etichetta dell'obiettivo configurato (per l'instradamento multi-attività)
  • schedule.scheduled_at — timestamp pianificato
  • schedule.actual_at — timestamp effettivo (in caso di deriva)
  • schedule.payload — il JSON statico configurato (se presente)

Tolleranza e recupero

Se betool non è disponibile al momento di un trigger (manutenzione, incidente), l'attività viene recuperata automaticamente al riavvio, entro la finestra di tolleranza che configuri (1 ora per impostazione predefinita).

Oltre la finestra, il trigger viene contrassegnato come mancato nella cronologia e non viene ripetuto — un report mancante è meglio di uno in ritardo e disallineato.

Casi d'uso tipici

  • Report giornaliero alle 8 — un agent che interroga diversi sistemi, riassume e invia un brief via email.
  • Sync oraria — una pipeline che estrae nuovi elementi da un sistema esterno, li passa a un agent classificatore e inserisce i risultati nel tuo CRM.
  • Controllo settimanale — un agent che verifica lo stato di un'infrastruttura e segnala le discrepanze.
  • Follow-up a G+7 — sui lead inviati una settimana fa e ancora senza risposta.

Buone pratiche

  • Evita gli avvii al minuto esatto — molti sistemi si attivano a 0 * * * *. Preferisci 7 * * * * per distribuire il carico.
  • Registra le attività che non hanno nulla da fare. Un'attività che viene eseguita ma non fa nulla (perché non ci sono elementi da elaborare) deve tracciarlo esplicitamente. Altrimenti, non potrai distinguere "tutto va bene" da "l'attività non gira più".
  • Avvisa sulle attività mancate. Vedi Crediti e metering → Alert.