Jy het dalk gehoor of gelees van die oproepsifting-funksie wat Google vir sy Pixel-fone in die VSA ontplooi het. Die idee is wonderlik - wanneer jy 'n inkomende oproep ontvang, begin die virtuele assistent kommunikeer, terwyl jy hierdie gesprek in die vorm van 'n klets sien en te eniger tyd kan jy begin praat in plaas van die assistent. Dit is baie nuttig deesdae wanneer amper
Argitektuur
Ek stel voor dat jy nie tyd mors om te verduidelik hoe Voximplant en Dialogflow werk as jy wil nie, jy kan maklik inligting op die internet vind. Kom ons maak dus kennis met die konsep van ons oproepsifting.
Kom ons neem aan dat jy reeds 'n sekere telefoonnommer het wat jy elke dag gebruik en waarop jy belangrike oproepe ontvang. In hierdie geval sal ons 'n tweede nommer nodig hê, wat oral aangedui sal word - in pos, op 'n besigheidskaartjie, wanneer jy aanlynvorms invul, ens. Hierdie nommer sal gekoppel word aan 'n natuurlike taalverwerkingstelsel (in ons geval, Dialogflow) en sal oproepe na jou hoofnommer aanstuur net as jy dit wil hê. In diagramvorm lyk dit so (prent is klikbaar):
As ons die argitektuur verstaan, kan ons die implementering aanpak, maar met een voorbehoud: ons sal nie doen nie selfoon toepassing om 'n dialoog tussen Dialogflow en 'n inkomende oproeper te wys, sal ons 'n eenvoudige skep die web-'n toepassing met 'n dialoogweergawe om duidelik te wys hoe oproepsifting werk. Hierdie toepassing sal 'n Ingryp-knoppie hê, deur te druk watter Voximplant die inkomende intekenaar met die geskakelde intekenaar sal verbind, indien laasgenoemde besluit om self te praat.
Implementering
Meld aan
Maak oop
Gaan dan na die keuringstoepassing, in die "Nommers"-afdeling, "Beskikbaar"-oortjie. Hier sal jy die nommer sien wat jy pas gekoop het. Koppel dit aan die toepassing deur die "heg" -knoppie te gebruik - in die venster wat verskyn, laat al die verstekwaardes en klik "heg aan".
Sodra jy binne die toepassing is, gaan na die "Scripts"-oortjie en skep 'n script myscreening - daarin gebruik ons die kode van die artikel
AANDAG: jy sal die waarde van die bedienerveranderlike moet verander na die naam van jou ngrok-bediener (besonderhede oor ngrok sal hieronder wees). Vervang ook jou waardes op reël 31, waar jou foonnommer jou hoofnommer is (byvoorbeeld jou persoonlike selfoon), en voksimplantnommer is die nommer wat jy onlangs gekoop het.
outbound_call = VoxEngine.callPSTN(“YOUR PHONE NUMBER”, “VOXIMPLANT NUMBER”)
Die oproepPSTN-oproep sal plaasvind op die oomblik wanneer jy besluit om by die gesprek in te breek en persoonlik met die inkomende intekenaar te praat.
Nadat jy die skrif gestoor het, moet jy dit aan die gekoopte nommer koppel. Om dit te doen, terwyl jy nog in jou toepassing is, gaan na die "Roeting"-oortjie om 'n nuwe reël te skep - die "Nuwe reël"-knoppie in die regter boonste hoek. Verskaf 'n naam (byvoorbeeld alle oproepe), laat die verstekmasker (.* - wat beteken dat alle inkomende oproepe verwerk sal word deur die skrifte wat vir hierdie reël gekies is) en spesifiseer die myscreening-skrif.
Stoor die reël.
Van nou af is die telefoonnommer aan die skrif gekoppel. Die laaste ding wat jy moet doen is om die bot aan die toepassing te koppel. Om dit te doen, gaan na die “Dialogflow Connector”-oortjie, klik op die “Add Dialogflow Agent”-knoppie in die regter boonste hoek en laai die JSON-lêer van jou Dialogflow-agent op.
As jy byvoorbeeld 'n agent benodig/toets, kan jy ons s'n by hierdie skakel neem:
Eenvoudige backend op NodeJS
Kom ons ontplooi 'n eenvoudige backend op 'n nodus, byvoorbeeld, soos volg:
Dit is 'n eenvoudige toepassing wat slegs twee opdragte benodig om uit te voer:
npm install
node index.js
Die bediener sal op poort 3000 van jou masjien loop, so om dit aan die Voximplant-wolk te koppel, gebruik ons die ngrok-nutsding. Wanneer jy installeer
ngrok http 3000
U sal die domeinnaam sien wat ngrok vir u plaaslike bediener gegenereer het - kopieer dit en plak dit in die bedienerveranderlike.
kliënt
Die kliënttoepassing lyk soos 'n eenvoudige klets wat jy kan
Kopieer net al die lêers na een of ander gids op jou webbediener en dit sal werk. In die script.js lêer, vervang die bediener veranderlike met die ngrok domein naam en die oproep veranderlike met die nommer wat jy gekoop het. Stoor die lêer en begin die toepassing in jou blaaier. As alles in orde is, sal jy die WebSocket-verbinding in die ontwikkelaarpaneel sien.
Демо
Jy kan die toepassing in aksie sien in hierdie video:
NS As jy op die Intervene-knoppie klik, sal die beller na my foonnommer herlei word, en as jy op Disconnect klik, sal dit wees...? Dit is reg, die oproep sal ontkoppel word.
Bron: will.com