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 , 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):
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 ja looge uus rakendus, nÀiteks screening:

Avage ja ostke number, mis hakkab toimima vahendajana:

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 . The code will be slightly modified because we need to 'see' the dialogue between the caller and the assistant; all the code can be .
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.

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.

Kui vajate nĂ€idis-/testimisagenti, saate meie oma vĂ”tta sellelt lingilt: . 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:
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 , kĂ€ivitage see kĂ€suga:
ngrok http 3000Te 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.
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:

P. S. Kui vajutate nuppu Intervene, suunatakse kĂ”neleja minu telefoni numbrile, ja kui vajutate Disconnect â siis... Ăige, kĂ”ne katkestatakse.
Allikas: habr.com
