Google'i kõnede sõelumine Voximplanti ja Dialogflow põhjal

Google'i kõnede sõelumine Voximplanti ja Dialogflow põhjal
Võib-olla olete kuulnud või lugenud kõnede läbivaatuse funktsioonist, mille Google oma Pixeli telefonide jaoks USA-s kasutusele võttis. Idee on suurepärane - kui saate sissetuleva kõne, hakkab virtuaalne assistent suhtlema, samal ajal kui näete seda vestlust vestluse vormis ja igal ajal saate assistendi asemel rääkima hakata. See on tänapäeval väga kasulik, kui peaaegu pooled kõned on rämpspost, kuid te ei taha jääda ilma olulistest kõnedest kelleltki, kes pole teie kontaktiloendis. Ainus konks on see, et see funktsioon on saadaval ainult Pixeli telefonis ja ainult USA-s. Noh, takistusi tuleb ületada, eks? Seetõttu otsustasime teile rääkida, kuidas Voximplanti ja Dialogflow abil sarnast lahendust teha. Palun kassi alla.

arhitektuur

Soovitan teil mitte raisata aega Voximplanti ja Dialogflow toimimise selgitamisele; soovi korral leiate hõlpsalt teavet Internetist. Nii et tutvume meie kõnede sõelumise kontseptsiooniga.

Oletame, et teil on juba kindel telefoninumber, mida kasutate iga päev ja millelt saate olulisi kõnesid. Sel juhul vajame teist numbrit, mis märgitakse kõikjal - posti teel, visiitkaardil, veebivormide täitmisel jne. See number ühendatakse loomuliku keele töötlemissüsteemiga (meie puhul Dialogflow) ja suunab kõned teie põhinumbrile ainult siis, kui soovite. Diagrammi kujul näeb see välja selline (pilti saab klõpsata):
Google'i kõnede sõelumine Voximplanti ja Dialogflow põhjal
Arhitektuurist aru saades võime teostuse enda peale võtta, kuid ühe hoiatusega: me ei tee seda Tegemist oli mobiilse rakendus Dialogflow ja sissetuleva helistaja vahelise dialoogi kuvamiseks, loome lihtsa veebi- dialoogirenderdajaga rakendus, mis näitab selgelt, kuidas kõnede sõelumine töötab. Sellel rakendusel on nupp Intervene, millele vajutades ühendab Voximplant sissetuleva abonendi valitud abonendiga, kui viimane otsustas ise rääkida.

Реализация

Logi sisse oma Voximplanti kontot ja looge uus rakendus, näiteks sõelumine:

Google'i kõnede sõelumine Voximplanti ja Dialogflow põhjal
Avatud jaotis "Toad" ja osta number, mis töötab vahendajana:

Google'i kõnede sõelumine Voximplanti ja Dialogflow põhjal
Järgmisena minge sõelumisrakendusse jaotise „Numbrid” vahekaardil „Saadaval”. Siin näete äsja ostetud numbrit. Linkige see rakendusega, kasutades nuppu "Manusta" - ilmuvas aknas jätke kõik vaikeväärtused ja klõpsake nuppu "Manusta".

Kui olete rakenduses sees, minge vahekaardile "Skriptid" ja looge skripti myscreening - selles kasutame artikli koodi Kuidas kasutada Dialogflow Connectorit. Sel juhul muudetakse koodi veidi, kuna peame "nägema" helistaja ja assistendi vahelist dialoogi; kõik kood on võimalik võta siit.

TÄHELEPANU: peate muutma serveri muutuja väärtuse oma ngrok-serveri nimeks (üksikasjad ngroki kohta leiate allpool). Asendage oma väärtused ka real 31, kus teie telefoninumber on teie põhinumber (näiteks teie isiklik mobiiltelefon) ja voksiimplantaadi number on hiljuti ostetud number.

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

Kõne PSTN-kõne toimub hetkel, kui otsustate vestlusesse tungida ja sissetuleva abonendiga isiklikult rääkida.

Pärast skripti salvestamist peate selle linkima ostetud numbriga. Selleks minge oma rakenduses olles vahekaardile "Marsruutimine", et luua uus reegel – nupp "Uus reegel" paremas ülanurgas. Sisestage nimi (näiteks kõik kõned), jätke vaikemask (.* – see tähendab, et kõiki sissetulevaid kõnesid töötlevad selle reegli jaoks valitud skriptid) ja määrake myscreening skript.

Google'i kõnede sõelumine Voximplanti ja Dialogflow põhjal
Salvestage reegel.

Nüüdsest on telefoninumber skriptiga seotud. Viimane asi, mida peate tegema, on linkida robot rakendusega. Selleks minge vahekaardile "Dialogflow Connector", klõpsake paremas ülanurgas nuppu "Lisa Dialogflow agent" ja laadige üles oma Dialogflow agendi JSON-fail.

Google'i kõnede sõelumine Voximplanti ja Dialogflow põhjal
Kui vajate agenti näiteks/testimiseks, saate meie oma kasutada sellel lingil: github.com/aylarov/callscreening/tree/master/dialogflow. Lihtsalt ära nõua sellelt palju, see on lihtsalt näide, et võid vabalt teha ümber vastavalt oma soovile ja võid julgelt tulemusi jagada :)

Lihtne NodeJS-i taustaprogramm

Juurutame sõlmele lihtsa taustaprogrammi, näiteks järgmiselt:
github.com/aylarov/callscreening/tree/master/nodejs

See on lihtne rakendus, mille käitamiseks on vaja ainult kahte käsku:

npm install
node index.js

Server töötab teie masina pordis 3000, nii et selle Voximplant pilvega ühendamiseks kasutame utiliiti ngrok. Kui installite ngrok, käivitage see käsuga:

ngrok http 3000

Näete domeeninime, mille ngrok genereeris teie kohaliku serveri jaoks – kopeerige see ja kleepige see serveri muutujasse.

Klient

Kliendirakendus näeb välja nagu lihtne vestlus, mida saate teha korja see siit.

Lihtsalt kopeerige kõik failid mõnda oma veebiserveri kataloogi ja see töötab. Asendage failis script.js serveri muutuja ngrok domeeninimega ja helistaja muutuja ostetud numbriga. Salvestage fail ja käivitage rakendus oma brauseris. Kui kõik on korras, näete arendajapaneelil WebSocketi ühendust.

Demo

Selles videos näete rakendust töös:


PS Kui vajutate nupule Intervene, suunatakse helistaja minu telefoninumbrile ja kui klõpsate Katkesta, siis...? See on õige, kõne katkestatakse.

Allikas: www.habr.com

Lisa kommentaar