1. סקירה כללית
פלטפורמת הפיתוח של Google Assistant מאפשרת ליצור תוכנה להרחבת הפונקציונליות של Google Assistant, עוזרת אישית וירטואלית, ביותר ממיליארד מכשירים, כולל רמקולים חכמים, טלפונים, מכוניות, טלוויזיות, אוזניות ועוד. המשתמשים יכולים לנהל שיחה עם Assistant כדי לבצע פעולות, כמו לקנות מצרכים או להזמין נסיעה. מפתחים יכולים להשתמש בפלטפורמת הפיתוח של Assistant כדי ליצור ולנהל בקלות חוויות שיחה נעימות ויעילות בין משתמשים לבין שירותי מימוש משלהם של צד שלישי.
ב-codelab הזה מוסברים מושגים ברמת מתחילים לפיתוח באמצעות Google Assistant. לא נדרש ניסיון קודם בפלטפורמה כדי להשלים אותו. ב-codelab הזה, תיצרו פעולה פשוטה ל-Google Assistant שתגיד למשתמשים מה צופן להם כשהם מתחילים את ההרפתקה שלהם בארץ המיתית גריפינברג. ב-codelab של Actions Builder ברמה 2, אתם מרחיבים את הפעולה הזו כדי להתאים אישית את המזל של המשתמש על סמך הקלט שלו.
מה תפַתחו
ב-codelab הזה תיצרו פעולה פשוטה עם הפונקציות הבאות:
- משיב למשתמשים בהודעת ברכה
- שואל את המשתמשים שאלה. כשהמשתמש עונה, הפעולה מגיבה בהתאם לבחירה שלו
- מספקת צ'יפים של הצעות שהמשתמשים יכולים ללחוץ עליהם כדי להזין קלט
- משנה את הודעת הפתיחה למשתמש בהתאם לכך שהוא משתמש חוזר
בסיום ה-codelab, הפעולה שהשלמתם תכלול את רצף השיחה הבא:
מה תלמדו
- איך יוצרים פרויקט בקונסולה ל-Actions
- איך שולחים למשתמש הנחיה אחרי שהוא מפעיל את הפעולה
- איך לעבד קלט של משתמש ולהחזיר תגובה
- איך בודקים את הפעולה בסימולטור הפעולות
- איך מטמיעים מילוי באמצעות העורך של Cloud Functions
מה נדרש
הכלים הבאים צריכים להיות בסביבה שלכם:
- דפדפן אינטרנט, כמו Google Chrome
2. הגדרה
בקטעים הבאים מוסבר איך להגדיר את סביבת הפיתוח וליצור את פרויקט הפעולות.
בדיקת הגדרות ההרשאות ב-Google
כדי לבדוק את הפעולה שאתם יוצרים ב-codelab הזה, אתם צריכים להפעיל את ההרשאות הנדרשות כדי שהסימולטור יוכל לגשת לפעולה. כדי להפעיל הרשאות:
- עוברים לדף בקרת הפעילות בחשבון.
- אם עדיין לא עשיתם זאת, נכנסים לחשבון Google.
- צריך להפעיל את ההרשאות הבאות:
- פעילות באינטרנט ובאפליקציות
- בקטע פעילות באינטרנט ובאפליקציות, מסמנים את התיבה שמירה של ההיסטוריה והפעילות של Chrome מאתרים, מאפליקציות וממכשירים שמשתמשים בשירותי Google.
יצירת פרויקט Actions
פרויקט הפעולות הוא מאגר לפעולה שלכם. כדי ליצור פרויקט Actions בשביל ה-codelab הזה, מבצעים את השלבים הבאים:
- פותחים את מסוף הפעולות.
- לוחצים על פרויקט חדש.
- מקלידים שם לפרויקט, למשל
actions-codelab
. (השם מיועד לשימוש פנימי בלבד. בהמשך תוכלו להגדיר שם חיצוני לפרויקט).
- לוחצים על יצירת פרויקט.
- במסך איזה סוג פעולה רוצה ליצור?, בוחרים בכרטיס בהתאמה אישית.
- לוחצים על הבא.
- בוחרים בכרטיס פרויקט ריק.
- לוחצים על Start building (התחלת בנייה).
שיוך חשבון לחיוב
כדי לפרוס את מרכז הבקרה בהמשך ה-codelab באמצעות Cloud Functions, אתם צריכים לשייך חשבון לחיוב לפרויקט ב-Google Cloud.
אם עדיין לא שייכתם חשבון לחיוב לפרויקט, פועלים לפי השלבים הבאים:
- עוברים אל דף החיוב ב-Google Cloud Platform.
- לוחצים על הוספת חשבון לחיוב או על יצירת חשבון.
- מזינים את פרטי התשלום.
- לוחצים על התחלת תקופת הניסיון בחינם או על שליחה והפעלת חיוב.
- עוברים אל דף החיוב ב-Google Cloud Platform.
- לוחצים על הכרטיסייה הפרויקטים שלי.
- לוחצים על סמל האפשרויות הנוספות (3 נקודות) בעמודה פעולות לצד פרויקט Actions של ה-codelab.
- לוחצים על שינוי הישות לחיוב.
- בתפריט הנפתח, בוחרים את החשבון לחיוב שהגדרתם. לוחצים על Set account.
כדי להימנע מחיובים, צריך לפעול לפי השלבים שבקטע מחיקת הפרויקט בסוף ה-codelab הזה.
3. התחלת שיחה
המשתמשים מתחילים את השיחה עם הפעולה שלכם באמצעות הפעלה. לדוגמה, אם יש לכם פעולה בשם MovieTime, משתמשים יכולים להפעיל את הפעולה באמצעות אמירת משפט כמו Ok Google, talk to MovieTime, כאשר MovieTime הוא השם המוצג. אם רוצים לפרוס את הפעולה בסביבת ייצור, צריך להגדיר לה שם לתצוגה. עם זאת, כדי לבדוק את הפעולה, לא צריך להגדיר את השם לתצוגה. במקום זאת, אפשר להשתמש בביטוי "Talk to my test app" בסימולטור כדי להפעיל את הפעולה.
צריך לערוך את הקריאה הראשית כדי להגדיר מה קורה אחרי שמשתמש מפעיל את הפעולה.
כברירת מחדל, Actions Builder מספק הנחיה כללית כשמופעלת ההפעלה שלכם ("כדי להתחיל ליצור את הפעולה, צריך להגדיר את ההפעלה הראשית").
בקטע הבא, מתאימים אישית את ההצעה לפעולה להפעלה הראשית במסוף הפעולות.
הגדרת הפעלה ראשית
כדי לשנות את ההנחיה שהפעולה שולחת בחזרה למשתמש כשהוא מפעיל את הפעולה:
- בסרגל הניווט, לוחצים על Main invocation (הפעלה ראשית).
- בעורך הקוד, מחליפים את הטקסט בשדה
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 מספקת כלי אינטרנטי לבדיקת ה-Action שנקרא סימולטור. הממשק מדמה מכשירי חומרה והגדרות שלהם, כך שתוכלו לנהל שיחה עם הפעולה כאילו היא פועלת במסך חכם, בטלפון, ברמקול או ב-KaiOS.
כשמפעילים את הפעולה, היא אמורה להגיב בהנחיה המותאמת אישית שהוספתם ("A wondrous greeting, adventurer!..."
).
כדי לבדוק את ההפעלה הראשית של הפעולה בסימולטור, פועלים לפי השלבים הבאים:
- בסרגל הניווט העליון, לוחצים על בדיקה כדי לעבור לסימולטור.
- כדי להפעיל את הפעולה בסימולטור, מקלידים
Talk to my test app
בשדה Input ולוחצים עלEnter
.
כשמפעילים את ההפעלה הראשית של הפעולה, Assistant מגיבה עם הודעת הפתיחה המותאמת אישית. בשלב הזה, השיחה מסתיימת אחרי ש-Assistant מגיבה בהודעת פתיחה. בקטע הבא, משנים את הפעולה כדי שהשיחה תימשך.
צפייה ביומני האירועים
בכרטיסייה בדיקה, בחלונית שמשמאל מוצגים יומני האירועים, שבהם מופיעה היסטוריית השיחות כיומני אירועים. בכל יומן אירועים מוצגים האירועים שמתרחשים במהלך התור הזה בשיחה.
לפעולה שלכם יש כרגע יומן אירועים אחד, שמוצגים בו גם הקלט של המשתמש ("Talk to my test app"
) וגם התגובה של הפעולה. בצילום המסך הבא מוצג יומן האירועים של הפעולה:
אם לוחצים על החץ למטה ביומן האירועים, אפשר לראות את האירועים שהתרחשו בתור הזה של השיחה, מסודרים לפי סדר כרונולוגי:
-
userInput
: מתאים לקלט של המשתמש ("Talk to my test app"
). -
interactionMatch
: תואם לתגובה העיקרית להפעלת הפעולה, שהופעלה על ידי הקלט של המשתמש. אם מרחיבים את השורה הזו על ידי לחיצה על החץ, אפשר לראות את ההנחיה שהוספתם לקריאה הראשית (A wondrous greeting, adventurer!...
) -
endConversation
: מתאים למעבר שנבחר בכוונתMain invocation
, שמסיים כרגע את השיחה. (מידע נוסף על מעברים מפורט בקטע הבא של ה-codelab הזה).
יומני אירועים מספקים תובנות לגבי אופן הפעולה של הפעולה שלכם, והם כלי שימושי לניפוי באגים בפעולה אם נתקלתם בבעיות. כדי לראות את הפרטים של אירוע, לוחצים על החץ לצד שם האירוע, כמו שמוצג בצילום המסך הבא:
4. יצירת השיחה של הפעולה
אחרי שהגדרתם מה קורה אחרי שמשתמש מפעיל את הפעולה, אתם יכולים להגדיר את שאר השיחה של הפעולה. לפני שממשיכים עם ה-codelab הזה, כדאי להכיר את המונחים הבאים כדי להבין איך השיחה בפעולה שלכם מתנהלת:
לפעולה יכולים להיות כמה סצנות, וצריך להפעיל כל סצנה כדי שהיא תפעל. (לפעולה שתיצרו ב-Codelab הזה יש רק סצנה אחת בשם Start
). הדרך הנפוצה ביותר להפעיל סצנה היא להגדיר את הפעולה כך שכאשר משתמש מתאים לכוונת משתמש בתוך סצנה, הכוונה הזו תפעיל את המעבר לסצנה אחרת ותפעיל אותה.
לדוגמה, נניח שיש פעולה היפותטית שמספקת למשתמש עובדות על בעלי חיים. כשהמשתמש מפעיל את הפעולה הזו, המערכת מתאימה את Main invocation
הכוונה ומפעילה את המעבר לסצנה בשם Facts
. המעבר הזה מפעיל את סצנת Facts
, ששולחת את ההנחיה הבאה למשתמש: Would you like to hear a fact about cats or dogs?
בסצנת Facts
יש כוונת משתמש שנקראת Cat
, שמכילה ביטויי הדרכה שהמשתמש יכול להגיד כדי לשמוע עובדה על חתולים, כמו "אני רוצה לשמוע עובדה על חתולים" או "חתול". כשהמשתמש מבקש לשמוע עובדה על חתול, הכוונה Cat
מזוהה ומפעילה מעבר לסצנה שנקראת Cat fact
. Cat fact
הסצנה מופעלת ונשלחת למשתמש הנחיה שכוללת עובדה על חתולים.
איור 1. הזרימה של תור אופייני לשיחה בפעולה שנוצרה באמצעות Actions Builder
הסצנות, האובייקטים מסוג Intent והמעברים יוצרים יחד את הלוגיקה של השיחה ומגדירים את המסלולים השונים שהמשתמש יכול לעבור בשיחה עם הפעולה. בקטע הבא, יוצרים סצנה ומגדירים איך הסצנה הזו מופעלת אחרי שמשתמש מפעיל את הפעולה.
מעבר מהפעלה ראשית לסצנה
בקטע הזה, יוצרים סצנה חדשה בשם Start
, ששולחת למשתמש הנחיה עם שאלה אם הוא רוצה לקבל חיזוי עתידות. מוסיפים גם מעבר מהקריאה הראשית לסצנה החדשה Start
.
כדי ליצור את הסצנה הזו ולהוסיף לה מעבר, פועלים לפי השלבים הבאים:
- בסרגל הניווט, לוחצים על פיתוח.
- בסרגל הניווט הצדדי, לוחצים על Main invocation (הפעלה ראשית).
- בקטע מעבר, לוחצים על התפריט הנפתח ומקלידים
Start
בשדה הטקסט.
- לוחצים על הוספה. הפקודה הזו יוצרת סצנה בשם
Start
, ומורה לפעולה לעבור לסצנהStart
אחרי שהפעולה מציגה למשתמש את הודעת הפתיחה. - לוחצים על סצנות בסרגל הניווט הצדדי כדי להציג את רשימת הסצנות.
- בקטע סצנות, לוחצים על התחלה כדי לראות את הסצנה
Start
. - בקטע On enter (בכניסה) של סצנת
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
בשדה Input ומקישים עלEnter
. הפעולה צריכה להגיב עם ההנחיהMain invocation
וההנחיה הנוספת לסצנהStart
,"Before you continue on your quest, would you like your fortune told?"
.
בצילום המסך הבא מוצגת האינטראקציה הזו:
- כדי להגיב להנחיה, לוחצים על הצ'יפ של ההצעה
Yes
אוNo
. (אפשר גם לומר "כן" או "לא" או להזיןYes
אוNo
בשדה קלט).
כשמשיבים להנחיה, הפעולה משיבה בהודעה שמציינת שהיא לא מבינה את הקלט: "מצטער, לא הבנתי את מה שאמרת. אפשר לנסות שוב?" מכיוון שעדיין לא הגדרת את הפעולה כך שתבין את הקלט Yes או No ותגיב לו, הפעולה מתאימה את הקלט שלך לכוונת NO_MATCH
.
כברירת מחדל, כוונת המערכת NO_MATCH
מספקת תשובות כלליות, אבל אתם יכולים להתאים אישית את התשובות האלה כדי לציין למשתמש שלא הבנתם את הקלט שלו. Assistant מסיימת את השיחה של המשתמש עם הפעולה שלכם אחרי שלא הצליחה להתאים קלט של משתמש שלוש פעמים.
הוספת כוונות yes
וno
עכשיו המשתמשים יכולים להשיב לשאלה שהפעולה שלכם מציגה, ואתם יכולים להגדיר את הפעולה כך שתבין את התשובות של המשתמשים ("כן" או "לא"). בקטעים הבאים יוצרים כוונות משתמש שתואמות למילים "כן" או "לא" שהמשתמש אומר, ומוסיפים את הכוונות האלה לסצנה Start
.
יצירת כוונת yes
כדי ליצור את yes
הכוונה, פועלים לפי השלבים הבאים:
- בסרגל הניווט, לוחצים על פיתוח.
- לוחצים על כוונות מותאמות אישית בסרגל הניווט כדי לפתוח את רשימת הכוונות.
- לוחצים על + (סימן הפלוס) בסוף רשימת הכוונות.
- נותנים שם ל-Intent החדש
yes
ולוחצים עלEnter
. - לוחצים על
yes
הכוונה כדי לפתוח את דף הכוונהyes
. - בקטע Add training phrases (הוספת ביטויי אימון), לוחצים על תיבת הטקסט Enter Phrase (הזנת ביטוי) ומזינים את הביטויים הבאים:
Yes
Y
I would
Tell me
- לוחצים על שמירה.
הוספת כוונה yes
לסצנה Start
עכשיו, הפעולה יכולה להבין מתי משתמש מביע כוונה להסכים. אפשר להוסיף את yes
כוונת המשתמש לסצנה Start
כי המשתמש מגיב להנחיה Start
("לפני שתמשיך במסע, תרצה לדעת מה צופן לך העתיד?").
כדי להוסיף את כוונת המשתמש הזו לסצנה Start
, פועלים לפי השלבים הבאים:
- בסרגל הניווט, לוחצים על הסצנה התחלה.
- לוחצים על + (סמל הפלוס) בסצנה
Start
לצד User intent handling (טיפול בכוונת המשתמש). - בתפריט הנפתח של הכוונה, בוחרים באפשרות כן.
- לוחצים על שליחת הנחיות ומעדכנים את השדה
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
בשדה Input ומקישים עלEnter
. - מקלידים
Yes
בשדה Input ומקישים עלEnter
. אפשר גם ללחוץ על הצ'יפ של ההצעה כן.
הפעולה מגיבה למשתמש ומספרת לו שהמזל שלו תלוי בעזרה שהוא יבחר. הפעולה שלך מסיימת את הסשן כי בחרת במעבר End conversation
לכוונת yes
.
יצירת כוונת no
עכשיו צריך ליצור את כוונת המשתמש no
כדי להבין את המשתמש ולהגיב לו כשהוא לא רוצה לשמוע את מה שצפוי לו. כדי ליצור את הכוונה הזו, מבצעים את השלבים הבאים:
- בסרגל הניווט, לוחצים על פיתוח.
- לוחצים על כוונות מותאמות אישית בסרגל הניווט כדי לפתוח את רשימת הכוונות.
- לוחצים על + (סימן הפלוס) בסוף רשימת הכוונות.
- נותנים שם ל-Intent החדש
no
ולוחצים עלEnter
. - לוחצים על לא כדי לפתוח את הדף **
no
** intent. - בקטע Add training phrases (הוספת ביטויי אימון), לוחצים על תיבת הטקסט Enter Phrase (הזנת ביטוי) ומזינים את הביטויים הבאים:
No
N
I don't want
nope
- לוחצים על שמירה.
הוספת כוונה no
לסצנה Start
עכשיו, הפעולה יכולה להבין מתי משתמש אומר "לא" או משהו דומה ל"לא", כמו "לא". צריך להוסיף את כוונת המשתמש no
לסצנה Start
כי המשתמש מגיב להנחיה Start
("לפני שתמשיך במסע, תרצה לדעת מה צופן לך העתיד?").
כדי להוסיף את הכוונה הזו לסצנה Start
, פועלים לפי השלבים הבאים:
- בסרגל הניווט, לוחצים על הסצנה התחלה.
- לוחצים על + (סמל הפלוס) בסצנה
Start
לצד User intent handling (טיפול בכוונה של המשתמש). - בקטע כוונה, בוחרים באפשרות לא בתפריט הנפתח.
- לוחצים על שליחת הנחיות.
- מעדכנים את השדה
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
לכוונת no
.
5. הטמעה של טיפול בהזמנות
בשלב הזה, התגובות של הפעולה הן סטטיות. כשסצנה שמכילה הנחיה מופעלת, הפעולה שולחת את אותה הנחיה בכל פעם. בקטע הזה מטמיעים מילוי שמכיל את הלוגיקה ליצירת תשובה דינמית לשיחה.
ההשלמה שלכם מזהה אם המשתמש הוא משתמש חוזר או משתמש חדש, ומשנה את הודעת הפתיחה של הפעולה למשתמשים חוזרים. הודעת הפתיחה קצרה יותר למשתמשים חוזרים, והיא מציינת שהמשתמש חזר: "שלום לך, הרפתקן! ברוכים השבים לארץ המיתולוגית גריפינברג!"
ב-codelab הזה, משתמשים בעורך Cloud Functions במסוף Actions כדי לערוך ולפרוס את קוד ההשלמה.
הפעולה יכולה להפעיל webhooks ששולחים לכם הודעה על אירוע שמתרחש במהלך הפעלה או בחלקים ספציפיים של ביצוע סצנה. כשמפעילים webhook, הפעולה שולחת בקשה עם מטען ייעודי (payload) בפורמט JSON אל ה-fulfillment, יחד עם שם ה-handler שבו צריך להשתמש כדי לעבד את האירוע. ה-handler מבצע לוגיקה מסוימת ומחזיר תגובת JSON תואמת.
הגדרת מילוי הזמנות
עכשיו אפשר לשנות את תהליך ההשלמה בעורך המובנה כדי ליצור הנחיות שונות למשתמשים חוזרים ולמשתמשים חדשים כשהם מפעילים את הפעולה.
כדי להוסיף את הלוגיקה הזו לניהול המלאי, פועלים לפי השלבים הבאים:
- בסרגל הניווט, לוחצים על פיתוח.
- בסרגל הניווט, לוחצים על הכרטיסייה Webhook.
- מסמנים את תיבת הסימון Inline Cloud Functions (פונקציות Cloud Functions מוטבעות).
- לוחצים על אישור. קוד מוכן מראש נוסף אוטומטית לקובצי
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);
- לוחצים על שמירת ההזמנה.
- לוחצים על Deploy Fulfillment (פריסת מילוי הזמנות).
ממתינים כמה דקות עד ש-Cloud Functions יקצה משאבים ויפרוס את ההשלמה. מעל עורך הקוד אמורה להופיע ההודעה Cloud Function deployment in progress... (פריסת Cloud Function נמצאת בתהליך). אם הפריסה של הקוד מצליחה, ההודעה מתעדכנת לYour Cloud Function deployment is up to date (הפריסה של הפונקציה ב-Cloud Functions עדכנית).
הסבר על הקוד
ה-fulfillment שלכם, שמשתמש ב-Actions on Google Fulfillment library for Node.js, מגיב לבקשות HTTP מ-Google Assistant.
בקטע הקוד הקודם, מוגדרת הפונקציה greeting
, שבודקת אם המשתמש ביקר בעבר בפעולה על ידי בדיקת המאפיין lastSeenTime
. אם lastSeenTime
לא מוגדר, המשתמש חדש וה-handler greeting
מספק את הפתיח למשתמש החדש.
עדכון הקריאה הראשית להפעלת webhook
אחרי שמגדירים את הפונקציה greeting
, אפשר להגדיר את handler האירועים greeting
בכוונה הראשית להפעלת הפונקציה, כדי שהפעולה תדע לקרוא לפונקציה הזו כשהמשתמש מפעיל את הפעולה.
כדי להגדיר את הפעולה לקריאה ל-handler החדש greeting
, פועלים לפי השלבים הבאים:
- בסרגל הניווט, לוחצים על Main invocation (הפעלה ראשית).
- לוחצים על שליחת ההנחיה.
- מסמנים את תיבת הסימון התקשרות אל ה-webhook.
- מוסיפים
greeting
בתיבת הטקסט.
- לוחצים על שמירה.
בדיקת הפעלת הליבה המעודכנת בסימולטור
כדי לבדוק את הפעולה בסימולטור, פועלים לפי השלבים הבאים:
- בסרגל הניווט, לוחצים על בדיקה כדי לעבור לסימולטור.
- מקלידים
Talk to my test app
בשדה Input ומקישים עלEnter
.
מכיוון שכבר בדקתם את הפעולה הזו בשלב מוקדם יותר ב-codelab הזה, אתם לא משתמשים חדשים, ולכן תקבלו את הברכה המקוצרת הבאה: A wondrous greeting, adventurer! ברוכים השבים לארץ המיתית גריפינברג!"
פינוי מקום בפרויקט [מומלץ]
כדי להימנע מחיובים אפשריים, מומלץ להסיר פרויקטים שאתם לא מתכוונים להשתמש בהם. כדי למחוק את הפרויקטים שיצרתם ב-codelab הזה, פועלים לפי השלבים הבאים:
- כדי למחוק את הפרויקט ב-Cloud ואת המשאבים, מבצעים את השלבים שמפורטים בקטע השבתה (מחיקה) של פרויקטים.
- אופציונלי: כדי להסיר את הפרויקט מיד מהקונסולה ל-Actions, מבצעים את השלבים שמפורטים בקטע מחיקת פרויקט. אם לא תבצעו את השלב הזה, הפרויקט יוסר אוטומטית אחרי כ-30 יום.
6. מעולה!
אתם מכירים את היסודות של יצירת פעולות ל-Google Assistant.
מה כיסיתם
- איך מגדירים פרויקט Actions באמצעות הקונסולה ל-Actions
- איך מוסיפים הנחיה לקריאה הראשית לפעולה כדי שהמשתמשים יוכלו להתחיל שיחה עם הפעולה שלכם
- איך יוצרים ממשק שיחה עם סצנות, כוונות, מעברים, צ'יפים של הצעות וביצוע
- איך בודקים את הפעולה באמצעות סימולטור הפעולות
מידע נוסף
כדי לקבל מידע נוסף על יצירת פעולות ל-Google Assistant, אפשר לעיין במקורות המידע הבאים:
- כדי להמשיך לפתח את הפעולה לשיחה מה-codelab הזה, אפשר להשתמש ב-codelab בנושא פיתוח פעולות ל-Google Assistant באמצעות Actions Builder (רמה 2).
- האתר הרשמי עם מסמכי התיעוד לפיתוח פעולות ל-Google Assistant
- דף GitHub של Actions on Google עם דוגמאות קוד וספריות
- הקהילה הרשמית ב-Reddit למפתחים שעובדים עם Assistant
- @ActionsOnGoogle ב-Twitter לעדכונים האחרונים (אפשר לצייץ עם ההאשטאג #AoGDevs כדי לשתף את מה שאתם יוצרים)
סקר משוב
לפני שנסיים, נשמח אם תמלא/י את הסקר הקצר הזה לגבי חוויית התמיכה.