Možda ste čuli ili čitali o funkciji skrininga poziva koju je Google uveo za svoje Pixel telefone u SAD-u. Ideja je odlična – kada primite dolazni poziv, virtuelni asistent počinje da komunicira, a vi ovaj razgovor vidite u obliku ćaskanja i u svakom trenutku možete da počnete da govorite umesto asistenta. Ovo je veoma korisno ovih dana kada je skoro
arhitektura
Predlažem da ne gubite vrijeme objašnjavajući kako funkcionišu Voximplant i Dialogflow; ako želite, lako možete pronaći informacije na internetu. Dakle, hajde da se upoznamo sa samim konceptom našeg skrininga poziva.
Pretpostavimo da već imate određeni broj telefona koji svakodnevno koristite i na koji primate važne pozive. U ovom slučaju trebat će nam drugi broj, koji će biti naveden svuda - u pošti, na vizit karti, kada ispunjavate online obrasce itd. Ovaj broj će biti povezan sa sistemom za obradu prirodnog jezika (u našem slučaju, Dialogflow) i prosleđivat će pozive na vaš glavni broj samo ako 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 učiniti mobilni aplikaciju za prikaz dijaloga između Dialogflow-a i dolaznog pozivaoca, kreiraćemo jednostavnu web-aplikacija sa rendererom dijaloga koji jasno pokazuje kako funkcioniše skrining poziva. Ova aplikacija će imati dugme Intervene, pritiskom na koje će Voximplant povezati dolaznog pretplatnika sa pozvanim pretplatnikom, ako ovaj odluči sam da razgovara.
Реализация
Vojdite v
Otvori
Zatim idite na aplikaciju za skrining, u odjeljku „Brojevi“, kartica „Dostupno“. Ovdje ćete vidjeti broj koji ste upravo kupili. Povežite ga sa aplikacijom pomoću dugmeta „Priloži“ - u prozoru koji se pojavi ostavite sve zadane vrednosti i kliknite na „Priloži“.
Kada uđete u aplikaciju, idite na karticu "Skripte" i kreirajte skriptu myscreening - u njoj koristimo kod iz članka
PAŽNJA: morat ćete promijeniti vrijednost varijable servera u ime vašeg ngrok servera (detalji o ngrok-u će biti ispod). Također zamijenite svoje vrijednosti u liniji 31, gdje je vaš broj telefona vaš glavni broj (na primjer, vaš lični mobilni telefon), a broj voximplanta je broj koji ste nedavno kupili.
outbound_call = VoxEngine.callPSTN(“YOUR PHONE NUMBER”, “VOXIMPLANT NUMBER”)
Poziv PSTN poziv će se desiti u trenutku kada odlučite da uđete u razgovor i lično razgovarate sa dolaznim pretplatnikom.
Nakon što sačuvate skriptu, potrebno je da je povežete sa kupljenim brojem. Da biste to učinili, dok ste još u aplikaciji, idite na karticu "Routing" da kreirate novo pravilo - dugme "Novo pravilo" u gornjem desnom uglu. Navedite ime (na primjer, allcalls), ostavite zadanu masku (.* - što znači da će svi dolazni pozivi biti obrađeni skriptama odabranim za ovo pravilo) i navedite skriptu myscreening.
Sačuvajte pravilo.
Od sada, broj telefona je povezan sa skriptom. Posljednja stvar koju trebate učiniti je povezati bota sa aplikacijom. Da biste to učinili, idite na karticu “Dialogflow Connector”, kliknite na dugme “Add Dialogflow Agent” u gornjem desnom uglu i prenesite JSON datoteku vašeg Dialogflow agenta.
Ako vam je potreban agent na primjer/testiranje, možete uzeti našeg na ovom linku:
Jednostavan backend na NodeJS-u
Hajde da implementiramo jednostavnu pozadinu na čvoru, na primjer, ovako:
Ovo je jednostavna aplikacija koja zahtijeva samo dvije naredbe za pokretanje:
npm install
node index.js
Server će raditi na portu 3000 vaše mašine, tako da da bismo ga povezali sa Voximplant oblakom, koristimo uslužni program ngrok. Kada instalirate
ngrok http 3000
Vidjet ćete ime domene koje je ngrok generirao za vaš lokalni server - kopirajte ga i zalijepite u varijablu servera.
Kupac
Klijentska aplikacija izgleda kao jednostavan chat koji možete
Samo kopirajte sve datoteke u neki direktorij na vašem web serveru i radit će. U datoteci script.js zamijenite varijablu servera imenom domene ngrok i varijablu pozvanog s brojem koji ste kupili. Sačuvajte datoteku i pokrenite aplikaciju u svom pretraživaču. Ako je sve u redu, vidjet ćete WebSocket vezu na panelu za programere.
Demo
Aplikaciju u akciji možete vidjeti u ovom videu:
PS Ako kliknete na dugme Intervene, pozivalac će biti preusmjeren na moj broj telefona, a ako kliknete na Disconnect, to će biti...? Tako je, poziv će biti prekinut.
izvor: www.habr.com