Blogs
/
Come creare un agente con IA per la fissazione di appuntamenti che qualifica chi chiama prima di prenotare

Come creare un agente con IA per la fissazione di appuntamenti che qualifica chi chiama prima di prenotare

11
 MIN READ
October 2, 2026
Come creare un agente con IA per la fissazione di appuntamenti che qualifica chi chiama prima di prenotare
BACK TO BLOGS
Add Retell AI as a preferred source on Google
ON THIS PAGE
Back to top

La maggior parte delle guide sugli agenti telefonici con IA si ferma al punto in cui l'agente risponde e saluta. Quella è la parte facile. La parte difficile è fargli porre le domande che farebbe il tuo miglior operatore e fargli prenotare l'intervento solo quando le risposte giustificano una prenotazione.

Se sbagli questo passaggio, hai solo automatizzato il rumore. Il calendario si riempie di inquilini che non possono autorizzare i lavori, di persone che chiamano da fuori della tua zona di servizio e di chi è ancora a tre mesi da qualsiasi decisione. Ognuno di loro occupa uno slot che un lavoro vero avrebbe potuto sfruttare.

Questa guida ti mostra come creare un agente con IA per la fissazione di appuntamenti che prima qualifica e poi prenota. È un flusso conversazionale (conversation flow) collegato a un calendario Cal.com reale e richiede circa quindici minuti. Se sei qui solo per i prompt, li trovi tutti raccolti nell'indice dei prompt verso la fine.

Guarda il video della creazione

Il video qui sotto mostra la stessa creazione sullo schermo, dall'inizio alla fine. Seguilo se preferisci guardare invece di leggere. I passaggi scritti e i prompt di questa pagina corrispondono al video, quindi puoi tenere questa pagina aperta in una seconda scheda e copiare man mano che procedi.

Quanto costa davvero alla tua azienda una chiamata non qualificata

Ogni chiamata in entrata che non passa da una conversazione di qualificazione finisce in uno di due modi. O prenota un intervento che non avrebbe mai portato a nulla, bruciando uno slot e il tempo di viaggio di un tecnico. Oppure nessuno risponde abbastanza in fretta e chi chiama passa al nome successivo della lista.

Entrambi i casi hanno lo stesso costo. Il primo spreca capacità che hai già pagato. Il secondo regala fatturato a un concorrente che ha risposto al telefono. Un agente che qualifica risolve entrambi i problemi, perché risponde al primo squillo e si rifiuta di prenotare le chiamate che non vanno prenotate.

Passaggio 1: scegli un flusso conversazionale, non un agente a prompt singolo

Quando crei un nuovo agente vocale hai due opzioni: un agente a prompt singolo o un agente con flusso conversazionale.

Un agente a prompt singolo è un unico blocco di istruzioni che il modello legge e su cui improvvisa. È veloce da configurare e va bene per uno script lineare, come comunicare orari e indirizzo.

Un flusso conversazionale è una mappa della chiamata nodo per nodo, con ramificazioni esplicite. La risposta di chi chiama a ogni nodo decide quale nodo viene dopo. Il confronto tra i tipi di agente nella documentazione illustra tutti i pro e i contro.

Per la qualificazione ti serve il flusso. La qualificazione è una decisione, e una decisione ha bisogno di ramificazioni che puoi vedere, testare e correggere. Se non riesci a indicare il nodo in cui un inquilino viene respinto, non hai un passaggio di qualificazione: hai solo la speranza che il modello si ricordi le tue istruzioni.

Parti da zero invece che da un template se i tuoi criteri di qualificazione sono specifici per la tua attività, cosa che succede quasi sempre.

Passaggio 2: crea il flusso della chiamata con i prompt a Conductor

Non devi trascinare a mano ogni singolo nodo. Conductor è il copilota con IA integrato in Retell: descrivi la chiamata che vuoi, lui propone nodi e ramificazioni e tu li revisioni prima che qualcosa vada in produzione.

Usa il prompt 1 dell'indice dei prompt alla fine di questa guida. La descrizione fa un lavoro concreto, quindi scrivila come una specifica, non come un desiderio.

Prima di creare il flusso, Conductor ti fa alcune domande di chiarimento. Rispondi in modo concreto. Indicare la tua zona di servizio esatta e specificare Cal.com come strumento di prenotazione è ciò che gli permette di posizionare correttamente il ramo di esclusione e il nodo di prenotazione, invece di tirare a indovinare. Chiedi dei segnaposto per tutto ciò che richiede credenziali che non hai ancora collegato.

Leggi ogni nodo prima di accettarlo. Conductor propone, tu approvi, esattamente come faresti con la revisione di una pull request. È il passaggio che molti saltano, ed è quello in cui individuare un ramo mancante costa meno.

Descritto non significa chiesto

Ecco l'errore da interiorizzare. Puoi scrivere "se chi chiama dice di essere in affitto, termina la chiamata" e ottenere un flusso con un percorso di esclusione che scatta solo se chi chiama, per caso, menziona di essere in affitto mentre risponde a un'altra domanda.

Quella non è una domanda di qualificazione. È fortuna.

Ciò che non chiedi esplicitamente, non lo ottieni in modo affidabile. Se la differenza tra proprietario e inquilino decide se mandare o meno un furgone, serve un nodo il cui unico compito è porre direttamente quella domanda. Lo stesso vale per la zona di servizio. Il prompt 7 dell'indice verifica se quei nodi esistono e il prompt 8 li aggiunge.

Passaggio 3: collega Cal.com al tuo agente vocale

Per prenotare serve un calendario reale, e questo è l'unico passaggio che il copilota non può fare al posto tuo, perché richiede le tue credenziali.

In Cal.com apri Settings, trova la scheda API keys e crea una nuova chiave. Imposta una scadenza in linea con il periodo in cui prevedi di usarla. In Retell vai su Integrations, aggiungi Cal.com e incolla la chiave. Quando il collegamento va a buon fine, l'account risulta connesso.

Questa è l'intera parte manuale della creazione.

Passaggio 4: collega le funzioni di verifica della disponibilità e di prenotazione dell'appuntamento

Apri il sotto-flusso di prenotazione. Al suo interno ti servono due funzioni: una che verifica la disponibilità (check availability) e una che prenota (book appointment).

Entrambe richiedono l'ID del tipo di evento (event type ID) di Cal.com. Lo trovi nell'URL del link di prenotazione che vuoi far usare all'agente. È il numero presente in quell'URL e va inserito nel campo event type ID di ciascuna funzione.

Aggiungi prima la funzione check availability, incolla l'event type ID e salva. Poi aggiungi la funzione book appointment, con lo stesso event type ID, compila gli altri campi e salva. L'elenco completo delle funzioni Cal.com copre anche la riprogrammazione e la cancellazione, quando ti serviranno.

Con entrambe le funzioni reali configurate, esegui il prompt 3 dell'indice, così Conductor ricollega i nodi all'integrazione attiva.

Passaggio 5: testa l'agente per la fissazione di appuntamenti prima di pubblicarlo

Avvia una chiamata di test direttamente dalla dashboard e interpreta un cliente che dovrebbe risultare qualificato.

Quello che devi osservare non è se l'agente suona bene, ma se la sequenza regge. In un'esecuzione corretta l'agente chiede qual è il problema, chiede se si tratta di riparazione o sostituzione, chiede se chi chiama è proprietario o inquilino, conferma la zona di servizio, chiede l'urgenza e poi propone degli orari.

Tre controlli individuano i guasti più comuni, e i prompt 4, 5 e 6 dell'indice sono le relative correzioni:

Propone orari reali? Se l'agente dice che non c'è nulla di disponibile mentre il tuo calendario è libero, di solito non conosce la data di oggi, quindi sta verificando una finestra temporale nel passato.

Gestisce una data che non aveva già recuperato? Chiedi un giorno al di fuori degli orari proposti inizialmente. Un flusso che verifica una sola volta e non ricontrolla mai insiste che quel giorno non è disponibile anche quando è libero.

Raccoglie nome ed email prima di prenotare? Cal.com rifiuta le prenotazioni senza questi dati. Se nessuno li chiede, la prenotazione fallisce dopo che chi chiama ha già scelto un orario, che è il momento peggiore in assoluto per fallire.

Testa anche i percorsi di esclusione. Un inquilino senza autorizzazione e una persona che chiama da fuori della zona di servizio devono entrambi vedere la chiamata chiusa con cortesia, senza alcun tentativo di prenotazione. Verificalo invece di darlo per scontato.

Passaggio 6: pubblica l'agente, assegna un numero di telefono e leggi le trascrizioni delle chiamate

Pubblica l'agente, poi acquista un numero di telefono e assegnalo. Lo stesso numero funziona sia per le chiamate in entrata sia per quelle in uscita.

L'abitudine da coltivare è leggere la cronologia delle chiamate. Ogni chiamata lascia una trascrizione e un riepilogo, così puoi vedere cosa voleva chi chiamava e come l'agente l'ha gestito. Nella chiamata di test di questa guida, il record mostra la prenotazione di una riparazione per un buco in un tetto esistente, in un immobile in affitto a Long Island City, con l'autorizzazione del proprietario registrata.

È esattamente il contesto di cui il tuo tecnico ha bisogno prima che il furgone parta, e nessuno l'ha digitato. Il prompt 9 dell'indice trasforma queste stesse informazioni in campi strutturati leggibili dal tuo CRM, grazie all'analisi post-chiamata.

Leggi con attenzione le trascrizioni delle prime settimane. Ti diranno quale domanda l'agente pone male, quale ramo non viene mai raggiunto e quale esclusione hai dimenticato di creare.

Cosa creare dopo

Una volta che la qualificazione funziona, le aggiunte più utili sono un secondo calendario, per indirizzare i diversi tipi di intervento a tecnici diversi, e le variabili dinamiche, così un agente che risponde a un cliente già noto sa chi sta chiamando invece di ripartire da zero con le domande.

L'ordine conta. Un agente che prenota più velocemente le persone sbagliate è peggio di nessun agente. Prima la qualificazione, poi i volumi.

Indice dei prompt: tutti i prompt usati in questa guida

Ci sono due modi per creare questo flusso. Puoi descriverlo a Conductor e approvare ciò che propone, oppure puoi posizionare tu i nodi e incollare le istruzioni in ciascuno. Qui trovi entrambi i set, insieme a un'unica specifica che evita i quattro problemi incontrati inizialmente durante questa creazione.

Opzione A: un unico prompt che anticipa tutto

Se da questa pagina copi una sola cosa, copia questa. Fornisce a Conductor tutti e quattro i requisiti in una volta, invece di lasciarteli scoprire più avanti sotto forma di bug.

Prima di iniziare: collega Cal.com dalla pagina Integrations della dashboard (API key, cal.com o cal.eu). Crea i nodi di verifica della disponibilità e di prenotazione dell'appuntamento usando direttamente gli strumenti dell'integrazione nativa Cal.com di Retell. Non usare funzioni personalizzate segnaposto.

Prompt globale: includi "La data e l'ora di oggi sono {{current_time}}. Risolvi sempre le date relative, come oggi, domani, lunedì prossimo, tra un paio di giorni, rispetto a questa data reale. Non tirare mai a indovinare una data."

Nodo di disponibilità: interroga sempre una finestra predefinita di 14 giorni a partire da oggi, indipendentemente da quanto sia vaga o specifica la prima risposta di chi chiama. Se in seguito chi chiama indica una data al di fuori della finestra già recuperata, ripeti la verifica con una finestra che la includa prima di dire che non è disponibile.

Prima del nodo di prenotazione: raccogli nome completo ed email di chi chiama, entrambi campi obbligatori per la chiamata di prenotazione a Cal.com. Non chiamare la funzione di prenotazione finché non li hai acquisiti entrambi.

Questo singolo blocco previene quattro errori distinti: funzioni segnaposto che non puntano a nulla di reale, un agente che non conosce la data di oggi, una finestra di disponibilità troppo stretta per rispondere alla vera domanda di chi chiama e una prenotazione che fallisce perché nessuno ha chiesto nome ed email.

Opzione B: i prompt conversazionali, nell'ordine di creazione

Scrivili uno alla volta e leggi ciò che Conductor propone prima di accettare. I prompt dal 4 al 6 sono le correzioni per i tre errori del passaggio 5, se preferisci incontrarli e risolverli man mano.

1. Imposta la struttura del flusso

Crea un flusso conversazionale per un'azienda di climatizzazione (HVAC) e coperture. Saluta chi chiama e chiedi se ha bisogno di una riparazione o della sostituzione completa dell'impianto. Crea una ramificazione in base alla risposta. Se chi chiama dice di essere in affitto e di non poter approvare i lavori, oppure si trova fuori dalla nostra zona di servizio, termina la chiamata con cortesia senza prenotare. Altrimenti chiedi se vuole che il lavoro venga fatto entro le prossime due settimane o se sta solo raccogliendo preventivi, poi procedi verso la prenotazione di un appuntamento.

2. Sostituisci i segnaposto con il tuo calendario reale

Puoi sostituire check-availability e book-appointment con la mia integrazione Cal.com reale?

3. Collega il flusso alle funzioni che hai configurato a mano

Ho aggiunto le funzioni dell'integrazione Cal.com. Usa quelle e sostituiscile nei sotto-nodi segnaposto.

4. L'agente dice che non c'è mai disponibilità

Ogni volta che provo a prenotare un appuntamento la disponibilità non funziona mai, dice che non ci sono appuntamenti nei prossimi giorni. Perché?

5. La finestra di disponibilità è troppo stretta

L'ho testato e l'IA ha detto che la disponibilità arrivava solo fino a venerdì, ma oggi è mercoledì e il calendario mi permette di prenotare lunedì prossimo. Perché l'agente non lo propone?

6. La prenotazione fallisce all'ultimo passaggio

Siamo arrivati alla prenotazione di lunedì, ma poi la prenotazione fallisce, credo per via di alcune informazioni che vanno raccolte prima.

7. Verifica se la qualificazione esiste davvero

Non vedo nessuna qualificazione nel flusso, abbiamo dei casi creati per questo?

8. Aggiungi un livello di qualificazione esplicito

Ci serve un ulteriore livello di domande di qualificazione per capire se chi chiama è in affitto o è proprietario. Se è proprietario va bene, se è in affitto ci serve l'autorizzazione del proprietario dell'immobile. Lo stesso vale per la località: fuori dal Queens, NY, la risposta è no.

9. Acquisisci i dati del lead in chiusura

Aggiungi un passaggio di analisi post-chiamata che registri se chi chiama è risultato qualificato, se si trattava di una riparazione o di una sostituzione, quanto ha detto che era urgente e un riepilogo di una riga per il tecnico.

Opzione C: nodo per nodo, se preferisci crearlo tu

Incolla ogni blocco nel nodo corrispondente invece di usare i prompt.

Prompt a livello di agente, da impostare all'inizio del flusso

Sei un assistente per la pianificazione di un'azienda di servizi per la casa che gestisce chiamate per riparazioni di climatizzazione e coperture. Il tuo compito è capire rapidamente di cosa ha bisogno chi chiama, decidere se vale la pena mandare un tecnico e, in caso affermativo, prenotare un appuntamento in loco. Sii breve e naturale, come un operatore cordiale, non come uno script letto ad alta voce. Non inventare mai la disponibilità, usa solo ciò che restituisce lo strumento del calendario.

La data e l'ora di oggi sono {{current_time}}. Risolvi sempre le date relative rispetto a questa data reale. Non tirare mai a indovinare una data.

Nodo 1, saluto e prima domanda

Saluta chi chiama e chiedi qual è il problema con il suo impianto di climatizzazione o con la copertura. Poi chiedi: "Stai cercando una riparazione o stai valutando la sostituzione completa dell'impianto?" Attendi la risposta prima di proseguire.

Nodo 2, condizioni di ramificazione. Queste vanno sui collegamenti in uscita dal nodo 1, non su un nodo separato:

  • Percorso sostituzione: chi chiama indica una sostituzione completa, un nuovo impianto o dice che quello attuale non è più riparabile
  • Percorso riparazione: chi chiama descrive un intervento specifico o un malfunzionamento
  • Esclusione: chi chiama dice di essere in affitto e di non poter approvare i lavori, oppure indica una località fuori dalla tua zona di servizio

Nodo 3, esclusione

Spiega con cortesia che al momento la richiesta non rientra in ciò che possiamo programmare, perché l'immobile è in affitto senza autorizzazione del proprietario oppure si trova fuori dalla nostra zona di servizio. Suggerisci di sentire l'amministratore dell'immobile o di ricontattarci se la situazione cambia. Ringrazia e termina la chiamata con cortesia. Non offrire di prenotare nulla.

Nodo 4, domanda sull'urgenza

Chiedi: "Vuoi che il lavoro venga fatto entro le prossime due settimane o per ora stai solo raccogliendo preventivi?" Usa la risposta per impostare l'urgenza, ma prosegui verso la prenotazione a meno che chi chiama non dica chiaramente di non essere pronto a fissare un appuntamento.

Nodo 5, raccolta dei dati di contatto. Questo nodo si trova tra la domanda sull'urgenza e il nodo di prenotazione, ed è il passaggio che la maggior parte dei flussi dimentica:

Chiedi il nome completo e l'indirizzo email di chi chiama, così possiamo inviare una conferma. Sii rapido, una domanda alla volta se necessario. Non procedere con la prenotazione finché non hai entrambi i dati.

Nodo di prenotazione, dove si trovano le funzioni Cal.com

Quando entrambe le domande hanno ricevuto risposta e chi chiama non è stato escluso, chiama Check Availability. Proponi 2 o 3 orari liberi in una frase naturale, non come elenco. Attendi che chi chiama ne confermi uno a voce, poi chiama Book Appointment con quell'orario. Non chiamare mai Book Appointment prima di una conferma verbale.

Campi di estrazione post-chiamata. Quattro campi da acquisire a ogni chiamata: qualified come booleano, true se prenotato e false se escluso o rifiutato. repair_or_replacement come selettore, ricavato dalla prima risposta. urgency come selettore tra questa settimana, questo mese o solo preventivo, ricavato dalla seconda risposta. E summary_for_tech come testo, una o due frasi sul problema scritte per chi andrà sul posto.

Opzione D: testalo prima di fidarti

Esegui queste simulazioni prima di collegare l'agente a un numero reale. Conductor ti chiederà prima di confermare l'ambito, perché le simulazioni vengono addebitate.

Puoi eseguire una chiamata di test simulata in cui chi chiama dice di essere in affitto nell'immobile e di non poter approvare i lavori? Voglio verificare che l'agente rifiuti di prenotare e termini la chiamata invece di proseguire verso la prenotazione.
Stessa cosa, ma per una persona che chiama da fuori della nostra zona di servizio: puoi simularla e verificare che la chiamata termini senza prenotazione?

Se una chiamata reale prenota qualcuno che avrebbe dovuto essere respinto, questi due prompt ti aiutano a individuare il problema:

Ho testato una chiamata come inquilino che non può approvare i lavori, ma l'agente è andato avanti e ha comunque provato a prenotare. Perché non esclude questa risposta?
Ho chiamato da fuori della nostra zona di servizio e ha comunque proposto di prenotare. Perché il ramo di esclusione non scatta?

Domande frequenti

Quanto tempo serve per creare un agente con IA per la fissazione di appuntamenti?

Circa quindici minuti per la creazione descritta in questa guida, da un account vuoto a un agente pubblicato con un numero di telefono. Prevedi più tempo per i test. Il flusso in sé viene impostato con un solo prompt, ma è nelle chiamate di test, che individuano i problemi di gestione delle date, delle finestre di disponibilità e dei campi di prenotazione mancanti, che se ne va il tempo vero.

Devo saper programmare?

No. L'intero flusso si crea descrivendolo in linguaggio naturale e approvando ciò che propone il copilota. Gli unici passaggi manuali sono incollare una API key di Cal.com e copiare un event type ID da un URL.

Qual è la differenza tra un flusso conversazionale e un agente a prompt singolo?

Un agente a prompt singolo legge un unico blocco di istruzioni e improvvisa. Un flusso conversazionale è una mappa esplicita nodo per nodo, con ramificazioni che puoi ispezionare e testare. Usa un prompt singolo per uno script lineare e un flusso conversazionale ogni volta che la chiamata comporta una decisione, come avviene sempre nella qualificazione.

Può prenotare su Google Calendar o Calendly invece che su Cal.com?

Sì. Qui usiamo Cal.com perché la sua API di prenotazione è semplice da collegare. Lo stesso schema, una funzione di verifica della disponibilità seguita da una funzione di prenotazione dell'appuntamento, vale anche per altre integrazioni di calendario.

Perché il mio agente dice che non ci sono appuntamenti disponibili quando il mio calendario è libero?

Le cause abituali sono due. L'agente non conosce la data corrente, quindi verifica una finestra temporale già passata. Oppure ha verificato una sola volta una finestra ristretta e non ha ricontrollato quando chi chiama ha indicato un altro giorno. I prompt 4 e 5 dell'indice dei prompt risolvono ciascun caso.

Cosa succede a chi chiama e non risulta qualificato?

Arriva a un nodo di esclusione che termina la chiamata con cortesia senza prenotare nulla. Quel percorso va creato esplicitamente. Descrivere la regola nel primo prompt non basta, ed è proprio ciò che i prompt 7 e 8 servono a intercettare.

Letture correlate

ROI Calculator
Estimate Your ROI from Automating Calls

See how much your business could save by switching to AI-powered voice agents.

All done! 
Your submission has been sent to your email
Oops! Something went wrong while submitting the form.
   1
   8
20
Oops! Something went wrong while submitting the form.

ROI Result

2,000

Total Human Agent Cost

$5,000
/month

AI Agent Cost

$3,000
/month

Estimated Savings

$2,000
/month
Demo dal vivo
Prova la nostra demo dal vivo

Un numero di telefono demo di Retell Clinic Office

Grazie! Il tuo modulo è stato ricevuto!
Ops! Qualcosa è andato storto durante l'invio del modulo.

Read Other Blogs

Revolutionize your call operation with Retell