Loome oma Google'i kÔne filtreerimist Voximplanti ja Dialogflow pÔhjal

Loome oma Google'i kÔne filtreerimist Voximplanti ja Dialogflow pÔhjal
VĂ”ib-olla olete kuulnud vĂ”i lugenud Call Screening funktsioonist, mille Google tutvustas oma Pixel telefonides Ameerika Ühendriikides. Ideed on suurepĂ€rased – kui teile kĂ”netatakse, alustab virtuaalne assistent vestlust, samal ajal kui nĂ€ete seda vestlust jutustuses ja saate igal ajal assistendi asemel ise rÀÀkima hakata. See on tĂ€napĂ€eval vĂ€ga kasulik, kui pea pool telefonikĂ”nedest on spĂ€mm, kuid samas ei soovi te jĂ€tta olulisi kĂ”nesid vahele, mis ei ole teie kontaktide nimekirjas. Ainus murekoht on see, et see funktsionaalsus on saadaval ainult Pixel telefonides ja vaid Ameerika Ühendriikides. Mis siis, tĂ”kked eksisteerivad, et neid ĂŒletada, eks? SeetĂ”ttu otsustasime rÀÀkida, kuidas luua sarnane lahendus, kasutades Voximplant'i ja Dialogflow'd. Tulge allapoole.

Arhitektuur

Pakun, et Àrgem raiskame aega Voximplant'i ja Dialogflow'de toimimise selgitamisele, vajadusel leiate selle kohta teavet internetist. Nii et laskem tutvuda meie Call Screening'i kontseptsiooniga.

Kujutage ette, et teil on juba number, mida kasutate iga pĂ€ev ja kuhu saate olulisi kĂ”nesid. Sellisel juhul vajame teist numbrit, mis oleks igal pool – e-kirjades, visiitkaartidel, kui tĂ€idate veebivorme jne. See number ĂŒhendatakse loomuliku keele töötlemise sĂŒsteemiga (meie puhul Dialogflow) ja suunab kĂ”ned teie peamisele numbrile, ainult kui te seda soovite. Skeemi kujul nĂ€eb see vĂ€lja nii (pilt on klikkitav):
Loome oma Google'i kÔne filtreerimist Voximplanti ja Dialogflow pÔhjal
MĂ”istes arhitektuuri, saame hakata rakendama, kuid on ĂŒks tingimus: me ei tee mobiili- rakendust, et nĂ€idata dialooge Dialogflow vahel ja sissetuleva kĂ”neleja vahel, vaid loome lihtsa veebi-rakenduse dialooge renderdades, et visuaalselt nĂ€idata Call Screening'i tööpĂ”himĂ”tet. Sellises rakenduses on nupp Intervene, millele klĂ”psates Voximplant ĂŒhendab sissetuleva kĂ”neleja helistava osalejaga, kui viimane otsustab ise rÀÀkida.

Rakendus

Logige sisse oma Voximplant kontole ja looge uus rakendus, nÀiteks screening:

Loome oma Google'i kÔne filtreerimist Voximplanti ja Dialogflow pÔhjal
Avage jaotis „Numbrid“ ja ostke number, mis hakkab toimima vahendajana:

Loome oma Google'i kÔne filtreerimist Voximplanti ja Dialogflow pÔhjal
See the application screening, go to the 'Numbers' section, on the 'Available' tab. Here you will see the recently purchased number. Link it to the application using the 'Attach' button – in the window that appears, leave all default values and click 'Attach'.

While inside the application, go to the 'Scripts' tab and create a script myscreening – in it we will use the code from the article How to use Dialogflow Connector. The code will be slightly modified because we need to 'see' the dialogue between the caller and the assistant; all the code can be found here.

ATTENTION: you will need to change the value of the variable server to your ngrok server name (details about ngrok will be below). Also, insert your values on line 31, where your phone number is your main number (for example, personal mobile), and voximplant number is the number you recently purchased.

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

The call to callPSTN will occur at the moment you decide to join the conversation and speak personally with the incoming subscriber.

PĂ€rast skripti salvestamist peate selle siduma ostetud numbriga. Selleks, olles endiselt oma rakenduses, minge vahekaardile „Rohutamine“, et luua uus reegel – nupp „Uus reegel“ paremas ĂŒlanurgas. Sisestage nimi (nĂ€iteks allcalls), jĂ€tke mask vaikevÀÀrtuseks (.* – see tĂ€hendab, et kĂ”ik sisenevad kĂ”ned töödeldakse selle reegli jaoks valitud skriptidega) ja mÀÀrake skript myscreening.

Loome oma Google'i kÔne filtreerimist Voximplanti ja Dialogflow pÔhjal
Salvesta reegel.

Edaspidi on telefoninumber seotud skriptiga. Viimase asjana peate siduma roboti rakendusega. Selleks minge vahekaardile „Dialogflow-ĂŒhend“, klĂ”psake nupul „Lisa Dialogflow agent“ paremas ĂŒlanurgas ja laadige ĂŒles oma Dialogflow agendi JSON-fail.

Loome oma Google'i kÔne filtreerimist Voximplanti ja Dialogflow pÔhjal
Kui vajate nĂ€idis-/testimisagenti, saate meie oma vĂ”tta sellelt lingilt: github.com/aylarov/callscreening/tree/master/dialogflow. Lihtsalt Ă€rge nĂ”udke temalt liiga palju, see on vaid nĂ€idis, mida vĂ”ite omal soovil tĂ€iustada ja julgelt tulemusi jagada 🙂

Lihtne bakennd NodeJS-il

LĂ€hme ĂŒles seadma lihtsat bakenndi NodeJS-il, nĂ€iteks sellist:
github.com/aylarov/callscreening/tree/master/nodejs

See on tavaline rakendus, mis vajab kÀivitamiseks vaid kahte kÀsku:

npm install
node index.js

Server kĂ€ivitub teie masina 3000 pordil, seega ĂŒhendamiseks Voximplant pilve kasutame utiliiti ngrok. Kui olete installinud ngrok, kĂ€ivitage see kĂ€suga:

ngrok http 3000

Te nĂ€ete domeeninime, mille ngrok on teie kohalikule serverile genereerinud – kopeerige see ja asendage muutujas server.

Klient

Kliendi rakendus nÀeb vÀlja nagu lihtne vestlus, mille saate siit alla laadida.

Lihtsalt kopeerige kĂ”ik failid mĂ”nda kataloogi oma veebi serveris ja see töötab. Failis script.js asendage muutujas server ngrok domeeninimi ja muutujas callee – ostetud number. Salvestage fail ja kĂ€ivitage rakendus brauseris. Kui kĂ”ik on korras, nĂ€ete arendaja paneelis WebSocketi ĂŒhendust.

Demos

Rakendust saab nÀha tegevuses selles videos:

Vaata videot

P. S. Kui vajutate nuppu Intervene, suunatakse kĂ”neleja minu telefoni numbrile, ja kui vajutate Disconnect – siis... Õige, kĂ”ne katkestatakse.

Allikas: habr.com
Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster