สร้างการดำเนินการสำหรับ Google Assistant โดยใช้ Actions Builder (ระดับ 1)

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

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

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

ใน codelab นี้คุณสร้าง Action ง่ายๆด้วยฟังก์ชันต่อไปนี้:

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

เมื่อคุณเสร็จสิ้น codelab นี้ Action ที่เสร็จสมบูรณ์ของคุณจะมีขั้นตอนการสนทนาดังต่อไปนี้:

1c1e79902bed7230.png

18ef55647b4cb52c.png

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

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

สิ่งที่คุณต้องการ

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

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

ส่วนต่อไปนี้อธิบายวิธีตั้งค่าสภาพแวดล้อมการพัฒนาของคุณและสร้างโครงการ Actions ของคุณ

ตรวจสอบการตั้งค่าการอนุญาต Google ของคุณ

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

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

สร้างโครงการ Actions

โปรเจ็กต์การดำเนินการของคุณเป็นที่เก็บข้อมูลสำหรับการดำเนินการ ในการสร้างโครงการ Actions สำหรับ codelab นี้ให้ทำตามขั้นตอนเหล่านี้:

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

8cd05a84c1c0a32f.png

  1. คลิก สร้างโครงการ
  2. คุณต้องการสร้าง Action แบบไหน? เลือกการ์ดที่ กำหนดเอง
  3. คลิก ถัดไป
  4. เลือกการ์ด โปรเจ็กต์เปล่า
  5. คลิก เริ่มการสร้าง

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

ในการปรับใช้การดำเนินการตามคำสั่งของคุณในภายหลังใน codelab โดยใช้ Cloud Functions คุณต้องเชื่อมโยงบัญชีสำหรับการเรียกเก็บเงินกับโครงการของคุณใน Google Cloud

หากคุณยังไม่ได้เชื่อมโยงบัญชีสำหรับการเรียกเก็บเงินกับโครงการของคุณให้ทำตามขั้นตอนเหล่านี้:

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

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

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

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

โดยค่าเริ่มต้นตัวสร้างการดำเนินการจะแสดง ข้อความแจ้ง ทั่วไปเมื่อการเรียกของคุณถูกทริกเกอร์ ( "เริ่มสร้างการดำเนินการของคุณโดยกำหนดการเรียกใช้หลัก")

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

ตั้งค่าการร้องขอหลัก

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

  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. คลิก บันทึก

ทดสอบการเรียกใช้หลักในโปรแกรมจำลอง

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

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

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

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

656f5736af6a5a07.png

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

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

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

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

443129bdcbecc593.png

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

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

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

fcc389b59af5bef1.png

เมื่อคุณได้กำหนดสิ่งที่จะเกิดขึ้นหลังจากที่ผู้ใช้เรียกใช้การกระทำของคุณแล้วคุณสามารถสร้างบทสนทนาที่เหลือของการดำเนินการได้ ก่อนที่จะดำเนินการต่อกับ codelab นี้โปรดทำความคุ้นเคยกับคำศัพท์ต่อไปนี้เพื่อทำความเข้าใจว่าบทสนทนาของ Action ของคุณทำงานอย่างไร:

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

ตัวอย่างเช่นลองนึกภาพการกระทำสมมุติที่ให้ข้อเท็จจริงเกี่ยวกับสัตว์แก่ผู้ใช้ เมื่อผู้ใช้เรียกใช้การดำเนินการนี้เจตนาใน Main invocation จะตรงกันและทริกเกอร์การเปลี่ยนไปใช้ฉากที่ชื่อ Facts การเปลี่ยนแปลงนี้จะเปิดใช้งานฉาก Facts ซึ่งจะส่งข้อความแจ้งต่อไปนี้ไปยังผู้ใช้: Would you like to hear a fact about cats or dogs? ภายในฉาก Facts คือเจตนาของผู้ใช้ที่เรียกว่า Cat ซึ่งมีวลีฝึกหัดที่ผู้ใช้อาจพูดเพื่อฟังข้อเท็จจริงเกี่ยวกับแมวเช่น "ฉันต้องการฟังข้อเท็จจริงเกี่ยวกับแมว" หรือ "แมว" เมื่อผู้ใช้ขอให้ฟังข้อเท็จจริงเกี่ยวกับ 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. คลิก + ในส่วน On enter ของฉาก 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 ในช่อง ป้อน ข้อมูล)

เมื่อคุณตอบกลับข้อความแจ้งการกระทำของคุณจะตอบกลับด้วยข้อความที่ระบุว่าไม่เข้าใจข้อมูลที่คุณป้อน: "ขออภัยฉันฟังไม่ทันลองอีกครั้งได้ไหม" เนื่องจากคุณยังไม่ได้กำหนดค่าการกระทำของคุณให้เข้าใจและตอบสนองต่ออินพุต "ใช่" หรือ "ไม่ใช่" การดำเนินการของคุณจะจับคู่ข้อมูลที่คุณป้อนเข้ากับความตั้งใจ NO_MATCH

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

เพิ่ม no ตั้งใจ yes และ no

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

สร้าง yes เจตนา

ในการสร้างเจตนา yes ให้ทำตามขั้นตอนเหล่านี้:

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

98440276cb9e7de8.png

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

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

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

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

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

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 เปลี่ยน End conversation สำหรับจุดประสงค์ yes

no สร้างเจตนา

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

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

2e7b8fd57eac94c5.png

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

เพิ่ม no เจตนาที่จะ Start ที่เกิดเหตุ

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

หากต้องการเพิ่มจุดประสงค์นี้สำหรับฉาก Start ให้ทำตามขั้นตอนเหล่านี้:

  1. คลิกฉาก เริ่ม ในแถบนำทาง
  2. คลิกเครื่องหมาย + (เครื่องหมายบวก) ในฉาก Start ถัดจากการ จัดการเจตนาของผู้ใช้
  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 เปลี่ยน End conversation โดย no เจตนา

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

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

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

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

สร้างความสำเร็จของคุณ

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

หากต้องการเพิ่มตรรกะนี้ในการดำเนินการตามขั้นตอนเหล่านี้:

  1. คลิก พัฒนา ในแถบนำทาง
  2. คลิกแท็บ Webhook ในแถบนำทาง
  3. เลือกช่องทำเครื่องหมาย Inline Cloud Functions
  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. คลิก บันทึกการปฏิบัติตาม
  2. คลิก Deploy Fulfillment

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

ทำความเข้าใจรหัส

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

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

อัปเดตคำเรียกร้องหลักเพื่อทริกเกอร์เว็บฮุก

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

ในการกำหนดค่าการดำเนินการของคุณเพื่อเรียกตัวจัดการ greeting ใหม่ให้ทำตามขั้นตอนเหล่านี้:

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

a803afe4f7375a97.png

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

ทดสอบการร้องขอหลักที่อัปเดตในโปรแกรมจำลอง

ในการทดสอบการกระทำของคุณในโปรแกรมจำลองให้ทำตามขั้นตอนเหล่านี้:

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

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

ทำความสะอาดโครงการของคุณ [แนะนำ]

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

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

คุณรู้พื้นฐานของการสร้าง Actions for Google Assistant

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

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

เรียนรู้เพิ่มเติม

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

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

ก่อนออกเดินทางโปรดกรอก แบบสำรวจ สั้น ๆ เกี่ยวกับประสบการณ์ของคุณ