Realizza il tuo Google Call Screening basato su Voximplant e Dialogflow

Realizza il tuo Google Call Screening basato su Voximplant e Dialogflow
Potresti aver sentito o letto della funzione di screening delle chiamate che Google ha implementato per i suoi telefoni Pixel negli Stati Uniti. L'idea è fantastica: quando ricevi una chiamata in arrivo, l'assistente virtuale inizia a comunicare, mentre tu vedi questa conversazione sotto forma di chat e in qualsiasi momento puoi iniziare a parlare al posto dell'assistente. Questo è molto utile in questi giorni in cui quasi la metà delle chiamate sono spam, ma non vuoi perdere chiamate importanti da qualcuno non presente nel tuo elenco di contatti. L'unico problema è che questa funzionalità è disponibile solo sul telefono Pixel e solo negli Stati Uniti. Beh, gli ostacoli ci sono da superare, giusto? Pertanto, abbiamo deciso di dirti come realizzare una soluzione simile utilizzando Voximplant e Dialogflow. Per favore, sotto cat.

Architettura

Ti suggerisco di non perdere tempo a spiegare come funzionano Voximplant e Dialogflow; se lo desideri puoi trovare facilmente informazioni su Internet. Facciamo quindi conoscenza con il concetto stesso del nostro Call Screening.

Supponiamo che tu abbia già un determinato numero di telefono che usi ogni giorno e sul quale ricevi chiamate importanti. In questo caso, avremo bisogno di un secondo numero, che verrà indicato ovunque: nella posta, su un biglietto da visita, quando compili moduli online, ecc. Questo numero sarà collegato a un sistema di elaborazione del linguaggio naturale (nel nostro caso, Dialogflow) e inoltrerà le chiamate al tuo numero principale solo se lo desideri. In forma di diagramma appare così (l'immagine è cliccabile):
Realizza il tuo Google Call Screening basato su Voximplant e Dialogflow
Comprendendo l'architettura, possiamo occuparci dell'implementazione, ma con un avvertimento: non lo faremo mobile applicazione per mostrare un dialogo tra Dialogflow e un chiamante in entrata, creeremo un semplice tela-un'applicazione con un renderer di dialoghi per mostrare chiaramente come funziona il Call Screening. Questa applicazione avrà un pulsante Intervieni, premendo il quale Voximplant collegherà l'abbonato in entrata con l'abbonato chiamato, se quest'ultimo ha deciso di parlare da solo.

implementazione

registrati il tuo account Voximplant e creare una nuova applicazione, ad esempio screening:

Realizza il tuo Google Call Screening basato su Voximplant e Dialogflow
Apri sezione "Camere" e acquista un numero che farà da intermediario:

Realizza il tuo Google Call Screening basato su Voximplant e Dialogflow
Successivamente, vai all'applicazione di screening, nella sezione “Numeri”, scheda “Disponibili”. Qui vedrai il numero che hai appena acquistato. Collegalo all'applicazione utilizzando il pulsante "Allega" - nella finestra visualizzata, lascia tutti i valori predefiniti e fai clic su "Allega".

Una volta all'interno dell'applicazione, vai alla scheda "Script" e crea uno script myscreening: in esso utilizziamo il codice dell'articolo Come utilizzare il connettore Dialogflow. In questo caso il codice verrà leggermente modificato, perché abbiamo bisogno di “vedere” il dialogo tra chi chiama e l'assistente; tutto il codice è possibile prendi qui.

ATTENZIONE: dovrai cambiare il valore della variabile server con il nome del tuo server ngrok (i dettagli su ngrok saranno riportati di seguito). Sostituisci anche i tuoi valori alla riga 31, dove il tuo numero di telefono è il tuo numero principale (ad esempio, il tuo cellulare personale) e numero voximplant è il numero che hai acquistato di recente.

outbound_call = VoxEngine.callPSTN(“YOUR PHONE NUMBER”, “VOXIMPLANT NUMBER”)

La chiamataChiamata PSTN avverrà nel momento in cui decidi di entrare nella conversazione e parlare personalmente con l'abbonato in arrivo.

Dopo aver salvato lo script, è necessario collegarlo al numero acquistato. Per fare ciò, mentre sei ancora all'interno dell'applicazione, vai alla scheda "Routing" per creare una nuova regola: il pulsante "Nuova regola" nell'angolo in alto a destra. Fornire un nome (ad esempio, allcalls), lasciare la maschera predefinita (.* - il che significa che tutte le chiamate in entrata verranno elaborate dagli script selezionati per questa regola) e specificare lo script myscreening.

Realizza il tuo Google Call Screening basato su Voximplant e Dialogflow
Salva la regola.

D'ora in poi il numero di telefono è legato alla sceneggiatura. L'ultima cosa che devi fare è collegare il bot all'applicazione. Per fare ciò, vai alla scheda "Connettore Dialogflow", fai clic sul pulsante "Aggiungi agente Dialogflow" nell'angolo in alto a destra e carica il file JSON del tuo agente Dialogflow.

Realizza il tuo Google Call Screening basato su Voximplant e Dialogflow
Se hai bisogno di un agente per esempio/test, puoi prendere il nostro a questo link: github.com/aylarov/callscreening/tree/master/dialogflow. Basta non pretendere molto da esso, questo è solo un esempio che sei libero di rifare come preferisci e sentiti libero di condividere i risultati :)

Backend semplice su NodeJS

Distribuiamo un semplice backend su un nodo, ad esempio, in questo modo:
github.com/aylarov/callscreening/tree/master/nodejs

Questa è una semplice applicazione che richiede solo due comandi per essere eseguita:

npm install
node index.js

Il server funzionerà sulla porta 3000 della tua macchina, quindi per collegarlo al cloud Voximplant utilizziamo l'utilità ngrok. Quando installi Ngrok, eseguilo con il comando:

ngrok http 3000

Vedrai il nome di dominio che ngrok ha generato per il tuo server locale: copialo e incollalo nella variabile del server.

Cliente

L'applicazione client si presenta come una semplice chat che puoi prendilo da qui.

Basta copiare tutti i file in una directory sul tuo server web e funzionerà. Nel file script.js, sostituisci la variabile server con il nome di dominio ngrok e la variabile callee con il numero che hai acquistato. Salva il file e avvia l'applicazione nel tuo browser. Se è tutto ok, vedrai la connessione WebSocket nel pannello dello sviluppatore.

Demo

Puoi vedere l'applicazione in azione in questo video:


PS Se clicchi sul pulsante Intervieni, il chiamante verrà indirizzato al mio numero di telefono, mentre se clicchi su Disconnetti, sarà...? Esatto, la chiamata verrà interrotta.

Fonte: habr.com

Aggiungi un commento