Crea o teu propio exame de chamadas de Google baseado en Voximplant e Dialogflow

Crea o teu propio exame de chamadas de Google baseado en Voximplant e Dialogflow
Quizais teñas escoitado ou lido sobre a función de detección de chamadas que Google lanzou para os seus teléfonos Pixel nos EUA. A idea é xenial: cando recibes unha chamada entrante, o asistente virtual comeza a comunicarse, mentres ves esta conversa en forma de chat e en calquera momento podes comezar a falar en lugar do asistente. Isto é moi útil estes días cando case a metade das chamadas son spam, pero non queres perder as chamadas importantes de alguén que non está na túa lista de contactos. O único problema é que esta funcionalidade só está dispoñible no teléfono Pixel e só nos EUA. Pois hai obstáculos que superar, non? Por iso, decidimos contarche como facer unha solución similar usando Voximplant e Dialogflow. Por favor debaixo do gato.

Arquitectura

Suxiro que non perdas o tempo explicando como funcionan Voximplant e Dialogflow; se o desexas, podes atopar facilmente información en Internet. Entón, imos familiarizarnos co propio concepto da nosa selección de chamadas.

Supoñamos que xa tes un determinado número de teléfono que utilizas todos os días e no que recibes chamadas importantes. Neste caso, necesitaremos un segundo número, que se indicará en todas partes: por correo, nunha tarxeta de visita, cando enche formularios en liña, etc. Este número conectarase a un sistema de procesamento da linguaxe natural (no noso caso, Dialogflow) e reenviará as chamadas ao teu número principal só se o desexas. En forma de diagrama ten o seguinte aspecto (a imaxe pódese facer clic):
Crea o teu propio exame de chamadas de Google baseado en Voximplant e Dialogflow
Entendendo a arquitectura, podemos asumir a implementación, pero cunha salvedade: non o faremos móbil aplicación para mostrar un diálogo entre Dialogflow e unha chamada entrante, crearemos un sinxelo a web-unha aplicación cun renderizador de diálogos para mostrar claramente como funciona o Filtro de chamadas. Esta aplicación contará cun botón Intervir, ao pulsar cal Voximplant conectará o abonado entrante co abonado marcado, se este decide falar por si mesmo.

Implantación

Rexístrate a túa conta de Voximplant e crea unha nova aplicación, por exemplo a selección:

Crea o teu propio exame de chamadas de Google baseado en Voximplant e Dialogflow
Abre sección "Cuartos" e compra un número que funcionará como intermediario:

Crea o teu propio exame de chamadas de Google baseado en Voximplant e Dialogflow
A continuación, vai á aplicación de selección, na sección "Números", pestana "Dispoñible". Aquí verás o número que acabas de mercar. Vincúlao á aplicación usando o botón "Anexar": na xanela que aparece, deixe todos os valores predeterminados e faga clic en "Anexar".

Unha vez dentro da aplicación, vai á pestana "Scripts" e crea un script myscreening - nel usamos o código do artigo Como usar Dialogflow Connector. Neste caso, o código modificarase lixeiramente, porque necesitamos "ver" o diálogo entre a persoa que chama e o asistente; todo o código é posible leva aquí.

ATENCIÓN: terá que cambiar o valor da variable do servidor polo nome do seu servidor ngrok (detalles sobre ngrok a continuación). Substitúe tamén os seus valores na liña 31, onde o seu número de teléfono é o seu número principal (por exemplo, o seu teléfono móbil persoal) e o número de voximplant é o número que comprou recentemente.

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

A chamada PSTN producirase no momento en que decides entrar na conversa e falar persoalmente co subscritor entrante.

Despois de gardar o script, debes vinculalo ao número comprado. Para iso, mentres aínda está dentro da súa aplicación, vai á pestana "Enrutamento" para crear unha nova regra: o botón "Nova regra" na esquina superior dereita. Proporcione un nome (por exemplo, todas as chamadas), deixe a máscara predeterminada (.* - o que significa que todas as chamadas entrantes serán procesadas polos scripts seleccionados para esta regra) e especifique o script myscreening.

Crea o teu propio exame de chamadas de Google baseado en Voximplant e Dialogflow
Garda a regra.

A partir de agora, o número de teléfono está ligado ao guión. O último que cómpre facer é ligar o bot á aplicación. Para iso, vaia á pestana "Conector Dialogflow", faga clic no botón "Engadir axente de Dialogflow" na esquina superior dereita e cargue o ficheiro JSON do seu axente Dialogflow.

Crea o teu propio exame de chamadas de Google baseado en Voximplant e Dialogflow
Se necesitas un axente por exemplo/probas, podes levar o noso nesta ligazón: github.com/aylarov/callscreening/tree/master/dialogflow. Simplemente non lle esixes moito, este é só un exemplo que podes refacer como queiras e non dubides en compartir os resultados :)

Backend sinxelo en NodeJS

Imos implementar un backend sinxelo nun nodo, por exemplo, como este:
github.com/aylarov/callscreening/tree/master/nodejs

Esta é unha aplicación sinxela que só require dous comandos para executarse:

npm install
node index.js

O servidor executarase no porto 3000 da túa máquina, polo que para conectalo á nube Voximplant, usamos a utilidade ngrok. Cando instales ngrok, execútao co comando:

ngrok http 3000

Verás o nome de dominio que ngrok xerou para o teu servidor local: cópiao e pégao na variable do servidor.

Cliente

A aplicación cliente parece un simple chat que podes cólleo de aquí.

Simplemente copie todos os ficheiros nalgún directorio do seu servidor web e funcionará. No ficheiro script.js, substitúe a variable do servidor polo nome de dominio ngrok e a variable chamada polo número que comprou. Garda o ficheiro e inicia a aplicación no teu navegador. Se todo está ben, verás a conexión WebSocket no panel de desenvolvedores.

Demostración

Podes ver a aplicación en acción neste vídeo:


PD Se fai clic no botón Intervir, a persoa que chama dirixirase ao meu número de teléfono, e se fai clic en Desconectar, será...? Así é, a chamada desconectarase.

Fonte: www.habr.com

Engadir un comentario