สคีมาลักษณะ RunCycle สมาร์ทโฮม

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

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

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

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

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

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

แอตทริบิวต์ของอุปกรณ์

ไม่มี

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

เอนทิตีที่มีลักษณะนี้อาจรายงานสถานะต่อไปนี้เป็นส่วนหนึ่งของการดำเนินการ QUERY ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent QUERY ได้ที่การดำเนินการตาม 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
}

คำสั่งอุปกรณ์

ไม่มี

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

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

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

ต้องระบุ

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

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

สำเร็จ

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"
  }
}

ข้อผิดพลาดของอุปกรณ์

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