พื้นที่เก็บข้อมูลของผู้ใช้

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

ระบบจะส่งสถานะของพื้นที่เก็บข้อมูลผู้ใช้ไปในคำขอ app.handle() และจัดเก็บไว้ในออบเจ็กต์ user

อ่านและเขียนข้อมูลในการสนทนาต่างๆ

หากต้องการอัปเดตหรือกำหนดค่าใหม่ในพื้นที่เก็บข้อมูลของผู้ใช้ ให้กำหนดค่าให้กับช่อง params ของออบเจ็กต์ user ในการเรียกเว็บฮุค ตัวอย่างต่อไปนี้ตั้งค่า "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"
      }
    }
  }
}
    

หากต้องการเข้าถึงข้อมูลที่เก็บไว้ในพื้นที่เก็บข้อมูลของผู้ใช้ ให้กำหนดข้อมูลดังกล่าวให้กับตัวแปรในการเรียกใช้เว็บฮุค ตัวอย่างต่อไปนี้ดึงค่าจาก "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 ในการเรียกใช้เว็บฮุค ตัวอย่างต่อไปนี้จะล้างค่า "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 คือชื่อที่ระบุในเว็บฮุคเมื่อมีการตั้งค่าพารามิเตอร์

เช่น ก่อนหน้านี้คุณเก็บค่าสีไว้ในพื้นที่เก็บข้อมูลของผู้ใช้เป็นพารามิเตอร์ exampleColor หากต้องการเข้าถึงค่านั้นในพรอมต์ ให้อ้างอิงค่านั้นโดยใช้ $user.params.exampleColor ดังนี้

JSON

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

อ้างอิงค่าที่จัดเก็บไว้ภายในเงื่อนไข

นอกจากนี้ คุณยังอ้างอิงค่าที่เก็บไว้ในพื้นที่เก็บข้อมูลของผู้ใช้ในconditionsได้ด้วย หากต้องการอ้างอิงค่า ให้ใช้ไวยากรณ์ user.params.PARAMETER_NAME โดยที่ PARAMETER_NAME คือชื่อที่ระบุในเว็บฮุคเมื่อมีการตั้งค่าพารามิเตอร์

เช่น ก่อนหน้านี้คุณจัดเก็บค่าสีไว้ในพื้นที่เก็บข้อมูลของผู้ใช้เป็นพารามิเตอร์ 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 ไม่ให้จดจำฉัน