คุณอาจเคยได้ยินหรืออ่านเกี่ยวกับคุณสมบัติการคัดกรองการโทรที่ Google เปิดตัวสำหรับโทรศัพท์ Pixel ในสหรัฐอเมริกา แนวคิดนี้ดีมาก - เมื่อคุณได้รับสายเรียกเข้า ผู้ช่วยเสมือนจะเริ่มสื่อสาร ในขณะที่คุณเห็นการสนทนานี้ในรูปแบบของการแชท และคุณสามารถเริ่มพูดแทนผู้ช่วยได้ตลอดเวลา สิ่งนี้มีประโยชน์มากในสมัยนี้เมื่อเกือบ
สถาปัตยกรรม
ฉันขอแนะนำให้คุณอย่าเสียเวลาอธิบายวิธีการทำงานของ Voximplant และ Dialogflow คุณสามารถค้นหาข้อมูลบนอินเทอร์เน็ตได้อย่างง่ายดายหากต้องการ เรามาทำความรู้จักกับแนวคิดของการคัดกรองการโทรของเรากันดีกว่า
สมมติว่าคุณมีหมายเลขโทรศัพท์จำนวนหนึ่งที่คุณใช้ทุกวันและรับสายที่สำคัญ ในกรณีนี้ เราจะต้องมีหมายเลขที่สองซึ่งจะระบุไว้ทุกที่ - ทางไปรษณีย์ บนนามบัตร เมื่อคุณกรอกแบบฟอร์มออนไลน์ ฯลฯ หมายเลขนี้จะเชื่อมต่อกับระบบประมวลผลภาษาธรรมชาติ (ในกรณีของเราคือ Dialogflow) และจะโอนสายไปยังหมายเลขหลักของคุณเฉพาะในกรณีที่คุณต้องการเท่านั้น ในรูปแบบไดอะแกรมจะมีลักษณะดังนี้ (คลิกรูปภาพได้):
เมื่อเข้าใจสถาปัตยกรรมแล้ว เราสามารถนำไปปฏิบัติได้ แต่มีข้อแม้ประการหนึ่งคือ เราจะไม่ดำเนินการ มือถือ แอปพลิเคชันเพื่อแสดงบทสนทนาระหว่าง Dialogflow และผู้โทรเข้า เราจะสร้างความเรียบง่าย เว็บ- แอปพลิเคชันที่มีตัวแสดงบทสนทนาเพื่อแสดงวิธีการทำงานของการคัดกรองการโทรอย่างชัดเจน แอปพลิเคชันนี้จะมีปุ่มแทรกแซงโดยการกดที่ Voximplant จะเชื่อมต่อผู้สมัครสมาชิกที่เข้ามากับผู้สมัครสมาชิกที่โทรออกหากฝ่ายหลังตัดสินใจพูดคุยด้วยตัวเอง
การดำเนินงาน
เข้าสู่ระบบ
เปิดขึ้นมา
จากนั้นไปที่แอปพลิเคชันคัดกรองในส่วน "ตัวเลข" แท็บ "ว่าง" ที่นี่คุณจะเห็นหมายเลขที่คุณเพิ่งซื้อ เชื่อมโยงกับแอปพลิเคชันโดยใช้ปุ่ม "แนบ" - ในหน้าต่างที่ปรากฏขึ้น ให้ปล่อยค่าเริ่มต้นทั้งหมดไว้แล้วคลิก "แนบ"
เมื่อเข้าไปในแอปพลิเคชันแล้วให้ไปที่แท็บ "สคริปต์" และสร้างสคริปต์ myscreening - ในนั้นเราใช้โค้ดจากบทความ
ข้อควรระวัง: คุณจะต้องเปลี่ยนค่าของตัวแปรเซิร์ฟเวอร์เป็นชื่อของเซิร์ฟเวอร์ ngrok ของคุณ (รายละเอียดเกี่ยวกับ ngrok จะอยู่ด้านล่าง) แทนที่ค่าของคุณในบรรทัด 31 โดยที่หมายเลขโทรศัพท์ของคุณคือหมายเลขหลักของคุณ (เช่น โทรศัพท์มือถือส่วนตัวของคุณ) และหมายเลข voximplant คือหมายเลขที่คุณเพิ่งซื้อ
outbound_call = VoxEngine.callPSTN(“YOUR PHONE NUMBER”, “VOXIMPLANT NUMBER”)
การโทร PSTN จะเกิดขึ้นในขณะที่คุณตัดสินใจที่จะเข้าสู่การสนทนาและพูดคุยกับสมาชิกที่เข้ามาเป็นการส่วนตัว
หลังจากที่คุณบันทึกสคริปต์แล้ว คุณต้องเชื่อมโยงสคริปต์เข้ากับหมายเลขที่ซื้อ ในการดำเนินการนี้ ขณะที่ยังอยู่ในแอปพลิเคชันของคุณ ให้ไปที่แท็บ "การกำหนดเส้นทาง" เพื่อสร้างกฎใหม่ - ปุ่ม "กฎใหม่" ที่มุมขวาบน ระบุชื่อ (เช่น การโทรทั้งหมด) ปล่อยให้มาสก์เริ่มต้น (.* - ซึ่งหมายความว่าสายเรียกเข้าทั้งหมดจะได้รับการประมวลผลโดยสคริปต์ที่เลือกสำหรับกฎนี้) และระบุสคริปต์การคัดกรองของฉัน
บันทึกกฎ
จากนี้ไปหมายเลขโทรศัพท์จะเชื่อมโยงกับสคริปต์ สิ่งสุดท้ายที่คุณต้องทำคือเชื่อมโยงบอทเข้ากับแอปพลิเคชัน ในการดำเนินการนี้ ไปที่แท็บ “ตัวเชื่อมต่อ Dialogflow” คลิกปุ่ม “เพิ่มตัวแทน Dialogflow” ที่มุมขวาบน และอัปโหลดไฟล์ JSON ของตัวแทน Dialogflow ของคุณ
หากคุณต้องการตัวแทนสำหรับตัวอย่าง/การทดสอบ คุณสามารถขอรับตัวแทนของเราได้ที่ลิงก์นี้:
แบ็กเอนด์อย่างง่ายบน NodeJS
เรามาปรับใช้แบ็กเอนด์แบบง่ายบนโหนด เช่นนี้:
นี่เป็นแอปพลิเคชั่นง่ายๆ ที่ต้องใช้เพียงสองคำสั่งในการรัน:
npm install
node index.js
เซิร์ฟเวอร์จะทำงานบนพอร์ต 3000 ของเครื่องของคุณ ดังนั้นในการเชื่อมต่อกับคลาวด์ Voximplant เราจะใช้ยูทิลิตี้ ngrok เมื่อคุณติดตั้ง
ngrok http 3000
คุณจะเห็นชื่อโดเมนที่ ngrok สร้างขึ้นสำหรับเซิร์ฟเวอร์ภายในเครื่องของคุณ - คัดลอกและวางลงในตัวแปรเซิร์ฟเวอร์
ลูกค้า
แอปพลิเคชันไคลเอนต์ดูเหมือนเป็นการแชทธรรมดา ๆ ที่คุณทำได้
เพียงคัดลอกไฟล์ทั้งหมดไปยังไดเร็กทอรีบางส่วนบนเว็บเซิร์ฟเวอร์ของคุณและมันจะใช้งานได้ ในไฟล์ script.js ให้แทนที่ตัวแปรเซิร์ฟเวอร์ด้วยชื่อโดเมน ngrok และตัวแปรผู้เรียกด้วยหมายเลขที่คุณซื้อ บันทึกไฟล์และเปิดแอปพลิเคชันในเบราว์เซอร์ของคุณ หากทุกอย่างเรียบร้อยดี คุณจะเห็นการเชื่อมต่อ WebSocket ในแผงนักพัฒนาซอฟต์แวร์
การสาธิต
คุณสามารถดูการทำงานของแอปพลิเคชันได้ในวิดีโอนี้:
ป.ล. หากคุณคลิกที่ปุ่ม Intervene ผู้โทรจะถูกนำทางไปยังหมายเลขโทรศัพท์ของฉัน และหากคุณคลิกที่ Disconnect ผู้โทรจะถูก...? ถูกต้องแล้วการโทรจะถูกตัดการเชื่อมต่อ
ที่มา: will.com