Možda ste čuli ili čitali o značajci provjere poziva koju je Google uveo za svoje Pixel telefone u SAD-u. Ideja je odlična - kada primite dolazni poziv, virtualni asistent počinje komunicirati, dok vi taj razgovor vidite u obliku chata i u svakom trenutku možete početi govoriti umjesto asistenta. Ovo je vrlo korisno ovih dana kada gotovo
arhitektura
Predlažem da ne gubite vrijeme objašnjavajući kako Voximplant i Dialogflow rade; ako želite, informacije možete lako pronaći na internetu. Dakle, upoznajmo se sa samim konceptom našeg Call Screeninga.
Pretpostavimo da već imate određeni broj telefona koji koristite svaki dan i na koji primate važne pozive. U ovom slučaju, trebat će nam drugi broj, koji će biti naznačen posvuda - u pošti, na posjetnici, kada ispunjavate online obrasce itd. Ovaj će broj biti povezan sa sustavom za obradu prirodnog jezika (u našem slučaju, Dialogflow) i prosljeđivat će pozive na vaš glavni broj samo ako vi to želite. U obliku dijagrama to izgleda ovako (na sliku se može kliknuti):
Razumijevajući arhitekturu, možemo preuzeti implementaciju, ali uz jedno upozorenje: nećemo mobilni aplikaciju za prikaz dijaloga između Dialogflowa i dolaznog pozivatelja, stvorit ćemo jednostavan web- aplikacija s prikazivačem dijaloga koja jasno pokazuje kako funkcionira filtriranje poziva. Ova aplikacija će imati gumb Intervene, pritiskom na koji će Voximplant spojiti dolaznog pretplatnika s biranim pretplatnikom, ako je ovaj odlučio sam razgovarati.
Provedba
Prijaviti se
Otvoreno
Zatim idite na aplikaciju za pregled, u odjeljku "Brojevi", karticu "Dostupno". Ovdje ćete vidjeti broj koji ste upravo kupili. Povežite ga s aplikacijom pomoću gumba "Priloži" - u prozoru koji se pojavi ostavite sve zadane vrijednosti i kliknite "Priloži".
Kada uđete u aplikaciju, idite na karticu "Skripte" i izradite skriptu myscreening - u njoj koristimo kod iz članka
PAŽNJA: morat ćete promijeniti vrijednost varijable poslužitelja u naziv vašeg ngrok poslužitelja (detalji o ngroku bit će ispod). Također zamijenite svoje vrijednosti u retku 31, gdje je vaš broj telefona vaš glavni broj (na primjer, vaš osobni mobilni telefon), a broj voximplanta je broj koji ste nedavno kupili.
outbound_call = VoxEngine.callPSTN(“YOUR PHONE NUMBER”, “VOXIMPLANT NUMBER”)
CallPSTN poziv dogodit će se u trenutku kada odlučite upasti u razgovor i osobno razgovarati s dolaznim pretplatnikom.
Nakon što spremite skriptu, potrebno ju je povezati s kupljenim brojem. Da biste to učinili, dok ste još u svojoj aplikaciji, idite na karticu "Usmjeravanje" da biste izradili novo pravilo - gumb "Novo pravilo" u gornjem desnom kutu. Navedite naziv (na primjer, svipozivi), ostavite zadanu masku (.* - što znači da će sve dolazne pozive obraditi skripte odabrane za ovo pravilo) i navedite skriptu myscreening.
Spremite pravilo.
Od sada je telefonski broj povezan sa skriptom. Zadnje što trebate učiniti je povezati bot s aplikacijom. Da biste to učinili, idite na karticu “Dialogflow Connector”, kliknite gumb “Add Dialogflow Agent” u gornjem desnom kutu i prenesite JSON datoteku svog Dialogflow agenta.
Ako trebate agenta za primjer/testiranje, možete uzeti našeg na ovoj poveznici:
Jednostavna pozadina na NodeJS
Implementirajmo jednostavnu pozadinu na čvoru, na primjer, ovako:
Ovo je jednostavna aplikacija koja zahtijeva samo dvije naredbe za pokretanje:
npm install
node index.js
Poslužitelj će raditi na portu 3000 vašeg stroja, tako da ga povezujemo s Voximplant oblakom, koristimo uslužni program ngrok. Kada instalirate
ngrok http 3000
Vidjet ćete naziv domene koji je ngrok generirao za vaš lokalni poslužitelj - kopirajte ga i zalijepite u varijablu poslužitelja.
kupac
Klijentska aplikacija izgleda kao jednostavan chat koji možete
Samo kopirajte sve datoteke u neki direktorij na vašem web poslužitelju i radit će. U datoteci script.js zamijenite varijablu poslužitelja s nazivom domene ngrok i varijablu callee s brojem koji ste kupili. Spremite datoteku i pokrenite aplikaciju u svom pregledniku. Ako je sve u redu, vidjet ćete WebSocket vezu na ploči za programere.
demo
Aplikaciju na djelu možete vidjeti u ovom videu:
PS Ako kliknete na gumb Intervenirati, pozivatelj će biti usmjeren na moj telefonski broj, a ako kliknete na Disconnect, to će biti...? Tako je, poziv će biti prekinut.
Izvor: www.habr.com