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 preverovania hovorov, ktorú Google zaviedol pre svoje telefóny Pixel v USA. Myšlienka je to skvelá - keď prijmete prichádzajúci hovor, virtuálna asistentka začne hovoriť, zatiaľ čo vy túto konverzáciu vidíte ako chat a kedykoľvek môžete začať hovoriť namiesto asistenta. To je veľmi užitočné v týchto dňoch, keď takmer polovica hovorov je spam, ale nechcete zmeškať dôležité hovory od niekoho, kto nie je vo vašom zozname kontaktov. Jediným háčikom je, že táto funkcia je dostupná iba na telefóne Pixel a iba v USA. Nuž, prekážky sú na to, aby sa prekonávali, však? Preto sme sa rozhodli povedať vám, ako urobiť podobné riešenie pomocou Voximplant a Dialogflow. Prosím pod kat.

architektúra

Odporúčam nestrácať čas vysvetľovaním, ako Voximplant a Dialogflow fungujú, ak chcete, informácie môžete ľahko nájsť na internete. Poďme sa teda zoznámiť so samotným konceptom nášho Call Screeningu.

Povedzme, že už máte telefónne číslo, ktoré používate každý deň, na ktoré prijímate dôležité hovory. V tomto prípade budeme potrebovať druhé číslo, ktoré bude uvedené všade - v pošte, na vizitke, pri vypĺňaní online formulárov atď. Toto číslo sa pripojí k systému na spracovanie prirodzeného jazyka (v našom prípade tok dialógov) a presmeruje hovory na vaše hlavné číslo, iba ak si to želáte. Vo forme diagramu to vyzerá takto (na obrázok sa dá kliknúť):
Vytvárame vlastné skríningové služby Google Call Screening na základe Voximplant a Dialogflow
Pochopenie architektúry, môžeme prevziať implementáciu, ale s jednou výhradou: neurobíme mobilné aplikáciu na zobrazenie dialógu medzi Dialogflow a prichádzajúcim volajúcim, vytvoríme jednoduchý web-aplikácia s vykresľovačom dialógov na vizuálne zobrazenie toho, ako funguje skríning hovorov. Táto aplikácia bude mať tlačidlo Intervenovať, stlačením ktorého Voximplant spojí prichádzajúceho účastníka s volaným účastníkom, ak sa tento rozhodne sám hovoriť.

Реализация

Prihlásiť sa váš účet Voximplant a vytvorte novú aplikáciu, ako je 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 fungovať ako sprostredkovateľ:

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

Keď ste v aplikácii, prejdite na kartu "Skripty" a vytvorte skript myscreening - v ňom používame kód z článku Ako používať Dialogflow Connector. V tomto prípade sa kód mierne zmení, pretože potrebujeme „vidieť“ dialóg medzi volajúcim a asistentom; všetok kód môže byť vziať sem.

UPOZORNENIE: budete musieť zmeniť hodnotu premennej servera na názov vášho servera ngrok (viac o ngrok nižšie). Zapojte aj svoje hodnoty do riadku 31, kde vaše telefónne číslo je vaše hlavné číslo (napríklad váš osobný mobil) a číslo voximplantátu je číslo, ktoré ste si nedávno zakúpili.

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

Hovor PSTN sa uskutoční v momente, keď sa rozhodnete vniknúť do rozhovoru a mať osobný rozhovor s prichádzajúcim volajúcim.

Po uložení skriptu ho musíte prepojiť so zakúpeným číslom. Ak to chcete urobiť, keď ste stále vo svojej aplikácii, prejdite na kartu „Routing“ a vytvorte nové pravidlo – tlačidlo „Nové pravidlo“ v pravom hornom rohu. Zadajte názov (napríklad allcalls), ponechajte predvolenú masku (.* - čo znamená, že všetky prichádzajúce hovory budú spracované skriptami vybranými pre toto pravidlo) a špecifikujte skript myscreening.

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

Odteraz je telefónne číslo viazané na scenár. Posledná vec, ktorú musíte urobiť, je prepojiť robota s aplikáciou. Ak to chcete urobiť, prejdite na kartu „Konektor Dialogflow“, kliknite na tlačidlo „Pridať agenta Dialogflow“ v pravom hornom rohu a nahrajte súbor JSON svojho agenta Dialogflow.

Vytvárame vlastné skríningové služby Google Call Screening na základe Voximplant a Dialogflow
Ak potrebujete napríklad agenta/testovanie, môžete ho získať z tohto odkazu: github.com/aylarov/callscreening/tree/master/dialogflow. Len od neho nevyžadujte priveľa, toto je len príklad, ktorý môžete prerobiť, ako chcete, a pokojne sa podeľte o výsledky 🙂

Jednoduchý backend NodeJS

Poďme nasadiť jednoduchý backend na uzle, ako je tento:
github.com/aylarov/callscreening/tree/master/nodejs

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

npm install
node index.js

Server sa spustí na porte 3000 na vašom počítači, takže na pripojenie k cloudu Voximplant používame nástroj ngrok. Keď nainštalujete 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 nahraďte ho do premennej servera.

zákazník

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

Stačí skopírovať všetky súbory do nejakého adresára na vašom webovom serveri a bude to fungovať. V súbore script.js zmeňte hodnotu serverovej premennej na názov domény ngrok a hodnotu premennej volaného na číslo, ktoré ste si zakúpili. Uložte súbor a spustite aplikáciu v prehliadači. Ak je všetko v poriadku, na paneli vývojárov sa zobrazí pripojenie WebSocket.

demonštrácie

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


PS Ak kliknete na tlačidlo Zasiahnuť, volajúci bude presmerovaný na moje telefónne číslo a ak kliknete na Odpojiť, bude ...? Správne, hovor bude prerušený.

Zdroj: hab.com

Pridať komentár