Ustvarjamo naš Google Call Screening na osnovi Voximplant in Dialogflow

Ustvarjamo naš Google Call Screening na osnovi Voximplant in Dialogflow
Morda ste slišali ali brali o funkciji Call Screening, ki jo je Google predstavil za svoje telefonske naprave Pixel v ZDA. Ideja je odlična – ko prejmete klic, virtualni asistent začne komunicirati, medtem ko vi vidite ta pogovor v obliki klepeta in v vsakem trenutku lahko začnete govoriti namesto asistenta. To je zelo koristno v današnjih časih, ko skoraj polovica klicev – to je spam, vendar ne želite zamuditi pomembnih klicev nekoga, ki ni v vašem seznamu stikov. Edina težava je, da je ta funkcionalnost na voljo le na telefonu Pixel in le v ZDA. No, ovire so, da jih premagamo, prav? Zato smo se odločili, da povemo, kako narediti podobno rešitev z uporabo Voximplant in Dialogflow. Prosim, preberite naprej.

Arhitektura

Predlagam, da ne porabimo časa za razlago, kako delujeta Voximplant in Dialogflow, če želite, lahko na spletu enostavno najdete informacije. Torej, se spoznamo s samo konceptom našega Call Screening.

Predpostavimo, da imate že kakšno telefonsko številko, ki jo uporabljate vsak dan in na katero prejemate pomembne klice. V tem primeru potrebujemo drugo številko, ki bo navedena povsod – v e-pošti, na vizitki, ko izpolnjujete spletne obrazce itd. Ta številka bo povezana s sistemom obdelave naravnega jezika (v našem primeru Dialogflow) in preusmerjala klice na vašo glavno številko, le če to želite. Kot shema to izgleda takole (slika je klikabilna):
Ustvarjamo naš Google Call Screening na osnovi Voximplant in Dialogflow
Razumevajoč arhitekturo, se lahko lotimo implementacije, vendar z eno pripombo: ne bomo izdelali mobilne aplikacije, da prikažemo dialog med Dialogflow in prihajajočim klicateljem, ustvarili bomo enostavno spletno-aplikacijo z rišem dialoga, da jasno pokažemo princip delovanja Call Screening. V tej aplikaciji bo gumb Intervene, ob katerem bo Voximplant povezal prihajajočega klicatelja s klicanim, če se ta odloči, da želi govoriti sam.

Implementacija

Prijavite se v svoj račun Voximplant in ustvarite novo aplikacijo, na primer screening:

Ustvarjamo naš Google Call Screening na osnovi Voximplant in Dialogflow
Odprite odsek 'Številke' in kupite številko, ki bo delovala kot posrednik:

Ustvarjamo naš Google Call Screening na osnovi Voximplant in Dialogflow
Nato vstopite v aplikacijo screening, v razdelku 'Številke', zavihek 'Na voljo'. Tukaj boste videli pravkar kupljeno številko. Povežite jo z aplikacijo s klikom na gumb 'Poveži' – v pojavnem oknu pustite vse privzete vrednosti in pritisnite 'Poveži'.

Obstaja v aplikaciji, preidite na zavihek 'Skripti' in ustvarite skripto myscreening – v njej uporabimo kodo iz članka Kako uporabiti Dialogflow konektor. Ob tem bo koda nekoliko spremenjena, ker moramo 'videti' dialog med klicateljem in asistentom; vso kodo lahko pridobite tukaj.

POZOR: spremeniti boste morali vrednost spremenljivke server na ime vašega ngrok strežnika (podrobnosti o ngrok bodo kmalu navedene). Prav tako vstavite svoje vrednosti v vrstici 31, kjer je your phone number – vaš glavni številka (npr. osebni mobilni), in voximplant number – številka, ki ste jo nedavno kupili.

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

Klic callPSTN se bo zgodil, ko se odločite, da boste vstopili v pogovor in osebno spregovorili z dohodnim klicateljem.

Ko shranite skripto, jo morate povezati s kupljeno številko. V ta namen, še vedno znotraj vaše aplikacije, preidite na zavihek 'Usmerjanje', da ustvarite novo pravilo – gumb 'Novo pravilo' v zgornjem desnem kotu. Vnesite ime (npr. allcalls), pustite masko privzeto (.* – kar pomeni, da bodo vsi dohodni klici obdelani s skripti, izbranimi za to pravilo) in navedite skripto myscreening.

Ustvarjamo naš Google Call Screening na osnovi Voximplant in Dialogflow
Shrani pravilo.

Od zdaj naprej je telefonska številka povezana z skripto. Zadnje, kar morate storiti, je povezati bota z aplikacijo. V ta namen preidite na zavihek 'Dialogflow-konektor', kliknite gumb 'Dodaj Dialogflow agent' v zgornjem desnem kotu in naložite JSON datoteko svojega agenta Dialogflow.

Ustvarjamo naš Google Call Screening na osnovi Voximplant in Dialogflow
Če potrebujete agenta za primerjavo/testiranje, lahko vzamete našega na tej povezavi: github.com/aylarov/callscreening/tree/master/dialogflow. Samo ne zahtevajte od njega preveč, to je le primer, ki ga lahko prosto predelate, kot želite, in brez zadržkov delite rezultate 🙂

Preprost backend na NodeJS

Postavimo preprost backend na nodu, na primer, takšen:
github.com/aylarov/callscreening/tree/master/nodejs

To je običajna aplikacija, ki zahteva le dve ukazi za zagon:

npm install
node index.js

Server bo zaganjal na 3000 vrata vaše naprave, zato za povezovanje z oblakom Voximplant uporabljamo orodje ngrok. Ko ga namestite, ngrok, ga zaženite z zaščito:

ngrok http 3000

Videli boste domeno, ki jo je ngrok generiral za vaš lokalni strežnik – kopirajte jo in jo vstavite v spremenljivko server.

Korisnik

Klientska aplikacija izgleda kot preprost klepet, ki ga lahko prenesete отсюда.

Preprosto kopirajte vse datoteke v poljuben imenik na vašem spletnega strežniku in delovalo bo. V datoteki script.js spremenite vrednost spremenljivke server na domeno ngrok in vrednost spremenljivke callee na številko, ki ste jo kupili. Shrani datoteko in odprite aplikacijo v brskalniku. Če je vse v redu, boste videli povezavo WebSocket v orodni vrstici razvijalca.

Demo

Aplikacijo v akciji lahko vidite v tem videu:

Predvajaj video

P. S. Če pritisnete gumb Intervene, bo klicatelj usmerjen na mojo telefonsko številko, če pa pritisnete gumb Disconnect – potem bo…? Prav, klic bo prekinjen.

Izvor: habr.com
Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster