Vytvárame vlastné skríningové služby Google Call Screening na základe Voximplant a Dialogflow

Vytvárame vlastné skríningové služby Google Call Screening na základe Voximplant a Dialogflow
Možno ste už počuli alebo čítali o funkcii filtrovania hovorov, ktorú spoločnosť Google zaviedla pre svoje telefóny Pixel v USA. Je to skvelý nápad: keď prijmete prichádzajúci hovor, začne hovoriť virtuálny asistent, zatiaľ čo vy vidíte konverzáciu ako chat a môžete kedykoľvek začať hovoriť namiesto asistenta. Toto je v dnešnej dobe veľmi užitočné, keď takmer Polovica hovorov je spam, ale nechcete zmeškať dôležité hovory od niekoho mimo vášho zoznamu kontaktov. Jediný háčik je, že táto funkcia je dostupná iba na telefónoch Pixel a iba v USA. Prekážky sú na to, aby sa prekonávali, však? Preto sme sa rozhodli podeliť sa o to, ako vytvoriť podobné riešenie pomocou Voximplant a Dialogflow. Čítajte ďalej.

architektúra

Navrhujem, aby ste nestrácali čas vysvetľovaním, ako fungujú Voximplant a Dialogflow; ak máte záujem, informácie si ľahko nájdete online. Poďme sa teda zoznámiť s konceptom nášho filtrovania hovorov.

Predpokladajme, že už máte telefónne číslo, ktoré používate denne a na ktoré prijímate dôležité hovory. V tomto prípade budeme potrebovať druhé číslo, ktoré bude uvedené všade – v e-maile, na vizitke, pri vypĺňaní online formulárov atď. Toto číslo bude pripojené k systému na spracovanie prirodzeného jazyka (v našom prípade Dialogflow) a bude presmerovávať hovory na vaše hlavné číslo iba vtedy, ak o to požiadate. Tu je diagram (klikateľný obrázok):
Vytvárame vlastné skríningové služby Google Call Screening na základe Voximplant a Dialogflow
Po pochopení architektúry sa môžeme pustiť do implementácie, ale s jednou výhradou: nebudeme robiť mobilné Na zobrazenie dialógu medzi Dialogflow a prichádzajúcim volajúcim vytvoríme jednoduchú aplikáciu webAplikácia s dialógovým oknom, ktoré jasne demonštruje fungovanie filtrovania hovorov. Táto aplikácia bude obsahovať tlačidlo „Zasiahnuť“, ktoré Voximplant stlačí, aby spojil prichádzajúceho volajúceho s volaným, ak sa volajúci rozhodne hovoriť.

Реализация

Prihlásiť sa váš účet Voximplant a vytvorte novú aplikáciu, napríklad skríning:

Vytvárame vlastné skríningové služby Google Call Screening na základe Voximplant a Dialogflow
Otvorte Sekcia „Čísla“ a kúpte si číslo, ktoré bude slúžiť ako sprostredkovateľ:

Vytvárame vlastné skríningové služby Google Call Screening na základe Voximplant a Dialogflow
Ďalej prejdite do aplikácie Screening, prejdite do sekcie „Čísla“ a vyberte kartu „Dostupné“. Tu uvidíte číslo, ktoré ste si práve zakúpili. Prepojte ho s aplikáciou pomocou tlačidla „Pripojiť“. V zobrazenom okne ponechajte všetky predvolené hodnoty a kliknite na tlačidlo „Pripojiť“.

V aplikácii prejdite na kartu „Skripty“ a vytvorte skript s názvom myscreening – v ňom použijeme kód z článku Ako používať konektor DialogflowV tomto prípade bude kód mierne upravený, pretože potrebujeme „vidieť“ dialóg medzi volajúcim a asistentom; celý kód môže byť vezmi si to sem.

POZNÁMKA: Budete musieť zmeniť hodnotu premennej server na názov vášho servera ngrok (podrobnosti o ngrok budú uvedené nižšie). Taktiež nahraďte svoje hodnoty v riadku 31, kde vaše telefónne číslo je vaše hlavné číslo (napr. vaše osobné číslo mobilného telefónu) a číslo voximplant je číslo, ktoré ste si nedávno zakúpili.

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

HovorHovor cez PSTN sa uskutoční v momente, keď sa rozhodnete prerušiť konverzáciu a osobne sa porozprávať s prichádzajúcim účastníkom.

Po uložení skriptu ho musíte priradiť k zakúpenému číslu. Ak to chcete urobiť, stále v aplikácii prejdite na kartu „Smerovanie“ a vytvorte nové pravidlo (kliknite na tlačidlo „Nové pravidlo“ v pravom hornom rohu). Zadajte názov (napr. „všetkyhovory“), ponechajte predvolenú masku (.* – čo znamená, že všetky prichádzajúce hovory budú spracované skriptmi vybratými pre toto pravidlo) a zadajte skript „myscreening“.

Vytvárame vlastné skríningové služby Google Call Screening na základe Voximplant a Dialogflow
Uložte pravidlo.

Telefónne číslo je teraz prepojené so scenárom. Posledná vec, ktorú musíte urobiť, je prepojiť bota s aplikáciou. Ak to chcete urobiť, prejdite na kartu „Dialogflow Connector“, kliknite na tlačidlo „Pridať agenta Dialogflow“ v pravom hornom rohu a nahrajte súbor JSON pre vášho agenta Dialogflow.

Vytvárame vlastné skríningové služby Google Call Screening na základe Voximplant a Dialogflow
Ak potrebujete napríklad agenta/testovanie, nášho si môžete stiahnuť z tohto odkazu: github.com/aylarov/callscreening/tree/master/dialogflowLen od neho neočakávajte priveľa; toto je len príklad, ktorý si môžete prepracovať podľa vlastného uváženia a pokojne sa podeľte o výsledky 🙂

Jednoduchý backend na NodeJS

Nasaďme jednoduchý backend na uzol, takto:
github.com/aylarov/callscreening/tree/master/nodejs

Toto je jednoduchá aplikácia, ktorá na spustenie vyžaduje iba dva príkazy:

npm install
node index.js

Server bude na vašom počítači bežať na porte 3000, takže na jeho pripojenie ku cloudu Voximplant použijeme utilitu ngrok. Po nainštalovaní ngrok, spustite ho príkazom:

ngrok http 3000

Uvidíte názov domény, ktorý ngrok vygeneroval pre váš lokálny server – skopírujte ho a dosaďte ho do premennej server.

zákazník

Klientska aplikácia vyzerá ako jednoduchý chat, ktorý môžete odniesť si odtiaľto.

Jednoducho skopírujte všetky súbory do adresára na vašom webovom serveri a bude to fungovať. V súbore script.js nahraďte premennú server názvom domény ngrok a premennú callee zakúpeným číslom. Uložte súbor a spustite aplikáciu vo vašom prehliadači. Ak všetko funguje, uvidíte pripojenie WebSocket v nástrojoch pre vývojárov.

demonštrácie

Aplikáciu v akcii si môžete pozrieť v tomto videu:

Prehrať video

P.S. Ak kliknem na Zasiahnuť, volajúci bude presmerovaný na moje telefónne číslo, ale čo sa stane, ak kliknem na Odpojiť? Presne tak, hovor sa preruší.

Zdroj: hab.com
Kúpte si spoľahlivý hosting pre stránky s DDoS ochranou, VPS VDS servery 🔥 Kúpte si spoľahlivý webhosting s ochranou DDoS, VPS VDS servery | ProHoster