สร้าง Actions สําหรับ Google Assistant โดยใช้ Actions Builder (ระดับ 1)

1. ภาพรวม

แพลตฟอร์มนักพัฒนาซอฟต์แวร์ Google Assistant ให้คุณสร้างซอฟต์แวร์เพื่อขยายฟังก์ชันการทํางานของ Google Assistant ซึ่งเป็นผู้ช่วยส่วนตัวในอุปกรณ์กว่า 1 พันล้านเครื่อง รวมถึงลําโพงอัจฉริยะ โทรศัพท์ รถยนต์ ทีวี หูฟัง และอื่นๆ ผู้ใช้มีส่วนร่วมกับ Assistant ในการสนทนาเพื่อทําสิ่งต่างๆ เช่น ซื้อของชําหรือจองรถโดยสาร ในฐานะนักพัฒนาซอฟต์แวร์ คุณจะใช้แพลตฟอร์มสําหรับนักพัฒนาแอป Assistant เพื่อสร้างและจัดการประสบการณ์การสนทนาที่น่าพอใจและมีประสิทธิภาพระหว่างผู้ใช้และบริการดําเนินการตามคําสั่งซื้อของบุคคลที่สามของคุณเองได้

Codelab นี้ครอบคลุมแนวคิดระดับเริ่มต้นสําหรับการพัฒนาด้วย Google Assistant โดยไม่จําเป็นต้องมีประสบการณ์ก่อนหน้าในการใช้แพลตฟอร์มเพื่อดําเนินการให้เสร็จสมบูรณ์ ใน Codelab นี้ คุณสร้างการดําเนินการง่ายๆ สําหรับ Google Assistant ซึ่งจะบอกผู้ใช้เกี่ยวกับโชคชะตาที่เริ่มต้นการผจญภัยในดินแดนแห่งกริฟฟินเบิร์กตามตํานาน ใน Codelab ระดับ 2 ของเครื่องมือสร้างบิลด์ คุณจะสร้างการดําเนินการนี้เพิ่มเติมเพื่อปรับแต่งดวงชะตาของผู้ใช้โดยอิงตามข้อมูลที่ผู้ใช้ป้อนได้

สิ่งที่คุณจะสร้าง

ใน Codelab นี้ คุณสร้างการดําเนินการง่ายๆ ด้วยฟังก์ชันต่อไปนี้

  • ตอบกลับผู้ใช้ด้วยข้อความทักทาย
  • ถามคําถามผู้ใช้ เมื่อผู้ใช้รายนั้นตอบคําถาม การดําเนินการของคุณจะตอบสนองต่อการเลือกของผู้ใช้อย่างเหมาะสม
  • มีชิปคําแนะนําให้ผู้ใช้คลิกเพื่อป้อนข้อมูล
  • แก้ไขข้อความต้อนรับแก่ผู้ใช้โดยพิจารณาว่าเป็นผู้ใช้ที่กลับมาหรือไม่

เมื่อ Codelab นี้ดําเนินการเสร็จแล้ว การดําเนินการที่เสร็จสมบูรณ์จะมีขั้นตอนการสนทนาต่อไปนี้

1c1e79902bed7230.png

.1855647b4cb52c.png

สิ่งที่คุณจะได้เรียนรู้

  • วิธีสร้างโปรเจ็กต์ในคอนโซลการดําเนินการ
  • วิธีส่งข้อความแจ้งให้ผู้ใช้หลังจากที่เรียกใช้การดําเนินการ
  • วิธีประมวลผลข้อมูลที่ผู้ใช้ป้อนและส่งคําตอบ
  • วิธีทดสอบการทํางานในเครื่องจําลองการดําเนินการ
  • วิธีใช้การดําเนินการตามคําสั่งซื้อโดยใช้เครื่องมือแก้ไขฟังก์ชันของ Cloud

สิ่งที่ต้องมี

เครื่องมือต่อไปนี้ต้องอยู่ในสภาพแวดล้อมของคุณ

  • เว็บเบราว์เซอร์ เช่น Google Chrome

2. ตั้งค่า

ส่วนต่อไปนี้จะอธิบายถึงวิธีตั้งค่าสภาพแวดล้อมในการพัฒนาซอฟต์แวร์และสร้างโปรเจ็กต์การดําเนินการ

ตรวจสอบการตั้งค่าสิทธิ์ของ Google

หากต้องการทดสอบการทํางานที่คุณสร้างใน Codelab นี้ คุณต้องเปิดใช้สิทธิ์ที่จําเป็นเพื่อให้เครื่องจําลองสามารถเข้าถึงการดําเนินการของคุณได้ หากต้องการเปิดใช้สิทธิ์ ให้ทําตามขั้นตอนต่อไปนี้

  1. ไปที่หน้าส่วนควบคุมกิจกรรม
  2. ลงชื่อเข้าใช้ด้วยบัญชี Google ของคุณ หากยังไม่ได้ดําเนินการ
  3. เปิดใช้สิทธิ์ต่อไปนี้
  • กิจกรรมบนเว็บและแอป
  • ในส่วนกิจกรรมบนเว็บและแอป ให้เลือกช่องทําเครื่องหมายรวมประวัติการเข้าชมใน Chrome และกิจกรรมจากเว็บไซต์ แอป และอุปกรณ์ที่ใช้บริการต่างๆ ของ Google

สร้างโปรเจ็กต์การดําเนินการ

โปรเจ็กต์การดําเนินการคือคอนเทนเนอร์สําหรับการดําเนินการ วิธีสร้างโปรเจ็กต์การดําเนินการของ Codelab มีดังนี้

  1. เปิดคอนโซล Actions
  2. คลิกโครงการใหม่
  3. พิมพ์ชื่อโครงการ เช่น actions-codelab (ชื่อมีไว้สําหรับการอ้างอิงภายใน ซึ่งหลังจากนั้น คุณจะตั้งชื่อภายนอกสําหรับโปรเจ็กต์ของคุณได้)

.cd05a84c1c0a32f.png

  1. คลิกสร้างโปรเจ็กต์
  2. ในหน้าจอคุณต้องการสร้างการดําเนินการประเภทใด ให้เลือกการ์ดกําหนดเอง
  3. คลิกถัดไป
  4. เลือกการ์ดโปรเจ็กต์ว่าง
  5. คลิกเริ่มสร้างอาคาร

เชื่อมโยงบัญชีสําหรับการเรียกเก็บเงิน

หากต้องการทําให้ดําเนินการตามคําสั่งซื้อในภายหลังใน Codelab นี้โดยใช้ Cloud Functions คุณต้องเชื่อมโยงบัญชีสําหรับการเรียกเก็บเงินกับโปรเจ็กต์ใน Google Cloud

หากยังไม่ได้เชื่อมโยงบัญชีสําหรับการเรียกเก็บเงินกับโปรเจ็กต์ ให้ทําตามขั้นตอนต่อไปนี้

  1. ไปที่หน้าการเรียกเก็บเงินของ Google Cloud Platform
  2. คลิกเพิ่มบัญชีสําหรับการเรียกเก็บเงินหรือสร้างบัญชี
  3. ป้อนข้อมูลการชําระเงิน
  4. คลิกเริ่มทดลองใช้ฟรีหรือส่งและเปิดใช้การเรียกเก็บเงิน
  5. ไปที่หน้าการเรียกเก็บเงินของ Google Cloud Platform
  6. คลิกแท็บโปรเจ็กต์ของฉัน
  7. คลิกจุด 3 จุดในส่วนการดําเนินการข้างโปรเจ็กต์การดําเนินการของ Codelab
  8. คลิกเปลี่ยนการเรียกเก็บเงิน
  9. เลือกบัญชีสําหรับการเรียกเก็บเงินที่คุณกําหนดค่าไว้ในเมนูแบบเลื่อนลง คลิกตั้งค่าบัญชี

เพื่อหลีกเลี่ยงค่าใช้จ่ายที่อาจเกิดขึ้น ให้ทําตามขั้นตอนในส่วนล้างโปรเจ็กต์ของคุณที่ท้าย Codelab นี้

3. เริ่มการสนทนา

ผู้ใช้เริ่มการสนทนากับการดําเนินการของคุณผ่านการเรียกใช้ ตัวอย่างเช่น หากคุณมีการดําเนินการที่ชื่อ MovieTime ผู้ใช้สามารถเรียกใช้การดําเนินการโดยพูดวลีอย่าง "Hey Google พูดคุยกับ MovieTime" โดยที่ MovieTime คือชื่อที่แสดง การดําเนินการต้องมีชื่อที่แสดงหากต้องการใช้งานเป็นเวอร์ชันที่ใช้งานจริง อย่างไรก็ตาม คุณไม่จําเป็นต้องกําหนดชื่อที่แสดงเพื่อทดสอบการดําเนินการ แต่คุณจะใช้วลี "Talk to my app app" ในเครื่องจําลองเพื่อเรียกใช้การดําเนินการของคุณได้แทน

คุณต้องแก้ไขคําขอหลักเพื่อกําหนดการดําเนินการหลังจากที่ผู้ใช้เรียกใช้การดําเนินการของคุณ

โดยค่าเริ่มต้น Builder Builder จะให้ Prompt ทั่วไปเมื่อมีการทริกเกอร์การเรียกใช้ ("เริ่มสร้างการดําเนินการโดยการกําหนดคําขอหลัก&&quot)

ในส่วนถัดไป คุณจะปรับแต่งข้อความแจ้งสําหรับการเรียกใช้หลักได้ในคอนโซลการดําเนินการ

ตั้งค่าการเรียกใช้หลัก

หากต้องการแก้ไขข้อความแจ้งการดําเนินการที่จะส่งกลับไปยังผู้ใช้เมื่อมีการเรียกใช้การดําเนินการของคุณ ให้ทําตามขั้นตอนต่อไปนี้

  1. คลิกคําขอหลักในแถบนําทาง

966d037e1d7914df.png

  1. แทนที่ข้อความในช่อง 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.
  1. คลิกบันทึก

ทดสอบการเรียกใช้หลักในเครื่องจําลอง

คอนโซล Actions มีเครื่องมือบนเว็บสําหรับทดสอบการดําเนินการของคุณที่เรียกว่าเครื่องจําลอง อินเทอร์เฟซจะจําลองอุปกรณ์ฮาร์ดแวร์และการตั้งค่าเพื่อให้คุณสามารถโต้ตอบกับการทํางานได้เหมือนที่เคยทํางานใน Smart Display, โทรศัพท์, ลําโพง หรือ KaiOS

เมื่อเรียกใช้การดําเนินการ ปัจจุบันจะตอบกลับด้วยข้อความแจ้งที่ปรับแต่งเองที่คุณเพิ่ม ("A wondrous greeting, adventurer!...")

หากต้องการทดสอบการเรียกใช้หลักในเครื่องจําลอง ให้ทําตามขั้นตอนต่อไปนี้

  1. ในแถบนําทางด้านบน ให้คลิกทดสอบเพื่อไปที่เครื่องจําลอง
  2. หากต้องการเรียกใช้การทํางานในเครื่องจําลอง ให้พิมพ์ Talk to my test app ในช่องอินพุต แล้วกด Enter

656f5736af6a5a07.png

เมื่อคุณเรียกใช้การเรียกใช้หลักจาก Assistant จะตอบกลับข้อความต้อนรับที่กําหนดเอง ในตอนนี้ การสนทนาจะสิ้นสุดหลังจากที่ Assistant ตอบกลับด้วยการทักทาย ในส่วนถัดไป คุณจะแก้ไขการดําเนินการเพื่อให้การสนทนาดําเนินต่อไป

ดูบันทึกเหตุการณ์

เมื่อคุณอยู่ในแท็บทดสอบ แผงทางด้านขวาจะแสดงบันทึกเหตุการณ์ซึ่งแสดงประวัติการสนทนาเป็นบันทึกเหตุการณ์ บันทึกเหตุการณ์แต่ละรายการจะแสดงเหตุการณ์ที่เกิดขึ้นระหว่างช่วงการเปลี่ยนการสนทนา

ในขณะนี้ การดําเนินการของคุณมีเพียงบันทึกเหตุการณ์เดียว ซึ่งจะแสดงทั้งอินพุตของผู้ใช้ ("Talk to my test app") และการตอบกลับการดําเนินการของคุณ ภาพหน้าจอต่อไปนี้แสดงบันทึกเหตุการณ์ของ Action&#39

443129bdcbecc593.png

หากคลิกลูกศรลงในบันทึกกิจกรรม คุณจะเห็นเหตุการณ์ที่จัดเรียงตามลําดับเวลาของการสนทนาในขณะนั้น

  • userInput: สอดคล้องกับอินพุตของผู้ใช้ ("Talk to my test app")
  • interactionMatch: สอดคล้องกับการตอบกลับคําขอหลักของการดําเนินการซึ่งเกิดจากอินพุตของผู้ใช้ หากขยายแถวนี้โดยคลิกลูกศร คุณจะเห็นข้อความแจ้งที่เพิ่มสําหรับการเรียกใช้หลัก (A wondrous greeting, adventurer!...)
  • endConversation: สอดคล้องกับการเปลี่ยนที่เลือกในความตั้งใจ Main invocation ซึ่งจะสิ้นสุดการสนทนาในขณะนี้ (ดูข้อมูลเพิ่มเติมเกี่ยวกับการย้ายได้ในส่วนถัดไปของ Codelab นี้)

บันทึกเหตุการณ์จะแสดงให้เห็นวิธีการทํางานของการดําเนินการต่างๆ และเป็นเครื่องมือที่มีประโยชน์สําหรับแก้ไขข้อบกพร่องเมื่อพบปัญหา หากต้องการดูรายละเอียดของเหตุการณ์ ให้คลิกลูกศรถัดจากชื่อเหตุการณ์ ดังที่แสดงในภาพหน้าจอต่อไปนี้

fcc389b59af5bef1.png

4. สร้างการสนทนาของ Action&#39

ตอนนี้เมื่อคุณกําหนดสิ่งที่จะเกิดขึ้นหลังจากที่ผู้ใช้เรียกใช้การดําเนินการแล้ว คุณจะสร้างการสนทนาที่เหลือของการดําเนินการได้ ก่อนดําเนินการต่อด้วย Codelab นี้ โปรดทําความคุ้นเคยกับคําต่อไปนี้เพื่อทําความเข้าใจวิธีการทํางานของการสนทนา Action&#39

การดําเนินการของคุณสามารถมีได้หลายฉากและคุณต้องเปิดใช้งานแต่ละฉากก่อนจึงจะทํางานได้ (การทํางานที่คุณสร้างใน 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 จะเปิดใช้งานและส่งข้อความแจ้งที่มีแมว

a78f549c90c3bff6.png

รูปที่ 1 ขั้นตอนการเลี้ยวทั่วไปสําหรับการสนทนาใน Action ที่สร้างขึ้นด้วย Actions Builder

ทั้งฉาก ความตั้งใจ และการเปลี่ยนร่วมกันจะรวมกันเป็นตรรกะสําหรับการสนทนา และกําหนดเส้นทางต่างๆ ที่ผู้ใช้สามารถทําได้ผ่านการสนทนาของการดําเนินการ ในส่วนต่อไปนี้ คุณสามารถสร้างฉากและกําหนดวิธีการเปิดใช้งานฉากหลังจากที่ผู้ใช้เรียกใช้การดําเนินการของคุณ

การเปลี่ยนจากการเรียกใช้หลักเป็นฉาก

ในส่วนนี้ คุณสร้างฉากใหม่ชื่อ Start ซึ่งจะส่งข้อความแจ้งไปยังผู้ใช้เพื่อสอบถามว่าจะให้บอกโชคของตนเองหรือไม่ และคุณยังเพิ่มการเปลี่ยนจากการเรียกใช้หลักไปยังฉาก Start ใหม่ได้ด้วย

หากต้องการสร้างฉากและเพิ่มการเปลี่ยนฉาก ให้ทําตามขั้นตอนต่อไปนี้

  1. คลิกพัฒนาในแถบนําทาง
  2. คลิกคําขอหลักในแถบนําทางด้านข้าง
  3. ในส่วนการเปลี่ยน ให้คลิกเมนูแบบเลื่อนลงแล้วพิมพ์ Start ในช่องข้อความ

29e12dff950a3bce.png

  1. คลิกเพิ่ม การดําเนินการนี้จะสร้างฉากชื่อ Start และบอกการดําเนินการให้เปลี่ยนไปใช้โหมด Start หลังจากที่การดําเนินการดังกล่าวแสดงข้อความแจ้งต้อนรับแก่ผู้ใช้
  2. คลิกฉากในแถบนําทางด้านข้างเพื่อแสดงฉาก
  3. ในส่วนฉาก ให้คลิกเริ่มเพื่อดูฉาก Start
  4. คลิก + ในส่วนเมื่อป้อนของโหมด Start
  5. เลือกส่งข้อความแจ้ง
  6. แทนที่ประโยคในช่อง speech (Enter the response that users will see or hear...) ด้วยคําถามเพื่อถามผู้ใช้: Before you continue on your quest, would you like your fortune told?

3fc95466efd476f.png

  1. คลิกบันทึก

Google Assistant จะแสดงข้อความแจ้งนี้ (Before you continue on your quest...) แก่ผู้ใช้เมื่อเข้าสู่โหมด Start

เพิ่มชิปคําแนะนํา

ชิปคําแนะนําจะให้คําแนะนําที่คลิกได้สําหรับผู้ใช้ซึ่งการดําเนินการของคุณประมวลผลเป็นอินพุตของผู้ใช้ ในส่วนนี้ ให้เพิ่มชิปคําแนะนําเพื่อรองรับผู้ใช้ในอุปกรณ์ที่มีหน้าจอ

หากต้องการเพิ่มชิปคําแนะนําไปยังข้อความแจ้งของ Start ให้ทําตามขั้นตอนต่อไปนี้

  1. ในฉากStart ให้คลิกคําแนะนํา การดําเนินการนี้จะเพิ่มชิปคําแนะนํารายการเดียว
  2. ในช่อง title ให้แทนที่ Suggested Response ด้วย 'Yes'
  3. เมื่อใช้การจัดรูปแบบเดียวกัน ให้เพิ่มชิปคําแนะนําที่ชื่อ 'No' ด้วยตนเอง โค้ดควรมีลักษณะเหมือนข้อมูลโค้ดต่อไปนี้
    suggestions:
      - title: 'Yes'
      - title: 'No'
  1. คลิกบันทึก

ไฟล์ 2d13c2ada791ec26.png

ทดสอบการทํางานในเครื่องจําลอง

เมื่อถึงตรงนี้ การดําเนินการของคุณควรเปลี่ยนจากการเรียกหลักเป็นโหมด Start และถามผู้ใช้ว่าต้องการให้บอกโชคของตนเองหรือไม่ ชิปคําแนะนําควรจะปรากฏในจอแสดงผลจําลองด้วย

หากต้องการทดสอบการดําเนินการในเครื่องจําลอง ให้ทําตามขั้นตอนต่อไปนี้

  1. ในแถบนําทาง ให้คลิกทดสอบเพื่อพาคุณไปที่เครื่องจําลอง
  2. หากต้องการทดสอบการดําเนินการในเครื่องจําลอง ให้พิมพ์ Talk to my test app ในช่องอินพุต แล้วกด Enter การดําเนินการของคุณควรตอบกลับด้วยข้อความแจ้ง Main invocation และข้อความแจ้งในโหมด Start ที่เพิ่มเข้ามา "Before you continue on your quest, would you like your fortune told?"

ภาพหน้าจอต่อไปนี้แสดงการโต้ตอบนี้

ไฟล์ 3c2013ebb2da886a.png

  1. คลิกชิปคําแนะนํา 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 ให้ทําตามขั้นตอนต่อไปนี้

  1. คลิกพัฒนาในแถบนําทาง
  2. คลิกความตั้งใจที่กําหนดเองในแถบนําทางเพื่อเปิดรายการ Intent
  3. คลิก + (เครื่องหมายบวก) ที่ท้ายรายการ Intent
  4. ตั้งชื่อ Intent ใหม่ yes แล้วกด Enter
  5. คลิก Intent ของ yes เพื่อเปิดหน้า Intent ของ yes
  6. ในส่วนเพิ่มวลีการฝึกอบรม ให้คลิกกล่องข้อความป้อนวลี แล้วป้อนวลีต่อไปนี้
  • Yes
  • Y
  • I would
  • Tell me

98440276cb9e7de8.png

  1. คลิกบันทึก

เพิ่มความตั้งใจ yes ลงในฉาก Start

ตอนนี้การดําเนินการจะเข้าใจได้เมื่อผู้ใช้แสดงความตั้งใจ "yes" คุณเพิ่ม Intent ของผู้ใช้ yes ในฉาก Start ได้เพราะผู้ใช้ตอบรับข้อความแจ้ง Start ("ก่อนที่จะทําภารกิจต่อไป ขอให้ดูโชคที่คุณแจ้งหรือไม่)

หากต้องการเพิ่มความตั้งใจของผู้ใช้ลงในฉาก Start ให้ทําตามขั้นตอนต่อไปนี้

  1. คลิกฉากเริ่มต้นในแถบนําทาง
  2. คลิก + (เครื่องหมายบวก) ในฉาก Start ข้างการจัดการความตั้งใจของผู้ใช้
  3. เลือกใช่ในเมนูแบบเลื่อนลง Intent

681928e3d71abdbf.png

  1. คลิกส่งข้อความแจ้งและอัปเดตช่อง 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.
  1. ในส่วนการเปลี่ยน ให้คลิกเมนูแบบเลื่อนลง แล้วเลือกสิ้นสุดการสนทนา
  2. คลิกบันทึก

ทดสอบความตั้งใจ yes ในเครื่องจําลอง

ในขั้นนี้ การดําเนินการจะทําความเข้าใจว่าผู้ใช้ต้องการฟังโชคของพวกเขาเมื่อใดและจะส่งคืนการตอบกลับที่เหมาะสม

หากต้องการทดสอบความตั้งใจนี้ในเครื่องจําลอง ให้ทําตามขั้นตอนต่อไปนี้

  1. คลิกทดสอบในแถบนําทาง
  2. หากต้องการทดสอบการดําเนินการในเครื่องจําลอง ให้พิมพ์ Talk to my test app ในช่องอินพุต แล้วกด Enter
  3. พิมพ์ Yes ในช่อง Input แล้วกด Enter หรือคลิกชิปคําแนะนําใช่

f131998710d8ffd8.png

การดําเนินการของคุณตอบสนองต่อผู้ใช้และบอกโชคของพวกเขานั้นขึ้นอยู่กับความช่วยเหลือที่พวกเขาเลือก การดําเนินการของคุณจะสิ้นสุดเซสชันเนื่องจากคุณเลือกการเปลี่ยน End conversation สําหรับ Intent ของ yes

สร้าง Intent ของ no

ในตอนนี้ คุณต้องสร้าง Intent ของ no เพื่อทําความเข้าใจและตอบผู้ใช้เมื่อไม่ต้องการได้ยินคําขอทํานาย โปรดทําตามขั้นตอนต่อไปนี้เพื่อสร้างความตั้งใจนี้

  1. คลิกพัฒนาในแถบนําทาง
  2. คลิกความตั้งใจที่กําหนดเองในแถบนําทางเพื่อเปิดรายการ Intent
  3. คลิก + (เครื่องหมายบวก) ที่ท้ายรายการ Intent
  4. ตั้งชื่อ Intent ใหม่ no แล้วกด Enter
  5. คลิก no เพื่อเปิดหน้า **no**intent
  6. ในส่วนเพิ่มวลีการฝึกอบรม ให้คลิกกล่องข้อความป้อนวลี แล้วป้อนวลีต่อไปนี้
  • No
  • N
  • I don't want
  • nope

ไฟล์ 2e7b8fd57eac94c5.png

  1. คลิกบันทึก

เพิ่มความตั้งใจ no ลงในฉาก Start

ตอนนี้การดําเนินการจะเข้าใจได้เมื่อผู้ใช้แสดง "no" หรือข้อความที่คล้ายกับ "no" เช่น "nope" คุณต้องเพิ่ม Intent ของผู้ใช้ no ในฉาก Start เนื่องจากผู้ใช้ตอบกลับข้อความแจ้ง Start ("ก่อนจะทําภารกิจต่อ คุณอยากได้คําขอโชคของตนเองหรือไม่)

หากต้องการเพิ่ม Intent นี้สําหรับโหมด Start ให้ทําตามขั้นตอนต่อไปนี้

  1. คลิกฉากเริ่มต้นในแถบนําทาง
  2. คลิก + (เครื่องหมายบวก) ในฉาก Start ข้างการจัดการ Intent ของผู้ใช้
  3. ในส่วนความตั้งใจ ให้เลือกไม่ในเมนูแบบเลื่อนลง

4aa558abdecb3121.png

  1. คลิกส่งข้อความแจ้ง
  2. อัปเดตช่อง 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.
  1. ในส่วนการเปลี่ยน ให้เลือกจบการสนทนาจากเมนูแบบเลื่อนลง
  2. คลิกบันทึก

ทดสอบความตั้งใจ no ในเครื่องจําลอง

ในจุดนี้ การดําเนินการของคุณจะทําความเข้าใจว่าผู้ใช้ไม่ต้องการฟังโชคของพวกเขาและส่งคืนการตอบกลับที่เหมาะสมหรือไม่

หากต้องการทดสอบความตั้งใจนี้ในเครื่องจําลอง ให้ทําตามขั้นตอนต่อไปนี้

  1. คลิกทดสอบในแถบนําทาง
  2. พิมพ์ Talk to my test app ในช่อง Input แล้วกด Enter
  3. พิมพ์ No ในช่อง Input แล้วกด Enter หรือคลิกชิปคําแนะนําไม่ใช่

c0c8b04066577eb2.png

การดําเนินการของคุณต้องการให้คุณโชคดีในเส้นทางของพวกเขา แทนที่จะให้โชคแก่ผู้ใช้ การดําเนินการของคุณจะสิ้นสุดเซสชันเนื่องจากคุณเลือกการเปลี่ยน End conversation สําหรับ Intent ของ no

5. ใช้การดําเนินการตามคําสั่งซื้อ

ปัจจุบัน คําตอบของการดําเนินการจะเป็นแบบคงที่ เมื่อเปิดใช้งานฉากที่มีข้อความแจ้ง การดําเนินการของคุณจะส่งข้อความแจ้งเดียวกันทุกครั้ง ในส่วนนี้ คุณจะใช้งานการดําเนินการที่มีตรรกะเพื่อสร้างการตอบกลับการสนทนาแบบไดนามิก

การดําเนินการตามคําสั่งซื้อของคุณจะระบุว่าผู้ใช้คือผู้ใช้ที่กลับมาหรือผู้ใช้ใหม่ และแก้ไขข้อความทักทายของการดําเนินการสําหรับผู้ใช้ที่กลับมา ระบบจะย่อข้อความต้อนรับสําหรับผู้ใช้ที่กลับมาและตอบรับการคืนสินค้าของผู้ใช้: "สวัสดีผู้ผจญภัยสุดมหัศจรรย์ ยินดีต้อนรับกลับเข้าสู่ดินแดนในตํานานของ Gryffinberg!"

สําหรับ Codelab นี้ ให้ใช้เครื่องมือแก้ไข Cloud Functions ในคอนโซลการดําเนินการเพื่อแก้ไขและทําให้โค้ดการดําเนินการใช้งานได้

การดําเนินการของคุณอาจทริกเกอร์เว็บฮุคที่แจ้งให้ทราบถึงเหตุการณ์ที่เกิดขึ้นระหว่างการเรียกใช้หรือส่วนที่เฉพาะเจาะจงของการทํางานที่เกิดขึ้น เมื่อมีการทริกเกอร์เว็บฮุค การดําเนินการของคุณจะส่งคําขอด้วยเพย์โหลด JSON ไปยังการดําเนินการตามคําสั่งซื้อ พร้อมชื่อของเครื่องจัดการเพื่อใช้ในการประมวลผลเหตุการณ์ เครื่องจัดการนี้มีตรรกะบางอย่างและส่งคืนการตอบสนอง JSON ที่เกี่ยวข้อง

สร้างการดําเนินการตามคําสั่งซื้อ

คุณแก้ไขการดําเนินการที่ทําเสร็จในตัวแก้ไขในบรรทัดเพื่อสร้างข้อความแจ้งต่างๆ สําหรับผู้ใช้ที่กลับมาและผู้ใช้ใหม่ได้เมื่อเรียกใช้การดําเนินการของคุณ

หากต้องการเพิ่มตรรกะนี้ในการดําเนินการตามคําสั่งซื้อ ให้ทําตามขั้นตอนต่อไปนี้

  1. คลิกพัฒนาในแถบนําทาง
  2. คลิกแท็บเว็บฮุคในแถบนําทาง
  3. เลือกช่องทําเครื่องหมายฟังก์ชันระบบคลาวด์ในบรรทัด
  4. คลิกยืนยัน ระบบจะเพิ่มรหัส Boilerplate สําหรับไฟล์ index.js และ package.json โดยอัตโนมัติ

D4702f1de6404285.png

  1. แทนที่เนื้อหาของ 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);
  1. คลิก Save Fulfillment
  2. คลิก Deploy Fulfillment

รอสักครู่เพื่อให้ Cloud Functions จัดสรรและดําเนินการตามคําสั่งซื้อของคุณ คุณควรเห็นข้อความอยู่ระหว่างการติดตั้งใช้งาน Cloud Function... เหนือตัวแก้ไขโค้ด เมื่อนําโค้ดไปใช้เรียบร้อยแล้ว ข้อความจะอัปเดตเป็นการติดตั้งใช้งาน Cloud Function เป็นเวอร์ชันล่าสุด

ทําความเข้าใจโค้ด

การดําเนินการตามคําขอซึ่งใช้ไลบรารี Actions on Google Fulfillment สําหรับ Node.js จะตอบสนองต่อคําขอ HTTP จาก Google Assistant

ในข้อมูลโค้ดก่อนหน้า คุณจะกําหนดเครื่องจัดการ greeting ซึ่งจะตรวจสอบว่าผู้ใช้เคยเข้าชมการดําเนินการหรือไม่ด้วยการตรวจสอบพร็อพเพอร์ตี้ lastSeenTime หากไม่ได้กําหนด lastSeenTime ไว้ ผู้ใช้ใหม่และเครื่องจัดการ greeting จะแสดงคําทักทายผู้ใช้ใหม่

อัปเดตการเรียกใช้หลักเพื่อเรียกใช้เว็บฮุค

เมื่อกําหนดฟังก์ชัน greeting แล้ว คุณจะกําหนดค่าเครื่องจัดการเหตุการณ์ greeting ในความตั้งใจที่จะเรียกใช้หลักได้เพื่อให้การดําเนินการรู้ว่าเรียกใช้ฟังก์ชันนี้เมื่อผู้ใช้เรียกใช้การดําเนินการ

หากต้องการกําหนดค่าการดําเนินการเพื่อเรียกใช้เครื่องจัดการ greeting ใหม่ ให้ทําตามขั้นตอนต่อไปนี้

  1. คลิกคําขอหลักในแถบนําทาง
  2. ล้าง Send Prompt
  3. เลือกช่องทําเครื่องหมายเรียกใช้เว็บฮุค
  4. เพิ่ม greeting ในกล่องข้อความ

A803afe4f7375a97.png

  1. คลิกบันทึก

ทดสอบการเรียกใช้หลักที่อัปเดตในเครื่องจําลอง

หากต้องการทดสอบการดําเนินการในเครื่องจําลอง ให้ทําตามขั้นตอนต่อไปนี้

  1. ในแถบนําทาง ให้คลิกทดสอบเพื่อพาคุณไปที่เครื่องจําลอง
  2. พิมพ์ Talk to my test app ในช่อง Input แล้วกด Enter

เนื่องจากคุณได้ทดสอบการดําเนินการก่อนหน้านี้ใน Codelab นี้ คุณไม่ใช่ผู้ใช้ใหม่ จึงได้รับคําทักทายย่อให้สั้นลง ดังนี้ "นักผจญภัยที่มหัศจรรย์! ยินดีต้อนรับกลับเข้าสู่ดินแดนในตํานานของ Gryffinberg!..."

ทําความสะอาดโปรเจ็กต์ [แนะนํา]

เราขอแนะนําให้นําโปรเจ็กต์ที่คุณไม่ได้ตั้งใจจะใช้ออกเพื่อหลีกเลี่ยงการเรียกเก็บเงินที่อาจเกิดขึ้น หากต้องการลบโปรเจ็กต์ที่สร้างใน Codelab นี้ ให้ทําตามขั้นตอนต่อไปนี้

  1. หากต้องการลบโปรเจ็กต์ระบบคลาวด์และทรัพยากร ให้ทําตามขั้นตอนที่ระบุในส่วนการปิด (ลบ) โปรเจ็กต์
  1. ไม่บังคับ: หากต้องการนําโปรเจ็กต์ออกจากคอนโซลการดําเนินการทันที ให้ทําตามขั้นตอนในหัวข้อลบโปรเจ็กต์ หากไม่ดําเนินการขั้นตอนนี้ ระบบจะลบโปรเจ็กต์ออกโดยอัตโนมัติหลังจากผ่านไปประมาณ 30 วัน

6. ยินดีด้วย

คุณทราบพื้นฐานของการสร้างการดําเนินการสําหรับ Google Assistant แล้ว

สิ่งที่คุณครอบคลุม

  • วิธีตั้งค่าโปรเจ็กต์การดําเนินการด้วยคอนโซลการดําเนินการ
  • วิธีเพิ่มข้อความแจ้งไปยังคําขอหลักเพื่อให้ผู้ใช้เริ่มการสนทนากับการดําเนินการของคุณได้
  • วิธีสร้างอินเทอร์เฟซการสนทนาที่มีฉาก ความตั้งใจ การเปลี่ยนภาพ ชิปคําแนะนํา และการดําเนินการตามคําสั่งซื้อ
  • วิธีทดสอบการทํางานด้วยเครื่องจําลองการดําเนินการ

ดูข้อมูลเพิ่มเติม

สํารวจแหล่งข้อมูลต่อไปนี้เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับการสร้าง Actions for Google Assistant

แบบสํารวจความคิดเห็น

ก่อนดําเนินการ โปรดกรอกแบบสํารวจสั้นๆ เกี่ยวกับประสบการณ์การใช้งาน