נפח האחסון של המשתמשים

באמצעות קריאה לפעולה מאתר אחר (webhook) אפשר לשמור ערכי פרמטרים של משתמש ספציפי בכל הסשנים באחסון המשתמש. לאחר מכן, הפעולה יכולה להשתמש בערכים השמורים האלה בהודעות ובתנאים, וקוד ה-webhook יכול לגשת לערכים באחסון המשתמש של משתמש ספציפי במקרה הצורך.

המצב של אחסון המשתמש מועבר בבקשת app.handle() ומאוחסן באובייקט user.

קריאה וכתיבה של נתונים בשיחות שונות

כדי לעדכן או להגדיר ערך חדש באחסון של המשתמש, צריך להקצות את הערך לשדה params של האובייקט user בקריאה ל-webhook. בדוגמה הבאה 'exampleColor' מוגדר ל-'red' באחסון המשתמש:

Node.js

// Assign color to user storage
app.handle('storeColor', conv => {
  let color = 'red';
  conv.user.params.exampleColor = color;
});
    

JSON

{
  "responseJson": {
    "session": {
      "id": "1234567890123456789",
      "params": {}
    },
    "prompt": {
      "override": false
    },
    "user": {
      "locale": "en-US",
      "params": {
        "verificationStatus": "VERIFIED",
        "exampleColor": "red"
      }
    }
  }
}
    

כדי לקבל גישה לנתונים שמאוחסנים באחסון של המשתמש, צריך להקצות אותם למשתנה בקריאת webhook. בדוגמה הבאה מאחזרים ערך מ-'exampleColor' באחסון של המשתמש:

Node.js

// Retrieve color from user storage
app.handle('getStoredColor', conv => {
  let color = conv.user.params.exampleColor;
});
    

JSON

{
  "responseJson": {
    "session": {
      "id": "1234567890123456789",
      "params": {}
    },
    "prompt": {
      "override": false
    },
    "user": {
      "locale": "en-US",
      "params": {
        "verificationStatus": "VERIFIED",
        "exampleColor": "red"
      }
    }
  }
}
    

כדי למחוק ערך שנשמר בעבר, צריך להגדיר את הערך כ-null בקריאה לפעולה מאתר אחר (webhook). הדוגמה הבאה מנקה את הערך של 'exampleColor' באחסון המשתמש:

Node.js

// Clear color from user storage
app.handle('clearStoredColor', conv => {
  conv.user.params.exampleColor = null;
});
    

JSON

{
  "responseJson": {
    "session": {
      "id": "1234567890123456789",
      "params": {}
    },
    "prompt": {
      "override": false
    },
    "user": {
      "locale": "en-US",
      "params": {
        "verificationStatus": "VERIFIED"
      }
    }
  }
}
    

הפניה לערכים שמורים בהנחיות

אפשר להפנות לערכים שמאוחסנים באחסון המשתמש באמצעות הודעה. כדי להפנות לערך הזה צריך להשתמש בתחביר $user.params.PARAMETER_NAME, כאשר PARAMETER_NAME הוא השם שניתן ב-webhook בזמן שהפרמטר הוגדר.

לדוגמה, בעבר שמרתם ערך של צבע באחסון המשתמשים בתור הפרמטר exampleColor. כדי לגשת לערך הזה בהנחיה, צריך להפנות לערך הזה באמצעות $user.params.exampleColor:

JSON

{
  "candidates": [{
    "first_simple": {
      "variants": [{
        "speech": "Your favorite color is $user.params.exampleColor."
      }]
    }
  }]
}
    

הפניה לערכים שמורים בתוך התנאים

אפשר להפנות גם לערכים ששמורים באחסון המשתמש בקטע conditions. כדי להפנות לערך הזה צריך להשתמש בתחביר user.params.PARAMETER_NAME, שבו PARAMETER_NAME הוא השם שניתן ב-webhook כשהפרמטר הוגדר.

לדוגמה, בעבר אחסנתם ערך של צבע באחסון המשתמשים בתור הפרמטר exampleColor, ואתם רוצים להתאים אותו לערך 'red' בתנאי. בתנאי, צריך להפנות לערך המאוחסן באמצעות user.params.exampleColor. ביטוי התנאי נראה כך:

תחביר של תנאים

user.params.exampleColor == "red"
    

פקיעת התוקף של נתוני האחסון של המשתמש

אצל משתמשים מאומתים, התוקף של הנתונים שמאוחסנים באחסון המשתמשים פג על סמך ההגדרות שלהם לפעילות באינטרנט ובאפליקציות, ואפשר לנקות אותם גם באמצעות הפעולה עצמה. לגבי משתמשים שלא אומתו, Assistant תמחק את התוכן באחסון של המשתמשים בסוף השיחה.

ב-Actions on Google, סטטוס האימות של המשתמש בתחילת כל שיחה נקבע על סמך מגוון אינדיקטורים בתחילת השיחה. לדוגמה, סטטוס אימות של משתמש שמחובר ל-Google Assistant במכשיר הנייד הוא VERIFIED.

אלה הסיבות האפשריות לכך שסטטוס האימות של משתמש הוא GUEST:

  • האפשרות תוצאות אישיות מושבתת אצל המשתמש.
  • המשתמש השבית את ההגדרה פעילות באינטרנט ובאפליקציות. חשוב לזכור שחלק מהמשתמשים עשויים להשבית את ההגדרה הזו ברמת הדומיין.
  • אם התכונה Voice Match מופעלת במכשיר, וההתאמה נכשלת או שהמשתמש מפעיל את Assistant בלי להשתמש בקול (למשל, לחיצה ארוכה במכשיר Nest Home).
  • המשתמש לא מחובר.

תמיד חשוב לבדוק את סטטוס האימות של המשתמש לפני שמאחסנים נתונים באחסון משתמשים, כדי למנוע ממשתמשים אורחים לקיים אינטראקציה עם פיצ'ר שייכשל עבורם.

חשיפה למשתמשים

בתור משתמשים, תוכלו להציג נתונים שמאוחסנים באחסון המשתמשים שלכם עבור פעולות שאתם מפעילים. אפשר גם להסיר מפעולה ספציפית נתונים שמאוחסנים באחסון המשתמש, או למנוע מהשירות לזכור אתכם.

כדי להציג את הנתונים המאוחסנים או להפסיק את שמירת המידע שלכם מהשירות:

  1. נכנסים לספריית Assistant.
  2. מאתרים את הפעולה שרוצים להציג או לנקות עבורה את האחסון של המשתמש ובוחרים בה.
  3. גוללים לתחתית הדף:
    • כדי להציג את תוכן האחסון של המשתמש, לוחצים על [הצגת הנתונים המאוחסנים].
    • כדי לאפס את הנתונים שמאוחסנים באחסון המשתמש עבור השירות, לוחצים על איפוס.
    • כדי להסיר נתונים ששמורים באחסון של המשתמשים ולהפסיק את האפשרות של השירות לזכור אתכם, לוחצים על הפסקת action_name לזכור אותי.