Voximplant болон Dialogflow дээр тулгуурлан өөрийн Google дуудлагын скрининг хийх

Voximplant болон Dialogflow дээр тулгуурлан өөрийн Google дуудлагын скрининг хийх
Google-ийн АНУ-д Pixel утсандаа нэвтрүүлсэн Дуудлага шалгах функцийн талаар та сонссон эсвэл уншсан байх. Санаа нь гайхалтай - таныг ирж буй дуудлага хүлээн авахад виртуал туслах нь харилцаж эхлэх бөгөөд та энэ яриаг чат хэлбэрээр харж, хүссэн үедээ туслахын оронд ярьж эхлэх боломжтой. Энэ нь бараг л ийм үед маш хэрэгтэй байдаг Дуудлагын тал хувь нь спам байна, гэхдээ та харилцагчийн жагсаалтад байхгүй хэн нэгний чухал дуудлагыг алдахыг хүсэхгүй байна. Цорын ганц зүйл бол энэ функц нь зөвхөн Pixel утсанд байдаг бөгөөд зөвхөн АНУ-д байдаг. За, саад бэрхшээлийг даван туулах ёстой, тийм ээ? Тиймээс бид Voximplant болон Dialogflow ашиглан ижил төстэй шийдлийг хэрхэн хийхийг танд хэлэхээр шийдсэн. Муурны доор өгөөч.

архитектур

Би танд Voximplant болон Dialogflow хэрхэн ажилладаг талаар тайлбарлахад цаг үрэхгүй байхыг санал болгож байна; хэрэв та хүсвэл интернетээс мэдээллийг хялбархан олох боломжтой. Ингээд бидний дуудлагын скрининг гэдэг ойлголттой танилцацгаая.

Танд өдөр бүр ашигладаг, чухал дуудлага хүлээн авдаг тодорхой утасны дугаар байгаа гэж бодъё. Энэ тохиолдолд бидэнд шуудангаар, нэрийн хуудас, онлайн маягт бөглөх гэх мэт хаа сайгүй зааж өгөх хоёрдахь дугаар хэрэгтэй болно. Энэ дугаар нь байгалийн хэлний боловсруулалтын системд (манай тохиолдолд Dialogflow) холбогдох бөгөөд зөвхөн таны хүссэн тохиолдолд дуудлагыг таны үндсэн дугаар руу дамжуулах болно. Диаграмын хэлбэрээр энэ нь иймэрхүү харагдаж байна (зураг дээр дарж болно):
Voximplant болон Dialogflow дээр тулгуурлан өөрийн Google дуудлагын скрининг хийх
Архитектурыг ойлгосноор бид хэрэгжилтийг хүлээж авах боломжтой, гэхдээ нэг анхааруулгатай: бид үүнийг хийхгүй гар утас Dialogflow болон ирж буй залгагчийн хоорондох харилцан яриаг харуулах програмыг бид энгийн байдлаар үүсгэх болно вэб-Дуудлагын скрининг хэрхэн ажилладгийг тодорхой харуулах харилцан яриа дүрслэгчтэй програм. Энэ аппликешн нь Intervene товчлууртай байх бөгөөд түүнийг дарснаар Voximplant нь ирж буй захиалагчийг залгасан захиалагчтай холбох болно, хэрэв хэрэглэгч өөрөө ярихаар шийдсэн бол.

Реализация

Нэвтрэх таны Voximplant данс болон шинэ програм үүсгэх, жишээ нь скрининг:

Voximplant болон Dialogflow дээр тулгуурлан өөрийн Google дуудлагын скрининг хийх
Нээлттэй байна "Өрөө" хэсэг мөн зуучлагчаар ажиллах дугаар худалдаж аваарай:

Voximplant болон Dialogflow дээр тулгуурлан өөрийн Google дуудлагын скрининг хийх
Дараа нь "Тоонууд" хэсгийн "Боломжтой" табыг шалгах програм руу очно уу. Энд та саяхан худалдаж авсан дугаараа харах болно. Үүнийг "Хавсрах" товчийг ашиглан програмтай холбоно уу - гарч ирэх цонхонд бүх үндсэн утгыг орхиод "Хавсрах" дээр дарна уу.

Програм руу орсны дараа "Скриптүүд" таб руу очоод миний дэлгэцийн скриптийг үүсгэнэ үү - үүнд бид нийтлэлийн кодыг ашигладаг. Dialogflow холбогчийг хэрхэн ашиглах талаар. Энэ тохиолдолд кодыг бага зэрэг өөрчлөх болно, учир нь бид дуудагч ба туслах хоёрын хоорондох харилцан яриаг "харах" хэрэгтэй; бүх код боломжтой энд ав.

АНХААРУУЛГА: та серверийн хувьсагчийн утгыг өөрийн ngrok серверийн нэрээр өөрчлөх шаардлагатай болно (ngrok-ийн талаарх дэлгэрэнгүй мэдээллийг доороос үзнэ үү). Мөн 31-р мөрөнд утсаа орлуулаарай, үүнд таны утасны дугаар нь таны үндсэн дугаар (жишээ нь, таны хувийн гар утас), voximplant дугаар нь таны саяхан худалдаж авсан дугаар юм.

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

CallPSTN дуудлага нь таныг харилцан ярианд орж, ирж буй захиалагчтай биечлэн ярихаар шийдсэн тэр мөчид гарна.

Скриптийг хадгалсны дараа та үүнийг худалдаж авсан дугаартай холбох хэрэгтэй. Үүнийг хийхийн тулд аппликешн дотор байхдаа "Чилүүлэлт" таб руу орж шинэ дүрэм үүсгэнэ үү - баруун дээд буланд байгаа "Шинэ дүрэм" товч. Нэр (жишээ нь, бүх дуудлагууд) оруулаад, үндсэн маск (.* - энэ дүрмээр сонгогдсон скриптээр ирж буй бүх дуудлагыг боловсруулна гэсэн үг) орхиж, myscreening скриптийг зааж өгнө үү.

Voximplant болон Dialogflow дээр тулгуурлан өөрийн Google дуудлагын скрининг хийх
Дүрмийг хадгал.

Одооноос эхлэн утасны дугаар нь скрипттэй холбоотой. Хамгийн сүүлд хийх зүйл бол ботыг програмтай холбох явдал юм. Үүнийг хийхийн тулд "Dialogflow Connector" таб руу очоод баруун дээд буланд байрлах "Add Dialogflow Agent" товчийг дарж, Dialogflow агентынхаа JSON файлыг байршуулна уу.

Voximplant болон Dialogflow дээр тулгуурлан өөрийн Google дуудлагын скрининг хийх
Хэрэв танд жишээ нь/туршилтын төлөөлөгч хэрэгтэй бол манайхыг энэ холбоосоор авч болно: github.com/aylarov/callscreening/tree/master/dialogflow. Түүнээс их зүйл шаардах хэрэггүй, энэ бол та хүссэнээрээ дахин хийж, үр дүнгээ чөлөөтэй хуваалцах боломжтойн жишээ юм :)

NodeJS дээрх энгийн backend

Энгийн арын хэсгийг зангилаа дээр байрлуулцгаая, жишээ нь:
github.com/aylarov/callscreening/tree/master/nodejs

Энэ бол ажиллуулахын тулд ердөө хоёр тушаал шаарддаг энгийн програм юм:

npm install
node index.js

Сервер нь таны машины 3000 порт дээр ажиллах тул үүнийг Voximplant үүлэнд холбохын тулд бид ngrok хэрэгслийг ашигладаг. Та суулгах үед нгрок, үүнийг дараах тушаалаар ажиллуулна уу:

ngrok http 3000

Та өөрийн дотоод серверт зориулж үүсгэсэн ngrok домэйн нэрийг харах болно - үүнийг хуулж серверийн хувьсагч руу буулгана уу.

Хэрэглэгч

Үйлчлүүлэгчийн програм нь энгийн чат шиг харагдаж байна эндээс аваарай.

Бүх файлыг вэб серверийнхээ аль нэг директор руу хуулж авбал энэ нь ажиллах болно. script.js файлын серверийн хувьсагчийг ngrok домайн нэрээр, дуудлага хүлээн авагч хувьсагчийг худалдан авсан дугаараараа солино уу. Файлыг хадгалаад хөтөч дээрээ програмаа ажиллуул. Хэрэв бүх зүйл хэвийн байвал та хөгжүүлэгчийн самбараас WebSocket холболтыг харах болно.

Демо

Та энэ видеоноос програмыг хэрхэн ажиллаж байгааг харж болно:


Жич Та Intervene товчийг дарвал залгасан хүн миний утасны дугаар руу чиглэх ба Disconnect дээр дарвал...? Энэ нь зөв, дуудлага тасрах болно.

Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх