Azioni e strumenti
La scheda Actions è dove gestisci tutto ciò che il tuo agente può fare oltre la conversazione — strumenti che l'agente chiama durante una conversazione live, hook di prefetch che vengono eseguiti prima dell'inizio della chiamata e azioni post-chiamata che si attivano una volta che la chiamata termina. Le Retrieval Variables (i campi dati che l'agente estrae da ogni conversazione) si trovano nella stessa scheda.
Tutti gli strumenti, le azioni e il nuovo hook di pre-fetch sono disponibili su ogni piano, incluso Free.
Le tre fasi
Ogni voce nella scheda Actions appartiene a una delle tre fasi del ciclo di vita. Il menu a discesa Add Tool le raggruppa così è chiaro quando ciascun elemento si attiva:
| Fase | Quando | Esempi |
|---|---|---|
| Pre fetch | Prima che l'agente saluti | Cerca il chiamante nel tuo CRM per telefono, recupera l'ultimo ordine, ottieni un saluto personalizzato dal tuo backend |
| Live call | Durante la conversazione, attivato dall'IA quando è il momento giusto | Inoltra la chiamata a un umano, controlla la disponibilità sul calendario, trasferisci a un altro agente, interroga un'API esterna per i dati |
| Post call | Dopo la fine della chiamata | Invia un'email di riepilogo, attiva una conferma via SMS, invia il payload della chiamata al tuo CRM |
Il menu a discesa si apre con Pre fetch in cima perché ogni altra fase ha già molte opzioni — la nuova voce di pre-fetch è la cosa che probabilmente stai cercando.
Pre fetch
Gli hook di pre-fetch consentono al tuo agente di iniziare la chiamata già sapendo chi sta chiamando. Vengono eseguiti in parallelo all'impostazione della chiamata e iniettano la risposta nel prompt di sistema dell'agente prima che venga pronunciata la prima parola.
Quando usarlo
- Riconoscere un cliente di ritorno dal numero di telefono e salutarlo per nome
- Recuperare l'ordine aperto del chiamante, l'ultimo appuntamento o il livello di membership
- Pre-caricare il contesto aziendale che dipende da quale linea è stata chiamata
- Iniettare note CRM così l'agente conosce la fase e la storia del lead
Come funziona
- La piattaforma risolve il telefono del chiamante (da SIP per inbound, dal target di composizione per outbound).
- Ogni azione Pre fetch attiva si attiva in parallelo con un timeout rigido di 1,5 s per richiesta e un budget complessivo di 2 s.
- Le risposte con successo vengono concatenate nel prompt di sistema dell'agente come blocchi denominati — l'agente le legge al suo primo turno.
- I fallimenti sono silenziosi — un endpoint lento o rotto non blocca mai il saluto. L'agente inizia semplicemente a parlare senza quel blocco.
Configurazione
| Campo | Descrizione |
|---|---|
| Name | Obbligatorio. Etichetta interna e nome del blocco nel prompt — mantienilo breve e descrittivo (es. crm_lookup, vip_check). |
| API URL | Obbligatorio. Endpoint da cui recuperare. Supporta i placeholder {phone}, {direction}, {agent_id}, {user_id}, {call_id}. |
| HTTP Method | GET è il predefinito e la scelta migliore. Funzionano anche POST / PUT / PATCH / DELETE. |
| Headers | Opzionale. Statici o templated (i placeholder funzionano anche qui). |
| Query Parameters | Opzionale. Pre-compila con phone={phone} per le nuove azioni di pre-fetch. |
Variabili disponibili
Questi token vengono sostituiti in URL, header e parametri query/body al momento della richiesta:
| Variabile | Origine | Esempio di valore |
|---|---|---|
{phone} | Telefono del chiamante (E.164) — per outbound, il numero di destinazione | +431234567890 |
{direction} | inbound o outbound | inbound |
{agent_id} | ID interno dell'agente | 65f1a2b3c4... |
{user_id} | ID del proprietario del workspace | 65e0b1c2d3... |
{call_id} | ID chiamata (consente al tuo backend di correlare in seguito il payload post-chiamata) | 65f1f2c4d5... |
I placeholder sconosciuti vengono lasciati testualmente — un templating errato non fa mai crashare una chiamata.
Cosa finisce nel prompt
Se il tuo endpoint a https://crm.example.com/lookup?phone={phone} restituisce:
{ "name": "Sarah Johnson", "tier": "Gold", "open_orders": 1 }
Al prompt di sistema dell'agente viene aggiunto un blocco avvolto in XML denominato come l'azione:
<call_context>
<block name="crm_lookup">
{ "name": "Sarah Johnson", "tier": "Gold", "open_orders": 1 }
</block>
</call_context>
Non devi dire all'agente come usarlo — l'IA coglie il contesto naturalmente. Opzionalmente, menziona il pre-fetch nel tuo prompt di sistema: "Se <call_context> contiene un nome cliente, salutalo per nome."
Vincoli importanti
- Solo chiamate telefoniche. Il pre-fetch non viene eseguito per chiamate da widget (web) — non c'è un numero di telefono su cui basare il template.
- Limite di 8 KB sul body della risposta — tutto ciò che è più lungo viene troncato prima dell'iniezione. Il limite protegge il tuo budget di token del prompt e limita il raggio di esplosione di un endpoint malevolo.
- Nessuna valutazione di
condition— il pre-fetch si attiva sempre quando attivo. Non c'è ancora trascrizione su cui valutare.
Usa GET con un endpoint di lookup basato sul telefono. Mantieni le risposte piccole e strutturate (oggetto JSON con 3-5 campi). L'agente non ha bisogno di tutta la tua scheda cliente — solo dei dati che cambiano la conversazione.
Strumenti per chiamate live
Questi vengono eseguiti durante la conversazione. L'IA decide quando chiamare ciascuno strumento in base alla sua descrizione e al dialogo corrente.
Strumenti disponibili
| Strumento | Scopo | Quando usarlo |
|---|---|---|
| Call Forwarding | Trasferire a un operatore umano | Il cliente chiede una persona, problemi complessi |
| Google Calendar | Controllare disponibilità e prenotare appuntamenti | Il cliente vuole pianificare un incontro |
| Outlook Calendar | Stesso, tramite Microsoft Outlook | Il cliente vuole pianificare un incontro |
| API Tool RAG | Recuperare dati live da un'API esterna | Servono info in tempo reale (ordini, scorte, stato account) |
| Agent Transfer | Trasferire a un altro agente vocale IA | Il chiamante necessita di un altro dipartimento o specialista |
| HubSpot CRM | Leggere/scrivere contatti e deal in HubSpot | Registrazione della chiamata su HubSpot, ricerca di un lead |
| MCP servers | Esporre strumenti da qualsiasi server MCP registrato | Esegui un server di strumenti compatibile MCP e vuoi che l'agente usi i suoi strumenti durante la conversazione |
Call Forwarding
Trasferisci le chiamate a un umano quando vengono soddisfatte condizioni specifiche.
| Impostazione | Descrizione | Esempio |
|---|---|---|
| Name | Obbligatorio. Nome della persona o del dipartimento | "Sales Manager" |
| Forwarding Number | Numero di telefono predefinito a cui trasferire | "+49 123 456 789" |
| Trigger Condition | Quando l'agente deve trasferire | "Il cliente chiede un manager o il problema non può essere risolto" |
| Conditional Routing Numbers | Mappatura condizione-numero per l'instradamento | {"billing": "+49 111 222", "technical": "+49 333 444"} |
Come funziona:
- Durante una conversazione, l'IA valuta la Trigger Condition.
- Se sono impostati numeri di instradamento condizionale, la condizione corrispondente determina quale numero chiamare.
- Altrimenti, viene usato il Forwarding Number.
- L'agente informa il chiamante del trasferimento.
- La chiamata viene inoltrata — se non c'è risposta, torna all'agente.
Puoi aggiungere più strumenti Call Forwarding per dipartimenti diversi — uno per "Sales" e un altro per "Technical Support" con condizioni e numeri diversi.
Google Calendar
Collega il tuo Google Calendar così l'agente può controllare la disponibilità e prenotare appuntamenti durante le chiamate.
Setup:
- Vai a Integration → Calendars e collega prima il tuo account Google.
- Aggiungi lo strumento Google Calendar nella scheda Actions dell'agente.
- Seleziona il calendario da utilizzare.
- Configura le tue impostazioni di disponibilità.
| Impostazione | Descrizione | Predefinito |
|---|---|---|
| Calendar | Obbligatorio. Quale calendario usare | Il tuo calendario principale |
| Timezone | Fuso orario per gli appuntamenti (formato IANA) | Rilevato automaticamente |
| Work Start Time | Inizio dell'orario di lavoro | 9:00 |
| Work End Time | Fine dell'orario di lavoro | 18:00 |
| Slot Duration | Lunghezza dell'appuntamento in minuti | 30 |
| Working Days | Giorni disponibili della settimana | Lunedì–Venerdì |
| Buffer Between Appointments | Buffer tra appuntamenti (0–60 min) | 0 |
Durate degli slot supportate: 15, 30, 45, 60, 75, 90, 105, 120 minuti.
Imposta accuratamente i tuoi orari e giorni di lavoro — l'agente offrirà solo fasce orarie nella tua disponibilità configurata.
Outlook Calendar
Collega il tuo Outlook Calendar per la pianificazione degli appuntamenti durante le chiamate. Funziona allo stesso modo di Google Calendar.
Setup:
- Vai a Integration → Calendars e collega prima il tuo account Outlook.
- Aggiungi lo strumento Outlook Calendar nella scheda Actions dell'agente.
- Seleziona il calendario da utilizzare.
- Configura le tue impostazioni di disponibilità.
Le impostazioni sono identiche a Google Calendar (fuso orario, orari di lavoro, durata slot, giorni lavorativi, buffer).
Agent Transfer
Trasferisci una chiamata a un altro agente vocale IA del tuo account. Utile quando hai agenti specializzati per dipartimenti diversi.
| Impostazione | Descrizione |
|---|---|
| Target Agent | Obbligatorio. Seleziona a quale agente trasferire |
| Trigger Condition | Quando trasferire (es. "Il chiamante chiede assistenza tecnica") |
Esempio: Un agente receptionist trasferisce i chiamanti a un agente vendite quando chiedono dei prezzi, o a un agente di supporto quando hanno un problema tecnico.
HubSpot CRM
Leggi e scrivi nel tuo HubSpot CRM durante la chiamata. Consente all'agente di registrare interazioni, cercare un contatto per telefono o inviare aggiornamenti di deal senza che tu debba scriptare le chiamate API.
Setup:
- Vai alla pagina Integrations e collega il tuo account HubSpot.
- Aggiungi lo strumento HubSpot CRM nella scheda Actions dell'agente.
- Seleziona quale pipeline e proprietà l'agente può toccare.
Dopo che lo strumento è stato aggiunto, l'IA può abbinare il chiamante a un contatto HubSpot per telefono, recuperare la fase del deal e aggiornare campi — tutto dalla conversazione live.
MCP servers
Esponi strumenti da qualsiasi server compatibile MCP che hai collegato a Hanc.AI. Un agente può attingere da più server MCP; un server MCP può servire più agenti.
Setup:
- Collega i tuoi server MCP una sola volta in Integration → MCP servers. Consulta la pagina dedicata Server MCP per i passaggi completi di registrazione.
- Aggiungi la voce MCP servers nella scheda Actions di questo agente — è raggruppata in Live call nel menu Add Action.
- Attiva quali delle tue connessioni registrate questo agente deve avere accesso.
- Aggiungi una breve istruzione "Quando usarlo" così l'agente sa quando ricorrere a questi strumenti.
L'agente riscopre il set di strumenti da ogni server MCP abilitato all'inizio di ogni chiamata, quindi le modifiche che apporti lato server appaiono automaticamente alla chiamata successiva. Gli strumenti vengono rinominati con l'etichetta della connessione come prefisso così strumenti con nomi simili da server diversi non collidono.
API Tool RAG
Collegati ad API esterne per recuperare informazioni in tempo reale durante le chiamate — cerca ordini, controlla l'inventario, verifica account o accedi a qualsiasi dato disponibile via API.
| Impostazione | Descrizione | Esempio |
|---|---|---|
| Name | Obbligatorio. Nome dello strumento | "Order Lookup" |
| Description / When to Use | Obbligatorio. Quando interrogare l'API | "Il cliente chiede lo stato dell'ordine" |
| API URL | Obbligatorio. Endpoint API. Può includere token {placeholder} che verranno sostituiti con valori dallo Schema dei parametri body (vedi sotto). | "https://api.yourshop.com/orders/{order_id}" |
| HTTP Method | Obbligatorio. Metodo HTTP | GET, POST, PUT, DELETE, PATCH |
| Loading Message | Cosa dice l'agente mentre aspetta | "Lascia che lo controlli per te..." |
| Timeout | Tempo massimo di attesa (ms) | 5000 (predefinito) |
| Headers | Header HTTP statici inviati con ogni richiesta | {"Authorization": "Bearer KEY"} |
| Query Parameters | Parametri statici della query string aggiunti a ogni richiesta | {"apiVersion": "v2"} |
| Body Parameters Schema | Obbligatorio. JSON Schema che descrive gli argomenti che l'IA deve estrarre dalla conversazione e passare allo strumento. Vedi Scrivere lo Schema dei parametri body. | Oggetto JSON Schema |
Imposta sempre un Loading Message — il silenzio durante le chiamate API sembra rotto al chiamante.
La vecchia casella "Run on call start" su API Tool RAG è stata sostituita dalla voce dedicata Pre fetch. Usa Pre fetch quando vuoi i dati prima che inizi la conversazione; usa API Tool RAG quando l'agente deve decidere durante la chiamata se recuperare.
Scrivere lo Schema dei parametri body
Nonostante il nome, Body Parameters Schema non è un body di richiesta grezzo. È un JSON Schema che descrive cosa l'IA deve estrarre dalla conversazione e passare al tuo strumento. A seconda del metodo HTTP e del template dell'URL, questi valori finiscono nell'URL, nella query string o nel body JSON:
| Metodo HTTP | Dove vanno i valori estratti |
|---|---|
URL contiene {name} | Il valore corrispondente viene sostituito nell'URL |
GET, DELETE | I valori rimanenti vengono aggiunti all'URL come ?key=value |
POST, PUT, PATCH | I valori rimanenti vengono inviati come body JSON |
Struttura minima
{
"type": "object",
"properties": {
"param_name": {
"type": "string",
"description": "Cos'è questo valore e come l'IA dovrebbe sceglierlo"
}
},
"required": ["param_name"]
}
Il type radice è sempre "object". properties elenca ogni argomento. required segna quali devono essere sempre forniti dall'IA — se il cliente non l'ha ancora detto, l'IA chiederà prima di chiamare lo strumento.
Riferimento dei campi
| Campo | Scopo |
|---|---|
type | Tipo JSON del valore: "string", "number", "integer", "boolean", "array", "object" |
description | Il più importante. Dice all'IA cosa significa il valore, quale formato usare e quando fornirlo. Aggiungi esempi quando possibile. |
enum | Restringe il valore a uno di un elenco fisso. L'IA mapperà il parlato naturale sull'opzione più vicina (es. "quello blu" → "blue"). |
minimum, maximum | Limiti numerici. L'IA rifiuterà/limiterà i valori fuori intervallo. |
default | Valore usato quando l'IA non passa questo campo. Non obbligatorio, ma documenta il valore implicito. |
format | Suggerimento di validazione, es. "email", "date" (YYYY-MM-DD), "uri". |
Esempi
Ricerca prodotti (solo keyword):
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Keyword di ricerca prodotto — es. \"phone\", \"laptop\", \"Apple\", \"Samsung\""
}
},
"required": ["query"]
}
Usato con URL https://dummyjson.com/products/search?q={query}&limit=5 e GET: il valore query va nel placeholder dell'URL. Niente finisce nel body.
Ricerca ordine per ID:
{
"type": "object",
"properties": {
"order_id": {
"type": "string",
"description": "ID ordine di cui il cliente sta chiedendo, di solito da 6 a 10 cifre. Chiedi al cliente se non fornito."
}
},
"required": ["order_id"]
}
Usato con URL https://api.example.com/orders/{order_id} e GET.
Prenotazione con più campi obbligatori:
{
"type": "object",
"properties": {
"product_id": {
"type": "string",
"description": "ID prodotto restituito da una precedente chiamata search_products."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 10,
"description": "Quanti articoli prenotare. Predefinito 1."
},
"delivery_method": {
"type": "string",
"enum": ["pickup", "home_delivery", "locker"],
"description": "Come il cliente vuole ricevere l'articolo."
},
"customer_email": {
"type": "string",
"format": "email",
"description": "Email del cliente per conferma ordine. Chiedi se non fornita."
}
},
"required": ["product_id", "delivery_method", "customer_email"]
}
Usato con POST https://api.example.com/reservations: i quattro valori vanno nel body JSON. L'IA chiederà al cliente i campi required mancanti prima di chiamare lo strumento.
Strumento senza parametri:
{
"type": "object",
"properties": {}
}
Usa questo quando l'endpoint è completamente statico (es. GET /store/hours) e l'IA non deve passare nulla.
Best practice per gli agenti vocali IA
- Mantieni lo schema piatto. Oggetti annidati e array funzionano, ma l'IA può scivolare quando parla al telefono. Preferisci massimo 3–5 campi di primo livello.
- Scrivi sempre una
descriptionper ogni campo. Includi esempi (es. "phone", "laptop") — gli esempi guidano l'IA in modo più affidabile delle definizioni astratte. - Usa
enumogni volta che hai un elenco fisso di valori. Rimuove il rischio che l'IA inventi valori o invii"Electronics"invece di"electronics". - Marca un campo
requiredsolo se lo strumento non può funzionare senza di esso. Tutto il resto è opzionale, e l'IA lo salterà quando il cliente non l'ha menzionato — niente domande extra imbarazzanti. - Usa nomi in
snake_casee fai corrispondere esattamente qualsiasi token{placeholder}nell'URL. - Documenta il comportamento per i valori mancanti nella
description— es."Ometti se nessun limite di budget","Predefinito 5".
Azioni post-chiamata
Le azioni post-chiamata si attivano una volta che la chiamata è terminata e la catena di analisi ha prodotto il riepilogo, il sentiment e le variabili estratte. Consumano dati della chiamata — non parlano con il cliente.
Azioni disponibili
| Azione | Scopo |
|---|---|
| Send Email | Invia un riepilogo strutturato via email al tuo team o cliente |
| Send SMS | Conferma di testo al chiamante |
| Send WhatsApp | Messaggio WhatsApp o template (funziona dentro e fuori dalla finestra di 24 ore) |
| API Call | Invia il payload completo della chiamata a un'API esterna (CRM, webhook, il tuo data warehouse) |
Send Email
| Impostazione | Descrizione |
|---|---|
| Name | Obbligatorio. Identificatore dell'azione |
| Subject | Obbligatorio. Oggetto dell'email |
| Message Body | Obbligatorio. Corpo dell'email — può includere variabili di recupero |
| Trigger Condition | Quando inviare (vuoto = sempre) |
| Recipients | Obbligatorio. Indirizzi email che ricevono sempre l'email |
| Conditional Recipients | Mappatura condizione-destinatario |
Uso delle variabili nell'email:
Nuovo lead da chiamata telefonica:
Nome: {{customer_name}}
Email: {{customer_email}}
Interessato a: {{selected_plan}}
Note: {{call_notes}}
Send SMS
| Impostazione | Descrizione |
|---|---|
| Name | Obbligatorio. Identificatore dell'azione |
| Sender Name | Nome mittente visualizzato |
| Message | Obbligatorio. Contenuto SMS (può includere variabili) |
| Trigger Condition | Quando inviare |
| Recipients | Obbligatorio. Numeri di telefono che ricevono sempre l'SMS |
| Conditional Recipients | Mappatura condizione-numero |
Send WhatsApp
La messaggistica WhatsApp su HANC usa template pre-approvati da un account Twilio Content centrale — non incolli un Template SID a mano. L'editor dell'azione mostra un menu a discesa di ogni template attualmente attivo e approvato, e ne scegli uno. I placeholder all'interno del template ({{1}}, {{2}}, …) vengono poi riempiti inline da variabili di chiamata o testo statico che mappi nell'editor.
| Impostazione | Descrizione |
|---|---|
| Name | Obbligatorio. Identificatore dell'azione |
| Trigger Condition | Quando inviare |
| Recipients | Obbligatorio. Numeri di telefono che ricevono sempre il messaggio |
| Conditional Recipients | Mappatura condizione-numero |
| Template | Obbligatorio. Selettore a discesa di template WhatsApp pre-approvati sincronizzati dall'account Twilio Content centrale. Ogni voce mostra il nome del template, la lingua e un'anteprima del corpo così sai quale scegliere. |
| Template Variables | Per il template scelto, l'editor elenca ogni placeholder ({{1}}, {{2}}, …) e ti consente di mapparlo a una variabile di chiamata (vedi sotto) o una stringa statica. |
Variabili di chiamata disponibili che puoi mappare nei placeholder del template:
| Variabile | Descrizione |
|---|---|
{{call_from}} | Numero di telefono del chiamante |
{{call_to}} | Numero chiamato |
{{call_summary}} | Riepilogo della chiamata generato dall'IA |
{{call_sentiment}} | Sentiment (positivo/neutro/negativo) |
{{call_task_achieved}} | Se il task della chiamata è stato raggiunto |
{{call_transcription}} | Trascrizione completa della chiamata |
WhatsApp richiede che ogni messaggio business-initiated al di fuori della finestra di assistenza clienti di 24 ore usi un template pre-approvato. HANC sincronizza l'elenco dei template approvati dall'account Twilio Content condiviso, quindi il menu a discesa mostra sempre esattamente ciò che è eleggibile da inviare in questo momento — non puoi accidentalmente scegliere una bozza, un template rifiutato o un SID che non esiste. Per aggiungere un nuovo template, contatta il supporto; una volta approvato da WhatsApp appare automaticamente nel menu a discesa.
API Call
L'azione post-call API Call è il tuo webhook generico verso il resto del tuo stack. Scegli il metodo, imposta l'URL e invieremo l'intero payload della chiamata — il tuo endpoint riceve un oggetto JSON strutturato che descrive cosa è successo.
| Impostazione | Descrizione |
|---|---|
| Name | Obbligatorio. Identificatore dell'azione |
| Trigger Condition | Quando attivare (vuoto = ogni chiamata). Valutato da un LLM rispetto alla trascrizione. |
| API URL | Obbligatorio. URL endpoint API |
| HTTP Method | Obbligatorio. GET, POST, PUT, DELETE, PATCH |
| Headers | Header di richiesta opzionali |
| Query Parameters | Parametri della query string opzionali |
Cosa riceve il tuo endpoint
Per POST / PUT / PATCH, il tuo endpoint riceve un oggetto JSON nel body della richiesta. I tuoi parametri body configurati vengono uniti con il payload completo della chiamata:
{
"call_from": "+431234567890",
"call_to": "+439876543210",
"direction": "inbound",
"call_type": "phone",
"call_status": "ended",
"start_timestamp": 1730000000000,
"end_timestamp": 1730000187000,
"duration": 187000,
"transcription": [
{ "speaker": "agent", "content": "Hello…", "timestamp": 1730000001000 },
{ "speaker": "user", "content": "Hi…", "timestamp": 1730000003000 }
],
"call_summary": "Customer asked about pricing…",
"task_achieved": true,
"sentiment": { "sentiment": "positive", "explanation": "…" },
"custom_analysis_data": {
"name": "John",
"email": "john@example.com"
},
"collected_data": { /* invio di moduli in chiamata */ },
"transfer_history": [ /* se è avvenuto un trasferimento agente */ ],
"recording_url": "https://…",
"disconnection_reason": "user_hangup",
"is_anonymous": false,
"is_simulation": false,
"created_at": 1730000000000,
"updated_at": 1730000187000
}
Per GET / DELETE, gli stessi campi vengono appiattiti nella query string — ma i valori annidati come transcription, sentiment e custom_analysis_data vengono eliminati (gli URL non possono trasportare dati strutturati in modo ragionevole). Usa POST/PUT/PATCH se hai bisogno del transcript.
Ogni richiesta ottiene anche un header X-Correlation-Id per il tracing, e va in timeout dopo 30 secondi.
- Pre fetch applica template a
{phone}ecc. in URL/header/query/body. Restituisce nel prompt, prima della chiamata. - Post call API Call invia l'intero dump della chiamata nel body o nella query. Nessun templating URL — il tuo endpoint ottiene URL statico + body dinamico.
Variabili di recupero
Le Retrieval Variables sono campi dati personalizzati che l'IA estrae automaticamente dalle conversazioni. Ad esempio, l'agente può catturare il nome del chiamante, l'email, il numero di telefono o qualsiasi altra informazione tu definisca.
Variabili predefinite
Ogni nuovo agente viene creato con due variabili di recupero predefinite:
| Variabile | Tipo | Descrizione |
|---|---|---|
| Indirizzo email del chiamante | ||
| Phone | Phone | Numero di telefono del chiamante |
Queste sono abilitate per impostazione predefinita e mostrate nel modulo del widget di chiamata. Puoi modificarle o rimuoverle, e aggiungere le tue variabili personalizzate.
Tipi di variabili
| Tipo | Caso d'uso | Esempio |
|---|---|---|
| Text | Nomi, indirizzi, note, input in forma libera | Nome cliente, indirizzo di consegna |
| Number | Quantità, budget, ID | Quantità ordine, importo budget |
| Indirizzi email con validazione | Email cliente | |
| Phone | Numeri di telefono con validazione | Numero di telefono cliente |
| Selector | Scelta da opzioni predefinite | Piano preferito (Basic/Pro/Enterprise) |
| Checkbox | Consenso o conferma sì/no | "Accetto di ricevere email di marketing" |
Configurazione di una variabile
| Campo | Descrizione | Esempio |
|---|---|---|
| Variable Name | Obbligatorio. Identificatore della variabile | customer_email |
| Instructions for AI | Obbligatorio. Istruzioni per l'IA su quando e come estrarre questo valore | "L'indirizzo email del cliente. Chiedi se non fornito." |
| Example Format | (Opzionale) Esempio di formato atteso | "john@example.com" |
| Options (for Selector) | (Solo Selector) Elenco delle opzioni consentite | ["Basic", "Pro", "Enterprise"] |
| Show in Form | Se mostrare questo campo nel modulo del widget di chiamata | Abilitato per impostazione predefinita |
Mostra nel modulo
Quando Show in Form è abilitato, la variabile appare come campo di input visibile nel widget web prima e durante la chiamata. Questo consente ai chiamanti di compilare le loro informazioni direttamente, oltre all'estrazione dalla conversazione da parte dell'IA.
L'IA chiederà naturalmente le informazioni mancanti durante la conversazione. Imposta una descrizione chiara come "L'indirizzo email del cliente, chiedi educatamente se non fornito" e l'agente lo gestirà.
Aggiungere strumenti e azioni
- Vai alla scheda Actions del tuo agente.
- Fai clic su Add Tool.
- Scegli la fase giusta dal menu a discesa — Pre fetch, Live call o Post call.
- Configura le impostazioni.
- Salva — le modifiche si applicano alla chiamata successiva.
Tutte le voci sono elencate insieme nella tabella Actions. Fai clic su qualsiasi riga per modificare, o usa l'icona del cestino per eliminare.
Correlati
- Panoramica degli agenti vocali IA
- Prompt Engineering — Fai riferimento agli strumenti nel tuo prompt
- Knowledge Base — Fonti di informazione
- Integrazioni — Sistemi esterni con cui i tuoi strumenti possono comunicare