Vytvořte si vlastní Google Call Screening na základě Voximplant a Dialogflow

Vytvořte si vlastní Google Call Screening na základě Voximplant a Dialogflow
Možná jste slyšeli nebo četli o funkci Call Screening, kterou Google zavedl pro své telefony Pixel v USA. Myšlenka je to skvělá - když přijmete příchozí hovor, virtuální asistentka začne komunikovat, přičemž vy vidíte tuto konverzaci ve formě chatu a kdykoli můžete místo asistenta začít mluvit. To je v dnešní době velmi užitečné polovina hovorů je spam, ale nechcete zmeškat důležité hovory od někoho, kdo není ve vašem seznamu kontaktů. Jediný háček je v tom, že tato funkce je dostupná pouze na telefonu Pixel a pouze v USA. No, překážky jsou od toho, aby se překonávaly, ne? Proto jsme se rozhodli říct vám, jak vyrobit podobné řešení pomocí Voximplantu a Dialogflow. Prosím pod kat.

architektura

Navrhuji, abyste neztráceli čas vysvětlováním, jak Voximplant a Dialogflow fungují; pokud chcete, můžete snadno najít informace na internetu. Pojďme se tedy seznámit se samotným konceptem našeho Call Screeningu.

Předpokládejme, že již máte určité telefonní číslo, které používáte každý den a na kterém přijímáte důležité hovory. V tomto případě budeme potřebovat druhé číslo, které bude uvedeno všude - v poště, na vizitce, při vyplňování online formulářů atd. Toto číslo bude připojeno k systému zpracování přirozeného jazyka (v našem případě Dialogflow) a bude přesměrovávat hovory na vaše hlavní číslo, pouze pokud si to budete přát. Ve formě diagramu to vypadá takto (na obrázek lze kliknout):
Vytvořte si vlastní Google Call Screening na základě Voximplant a Dialogflow
Když rozumíme architektuře, můžeme se chopit implementace, ale s jednou výhradou: neuděláme to mobilní, pohybliví aplikaci pro zobrazení dialogu mezi Dialogflow a příchozím volajícím, vytvoříme jednoduchý web-aplikace s vykreslováním dialogů, která jasně ukazuje, jak funguje prověřování hovorů. Tato aplikace bude mít tlačítko Intervene, jehož stisknutím Voximplant spojí příchozího účastníka s volaným účastníkem, pokud se tento rozhodl sám mluvit.

uskutečnění

Přihlásit se váš účet Voximplant a vytvořte novou aplikaci, například screening:

Vytvořte si vlastní Google Call Screening na základě Voximplant a Dialogflow
Otevřít sekce "Pokoje" a kupte si číslo, které bude fungovat jako zprostředkovatel:

Vytvořte si vlastní Google Call Screening na základě Voximplant a Dialogflow
Dále přejděte do screeningové aplikace v sekci „Čísla“ na kartě „Dostupné“. Zde uvidíte číslo, které jste právě zakoupili. Propojte jej s aplikací pomocí tlačítka „Připojit“ - v okně, které se zobrazí, ponechte všechny výchozí hodnoty a klikněte na „Připojit“.

Jakmile jste v aplikaci, přejděte na kartu "Skripty" a vytvořte skript myscreening - v něm používáme kód z článku Jak používat Dialogflow Connector. V tomto případě bude kód mírně upraven, protože potřebujeme „vidět“ dialog mezi volajícím a asistentem; veškerý kód je možný vzít sem.

POZOR: budete muset změnit hodnotu proměnné serveru na název vašeho serveru ngrok (podrobnosti o ngrok budou uvedeny níže). Také nahraďte své hodnoty na řádku 31, kde vaše telefonní číslo je vaše hlavní číslo (například váš osobní mobilní telefon) a číslo voximplantátu je číslo, které jste si nedávno zakoupili.

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

Volání PSTN proběhne v okamžiku, kdy se rozhodnete vniknout do konverzace a osobně hovořit s příchozím účastníkem.

Po uložení skriptu jej musíte propojit se zakoupeným číslem. Chcete-li to provést, když jste stále ve své aplikaci, přejděte na kartu "Směrování" a vytvořte nové pravidlo - tlačítko "Nové pravidlo" v pravém horním rohu. Zadejte název (například allcalls), ponechte výchozí masku (.* - což znamená, že všechna příchozí volání budou zpracována skripty vybranými pro toto pravidlo) a zadejte skript myscreening.

Vytvořte si vlastní Google Call Screening na základě Voximplant a Dialogflow
Uložte pravidlo.

Od této chvíle je telefonní číslo propojeno se skriptem. Poslední věc, kterou musíte udělat, je propojit robota s aplikací. Chcete-li to provést, přejděte na kartu „Dialogflow Connector“, klikněte na tlačítko „Přidat agenta Dialogflow“ v pravém horním rohu a nahrajte soubor JSON svého agenta Dialogflow.

Vytvořte si vlastní Google Call Screening na základě Voximplant a Dialogflow
Pokud potřebujete agenta například/testování, můžete si vzít toho našeho na tomto odkazu: github.com/aylarov/callscreening/tree/master/dialogflow. Jen od toho nevyžadujte mnoho, toto je jen příklad, který si můžete předělat, jak chcete, a neváhejte se podělit o výsledky :)

Jednoduchý backend na NodeJS

Pojďme nasadit jednoduchý backend na uzel, například takto:
github.com/aylarov/callscreening/tree/master/nodejs

Jedná se o jednoduchou aplikaci, která ke spuštění vyžaduje pouze dva příkazy:

npm install
node index.js

Server poběží na portu 3000 vašeho počítače, takže pro připojení ke cloudu Voximplant používáme nástroj ngrok. Při instalaci ngrok, spusťte jej příkazem:

ngrok http 3000

Uvidíte název domény, který ngrok vygeneroval pro váš lokální server – zkopírujte jej a vložte do proměnné serveru.

Zákazník

Klientská aplikace vypadá jako jednoduchý chat, který můžete vyzvednout to odtud.

Stačí zkopírovat všechny soubory do nějakého adresáře na vašem webovém serveru a bude to fungovat. V souboru script.js nahraďte proměnnou serveru názvem domény ngrok a proměnnou volaného číslem, které jste zakoupili. Uložte soubor a spusťte aplikaci ve svém prohlížeči. Pokud je vše v pořádku, uvidíte na vývojářském panelu připojení WebSocket.

Demonstrace

Aplikaci v akci můžete vidět v tomto videu:


PS Pokud kliknete na tlačítko Zasáhnout, bude volající přesměrován na mé telefonní číslo a pokud kliknete na Odpojit, bude...? Správně, hovor bude přerušen.

Zdroj: www.habr.com

Přidat komentář