1. ภาพรวม
แพลตฟอร์มนักพัฒนาซอฟต์แวร์ Google Assistant ให้คุณสร้างซอฟต์แวร์เพื่อขยายฟังก์ชันการทํางานของ Google Assistant ซึ่งเป็นผู้ช่วยส่วนตัวในอุปกรณ์กว่า 1 พันล้านเครื่อง รวมถึงลําโพงอัจฉริยะ โทรศัพท์ รถยนต์ ทีวี หูฟัง และอื่นๆ ผู้ใช้มีส่วนร่วมกับ Assistant ในการสนทนาเพื่อทําสิ่งต่างๆ เช่น ซื้อของชําหรือจองรถโดยสาร ในฐานะนักพัฒนาซอฟต์แวร์ คุณจะใช้แพลตฟอร์มสําหรับนักพัฒนาแอป Assistant เพื่อสร้างและจัดการประสบการณ์การสนทนาที่น่าพอใจและมีประสิทธิภาพระหว่างผู้ใช้และบริการดําเนินการตามคําสั่งซื้อของบุคคลที่สามของคุณเองได้
Codelab นี้ครอบคลุมแนวคิดระดับเริ่มต้นสําหรับการพัฒนาด้วย Google Assistant โดยไม่จําเป็นต้องมีประสบการณ์ก่อนหน้าในการใช้แพลตฟอร์มเพื่อดําเนินการให้เสร็จสมบูรณ์ ใน Codelab นี้ คุณสร้างการดําเนินการง่ายๆ สําหรับ Google Assistant ซึ่งจะบอกผู้ใช้เกี่ยวกับโชคชะตาที่เริ่มต้นการผจญภัยในดินแดนแห่งกริฟฟินเบิร์กตามตํานาน ใน Codelab ระดับ 2 ของเครื่องมือสร้างบิลด์ คุณจะสร้างการดําเนินการนี้เพิ่มเติมเพื่อปรับแต่งดวงชะตาของผู้ใช้โดยอิงตามข้อมูลที่ผู้ใช้ป้อนได้
สิ่งที่คุณจะสร้าง
ใน Codelab นี้ คุณสร้างการดําเนินการง่ายๆ ด้วยฟังก์ชันต่อไปนี้
- ตอบกลับผู้ใช้ด้วยข้อความทักทาย
- ถามคําถามผู้ใช้ เมื่อผู้ใช้รายนั้นตอบคําถาม การดําเนินการของคุณจะตอบสนองต่อการเลือกของผู้ใช้อย่างเหมาะสม
- มีชิปคําแนะนําให้ผู้ใช้คลิกเพื่อป้อนข้อมูล
- แก้ไขข้อความต้อนรับแก่ผู้ใช้โดยพิจารณาว่าเป็นผู้ใช้ที่กลับมาหรือไม่
เมื่อ Codelab นี้ดําเนินการเสร็จแล้ว การดําเนินการที่เสร็จสมบูรณ์จะมีขั้นตอนการสนทนาต่อไปนี้
สิ่งที่คุณจะได้เรียนรู้
- วิธีสร้างโปรเจ็กต์ในคอนโซลการดําเนินการ
- วิธีส่งข้อความแจ้งให้ผู้ใช้หลังจากที่เรียกใช้การดําเนินการ
- วิธีประมวลผลข้อมูลที่ผู้ใช้ป้อนและส่งคําตอบ
- วิธีทดสอบการทํางานในเครื่องจําลองการดําเนินการ
- วิธีใช้การดําเนินการตามคําสั่งซื้อโดยใช้เครื่องมือแก้ไขฟังก์ชันของ Cloud
สิ่งที่ต้องมี
เครื่องมือต่อไปนี้ต้องอยู่ในสภาพแวดล้อมของคุณ
- เว็บเบราว์เซอร์ เช่น Google Chrome
2. ตั้งค่า
ส่วนต่อไปนี้จะอธิบายถึงวิธีตั้งค่าสภาพแวดล้อมในการพัฒนาซอฟต์แวร์และสร้างโปรเจ็กต์การดําเนินการ
ตรวจสอบการตั้งค่าสิทธิ์ของ Google
หากต้องการทดสอบการทํางานที่คุณสร้างใน Codelab นี้ คุณต้องเปิดใช้สิทธิ์ที่จําเป็นเพื่อให้เครื่องจําลองสามารถเข้าถึงการดําเนินการของคุณได้ หากต้องการเปิดใช้สิทธิ์ ให้ทําตามขั้นตอนต่อไปนี้
- ไปที่หน้าส่วนควบคุมกิจกรรม
- ลงชื่อเข้าใช้ด้วยบัญชี Google ของคุณ หากยังไม่ได้ดําเนินการ
- เปิดใช้สิทธิ์ต่อไปนี้
- กิจกรรมบนเว็บและแอป
- ในส่วนกิจกรรมบนเว็บและแอป ให้เลือกช่องทําเครื่องหมายรวมประวัติการเข้าชมใน Chrome และกิจกรรมจากเว็บไซต์ แอป และอุปกรณ์ที่ใช้บริการต่างๆ ของ Google
สร้างโปรเจ็กต์การดําเนินการ
โปรเจ็กต์การดําเนินการคือคอนเทนเนอร์สําหรับการดําเนินการ วิธีสร้างโปรเจ็กต์การดําเนินการของ Codelab มีดังนี้
- เปิดคอนโซล Actions
- คลิกโครงการใหม่
- พิมพ์ชื่อโครงการ เช่น
actions-codelab
(ชื่อมีไว้สําหรับการอ้างอิงภายใน ซึ่งหลังจากนั้น คุณจะตั้งชื่อภายนอกสําหรับโปรเจ็กต์ของคุณได้)
- คลิกสร้างโปรเจ็กต์
- ในหน้าจอคุณต้องการสร้างการดําเนินการประเภทใด ให้เลือกการ์ดกําหนดเอง
- คลิกถัดไป
- เลือกการ์ดโปรเจ็กต์ว่าง
- คลิกเริ่มสร้างอาคาร
เชื่อมโยงบัญชีสําหรับการเรียกเก็บเงิน
หากต้องการทําให้ดําเนินการตามคําสั่งซื้อในภายหลังใน Codelab นี้โดยใช้ Cloud Functions คุณต้องเชื่อมโยงบัญชีสําหรับการเรียกเก็บเงินกับโปรเจ็กต์ใน Google Cloud
หากยังไม่ได้เชื่อมโยงบัญชีสําหรับการเรียกเก็บเงินกับโปรเจ็กต์ ให้ทําตามขั้นตอนต่อไปนี้
- ไปที่หน้าการเรียกเก็บเงินของ Google Cloud Platform
- คลิกเพิ่มบัญชีสําหรับการเรียกเก็บเงินหรือสร้างบัญชี
- ป้อนข้อมูลการชําระเงิน
- คลิกเริ่มทดลองใช้ฟรีหรือส่งและเปิดใช้การเรียกเก็บเงิน
- ไปที่หน้าการเรียกเก็บเงินของ Google Cloud Platform
- คลิกแท็บโปรเจ็กต์ของฉัน
- คลิกจุด 3 จุดในส่วนการดําเนินการข้างโปรเจ็กต์การดําเนินการของ Codelab
- คลิกเปลี่ยนการเรียกเก็บเงิน
- เลือกบัญชีสําหรับการเรียกเก็บเงินที่คุณกําหนดค่าไว้ในเมนูแบบเลื่อนลง คลิกตั้งค่าบัญชี
เพื่อหลีกเลี่ยงค่าใช้จ่ายที่อาจเกิดขึ้น ให้ทําตามขั้นตอนในส่วนล้างโปรเจ็กต์ของคุณที่ท้าย Codelab นี้
3. เริ่มการสนทนา
ผู้ใช้เริ่มการสนทนากับการดําเนินการของคุณผ่านการเรียกใช้ ตัวอย่างเช่น หากคุณมีการดําเนินการที่ชื่อ MovieTime ผู้ใช้สามารถเรียกใช้การดําเนินการโดยพูดวลีอย่าง "Hey Google พูดคุยกับ MovieTime" โดยที่ MovieTime คือชื่อที่แสดง การดําเนินการต้องมีชื่อที่แสดงหากต้องการใช้งานเป็นเวอร์ชันที่ใช้งานจริง อย่างไรก็ตาม คุณไม่จําเป็นต้องกําหนดชื่อที่แสดงเพื่อทดสอบการดําเนินการ แต่คุณจะใช้วลี "Talk to my app app" ในเครื่องจําลองเพื่อเรียกใช้การดําเนินการของคุณได้แทน
คุณต้องแก้ไขคําขอหลักเพื่อกําหนดการดําเนินการหลังจากที่ผู้ใช้เรียกใช้การดําเนินการของคุณ
โดยค่าเริ่มต้น Builder Builder จะให้ Prompt ทั่วไปเมื่อมีการทริกเกอร์การเรียกใช้ ("เริ่มสร้างการดําเนินการโดยการกําหนดคําขอหลัก&")
ในส่วนถัดไป คุณจะปรับแต่งข้อความแจ้งสําหรับการเรียกใช้หลักได้ในคอนโซลการดําเนินการ
ตั้งค่าการเรียกใช้หลัก
หากต้องการแก้ไขข้อความแจ้งการดําเนินการที่จะส่งกลับไปยังผู้ใช้เมื่อมีการเรียกใช้การดําเนินการของคุณ ให้ทําตามขั้นตอนต่อไปนี้
- คลิกคําขอหลักในแถบนําทาง
- แทนที่ข้อความในช่อง
speech
(Start building your action...
) ในเครื่องมือแก้ไขโค้ดด้วยข้อความต้อนรับA wondrous greeting, adventurer! Welcome to the mythical land of Gryffinberg! Based on your clothes, you are not from around these lands. It looks like you're on your way to an epic journey.
- คลิกบันทึก
ทดสอบการเรียกใช้หลักในเครื่องจําลอง
คอนโซล Actions มีเครื่องมือบนเว็บสําหรับทดสอบการดําเนินการของคุณที่เรียกว่าเครื่องจําลอง อินเทอร์เฟซจะจําลองอุปกรณ์ฮาร์ดแวร์และการตั้งค่าเพื่อให้คุณสามารถโต้ตอบกับการทํางานได้เหมือนที่เคยทํางานใน Smart Display, โทรศัพท์, ลําโพง หรือ KaiOS
เมื่อเรียกใช้การดําเนินการ ปัจจุบันจะตอบกลับด้วยข้อความแจ้งที่ปรับแต่งเองที่คุณเพิ่ม ("A wondrous greeting, adventurer!..."
)
หากต้องการทดสอบการเรียกใช้หลักในเครื่องจําลอง ให้ทําตามขั้นตอนต่อไปนี้
- ในแถบนําทางด้านบน ให้คลิกทดสอบเพื่อไปที่เครื่องจําลอง
- หากต้องการเรียกใช้การทํางานในเครื่องจําลอง ให้พิมพ์
Talk to my test app
ในช่องอินพุต แล้วกดEnter
เมื่อคุณเรียกใช้การเรียกใช้หลักจาก Assistant จะตอบกลับข้อความต้อนรับที่กําหนดเอง ในตอนนี้ การสนทนาจะสิ้นสุดหลังจากที่ Assistant ตอบกลับด้วยการทักทาย ในส่วนถัดไป คุณจะแก้ไขการดําเนินการเพื่อให้การสนทนาดําเนินต่อไป
ดูบันทึกเหตุการณ์
เมื่อคุณอยู่ในแท็บทดสอบ แผงทางด้านขวาจะแสดงบันทึกเหตุการณ์ซึ่งแสดงประวัติการสนทนาเป็นบันทึกเหตุการณ์ บันทึกเหตุการณ์แต่ละรายการจะแสดงเหตุการณ์ที่เกิดขึ้นระหว่างช่วงการเปลี่ยนการสนทนา
ในขณะนี้ การดําเนินการของคุณมีเพียงบันทึกเหตุการณ์เดียว ซึ่งจะแสดงทั้งอินพุตของผู้ใช้ ("Talk to my test app"
) และการตอบกลับการดําเนินการของคุณ ภาพหน้าจอต่อไปนี้แสดงบันทึกเหตุการณ์ของ Action'
หากคลิกลูกศรลงในบันทึกกิจกรรม คุณจะเห็นเหตุการณ์ที่จัดเรียงตามลําดับเวลาของการสนทนาในขณะนั้น
userInput
: สอดคล้องกับอินพุตของผู้ใช้ ("Talk to my test app"
)interactionMatch
: สอดคล้องกับการตอบกลับคําขอหลักของการดําเนินการซึ่งเกิดจากอินพุตของผู้ใช้ หากขยายแถวนี้โดยคลิกลูกศร คุณจะเห็นข้อความแจ้งที่เพิ่มสําหรับการเรียกใช้หลัก (A wondrous greeting, adventurer!...
)endConversation
: สอดคล้องกับการเปลี่ยนที่เลือกในความตั้งใจMain invocation
ซึ่งจะสิ้นสุดการสนทนาในขณะนี้ (ดูข้อมูลเพิ่มเติมเกี่ยวกับการย้ายได้ในส่วนถัดไปของ Codelab นี้)
บันทึกเหตุการณ์จะแสดงให้เห็นวิธีการทํางานของการดําเนินการต่างๆ และเป็นเครื่องมือที่มีประโยชน์สําหรับแก้ไขข้อบกพร่องเมื่อพบปัญหา หากต้องการดูรายละเอียดของเหตุการณ์ ให้คลิกลูกศรถัดจากชื่อเหตุการณ์ ดังที่แสดงในภาพหน้าจอต่อไปนี้
4. สร้างการสนทนาของ Action'
ตอนนี้เมื่อคุณกําหนดสิ่งที่จะเกิดขึ้นหลังจากที่ผู้ใช้เรียกใช้การดําเนินการแล้ว คุณจะสร้างการสนทนาที่เหลือของการดําเนินการได้ ก่อนดําเนินการต่อด้วย Codelab นี้ โปรดทําความคุ้นเคยกับคําต่อไปนี้เพื่อทําความเข้าใจวิธีการทํางานของการสนทนา Action'
การดําเนินการของคุณสามารถมีได้หลายฉากและคุณต้องเปิดใช้งานแต่ละฉากก่อนจึงจะทํางานได้ (การทํางานที่คุณสร้างใน Codelab นี้มีฉากชื่อ Start
เพียงฉากเดียวเท่านั้น) วิธีที่ง่ายที่สุดในการเปิดใช้งานฉากคือการกําหนดค่าการดําเนินการ เมื่อผู้ใช้รายนั้นตรงกับความตั้งใจของผู้ใช้ในฉาก Intent จะทริกเกอร์การเปลี่ยนไปยังฉากอื่นและเปิดใช้งาน
ตัวอย่างเช่น สมมติว่าการกระทําสมมติที่ให้ข้อมูลข้อเท็จจริงเกี่ยวกับสัตว์แก่ผู้ใช้ เมื่อผู้ใช้เรียกใช้การดําเนินการนี้ ระบบจะจับคู่ Intent ของ Main invocation
และทริกเกอร์การเปลี่ยนไปยังฉากที่ชื่อ Facts
การเปลี่ยนจะเป็นการเปิดใช้งานโหมด Facts
ซึ่งจะส่งข้อความแจ้งต่อไปนี้ให้กับผู้ใช้: Would you like to hear a fact about cats or dogs?
ในฉาก Facts
มี Intent ของผู้ใช้ที่เรียกว่า Cat
ซึ่งมีวลีการฝึกที่ผู้ใช้อาจพูดเพื่อฟังข้อเท็จจริงเกี่ยวกับแมว เช่น "I want toListener a catข้อเท็จจริง&&tt; หรือ "cat" เมื่อผู้ใช้ขอฟังข้อเท็จจริงเกี่ยวกับแมว ระบบจะจับคู่ความตั้งใจ Cat
และทริกเกอร์การเปลี่ยนไปยังฉากที่ชื่อ Cat fact
โหมด Cat fact
จะเปิดใช้งานและส่งข้อความแจ้งที่มีแมว
รูปที่ 1 ขั้นตอนการเลี้ยวทั่วไปสําหรับการสนทนาใน Action ที่สร้างขึ้นด้วย Actions Builder
ทั้งฉาก ความตั้งใจ และการเปลี่ยนร่วมกันจะรวมกันเป็นตรรกะสําหรับการสนทนา และกําหนดเส้นทางต่างๆ ที่ผู้ใช้สามารถทําได้ผ่านการสนทนาของการดําเนินการ ในส่วนต่อไปนี้ คุณสามารถสร้างฉากและกําหนดวิธีการเปิดใช้งานฉากหลังจากที่ผู้ใช้เรียกใช้การดําเนินการของคุณ
การเปลี่ยนจากการเรียกใช้หลักเป็นฉาก
ในส่วนนี้ คุณสร้างฉากใหม่ชื่อ Start
ซึ่งจะส่งข้อความแจ้งไปยังผู้ใช้เพื่อสอบถามว่าจะให้บอกโชคของตนเองหรือไม่ และคุณยังเพิ่มการเปลี่ยนจากการเรียกใช้หลักไปยังฉาก Start
ใหม่ได้ด้วย
หากต้องการสร้างฉากและเพิ่มการเปลี่ยนฉาก ให้ทําตามขั้นตอนต่อไปนี้
- คลิกพัฒนาในแถบนําทาง
- คลิกคําขอหลักในแถบนําทางด้านข้าง
- ในส่วนการเปลี่ยน ให้คลิกเมนูแบบเลื่อนลงแล้วพิมพ์
Start
ในช่องข้อความ
- คลิกเพิ่ม การดําเนินการนี้จะสร้างฉากชื่อ
Start
และบอกการดําเนินการให้เปลี่ยนไปใช้โหมดStart
หลังจากที่การดําเนินการดังกล่าวแสดงข้อความแจ้งต้อนรับแก่ผู้ใช้ - คลิกฉากในแถบนําทางด้านข้างเพื่อแสดงฉาก
- ในส่วนฉาก ให้คลิกเริ่มเพื่อดูฉาก
Start
- คลิก + ในส่วนเมื่อป้อนของโหมด
Start
- เลือกส่งข้อความแจ้ง
- แทนที่ประโยคในช่อง
speech
(Enter the response that users will see or hear...
) ด้วยคําถามเพื่อถามผู้ใช้:Before you continue on your quest, would you like your fortune told?
- คลิกบันทึก
Google Assistant จะแสดงข้อความแจ้งนี้ (Before you continue on your quest...
) แก่ผู้ใช้เมื่อเข้าสู่โหมด Start
เพิ่มชิปคําแนะนํา
ชิปคําแนะนําจะให้คําแนะนําที่คลิกได้สําหรับผู้ใช้ซึ่งการดําเนินการของคุณประมวลผลเป็นอินพุตของผู้ใช้ ในส่วนนี้ ให้เพิ่มชิปคําแนะนําเพื่อรองรับผู้ใช้ในอุปกรณ์ที่มีหน้าจอ
หากต้องการเพิ่มชิปคําแนะนําไปยังข้อความแจ้งของ Start
ให้ทําตามขั้นตอนต่อไปนี้
- ในฉาก
Start
ให้คลิกคําแนะนํา การดําเนินการนี้จะเพิ่มชิปคําแนะนํารายการเดียว - ในช่อง
title
ให้แทนที่Suggested Response
ด้วย'Yes'
- เมื่อใช้การจัดรูปแบบเดียวกัน ให้เพิ่มชิปคําแนะนําที่ชื่อ
'No'
ด้วยตนเอง โค้ดควรมีลักษณะเหมือนข้อมูลโค้ดต่อไปนี้
suggestions:
- title: 'Yes'
- title: 'No'
- คลิกบันทึก
ทดสอบการทํางานในเครื่องจําลอง
เมื่อถึงตรงนี้ การดําเนินการของคุณควรเปลี่ยนจากการเรียกหลักเป็นโหมด Start
และถามผู้ใช้ว่าต้องการให้บอกโชคของตนเองหรือไม่ ชิปคําแนะนําควรจะปรากฏในจอแสดงผลจําลองด้วย
หากต้องการทดสอบการดําเนินการในเครื่องจําลอง ให้ทําตามขั้นตอนต่อไปนี้
- ในแถบนําทาง ให้คลิกทดสอบเพื่อพาคุณไปที่เครื่องจําลอง
- หากต้องการทดสอบการดําเนินการในเครื่องจําลอง ให้พิมพ์
Talk to my test app
ในช่องอินพุต แล้วกดEnter
การดําเนินการของคุณควรตอบกลับด้วยข้อความแจ้งMain invocation
และข้อความแจ้งในโหมดStart
ที่เพิ่มเข้ามา"Before you continue on your quest, would you like your fortune told?"
ภาพหน้าจอต่อไปนี้แสดงการโต้ตอบนี้
- คลิกชิปคําแนะนํา
Yes
หรือNo
เพื่อตอบกลับข้อความแจ้ง (นอกจากนี้ คุณยังพูดว่า "Yes" หรือ "No" หรือป้อนYes
หรือNo
ในช่องอินพุตได้)
เมื่อคุณตอบกลับพรอมต์ การดําเนินการของคุณจะตอบกลับด้วยข้อความที่ระบุว่าระบบไม่เข้าใจข้อมูลที่คุณป้อน: "ขออภัย ฉันไม่เข้าใจ คุณลองอีกครั้งได้ไหม{5/}quot; เนื่องจากคุณยังไม่ได้กําหนดค่าการดําเนินการเพื่อทําความเข้าใจและตอบสนองต่อการป้อนข้อมูล "Yes" หรือ "No" การดําเนินการของคุณจึงตรงกับการป้อนข้อมูลของความตั้งใจ NO_MATCH
โดยค่าเริ่มต้น Intent ของ NO_MATCH
จะให้คําตอบทั่วไป แต่คุณสามารถปรับแต่งคําตอบเหล่านี้ให้แจ้งให้ผู้ใช้ทราบว่าคุณเข้าใจอินพุตของพวกเขาไม่ได้ Assistant จะยุติการสนทนาของผู้ใช้กับการดําเนินการของคุณหลังจากที่ตรงกับการป้อนข้อมูลของผู้ใช้ 3 ครั้งไม่ได้
เพิ่มความตั้งใจ yes
และ no
ตอนนี้ ผู้ใช้สามารถตอบคําถามว่าการกระทําของคุณมีลักษณะอย่างไร คุณสามารถกําหนดค่าการดําเนินการเพื่อทําความเข้าใจผู้ใช้' คําตอบ ("Yes" หรือ "No") ได้ ในส่วนต่อไปนี้ คุณสามารถสร้าง Intent ของผู้ใช้ที่ตรงกันเมื่อผู้ใช้พูดว่า "Yes" หรือ "No" แล้วเพิ่ม Intent เหล่านี้ไปยังฉากของ Start
สร้าง Intent ของ yes
หากต้องการสร้าง Intent ของ yes
ให้ทําตามขั้นตอนต่อไปนี้
- คลิกพัฒนาในแถบนําทาง
- คลิกความตั้งใจที่กําหนดเองในแถบนําทางเพื่อเปิดรายการ Intent
- คลิก + (เครื่องหมายบวก) ที่ท้ายรายการ Intent
- ตั้งชื่อ Intent ใหม่
yes
แล้วกดEnter
- คลิก Intent ของ
yes
เพื่อเปิดหน้า Intent ของyes
- ในส่วนเพิ่มวลีการฝึกอบรม ให้คลิกกล่องข้อความป้อนวลี แล้วป้อนวลีต่อไปนี้
Yes
Y
I would
Tell me
- คลิกบันทึก
เพิ่มความตั้งใจ yes
ลงในฉาก Start
ตอนนี้การดําเนินการจะเข้าใจได้เมื่อผู้ใช้แสดงความตั้งใจ "yes" คุณเพิ่ม Intent ของผู้ใช้ yes
ในฉาก Start
ได้เพราะผู้ใช้ตอบรับข้อความแจ้ง Start
("ก่อนที่จะทําภารกิจต่อไป ขอให้ดูโชคที่คุณแจ้งหรือไม่)
หากต้องการเพิ่มความตั้งใจของผู้ใช้ลงในฉาก Start
ให้ทําตามขั้นตอนต่อไปนี้
- คลิกฉากเริ่มต้นในแถบนําทาง
- คลิก + (เครื่องหมายบวก) ในฉาก
Start
ข้างการจัดการความตั้งใจของผู้ใช้ - เลือกใช่ในเมนูแบบเลื่อนลง Intent
- คลิกส่งข้อความแจ้งและอัปเดตช่อง
speech
ด้วยข้อความYour future depends on the aid you choose to use for your quest. Choose wisely! Farewell, stranger.
โค้ดในตัวแก้ไขควรมีลักษณะดังนี้
candidates:
- first_simple:
variants:
- speech: >-
Your future depends on the aid you choose to use for your quest. Choose
wisely! Farewell, stranger.
- ในส่วนการเปลี่ยน ให้คลิกเมนูแบบเลื่อนลง แล้วเลือกสิ้นสุดการสนทนา
- คลิกบันทึก
ทดสอบความตั้งใจ yes
ในเครื่องจําลอง
ในขั้นนี้ การดําเนินการจะทําความเข้าใจว่าผู้ใช้ต้องการฟังโชคของพวกเขาเมื่อใดและจะส่งคืนการตอบกลับที่เหมาะสม
หากต้องการทดสอบความตั้งใจนี้ในเครื่องจําลอง ให้ทําตามขั้นตอนต่อไปนี้
- คลิกทดสอบในแถบนําทาง
- หากต้องการทดสอบการดําเนินการในเครื่องจําลอง ให้พิมพ์
Talk to my test app
ในช่องอินพุต แล้วกดEnter
- พิมพ์
Yes
ในช่อง Input แล้วกดEnter
หรือคลิกชิปคําแนะนําใช่
การดําเนินการของคุณตอบสนองต่อผู้ใช้และบอกโชคของพวกเขานั้นขึ้นอยู่กับความช่วยเหลือที่พวกเขาเลือก การดําเนินการของคุณจะสิ้นสุดเซสชันเนื่องจากคุณเลือกการเปลี่ยน End conversation
สําหรับ Intent ของ yes
สร้าง Intent ของ no
ในตอนนี้ คุณต้องสร้าง Intent ของ no
เพื่อทําความเข้าใจและตอบผู้ใช้เมื่อไม่ต้องการได้ยินคําขอทํานาย โปรดทําตามขั้นตอนต่อไปนี้เพื่อสร้างความตั้งใจนี้
- คลิกพัฒนาในแถบนําทาง
- คลิกความตั้งใจที่กําหนดเองในแถบนําทางเพื่อเปิดรายการ Intent
- คลิก + (เครื่องหมายบวก) ที่ท้ายรายการ Intent
- ตั้งชื่อ Intent ใหม่
no
แล้วกดEnter
- คลิก no เพื่อเปิดหน้า **
no
**intent - ในส่วนเพิ่มวลีการฝึกอบรม ให้คลิกกล่องข้อความป้อนวลี แล้วป้อนวลีต่อไปนี้
No
N
I don't want
nope
- คลิกบันทึก
เพิ่มความตั้งใจ no
ลงในฉาก Start
ตอนนี้การดําเนินการจะเข้าใจได้เมื่อผู้ใช้แสดง "no" หรือข้อความที่คล้ายกับ "no" เช่น "nope" คุณต้องเพิ่ม Intent ของผู้ใช้ no
ในฉาก Start
เนื่องจากผู้ใช้ตอบกลับข้อความแจ้ง Start
("ก่อนจะทําภารกิจต่อ คุณอยากได้คําขอโชคของตนเองหรือไม่)
หากต้องการเพิ่ม Intent นี้สําหรับโหมด Start
ให้ทําตามขั้นตอนต่อไปนี้
- คลิกฉากเริ่มต้นในแถบนําทาง
- คลิก + (เครื่องหมายบวก) ในฉาก
Start
ข้างการจัดการ Intent ของผู้ใช้ - ในส่วนความตั้งใจ ให้เลือกไม่ในเมนูแบบเลื่อนลง
- คลิกส่งข้อความแจ้ง
- อัปเดตช่อง
speech
ด้วยข้อความI understand, stranger. Best of luck on your quest! Farewell.
โค้ดในตัวแก้ไขควรมีลักษณะดังนี้
candidates:
- first_simple:
variants:
- speech: >-
I understand, stranger. Best of luck on your quest! Farewell.
- ในส่วนการเปลี่ยน ให้เลือกจบการสนทนาจากเมนูแบบเลื่อนลง
- คลิกบันทึก
ทดสอบความตั้งใจ no
ในเครื่องจําลอง
ในจุดนี้ การดําเนินการของคุณจะทําความเข้าใจว่าผู้ใช้ไม่ต้องการฟังโชคของพวกเขาและส่งคืนการตอบกลับที่เหมาะสมหรือไม่
หากต้องการทดสอบความตั้งใจนี้ในเครื่องจําลอง ให้ทําตามขั้นตอนต่อไปนี้
- คลิกทดสอบในแถบนําทาง
- พิมพ์
Talk to my test app
ในช่อง Input แล้วกดEnter
- พิมพ์
No
ในช่อง Input แล้วกดEnter
หรือคลิกชิปคําแนะนําไม่ใช่
การดําเนินการของคุณต้องการให้คุณโชคดีในเส้นทางของพวกเขา แทนที่จะให้โชคแก่ผู้ใช้ การดําเนินการของคุณจะสิ้นสุดเซสชันเนื่องจากคุณเลือกการเปลี่ยน End conversation
สําหรับ Intent ของ no
5. ใช้การดําเนินการตามคําสั่งซื้อ
ปัจจุบัน คําตอบของการดําเนินการจะเป็นแบบคงที่ เมื่อเปิดใช้งานฉากที่มีข้อความแจ้ง การดําเนินการของคุณจะส่งข้อความแจ้งเดียวกันทุกครั้ง ในส่วนนี้ คุณจะใช้งานการดําเนินการที่มีตรรกะเพื่อสร้างการตอบกลับการสนทนาแบบไดนามิก
การดําเนินการตามคําสั่งซื้อของคุณจะระบุว่าผู้ใช้คือผู้ใช้ที่กลับมาหรือผู้ใช้ใหม่ และแก้ไขข้อความทักทายของการดําเนินการสําหรับผู้ใช้ที่กลับมา ระบบจะย่อข้อความต้อนรับสําหรับผู้ใช้ที่กลับมาและตอบรับการคืนสินค้าของผู้ใช้: "สวัสดีผู้ผจญภัยสุดมหัศจรรย์ ยินดีต้อนรับกลับเข้าสู่ดินแดนในตํานานของ Gryffinberg!"
สําหรับ Codelab นี้ ให้ใช้เครื่องมือแก้ไข Cloud Functions ในคอนโซลการดําเนินการเพื่อแก้ไขและทําให้โค้ดการดําเนินการใช้งานได้
การดําเนินการของคุณอาจทริกเกอร์เว็บฮุคที่แจ้งให้ทราบถึงเหตุการณ์ที่เกิดขึ้นระหว่างการเรียกใช้หรือส่วนที่เฉพาะเจาะจงของการทํางานที่เกิดขึ้น เมื่อมีการทริกเกอร์เว็บฮุค การดําเนินการของคุณจะส่งคําขอด้วยเพย์โหลด JSON ไปยังการดําเนินการตามคําสั่งซื้อ พร้อมชื่อของเครื่องจัดการเพื่อใช้ในการประมวลผลเหตุการณ์ เครื่องจัดการนี้มีตรรกะบางอย่างและส่งคืนการตอบสนอง JSON ที่เกี่ยวข้อง
สร้างการดําเนินการตามคําสั่งซื้อ
คุณแก้ไขการดําเนินการที่ทําเสร็จในตัวแก้ไขในบรรทัดเพื่อสร้างข้อความแจ้งต่างๆ สําหรับผู้ใช้ที่กลับมาและผู้ใช้ใหม่ได้เมื่อเรียกใช้การดําเนินการของคุณ
หากต้องการเพิ่มตรรกะนี้ในการดําเนินการตามคําสั่งซื้อ ให้ทําตามขั้นตอนต่อไปนี้
- คลิกพัฒนาในแถบนําทาง
- คลิกแท็บเว็บฮุคในแถบนําทาง
- เลือกช่องทําเครื่องหมายฟังก์ชันระบบคลาวด์ในบรรทัด
- คลิกยืนยัน ระบบจะเพิ่มรหัส Boilerplate สําหรับไฟล์
index.js
และpackage.json
โดยอัตโนมัติ
- แทนที่เนื้อหาของ
index.js
ด้วยโค้ดต่อไปนี้
index.js
const { conversation } = require('@assistant/conversation');
const functions = require('firebase-functions');
const app = conversation({debug: true});
app.handle('greeting', conv => {
let message = 'A wondrous greeting, adventurer! Welcome back to the mythical land of Gryffinberg!';
if (!conv.user.lastSeenTime) {
message = 'Welcome to the mythical land of Gryffinberg! Based on your clothes, you are not from around these lands. It looks like you\'re on your way to an epic journey.';
}
conv.add(message);
});
exports.ActionsOnGoogleFulfillment = functions.https.onRequest(app);
- คลิก Save Fulfillment
- คลิก Deploy Fulfillment
รอสักครู่เพื่อให้ Cloud Functions จัดสรรและดําเนินการตามคําสั่งซื้อของคุณ คุณควรเห็นข้อความอยู่ระหว่างการติดตั้งใช้งาน Cloud Function... เหนือตัวแก้ไขโค้ด เมื่อนําโค้ดไปใช้เรียบร้อยแล้ว ข้อความจะอัปเดตเป็นการติดตั้งใช้งาน Cloud Function เป็นเวอร์ชันล่าสุด
ทําความเข้าใจโค้ด
การดําเนินการตามคําขอซึ่งใช้ไลบรารี Actions on Google Fulfillment สําหรับ Node.js จะตอบสนองต่อคําขอ HTTP จาก Google Assistant
ในข้อมูลโค้ดก่อนหน้า คุณจะกําหนดเครื่องจัดการ greeting
ซึ่งจะตรวจสอบว่าผู้ใช้เคยเข้าชมการดําเนินการหรือไม่ด้วยการตรวจสอบพร็อพเพอร์ตี้ lastSeenTime
หากไม่ได้กําหนด lastSeenTime
ไว้ ผู้ใช้ใหม่และเครื่องจัดการ greeting
จะแสดงคําทักทายผู้ใช้ใหม่
อัปเดตการเรียกใช้หลักเพื่อเรียกใช้เว็บฮุค
เมื่อกําหนดฟังก์ชัน greeting
แล้ว คุณจะกําหนดค่าเครื่องจัดการเหตุการณ์ greeting
ในความตั้งใจที่จะเรียกใช้หลักได้เพื่อให้การดําเนินการรู้ว่าเรียกใช้ฟังก์ชันนี้เมื่อผู้ใช้เรียกใช้การดําเนินการ
หากต้องการกําหนดค่าการดําเนินการเพื่อเรียกใช้เครื่องจัดการ greeting
ใหม่ ให้ทําตามขั้นตอนต่อไปนี้
- คลิกคําขอหลักในแถบนําทาง
- ล้าง Send Prompt
- เลือกช่องทําเครื่องหมายเรียกใช้เว็บฮุค
- เพิ่ม
greeting
ในกล่องข้อความ
- คลิกบันทึก
ทดสอบการเรียกใช้หลักที่อัปเดตในเครื่องจําลอง
หากต้องการทดสอบการดําเนินการในเครื่องจําลอง ให้ทําตามขั้นตอนต่อไปนี้
- ในแถบนําทาง ให้คลิกทดสอบเพื่อพาคุณไปที่เครื่องจําลอง
- พิมพ์
Talk to my test app
ในช่อง Input แล้วกดEnter
เนื่องจากคุณได้ทดสอบการดําเนินการก่อนหน้านี้ใน Codelab นี้ คุณไม่ใช่ผู้ใช้ใหม่ จึงได้รับคําทักทายย่อให้สั้นลง ดังนี้ "นักผจญภัยที่มหัศจรรย์! ยินดีต้อนรับกลับเข้าสู่ดินแดนในตํานานของ Gryffinberg!..."
ทําความสะอาดโปรเจ็กต์ [แนะนํา]
เราขอแนะนําให้นําโปรเจ็กต์ที่คุณไม่ได้ตั้งใจจะใช้ออกเพื่อหลีกเลี่ยงการเรียกเก็บเงินที่อาจเกิดขึ้น หากต้องการลบโปรเจ็กต์ที่สร้างใน Codelab นี้ ให้ทําตามขั้นตอนต่อไปนี้
- หากต้องการลบโปรเจ็กต์ระบบคลาวด์และทรัพยากร ให้ทําตามขั้นตอนที่ระบุในส่วนการปิด (ลบ) โปรเจ็กต์
- ไม่บังคับ: หากต้องการนําโปรเจ็กต์ออกจากคอนโซลการดําเนินการทันที ให้ทําตามขั้นตอนในหัวข้อลบโปรเจ็กต์ หากไม่ดําเนินการขั้นตอนนี้ ระบบจะลบโปรเจ็กต์ออกโดยอัตโนมัติหลังจากผ่านไปประมาณ 30 วัน
6. ยินดีด้วย
คุณทราบพื้นฐานของการสร้างการดําเนินการสําหรับ Google Assistant แล้ว
สิ่งที่คุณครอบคลุม
- วิธีตั้งค่าโปรเจ็กต์การดําเนินการด้วยคอนโซลการดําเนินการ
- วิธีเพิ่มข้อความแจ้งไปยังคําขอหลักเพื่อให้ผู้ใช้เริ่มการสนทนากับการดําเนินการของคุณได้
- วิธีสร้างอินเทอร์เฟซการสนทนาที่มีฉาก ความตั้งใจ การเปลี่ยนภาพ ชิปคําแนะนํา และการดําเนินการตามคําสั่งซื้อ
- วิธีทดสอบการทํางานด้วยเครื่องจําลองการดําเนินการ
ดูข้อมูลเพิ่มเติม
สํารวจแหล่งข้อมูลต่อไปนี้เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับการสร้าง Actions for Google Assistant
- สร้าง Actions สําหรับ Google Assistant โดยใช้ Actions Builder (ระดับ 2) Codelab เพื่อสร้างการสนทนาอย่างต่อเนื่องจาก Codelab นี้
- เว็บไซต์เอกสารอย่างเป็นทางการสําหรับการพัฒนาการดําเนินการสําหรับ Google Assistant
- หน้าการดําเนินการใน Google GitHub สําหรับโค้ดตัวอย่างและไลบรารี
- ชุมชนอย่างเป็นทางการของ Reddit สําหรับนักพัฒนาซอฟต์แวร์ที่ทํางานกับ Assistant
- @ActionsOnGoogle สําหรับ Twitter สําหรับประกาศล่าสุด (ทวีตด้วย #AoGDevs เพื่อแชร์สิ่งที่คุณสร้าง)
แบบสํารวจความคิดเห็น
ก่อนดําเนินการ โปรดกรอกแบบสํารวจสั้นๆ เกี่ยวกับประสบการณ์การใช้งาน