เมื่อใช้ร่วมกับ Intent แล้ว ฉากเป็นองค์ประกอบพื้นฐานที่สำคัญอีกอย่างหนึ่งของโมเดลการสนทนา ฉากแสดงถึงสถานะต่างๆ ของการสนทนา และวัตถุประสงค์หลักคือการจัดระเบียบการสนทนาออกเป็นส่วนๆ ที่สมเหตุสมผล ทำงานต่างๆ และส่งกลับข้อความแจ้งแก่ผู้ใช้
คุณลักษณะของฉากมีดังนี้
- การดำเนินการที่วนซ้ำ - ฉากจะทำงานภายในลูปจนกว่าจะตรงตามเกณฑ์การเปลี่ยนที่คุณกำหนด วิธีนี้ช่วยให้คุณสร้างกระบวนการควบคุมลอจิกได้อย่างมีประสิทธิภาพมากขึ้นในฉากเดียว
- การแยกกล่องโต้ตอบ - เมื่อใช้ร่วมกับ Intent ฉากต่างๆ จะช่วยให้คุณจัดกลุ่มกล่องโต้ตอบออกเป็นส่วนๆ ตามตรรกะ ทำให้คุณสร้างคู่คำขอผู้ใช้และการตอบสนองการดำเนินการได้อย่างง่ายดาย
- ขอบเขตการจับคู่ Intent - เนื่องจากเล่นได้ครั้งละ 1 ฉากเท่านั้น คุณจึงกำหนดขอบเขตการจับคู่ Intent กับฉากที่ต้องการและให้จับคู่ตรงกันเมื่อฉากเหล่านั้นทำงานอยู่เท่านั้น
- การเติมช่องโฆษณา - คุณสามารถใช้การเติมช่องภายในฉากเพื่อเก็บข้อมูลที่ผู้ใช้ป้อนไว้หลายๆ แบบ โดยไม่ต้องสร้าง Intent หลายรายการ
- เงื่อนไขในฉาก - คุณสามารถตรวจสอบสล็อต เซสชัน ผู้ใช้ และพื้นที่เก็บข้อมูลในบ้านเพื่อใช้ตรรกะที่เรียบง่ายและมีเงื่อนไขโดยไม่ต้องทริกเกอร์เว็บฮุค
คุณสามารถกำหนดฉากเป็นส่วนหนึ่งของโมเดลการสนทนาเป็นฉากที่กำหนดเองได้ ตรรกะการสนทนาของ Assistant ยังมีฉากของระบบที่มอบฟังก์ชันการทำงานมาตรฐานสำหรับการสนทนาของคุณ
ฉากที่กำหนดเอง
ฉากที่กำหนดเองเป็นองค์ประกอบพื้นฐานของตรรกะการสนทนาที่เป็นส่วนหนึ่งของโมเดลการสนทนาของการดำเนินการของคุณ ฉากที่กำหนดเองมีระยะที่กำหนดลักษณะและเวลาที่เริ่มต้น ซึ่งเรียกว่าการเปิดใช้งาน ซึ่งเป็นการประมวลผลการสนทนา ซึ่งเรียกว่าวงจรการดำเนินการ และจุดสิ้นสุดของฉากที่เรียกว่าการเปลี่ยน ดังนี้
- การเปิดใช้งาน - ก่อนที่ฉากจะทำงานได้ คุณต้องเปิดใช้งานผ่าน Intent การจับคู่หรือการเปลี่ยนฉาก
- การดำเนินการ - เมื่อโหมดทำงานอยู่ โหมดจะทำงานตามวงจรชีวิตที่กำหนดไว้อย่างชัดเจน ซึ่งจะช่วยให้คุณทำงานที่หลากหลายได้ เช่น การเติมช่อง การตรวจสอบแบบมีเงื่อนไข การสร้างพรอมต์ และการทริกเกอร์เหตุการณ์เว็บฮุค
- การเปลี่ยนผ่าน - เมื่อฉากหนึ่งเป็นไปตามเกณฑ์ที่คุณกำหนด เช่น การจับคู่ความตั้งใจหรือการเติมช่องจนครบช่อง คุณจะเปลี่ยนไปเล่นฉากอื่นเพื่อใช้ตรรกะมากยิ่งขึ้นได้ หรืออาจเปลี่ยนไปใช้โหมดสิ้นสุดการสนทนา ซึ่งจะจบการสนทนากับผู้ใช้
การดำเนินการ
โหมดจะต้องเปิดใช้งานก่อน จึงจะเรียกใช้ได้ ได้ครั้งละหนึ่งฉากเท่านั้น คุณเปิดใช้งานฉากได้ด้วยวิธีต่อไปนี้
- การเรียกใช้ - เมื่ออินพุตของผู้ใช้ตรงกับโมเดลภาษาของ Intent ส่วนกลาง คุณจะเปิดใช้งานโหมดเพื่อประมวลผลคำขอได้
- การเปลี่ยนฉากแบบคงที่ - เมื่อฉากใดตรงตามเกณฑ์การเปลี่ยน คุณจะกําหนดการเปลี่ยนไปยังฉากอื่นได้
- การเปลี่ยนฉากแบบไดนามิก - คุณเปลี่ยนไปใช้โหมดอื่นแบบเป็นโปรแกรมภายในเครื่องจัดการเว็บฮุคได้
วงจรการดำเนินการ
เมื่อฉากทำงานอยู่ ฉากนั้นจะทำงานตามวงจรชีวิตที่กำหนดไว้อย่างเคร่งครัด ซึ่งจะวนซ้ำจนกว่าฉากนั้นจะเป็นไปตามเกณฑ์การเปลี่ยนที่คุณกำหนดไว้ วงจรการดำเนินการของฉากจะแยกออกเป็นขั้นตอนทางเลือกซึ่งจะทำงานตามลำดับต่อไปนี้
เมื่อ Enter - ขั้นตอนนี้จะทำงานเพียงครั้งเดียวเมื่อเปิดใช้งานโหมด คุณสามารถทริกเกอร์เว็บฮุคหรือแจ้งให้ผู้ใช้สร้างฉากแบบครั้งเดียวได้
เงื่อนไข - เงื่อนไขช่วยให้คุณประเมินเกณฑ์บางอย่างก่อนที่จะยกระดับช่วงวงจรของวงจร ทริกเกอร์เว็บฮุค หรือส่งข้อความแจ้ง ขั้นตอนนี้สามารถกำหนดเกณฑ์การเปลี่ยนเพื่อออกจากลูปการดำเนินการ
การเติมช่องโฆษณา - โหมดจะแสดงข้อความแจ้งผู้ใช้โดยอัตโนมัติจนกว่าจะรวบรวมช่องที่จำเป็นทั้งหมด (ข้อมูลที่พิมพ์) ฉากจะแจ้งว่ามีสล็อตเดี่ยวทุกครั้งผ่านลูปการดำเนินการ หากช่องใดหายไป วงจรของฉากจะวนกลับไปที่ระยะการเติมช่องโฆษณา และแจ้งให้แสดงช่องถัดไปที่จำเป็น ขั้นตอนนี้สามารถกำหนดเกณฑ์การเปลี่ยนเพื่อออกจากลูปการดำเนินการ
Prompt - Assistant จะส่งคิวข้อความแจ้งไปยังผู้ใช้และล้างคิว คิวข้อความแจ้งคือคอลเล็กชันข้อความแจ้งที่รวมเข้าด้วยกันซึ่งรวบรวมไว้ตั้งแต่ครั้งล่าสุดที่ขั้นตอนนี้ล้างคิว
การป้อนข้อมูล - Assistant จะใช้และส่งอินพุตของผู้ใช้กลับไปยังโหมดเพื่อให้คุณประมวลผลได้ ซึ่งอาจรวมถึงการจับคู่ Intent (ความตั้งใจโดยรวมหรือ Intent ของผู้ใช้ภายในโหมด) การเติมช่องต่อ (หากยังไม่สมบูรณ์) หรือการจัดการการไม่จับคู่หรือไม่เกิดข้อผิดพลาดในการป้อนข้อมูล ขั้นตอนนี้จะกำหนดเกณฑ์การเปลี่ยนเพื่อออกจากลูปการดำเนินการได้ หากไม่เปลี่ยน ลูปการดำเนินการจะกลับไปยังขั้นตอนเงื่อนไข
ส่วนต่อไปนี้จะอธิบายรายละเอียดแต่ละขั้นตอนในวงจร
เมื่อ Enter
On Enter เป็นขั้นตอนเดียวที่ไม่มีผลในลูปการดำเนินการของฉาก การดำเนินการนี้จะเริ่มต้นฉากของคุณแบบครั้งเดียวตามลำดับต่อไปนี้
- หากรันไทม์ของ Assistant เติมช่องโฆษณาจาก Intent ที่ตรงกันก่อนหน้านี้ได้ ระบบจะเตรียมความพร้อมสำหรับขั้นตอนการเติมช่องโฆษณา ตัวอย่างเช่น ข้อมูลจากผู้ใช้บางรายการอาจตรงกับ Intent และระบุช่องโฆษณา การจับคู่ Intent ดังกล่าวจะเปิดใช้งานโหมด และสามารถเติมช่องโฆษณาในฉากหากชื่อช่องตรงกัน
- หากเปิดใช้เว็บฮุคอยู่ ระบบจะเรียกเหตุการณ์แบบซิงโครนัสและรอให้บริการเว็บแสดงการตอบสนอง
- เมื่อรันไทม์ได้รับการตอบกลับของเว็บฮุค ระบบจะแก้ไขการอ้างอิงพารามิเตอร์ในพรอมต์และเลือกตัวเลือกข้อความแจ้งตามแพลตฟอร์มผู้ใช้ จากนั้นเลือก 1 ตัวแปรเพื่อให้ตัวเลือกนั้นส่งให้ผู้ใช้ในภายหลัง
- หากการตอบสนองของเว็บฮุคมีข้อความแจ้ง ระบบจะเพิ่มลงในคิวพรอมต์ หากมีข้อความแจ้งแบบคงที่อยู่ ข้อความแจ้งของเว็บฮุคจะรวมเข้ากับคิวของข้อความแจ้งก่อน ตามด้วยข้อความแจ้งแบบคงที่
- หากการตอบสนองของเว็บฮุคมีการเปลี่ยน การตอบสนองของเว็บฮุคก็จะเปลี่ยนทันที ถ้าไม่อยู่ ฉากนั้นยังค้างอยู่ที่ ช่วงเติมช่องโฆษณา
เงื่อนไข
เงื่อนไขช่วยให้คุณตรวจสอบข้อมูลเซสชัน ผู้ใช้ หรือสล็อตเพื่อให้เงื่อนไขเป็นจริงได้ เช่น คุณอาจตรวจสอบว่าช่องทั้งหมดได้รับการเติมโฆษณาหรือไม่ และตั้งเป็นเกณฑ์ในการย้ายไปยังฉากอื่นเพื่อประมวลผลช่องโฆษณา
- รันไทม์ของ Assistant จะประเมินแต่ละเงื่อนไขตามลำดับที่ระบุ เงื่อนไขแรกที่ประเมินเป็น
true
จะเรียกใช้เครื่องจัดการที่เกี่ยวข้องและหยุดการประเมินเงื่อนไข - ระบบจะเพิ่มเงื่อนไข
else if scene.slots.status = "FINAL"
ลงในรายการเงื่อนไขโดยอัตโนมัติหากคุณเติมช่องโฆษณา เงื่อนไขที่ไม่บังคับนี้จะตรวจสอบว่าการเติมช่องเสร็จสมบูรณ์หรือไม่ และจะทริกเกอร์เว็บฮุคหรือเพิ่มข้อความแจ้งลงในคิวข้อความแจ้งได้
การประเมินเงื่อนไขหลังฉาก หากฉากไม่ได้เป็นตัวกำหนดการเปลี่ยน ฉากนั้นจะยังคงเหลือพื้นที่ว่าง
การเติมช่อง
ขั้นตอนนี้เพิ่มข้อความแจ้งของช่องโฆษณาสำหรับช่องโฆษณาเดียวที่ยังไม่ได้รับโฆษณาและช่องที่ต้องการ หากไม่ได้กำหนดช่องโฆษณาในฉาก ขั้นตอนนี้จะไม่ทำอะไร
- รันไทม์ของ Assistant จะเลือกช่องโฆษณาแรกที่ไม่ได้รับโฆษณาและเพิ่มข้อความแจ้งที่เกี่ยวข้องลงในคิวข้อความแจ้ง เนื่องจากลูปการดำเนินการของฉาก ระบบจึงจัดการช่องโฆษณาเพิ่มเติมที่ไม่ได้รับโฆษณาในภายหลังเมื่อลูปการดำเนินการย้อนกลับมาที่ขั้นตอนนี้
- ช่องที่ใช้งานอยู่ในปัจจุบันอาจมีข้อความแจ้งการจัดการข้อผิดพลาดซึ่งลบล้างช่องที่ระบุไว้ในขั้นตอนอินพุตของฉาก
- เมื่อผู้ใช้เติมช่องโฆษณา คุณจะตรวจสอบช่องโฆษณาในบริการบนเว็บได้โดยการทริกเกอร์เว็บฮุค
ข้อความแจ้ง
รันไทม์ของ Assistant จะส่งคิวข้อความแจ้งไปยังผู้ใช้ ล้างคิว และใช้อินพุตของผู้ใช้
อินพุต
รันไทม์ของ Assistant จะพยายามจับคู่อินพุตกับ Intent หรือสล็อต ดังนี้
- ในกรณีของการจับคู่ตามความตั้งใจของผู้ใช้ โหมดจะเรียกใช้เครื่องจัดการ Intent ที่เกี่ยวข้อง (ความตั้งใจของผู้ใช้หรือระบบ) ตัวแฮนเดิล Intent ของโหมดจะมีความสำคัญเหนือกว่า Intent ทั่วไป หากคุณไม่ได้กำหนดการเปลี่ยน การดำเนินการฉากจะวนกลับเข้าสู่ระยะเงื่อนไข
- ในกรณีของสล็อตแมตช์ ฉากจะกลับไปที่ขั้นตอนการเติมช่องโฆษณา
ในกรณีที่เป็น Intent ที่ตรงกันของระบบ (เช่น ไม่มีอินพุตหรือไม่มีการจับคู่) คุณจะเพิ่มข้อความแจ้งลงในคิวพรอมต์ ทริกเกอร์เว็บฮุค หรือการเปลี่ยนได้ ในกรณีที่มีการกำหนดข้อความแจ้ง "ไม่มีการจับคู่" ไว้หลายรายการ รันไทม์ของ Assistant จะเลือกผลลัพธ์ที่เกี่ยวข้องมากที่สุดตามลำดับต่อไปนี้ การป้อนช่องโฆษณา ฉาก และข้อความแจ้งที่ไม่มีการจับคู่ส่วนกลาง ไม่มีการจับคู่ที่ตรงกันติดต่อกันจะสร้างเหตุการณ์ที่สอดคล้องกัน:
no_match_1
no_match_2
no_match_final
แต่ละระดับที่ไม่ตรงกัน (การเติมช่อง ฉาก และส่วนกลาง) จะทริกเกอร์เหตุการณ์ของเว็บฮุคได้ โดยค่าเริ่มต้น รายการที่ตรงกันครั้งที่ 3 หรือ "ไม่มีผลลัพธ์สุดท้าย" จะทำให้การสนทนาสิ้นสุดลง
ช่วงการเปลี่ยน
ทรานซิชันอาจเกิดขึ้นในกรณีต่อไปนี้
- เงื่อนไข - คุณเปลี่ยนฉากไปยังฉากอื่นได้ตามเงื่อนไขที่คุณกำหนด เงื่อนไขทั่วไปที่ควรตรวจสอบคือการเติมช่องโฆษณาให้เสร็จสมบูรณ์
- อินพุต (การจับคู่ความตั้งใจของผู้ใช้) - หาก Intent ตรงกัน ระบบจะทริกเกอร์การเปลี่ยนไปใช้ฉากอื่น
- อินพุต (การจับคู่ Intent ของระบบ) - คุณทริกเกอร์เว็บฮุคได้ในระหว่างเหตุการณ์การจับคู่ Intent ของระบบ ในกรณีที่ไม่มีการจับคู่และไม่มีเหตุการณ์อินพุต โดยค่าเริ่มต้น ฉากจะเปลี่ยนไปเป็นฉากสิ้นสุดการสนทนาหลังจากครบ 3 ครั้ง
โหมดของระบบ
โหมดของระบบช่วยให้คุณใช้ตรรกะแบบสนทนาในตัวจาก Assistant ได้ ซึ่งช่วยให้คุณเพิ่มขั้นตอนการสนทนามาตรฐานลงในประสบการณ์ของผู้ใช้ได้ ตัวอย่างเช่น โหมดระบบการลิงก์บัญชีจะช่วยให้ Assistant ดำเนินการขั้นตอนการลิงก์บัญชีได้ทันทีโดยแสดงข้อมูลที่คุณต้องการเพื่อลิงก์บัญชีของผู้ใช้จริงๆ โหมดของระบบไม่เป็นไปตามวงจร ของฉากมาตรฐาน
รายการต่อไปนี้จะอธิบายโหมดของระบบที่รองรับและวิธีใช้
- สิ้นสุดการสนทนา - ปิดไมโครโฟนและจบการสนทนากับผู้ใช้ Assistant จะกลับไปควบคุมประสบการณ์ของผู้ใช้หลังจากฉากนี้ทำงาน
- การลิงก์บัญชี - แนะนำผู้ใช้ผ่านขั้นตอนการเชื่อมโยงบัญชีและให้ข้อมูลที่จำเป็นแก่การดำเนินการเพื่อลิงก์บัญชีของผู้ใช้ในเซิร์ฟเวอร์แบ็กเอนด์กับบัญชี Google ของผู้ใช้ ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้โหมดนี้ได้ในเอกสารการลิงก์บัญชี
- การอัปเดตรายวัน - แนะนำผู้ใช้ให้ผ่านขั้นตอนการยืนยันเพื่อเพิ่มการดำเนินการของคุณลงในการอัปเดตรายวันของผู้ใช้ ดูเอกสารการอัปเดตรายวันสำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้โหมดนี้
- การแจ้งเตือน - แนะนำผู้ใช้ให้ทำตามขั้นตอนการยืนยันเพื่อรับการแจ้งเตือนจากการดำเนินการ ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้โหมดนี้ได้ในเอกสารข้อความ Push