Paghimo sa imong kaugalingon nga Google Call Screening base sa Voximplant ug Dialogflow

Paghimo sa imong kaugalingon nga Google Call Screening base sa Voximplant ug Dialogflow
Tingali nakadungog ka o nakabasa bahin sa bahin sa Pag-screen sa Tawag nga gilusad sa Google alang sa mga Pixel nga telepono niini sa US. Nindot ang ideya - kung makadawat ka usa ka umaabot nga tawag, ang virtual nga katabang magsugod sa pagpakigsulti, samtang makita nimo kini nga panag-istoryahanay sa porma sa usa ka chat ug sa bisan unsang oras mahimo ka magsugod sa pagsulti imbes sa katabang. Kini mao ang kaayo mapuslanon niining mga adlawa sa diha nga hapit katunga sa mga tawag kay spam, apan dili nimo gusto nga masipyat ang importante nga mga tawag gikan sa usa ka tawo nga wala sa imong listahan sa kontak. Ang bugtong nakuha mao nga kini nga gamit magamit ra sa Pixel nga telepono ug sa US ra. Aw, adunay mga babag aron mabuntog, di ba? Busa, nakahukom kami nga isulti kanimo kung giunsa paghimo ang parehas nga solusyon gamit ang Voximplant ug Dialogflow. Palihug sa ilawom sa iring.

arkitektura

Gisugyot ko nga dili ka mag-usik ug oras sa pagpatin-aw kung giunsa ang pagtrabaho sa Voximplant ug Dialogflow; kung gusto nimo, dali ka makapangita kasayuran sa Internet. Mao nga atong ilhon ang mismong konsepto sa atong Call Screening.

Ibutang ta nga aduna ka nay piho nga numero sa telepono nga imong gigamit kada adlaw ug diin makadawat ka ug importanteng mga tawag. Sa kini nga kaso, magkinahanglan kami usa ka ikaduha nga numero, nga ipaila bisan diin - sa koreo, sa usa ka business card, kung imong pun-on ang mga online nga porma, ug uban pa. Kini nga numero makonektar sa usa ka natural nga sistema sa pagproseso sa pinulongan (sa among kaso, Dialogflow) ug ipasa ang mga tawag sa imong panguna nga numero kung gusto nimo. Sa porma sa diagram kini sama niini (ma-click ang hulagway):
Paghimo sa imong kaugalingon nga Google Call Screening base sa Voximplant ug Dialogflow
Ang pagsabut sa arkitektura, mahimo natong buhaton ang pagpatuman, apan sa usa ka caveat: dili nato buhaton mobile aplikasyon aron ipakita ang usa ka dayalogo tali sa Dialogflow ug usa ka umaabot nga nagtawag, maghimo kami usa ka yano ang web-usa ka aplikasyon nga adunay usa ka renderer sa dayalogo aron klaro nga ipakita kung giunsa ang Pag-screen sa Tawag. Ang kini nga aplikasyon adunay usa ka buton nga Intervene, pinaagi sa pagpindot kung unsang Voximplant ang magkonektar sa umaabot nga subscriber sa na-dial nga subscriber, kung ang ulahi nakahukom nga makigsulti sa iyang kaugalingon.

Pagpatuman

Pag-sign in imong Voximplant account ug paghimo og bag-ong aplikasyon, pananglitan sa screening:

Paghimo sa imong kaugalingon nga Google Call Screening base sa Voximplant ug Dialogflow
Ablihi seksyon "Mga kwarto" ug pagpalit ug numero nga magamit isip tigpataliwala:

Paghimo sa imong kaugalingon nga Google Call Screening base sa Voximplant ug Dialogflow
Sunod, adto sa screening application, sa "Numbers" nga seksyon, "Available" tab. Dinhi imong makita ang numero nga imong gipalit. I-link kini sa aplikasyon gamit ang "Attach" nga buton - sa bintana nga makita, ibilin ang tanan nga mga default nga kantidad ug i-klik ang "Attach".

Kung naa sa sulod sa aplikasyon, adto sa tab nga "Mga script" ug paghimo usa ka script nga myscreening - sa kini gigamit namon ang code gikan sa artikulo Giunsa paggamit ang Dialogflow Connector. Sa kini nga kaso, ang code gamay nga usbon, tungod kay kinahanglan naton "makita" ang dayalogo tali sa nagtawag ug sa katabang; ang tanan nga code posible kuhaa dinhi.

ATTENTION: kinahanglan nimo nga usbon ang bili sa variable sa server sa ngalan sa imong ngrok server (ang mga detalye bahin sa ngrok anaa sa ubos). Ipuli usab ang imong mga kantidad sa linya 31, diin ang imong numero sa telepono mao ang imong panguna nga numero (pananglitan, ang imong personal nga mobile phone), ug ang numero sa voximplant mao ang numero nga bag-o nimo gipalit.

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

Ang callPSTN nga tawag mahitabo sa higayon nga modesisyon ka sa pagsulod sa panag-istoryahanay ug personal nga makig-istorya sa umaabot nga subscriber.

Human nimo ma-save ang script, kinahanglan nimo nga i-link kini sa gipalit nga numero. Aron mahimo kini, samtang naa pa sa sulod sa imong aplikasyon, adto sa tab nga "Routing" aron maghimo usa ka bag-ong lagda - ang buton nga "Bag-ong Lagda" sa taas nga tuo nga suok. Paghatag ug ngalan (pananglitan, tanan nga tawag), ibilin ang default nga maskara (.* - nga nagpasabut nga ang tanan nga umaabot nga mga tawag iproseso sa mga script nga gipili alang niini nga lagda) ug ipiho ang script sa myscreening.

Paghimo sa imong kaugalingon nga Google Call Screening base sa Voximplant ug Dialogflow
Luwasa ang lagda.

Sukad karon, ang numero sa telepono nalambigit sa script. Ang katapusan nga butang nga kinahanglan nimong buhaton mao ang pag-link sa bot sa aplikasyon. Aron mahimo kini, adto sa tab nga "Dialogflow Connector", i-klik ang "Add Dialogflow Agent" nga buton sa ibabaw nga tuo nga suok ug i-upload ang JSON file sa imong Dialogflow agent.

Paghimo sa imong kaugalingon nga Google Call Screening base sa Voximplant ug Dialogflow
Kung kinahanglan nimo ang usa ka ahente alang sa panig-ingnan / pagsulay, mahimo nimo makuha ang amon sa kini nga link: github.com/aylarov/callscreening/tree/master/dialogflow. Ayaw lang pagpangayo og daghan gikan niini, kini usa lamang ka pananglitan nga libre ka nga buhaton pag-usab sumala sa imong gusto ug mobati nga gawasnon nga ipaambit ang mga resulta :)

Yano nga backend sa NodeJS

Atong i-deploy ang usa ka yano nga backend sa usa ka node, pananglitan, sama niini:
github.com/aylarov/callscreening/tree/master/nodejs

Kini usa ka yano nga aplikasyon nga nanginahanglan duha ra nga mga mando nga modagan:

npm install
node index.js

Ang server modagan sa port 3000 sa imong makina, mao nga aron makonektar kini sa Voximplant cloud, among gigamit ang ngrok utility. Sa diha nga ikaw nag-instalar ngrok, pagdagan kini gamit ang mando:

ngrok http 3000

Makita nimo ang domain name nga namugna sa ngrok para sa imong lokal nga server - kopyaha kini ug i-paste kini sa variable sa server.

Kustomer

Ang aplikasyon sa kliyente morag usa ka yano nga chat nga mahimo nimo kuhaa kini gikan dinhi.

Kopyaha lang ang tanan nga mga file sa pipila nga direktoryo sa imong web server ug kini molihok. Sa script.js file, ilisan ang server variable sa ngrok domain name ug ang callee variable sa numero nga imong gipalit. I-save ang file ug ilunsad ang aplikasyon sa imong browser. Kung ok ra ang tanan, imong makita ang koneksyon sa WebSocket sa panel sa developer.

Demo

Makita nimo ang aplikasyon nga naglihok sa kini nga video:


PS Kung imong i-klik ang Intervene button, ang nagtawag idirekta sa akong numero sa telepono, ug kung imong i-klik ang Disconnect, kini mahimong...? Mao na, ang tawag ma-disconnect.

Source: www.habr.com

Idugang sa usa ka comment