Chatbot o voicebot per la creazione di un operatore telefonico virtuale
Siamo stati contattati da un cliente, circa 4 mesi fa, il quale aveva l’esigenza di creare un voicebot per automatizzare fuori orario, il processo telefonico.
Inizialmente il cliente aveva ipotizzato di usare Dialogflow per creare un vero e propio bot telefonico (chatbot), per consentire ai propri clienti, di svolgere le normali operazioni anche al di fuori degli orari di apertura, sotto forma di interpretazione dell’intenzione del chiamante.
Diciamo che dopo i primi contatti, abbiamo capito che il discorso chatbot veniva a cadere, una buona parte della clientela che avrebbe telefonato era di nazionalità straniera, con una pronuncia quanto meno non impeccabile. Questa intuizione, gli unici tra quelli interpellati dal cliente, ci ha fatto guadagnare la commessa.
Abbiamo quindi optato per un sistema con un classico menù ivr con scelte da pad telefonico, e domande secche in cui si sarebbe utilizzato il GSR Google Speech Recognition.
Nel caso specifico al chiamante viene chiesto di pronunciare il nome della città in cui si sposterà, ed attraverso delle API, una volta validato il riconoscimento vocale attraverso un raffronto ad un database di città italiane esistenti, viene aggiornato un annuncio pubblicato sul sito di proprietà del cliente.
Naturalmente lo strumento ideale è Asterisk pbx, al quale si è aggiunto un server MRCP con connettore verso le APi Google DialogFlow (abbiamo optato per queste licenze poichè non escludiamo in futuro che il cliente possa utilizzarle, ed a parità di costo, DialogFlow utilizza comunque il motore di riconoscimento della voce GSR ).
Ad Asterisk pbx abbiamo affiancato tutta una serie di script php e bash per poter, di volta in volta, ottimizzare il processo, nonchè ODBC per la connessione al database MySql delle città italiane.
Come sempre, per rendere più naturale il processo telefonico, utilizziamo Amazon Polly, per la creazione in tempo reale, di risposte personalizzate. Prendento i dati da variabili presenti in vari database e a cui da riferimeneto il numero telefonico del chiamante.
E.G attraverso l’identificativo chiamante CallerID, sappiamo se il cliente è già presente nel database e possiamo salutarlo per nome e cognome, prima di porgli le domande di rito.
Per il discorso pronuncia, monitoriamo costantemente e stocchiamo quello che DialogFlow riconosce del parlato, e nel caso ci siano “difetti” di pronuncia ripetuti (vedi la b argentina che viene pronunciata v, oppure la elle brasiliana che davanti ad una vocale quasi sparisce), andiamo ad aggiungere un record nel database dei paesi linkandolo con la pronuncia relativa ad un determinto ceppo linguistico.
E.G la città di Alba, pronunciata da una brasiliana, è stata rinosciuta da DialogFlow per 2 volte come Auba. Quindi abbiamo inserito Auba come fosse Alba.
Il sistema, vista la soddisfazione del cliente, adesso viene utilizzato anche in orario di apertura, come prima scelta per il chiamante, che può comunque optare (in orario di ufficio) per l’operatore fisico. Questo ha consentito al cliente di spostare il 50% della forza lavoro verso mansioni con una produttività maggiore.
L’automazione del processo telefonico mediante l’utizzo di Chatbot o voicebot per la creazione di un operatore telefonico virtuale, è ormai una realtà alla portata di tutti.