Tema
Architettura
La piattaforma è fatta di blocchi con responsabilità separate: ognuno sa fare una cosa e non sa niente di come la fanno gli altri. È la ragione per cui si può aggiungere un canale nuovo senza toccare ciò che risponde, e un modulo nuovo senza toccare i canali.
Il disegno è interattivo: passa sopra un blocco per la sintesi di cosa fa, clicca per aprirne il dettaglio e la pagina che lo descrive. Lo Smart Center è disegnato di lato e con il bordo tratteggiato perché non sta sul percorso di un messaggio: configura i blocchi che ci stanno.
Se preferisci il testo, l'elenco qui sotto dice le stesse cose senza il disegno.
I blocchi, uno per uno
La frontiera — i Canali
Un Canale parla la lingua del mezzo — le API di Telegram, i webhook di Meta, i protocolli della posta, il protocollo di una telefonata — e la traduce in qualcosa che la piattaforma capisce. Non interpreta niente: porta dentro e porta fuori.
Ogni canale si collega al Channel Gateway con un protocollo unico, su connessione sicura, autenticandosi col proprio token.
L'ingresso — il Channel Gateway
È il punto di interfaccia fra tutti i canali e la piattaforma. Fa tre cose:
- verifica il token di ogni canale, e da lì ricava organizzazione e scope ammessi
- instrada le interazioni verso l'interno
- riporta le risposte al canale da cui è arrivata la richiesta
È anche il blocco che tiene il filo fra una richiesta e la sua Sessione: è così che una risposta sa sempre a chi tornare.
L'instradamento e la sessione
Qui il messaggio acquista il suo contesto: chi è l'utente, in che lingua parla, cosa si è detto prima, cosa si stava raccogliendo. È il blocco che conserva lo stato e che decide a chi passare il messaggio.
La comprensione
Riceve il messaggio col suo contesto e decide cosa farne, scegliendo fra tre esiti:
ARisponde da séCon ciò che sa dello scope, consultando una Knowledge Base o interrogando un Data Source. Nessun modulo viene coinvolto.
BAvvia un intentoQuando la richiesta è operativa e ha i dati che servono per eseguire.
CChiede quello che mancaSe l'intento è chiaro ma un dato non c'è ancora, invece di indovinare.
La scelta fra i tre non è configurata a mano: dipende dagli intent attivi nello scope, dalle Capability della sessione, e dalla modalità delle Knowledge Base dello scope.
L'esecuzione — i moduli di intent
Un DIM è un componente che dichiara quali intenti sa gestire e li esegue. Si registra da sé, con un token proprio, dichiarando le proprie capacità al collegamento: aggiungere un modulo non richiede di riconfigurare la piattaforma.
Il gestore dei moduli sta in mezzo: sa quali moduli sono collegati, quali intenti dichiarano, e consegna ogni intento al modulo di riferimento.
L'automazione — il Workflow Manager
Quando un intento deve fare qualcosa di più di una risposta, il modulo avvia un Flow: la traduzione eseguibile di un processo. È il blocco che legge e scrive nei sistemi del cliente attraverso le Integrazioni, e che lascia traccia di ogni esecuzione.
La conoscenza — l'indice semantico e i Data Source
I documenti di una Knowledge Base vivono in un indice separato per ogni base, interrogabile per somiglianza di significato. I database collegati come Data Source rispondono con i numeri, in sola lettura. Ci arriva la comprensione quando serve fondare una risposta, e ci arrivano i moduli che vogliono fondare la propria.
I servizi di lavoro — Analisi documentale e Agent
Accanto al percorso di un messaggio stanno i blocchi che lavorano sui documenti e sui sistemi anziché sulle conversazioni: l'Analisi documentale, che legge un file e ne estrae dati strutturati, e l'Agent, che opera su applicativi e portali attraverso i suoi runner. Entrambi si avviano dalla dashboard, da un Flow o da una pianificazione.
La gestione — lo Smart Center
È la dashboard: organizzazioni, scope, canali, intent, Knowledge Base, Data Source, integrazioni, pianificazioni, utenti e ruoli, lo stato del sistema e la consultazione delle sessioni. Non sta sul percorso di un messaggio — configura i blocchi che ci stanno.
Cosa garantisce la separazione
| Confine | Cosa vuol dire |
|---|---|
| Un canale non interpreta | Aggiungere un mezzo nuovo non tocca la comprensione |
| La comprensione non esegue | Cambiare un processo non tocca il riconoscimento |
| Un modulo non conosce i canali | Lo stesso intento risponde su Telegram, sulla posta e al telefono senza sapere dove è |
| Lo stato sta in un posto solo | Una risposta sa sempre a quale conversazione appartiene |
| Ogni blocco riporta la propria salute | La mappa del Monitoraggio mostra lo stato di ciascuno, e di ciò da cui dipende |