สคีมา RunCycle Trait ของสมาร์ทโฮม

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

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

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

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

อุปกรณ์จะส่งคืนสิ่งที่ทราบได้ และคำตอบของ Assistant TTS จะอยู่ในรูปแบบ คำตอบที่ดีที่สุดด้วยข้อมูลที่มีอยู่ (ตัวอย่างเช่น เครื่องล้างจานกำลังทำงาน จะเสร็จสมบูรณ์ภายในประมาณ 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"
  }
}

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

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