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

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

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

ข้อจำกัด

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

คุณต้องเลือกใช้เพื่อใช้งานพื้นที่เก็บข้อมูลในบ้าน

  1. ในคอนโซล Actions ให้ไปที่ทำให้ใช้งานได้ > ข้อมูลไดเรกทอรี
  2. ในส่วนข้อมูลเพิ่มเติม ให้เลือกช่องหน้าแรก พื้นที่เก็บข้อมูล

อ่านและเขียนข้อมูลในครอบครัว

หากต้องการอัปเดตหรือตั้งค่าใหม่ในพื้นที่เก็บข้อมูลในบ้าน ให้กำหนดค่าให้กับ params ของออบเจ็กต์ home ในการเรียกใช้เว็บฮุค ตัวอย่างต่อไปนี้ ตั้งค่า "exampleColor" เป็น "สีแดง" ในพื้นที่เก็บข้อมูลในบ้าน

Node.js

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

JSON

{
  "responseJson": {
    "session": {
      "id": "1234567890123456789",
      "params": {}
    },
    "prompt": {
      "override": false
    },
    "home": {
      "params": {
        "exampleColor": "red"
      }
    }
  }
}
    

หากต้องการเข้าถึงข้อมูลที่จัดเก็บไว้ในพื้นที่เก็บข้อมูลในบ้าน ให้กำหนดข้อมูลดังกล่าวให้กับตัวแปรในเว็บฮุค การโทร ตัวอย่างต่อไปนี้ดึงค่าจาก "exampleColor" ในบ้าน พื้นที่เก็บข้อมูล:

Node.js

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

JSON

{
  "responseJson": {
    "session": {
      "id": "1234567890123456789",
      "params": {}
    },
    "prompt": {
      "override": false
    },
    "home": {
      "params": {
        "homeColor": "red"
      }
    }
  }
}
    

หากต้องการล้างค่าที่บันทึกไว้ก่อนหน้านี้ ให้ตั้งค่าเป็น null ในการเรียกใช้เว็บฮุค ตัวอย่างต่อไปนี้จะล้างค่าของ "exampleColor" ในพื้นที่เก็บข้อมูลในบ้าน

Node.js

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

JSON

{
  "responseJson": {
    "session": {
      "id": "1234567890123456789",
      "params": {}
    },
    "prompt": {
      "override": false
    },
    "home": {
      "params": {}
    }
  }
}
    

อ้างอิงค่าที่จัดเก็บไว้ภายในพรอมต์

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

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

JSON

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

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

นอกจากนี้ คุณยังอ้างอิงค่าที่จัดเก็บไว้ในพื้นที่เก็บข้อมูลในบ้านได้ในสภาพสินค้า ถึง อ้างอิงค่าโดยใช้ home.params.PARAMETER_NAME โดย PARAMETER_NAME คือชื่อที่ระบุใน เมื่อมีการตั้งค่าพารามิเตอร์

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

ไวยากรณ์เงื่อนไข

home.params.exampleColor == "red"
    

การหมดอายุของข้อมูลพื้นที่เก็บข้อมูลในบ้าน

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

สำหรับการดำเนินการที่ใช้พื้นที่เก็บข้อมูลในบ้าน ผู้จัดการโครงสร้าง Home Graph สามารถล้างข้อมูลบ้าน พื้นที่เก็บข้อมูลสำหรับโครงสร้างที่จัดการจากหน้าการดำเนินการในไดเรกทอรี Assistant ดังนี้

  1. ค้นหาและเลือกการดำเนินการที่ต้องการดูหรือล้างพื้นที่เก็บข้อมูลของผู้ใช้
  2. เลื่อนลงไปที่ด้านล่างของหน้า
    • หากต้องการนำข้อมูลที่จัดเก็บไว้ในพื้นที่เก็บข้อมูลในบ้านออก ให้คลิกหยุด action_name เลิกจดจำฉัน

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

ข้อมูลพื้นที่เก็บข้อมูลในบ้านในเครื่องมือจำลอง

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

ตัวอย่างการโต้ตอบ

ต่อไปนี้เป็นตัวอย่างการโต้ตอบของผู้ใช้ที่ลงชื่อเข้าใช้ในการเรียกใช้ครั้งแรก การดำเนินการ:

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

จากนั้นเมื่อผู้ใช้ที่ได้รับการยืนยันคนเดิมกลับมาที่การดำเนินการหลังจากผ่านไประยะหนึ่ง จะมีผลดังนี้

คำค้นหาของผู้ใช้ Ok Google คุยกับ ExampleAction
คำตอบของ Assistant การรับ ExampleAction
การตอบกลับ ExampleAction สวัสดี ผู้ใช้ที่ผ่านการยืนยันแล้ว คุณอยู่ที่ระดับ 1 พูดว่าถัดไป รีเซ็ต หรือยกเลิก
คำค้นหาของผู้ใช้ ถัดไป
การตอบกลับ ExampleAction คุณอยู่ที่ระดับ 2
คำค้นหาของผู้ใช้ ออก

ในวันถัดไป ผู้ใช้ที่ไม่ได้รับการยืนยันโต้ตอบกับการดำเนินการดังกล่าวในอุปกรณ์เครื่องอื่น ภายในครัวเรือนเดียวกัน (ตามที่ระบุไว้ใน Home Graph)

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