Approccio diagnostico
Quando si verificano problemi in produzione, utilizzare questo processo sistematico di risoluzione dei problemi:- Identificare i sintomi - Cosa è rotto? Chiamate che falliscono, agente che si comporta in modo errato, integrazioni non funzionanti?
- Verificare l’ambito - Interessa tutte le chiamate o un sottoinsieme specifico? Iniziato quando?
- Rivedere i log - Cercare messaggi di errore, pattern, tracce dello stack
- Isolare la causa - È un problema di configurazione, integrazione, piattaforma o operatore?
- Applicare la correzione - Distribuire la modifica più piccola che risolve il problema
- Validare - Testare accuratamente prima di contrassegnare come risolto
Problemi comuni e soluzioni
Nessuna chiamata in arrivo
Sintomo: Il numero di telefono non squilla, le chiamate vanno nel silenzio o “numero non in servizio”Verifica assegnazione numero di telefono
Verifica assegnazione numero di telefono
Diagnosi:
- Andare su Telefonia → Numeri
- Trovare il proprio numero, controllare la colonna “Agente assegnato”
- Verificare che sia assegnato all’agente corretto (non “Non assegnato”)
- Fare clic sul numero → Selezionare l’agente dal menu a discesa → Salvare
- Attendere 30 secondi per la propagazione dell’aggiornamento del routing
- Testare chiamando nuovamente il numero
Verifica registrazione trunk SIP
Verifica registrazione trunk SIP
Diagnosi:Cercare
"status": "registered". Se "unregistered" o "failed":Cause comuni:- Credenziali SIP errate (nome utente/password)
- IP non nella lista consentita dell’operatore
- Firewall che blocca UDP 5060
- Endpoint dell’operatore non funzionante
- Verificare le credenziali con l’operatore
- Controllare il portale dell’operatore per le impostazioni della lista consentita IP
- Testare con
curl -v sip:carrier.com:5060per verificare la connettività - Contattare l’operatore se il loro endpoint è irraggiungibile
Verifica provisioning del numero
Verifica provisioning del numero
Diagnosi:
- Lo stato del numero mostra “In sospeso” o “Fallito”
- Il numero è stato acquistato meno di 5 minuti fa
- Attendere fino a 10 minuti per il completamento del provisioning
- Se bloccato >30 min, fare clic su “Riprova provisioning”
- Se continua a fallire, contattare il supporto con i dettagli del numero
Problemi di routing dell'operatore
Problemi di routing dell'operatore
Diagnosi:
- Le chiamate funzionano quando LEI chiama, ma non dai telefoni dei clienti
- Prefissi specifici o operatori non riescono a raggiungerla
- Verificare che la tabella di routing dell’operatore includa il suo intervallo di numeri
- Verificare la registrazione CNAM (Nome chiamante)
- Controllare la marcatura spam (usare strumenti gratuiti di ricerca operatore)
- Potrebbe essere necessario contattare l’operatore per correggere il routing
Scarsa qualità delle chiamate
Sintoma: Audio interrotto, eco, voce robotica, lunghi ritardiProblemi audio (eco, rumore, interruzioni)
Problemi audio (eco, rumore, interruzioni)
Diagnosi:
Configurazione:
- Aprire Conversazioni → Log → Selezionare la chiamata interessata
- Controllare le metriche “Qualità chiamata”:
- Jitter: Dovrebbe essere <30ms
- Perdita pacchetti: Dovrebbe essere <1%
- RTT (Tempo di andata e ritorno): Dovrebbe essere <200ms
| Sintoma | Causa probabile | Correzione |
|---|---|---|
| Eco | Eco acustico (feedback altoparlante) | Abilitare AEC nelle impostazioni agente |
| Interrotto/Robotico | Perdita pacchetti o jitter | Controllare larghezza di banda rete, cambiare codec |
| Interruzioni | Firewall che blocca RTP | Aprire porte UDP 10000-60000 |
| Audio unidirezionale | Problema traversamento NAT | Abilitare relay TURN |
| Rumore di fondo | Ambiente rumoroso | Abilitare soppressione rumore |
Alta latenza (l'agente risponde lentamente)
Alta latenza (l'agente risponde lentamente)
Diagnosi:
- Controllare Dashboard → Metriche → Tempo medio di risposta
- Obiettivo: <500ms
- Se >1000ms, indagare:
-
Rallentamento del fornitore del modello
- Controllare status.openai.com o status.anthropic.com
- Cercare latenze elevate o interruzioni
- Passare al modello di fallback se disponibile
-
Finestra di contesto grande
- Istruzioni lunghe o recuperi massicci della base di conoscenza
- Soluzione: Ridurre lunghezza istruzioni, limitare i chunk KB a 3
-
Lentezza API esterna
- Controllare Analisi → Azioni per chiamate API lente
- API che impiegano >2s ritarderanno la risposta dell’agente
- Aggiungere limiti di timeout e risposte di fallback
-
Problemi di rete
- Controllare da più posizioni
- Se una regione specifica è interessata, potrebbe essere un problema di routing ISP
- Contattare il supporto per indagare
- Passare a modello più veloce (GPT-4 → GPT-3.5 Turbo)
- Ridurre il numero di chunk di base di conoscenza recuperati
- Aumentare i timeout API per evitare attese
Errori di trascrizione (parole sbagliate)
Errori di trascrizione (parole sbagliate)
Diagnosi:Provare trascrittore diverso:
- Rivedere la trascrizione in Conversazioni → Log
- Cercare pattern:
- Termini tecnici mal compresi → Aggiungere a vocabolario personalizzato
- Accenti fraintesi → Provare trascrittore diverso
- Rumore di fondo → Abilitare soppressione rumore
- Deepgram: Migliore per accenti, ambienti rumorosi
- Azure: Migliore per termini tecnici
- Whisper: Migliore per multilingue
- Usare codec a bitrate più alto (Opus 64kbps)
- Abilitare soppressione rumore
- Testare con telefono/microfono diverso per chiamate web
L’agente non risponde correttamente
Sintoma: L’agente dà risposte sbagliate, ignora le istruzioni, si comporta in modo erraticoL'agente non segue le istruzioni
L'agente non segue le istruzioni
Diagnosi:2. Istruzioni troppo lunghe (>500 parole):
- Aprire impostazioni agente → Conversazione → Istruzioni
- Testare nel simulatore con scenario esatto
- Verificare se il problema è:
- Sempre presente → Problema di istruzioni
- Intermittente → Problema di contesto o modello
- Il modello perde il focus su prompt lunghi
- Soluzione: Suddividere in sezioni chiare, usare elenchi puntati
- Esempio: “Sii conciso” ma anche “Fornisci spiegazioni dettagliate”
- Soluzione: Dare priorità a un comportamento, rimuovere il conflitto
- Eseguire 10 chiamate di test coprendo casi limite
- Rivedere le trascrizioni per la conformità
- Iterare le istruzioni in base ai fallimenti
L'agente alluicina o inventa fatti
L'agente alluicina o inventa fatti
Diagnosi:2. Espandere la base di conoscenza:4. Usare modalità citazione (se disponibile):
- L’agente dice cose che non sono nella base di conoscenza o nelle istruzioni
- Fornisce dettagli di prodotto, prezzi o politiche errati
- Base di conoscenza non abbastanza completa
- Le istruzioni non enfatizzano “usa solo informazioni fornite”
- Modello troppo creativo (temperatura troppo alta)
- Rivedere le risposte “Non lo so” nei log
- Aggiungere contenuto mancante alla KB
- Testare il recupero con query di esempio
- Forza l’agente a citare fonti KB
- Rende ovvio quando l’informazione non è nella KB
L'agente rimane bloccato in loop
L'agente rimane bloccato in loop
Diagnosi:2. Migliorare il riconoscimento dell’intento:
- L’agente ripete la stessa domanda 3+ volte
- La conversazione gira in tondo
- Il chiamante si frustra
- L’agente non riconosce che il chiamante ha risposto
- La trascrizione è fallita (non ha sentito la risposta)
- Le istruzioni non gestiscono il caso limite
- Aggiungere esempi di risposte di casi limite alle istruzioni
- Usare risposte strutturate (DTMF per info critiche)
- Abilitare fallback “Non sono sicuro” a umano
- Chiamante silenzioso
- Chiamante prolisso
- Chiamante con forte accento
- Ambiente rumoroso
Fallimenti di integrazione
Sintoma: Le azioni non si attivano, le chiamate API falliscono, i trasferimenti non funzionanoL'azione API fallisce
L'azione API fallisce
Diagnosi:
Test:Se curl manuale funziona ma l’agente fallisce, verificare:
- Aprire Conversazioni → Log → Selezionare chiamata fallita
- Navigare alla scheda Azioni
- Cercare messaggio di errore (es. “Timeout API”, “401 Non autorizzato”)
| Errore | Causa | Correzione |
|---|---|---|
401 Unauthorized | Chiave API errata | Rigenerare chiave, aggiornare config agente |
403 Forbidden | Problema di permessi | Concedere all’agente accesso alla risorsa |
404 Not Found | URL endpoint errato | Verificare URL nella configurazione azione |
408 Timeout | API troppo lenta | Aumentare timeout (predefinito 5s → 10s) |
500 Internal Server Error | API esterna non funzionante | Verificare pagina stato API, aggiungere logica di retry |
SSL Certificate Error | Problema HTTPS | Verificare certificato valido, non scaduto |
- Lista consentita IP (gli IP dell’agente potrebbero dover essere consentiti)
- Limitazione di tasso (l’agente può raggiungere i limiti più velocemente dei test manuali)
Il trasferimento fallisce
Il trasferimento fallisce
Diagnosi:
- L’agente dice “Trasferimento…” ma la chiamata cade o non succede nulla
- Controllare Log → Azioni per stato trasferimento
- Verificare formato numero (deve essere E.164: +1234567890)
- Verificare che il numero sia raggiungibile (chiamarlo manualmente)
- Alcuni operatori non supportano SIP REFER per i trasferimenti
- Soluzione: Usare “trasferimento assistito” invece di “trasferimento cieco”
- O abilitare modalità “ponte chiamata”
- Verificare con l’operatore se i trasferimenti sono abilitati
- Potrebbe essere necessario aggiornare il trunk SIP per supportarli
La base di conoscenza non recupera
La base di conoscenza non recupera
Diagnosi:Cause comuni:1. KB non collegata all’agente:
- L’agente dice “Non lo so” quando la risposta è nella KB
- Testare il recupero manualmente:
- Controllare impostazioni agente → Conoscenza → Verificare KB assegnata
- Il contenuto caricato di recente richiede 2-5 minuti per l’indicizzazione
- Verificare che lo stato KB mostri “Indicizzato” non “In elaborazione”
- Il cliente chiede “Posso ottenere un rimborso?” ma la KB dice “Politica di rimborso”
- Soluzione: Aggiungere sinonimi, riscrivere contenuto KB per corrispondere a frasi comuni
- Soglia minima di similarità troppo alta (es. 0.9)
- Soluzione: Abbassare a 0.7-0.8
Capacità e prestazioni
Raggiungimento limiti di concorrenza
Raggiungimento limiti di concorrenza
Sintoma: Segnale di occupato, chiamate in coda per minuti, messaggio “Tutti gli agenti occupati”Diagnosi:
- Controllare Dashboard → Capacità per concorrenza attuale/massima
- Rivedere grafico volume chiamate per orari di punta
- Abilitare coda: Lasciare che i chiamanti attendano invece del segnale occupato
- Aggiungere agente di overflow: Instradare ad agente di backup quando il principale è a capacità
- Estendere orari commerciali: Distribuire volume su più ore
- Offrire richiamata: “Ti richiameremo tra 10 minuti”
- Aggiornare piano: Aumentare limite chiamate concurrent
- Bilanciamento carico: Creare più agenti, distribuire numeri
- Auto-scaling: Abilitare scaling dinamico capacità (Enterprise)
- Incentivi fuori picco: Incoraggiare chiamate durante periodi di basso traffico
Alto volume di chiamate sovraccarica il sistema
Alto volume di chiamate sovraccarica il sistema
Sintoma: Le chiamate impiegano più tempo a connettersi, la coda si accumula, gli errori aumentanoDiagnosi:
- Picco di traffico improvviso (3x+ volume normale)
- Verificare:
- Campagna marketing lanciata?
- Menzione nei media / post virale?
- Interruzione del sistema che causa tempesta di tentativi?
- Limitazione tasso: Ridurre temporaneamente chiamate concorrenti massime per stabilizzare
- Coda aggressiva: Trattenere chiamate invece di scartarle
- Messaggio di fallback: “Volume insolitamente alto. Riprova tra 15 minuti.”
- Scaling di emergenza: Contattare supporto per aumento temporaneo capacità
- Prevedere traffico per eventi noti (lanci prodotti, vendite)
- Pre-scalare capacità prima dei picchi attesi
- Configurare trigger di auto-scaling
Costi più alti del previsto
Costi più alti del previsto
Diagnosi:
- Controllare Fatturazione → Utilizzo per ripartizione:
- Costi API modello
- Minuti telefonia
- Costi archiviazione
- Funzionalità premium (ML-AMD, ecc.)
- Chiamata media >10 minuti (tipico è 3-5 min)
- Causa: Agente troppo verboso, loop, non termina chiamate
- Correzione: Aggiungere obiettivi durata chiamata, abilitare timeout
- Usare GPT-4 per semplici chiamate FAQ
- Correzione: Passare a GPT-3.5 Turbo (3x più economico)
- Non usare AMD, addebitando minuti completi per segreterie
- Correzione: Abilitare AMD basato su testo (gratis) o ML-AMD (+€0,01/chiamata ma risparmia €0,50+/VM)
- Usare trascrittore premium per tutte le chiamate
- Correzione: Usare trascrittore standard a meno che la precisione non sia critica
- Abilitare AMD per campagne in uscita
- Impostare durata massima chiamata (es. 15 minuti)
- Usare modello più economico per chiamate semplici
- Comprimere registrazioni audio (bitrate più basso)
- Eliminare automaticamente vecchie registrazioni dopo 30 giorni
Strumenti e tecniche di debug
Analisi log
Accesso ai log:- Conversazioni → Log → Usare filtri:
- Stato: Fallito
- Intervallo date: Ultime 24 ore
- Agente: agente specifico
- Tipo errore: errore specifico
Debug dal vivo
Modalità sussurro:- Unirsi a chiamata dal vivo senza che il cliente senta
- Guidare l’agente sussurrando istruzioni
- Vedere trascrizione in tempo reale
- Aprire Conversazioni → Monitor dal vivo
- Trovare chiamata attiva
- Fare clic su Sussurra
- Parlare istruzioni (l’agente sente, il cliente no)
- Agente bloccato → “Trasferisci al reparto fatturazione”
- Agente sta per dare info errata → “Controlla base conoscenza per prezzi”
- Caso limite → Guidare l’agente attraverso scenario insolito
Test in produzione
Chiamate canary:- Fare chiamate di test durante orario commerciale
- Usare scenari noti
- Confrontare con comportamento atteso
- Etichettare come test per filtraggio:
metadata: {test_call: true}
- Chiamate di test automatizzate ogni ora
- Verificare che i flussi chiave funzionino ancora
- Allertare se i test iniziano a fallire
Quando contattare il supporto
Contattare support@itellico.ai quando:- Problemi di piattaforma: Interruzioni diffuse, errori API che influenzano tutti gli agenti
- Incidenti di sicurezza: Violazione sospetta, pattern di accesso insoliti
- Dispute di fatturazione: Addebiti inattesi, discrepanze di utilizzo
- Problemi operatore: Trunk SIP non si registra, problemi portabilità numero
- Segnalazioni bug: Bug chiari della piattaforma (non problemi di configurazione)
- ID agente e ID chiamate che mostrano il problema
- Messaggi di errore dai log
- Passi per riprodurre
- Cosa hai già provato
- Impatto aziendale (quanti utenti interessati)
- Critico (produzione ferma): <1 ora
- Alto (funzionalità principale rotta): <4 ore
- Medio (esiste soluzione alternativa): <24 ore
- Basso (richiesta funzionalità, domanda): <48 ore