สคีมาลักษณะของ RunCycle ของ Smart Home

action.devices.traits.RunCycle - ลักษณะนี้แสดงถึงอุปกรณ์ที่มีระยะเวลาการทำงานต่อเนื่องที่สามารถค้นหาได้

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

  • เครื่องอบผ้าของฉันอยู่ในโหมดใด
  • เครื่องล้างจานเหลือกี่รอบแล้ว
  • เครื่องอบผ้ากำลังทำอะไร
  • จะซักล้างเมื่อใด

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

อุปกรณ์สามารถส่งคืนสิ่งที่ทราบ และการตอบสนองของ Assistant TTS จะสร้างคำตอบที่ดีที่สุดพร้อมกับข้อมูลที่มี (เช่น เครื่องล้างจานกำลังทำงานอยู่และจะเสร็จสมบูรณ์ภายในประมาณ 20 นาที)

ปัจจุบัน RunCycle เป็นลักษณะแบบอ่านอย่างเดียว โดยไม่มีคำสั่ง แต่ระบุให้กับการค้นหาเท่านั้น ในอนาคตอาจมีกลไกสำหรับเปลี่ยนรอบหรือข้ามรอบ (เหมาะสำหรับหัวฉีดน้ำ แต่ไม่เหมาะกับเครื่องซักผ้า)

ATTRIBUTES ของอุปกรณ์

ไม่ต้องแจ้งเตือนเลย

สถานะอุปกรณ์

เอนทิตีที่มีลักษณะนี้อาจรายงานสถานะต่อไปนี้ซึ่งเป็นส่วนหนึ่งของการดำเนินการ QUERY ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent QUERY ได้ที่Fulfillment Intent

รัฐ ประเภท คำอธิบาย
currentRunCycle อาร์เรย์

ต้องระบุ

มีคำพ้องความหมายสำหรับรอบปัจจุบันในภาษาที่รองรับแต่ละภาษา

[item, ...] ออบเจ็กต์

วนชื่อคำพ้องความหมาย

currentCycle String

ต้องระบุ

รอบปัจจุบันที่กำลังดำเนินการ

nextCycle String

ไม่บังคับ รอบถัดไปที่จะดำเนินการ

lang String

ต้องระบุ

รหัสภาษาสำหรับชื่อรอบที่ระบุ ดูภาษาที่รองรับ

currentTotalRemainingTime จำนวนเต็ม

ต้องระบุ

เวลาดำเนินการที่เหลือ หน่วยเป็นวินาที

currentCycleRemainingTime จำนวนเต็ม

ต้องระบุ

เวลาที่เหลือในรอบปัจจุบัน หน่วยเป็นวินาที

ตัวอย่าง

เราจะล้างอุปกรณ์นี้อีก 5 นาที และจะเสร็จในอีก 20 นาที

{
  "currentRunCycle": [
    {
      "currentCycle": "rinse",
      "lang": "en"
    }
  ],
  "currentTotalRemainingTime": 1200,
  "currentCycleRemainingTime": 300
}

ล้างอุปกรณ์ออกอีก 5 นาทีก่อนหมุนอุปกรณ์

{
  "currentRunCycle": [
    {
      "currentCycle": "rinse",
      "nextCycle": "spin",
      "lang": "en"
    }
  ],
  "currentTotalRemainingTime": 600,
  "currentCycleRemainingTime": 300
}

COMMANDS ของอุปกรณ์

ไม่ต้องแจ้งเตือนเลย

การแจ้งเตือนของอุปกรณ์

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

ช่อง ประเภท คำอธิบาย
RunCycle

ต้องระบุ

เพย์โหลดการแจ้งเตือน

รองรับรายการต่อไปนี้
0 ออบเจ็กต์

Success

priority จำนวนเต็ม

ต้องระบุ

แสดงระดับการแจ้งเตือน ค่าที่รองรับตอนนี้คือ 0 ซึ่งบ่งบอกว่าควรมีการพูดออกเสียงการแจ้งเตือน

status String

ต้องระบุ

ผลลัพธ์ของการดำเนินการ

ค่าที่รองรับ

SUCCESS
currentCycleRemainingTime จำนวนเต็ม

ต้องระบุ

เวลาที่เหลือในรอบปัจจุบัน หน่วยเป็นวินาที

1 ออบเจ็กต์

ล้มเหลว

priority จำนวนเต็ม

ต้องระบุ

แสดงระดับการแจ้งเตือน ค่าที่รองรับตอนนี้คือ 0 ซึ่งบ่งบอกว่าควรมีการพูดออกเสียงการแจ้งเตือน

status String

ต้องระบุ

ผลลัพธ์ของการดำเนินการ

ค่าที่รองรับ

FAILURE
errorCode String

ต้องระบุ

ค่าอาจเป็นรหัสข้อผิดพลาดสำหรับลักษณะนี้ เช่น deviceStuck

ตัวอย่าง

อุปกรณ์ทำงานเสร็จแล้ว

{
  "RunCycle": {
    "priority": 0,
    "status": "SUCCESS",
    "currentCycleRemainingTime": 0
  }
}

เกิดข้อผิดพลาดในการดำเนินการรอบปัจจุบัน

{
  "RunCycle": {
    "priority": 0,
    "status": "FAILURE",
    "errorCode": "deviceStuck"
  }
}
เท่านั้น

ข้อผิดพลาดเกี่ยวกับอุปกรณ์

ดูรายการข้อผิดพลาดและข้อยกเว้นทั้งหมด