คู่มือเครื่องชงกาแฟสมาร์ทโฮม

action.devices.types.COFFEE_MAKER - การโต้ตอบกับเครื่องชงกาแฟอาจรวมถึงการเปิดและปิดเครื่อง การปรับโหมดการทำอาหารและค่าอาหารที่กำหนดล่วงหน้า การปรับอุณหภูมิเป้าหมาย และการปรับการตั้งค่าโหมดที่ไม่ปรุงอาหารต่างๆ

ประเภทนี้บ่งชี้ว่าอุปกรณ์ได้รับไอคอนเครื่องชงกาแฟ และอุปกรณ์บางอย่าง คำพ้องความหมายและชื่อแทน

ความสามารถของอุปกรณ์

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

ลักษณะที่จำเป็น

คุณต้องระบุลักษณะและคำสั่งเหล่านี้ หากเกี่ยวข้องกับ อุปกรณ์ หากอุปกรณ์ของคุณไม่สนับสนุนลักษณะเหล่านี้ ให้ป้อนรหัสข้อผิดพลาดของ functionNotSupported ในการตอบกลับ QUERY หรือ EXECUTE โปรดดู ข้อผิดพลาดและข้อยกเว้นสำหรับข้อมูลเพิ่มเติม

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

ข้อกำหนดด้านคุณภาพ

  • เวลาในการตอบสนอง: ต้องน้อยกว่าหรือเท่ากับ 800 มิลลิวินาที
  • ความเสถียร: ต้องมากกว่าหรือเท่ากับ 97%

อุปกรณ์ตัวอย่าง: เครื่องชงกาแฟแบบเรียบง่าย

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

ตัวอย่างการตอบสนองการซิงค์

คำขอ
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
การตอบกลับ
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.COFFEE_MAKER",
        "traits": [
          "action.devices.traits.Cook",
          "action.devices.traits.TemperatureControl",
          "action.devices.traits.OnOff"
        ],
        "name": {
          "name": "Simple coffee maker"
        },
        "willReportState": true,
        "attributes": {
          "temperatureRange": {
            "minThresholdCelsius": 0,
            "maxThresholdCelsius": 100
          },
          "temperatureUnitForUX": "F",
          "supportedCookingModes": [
            "BREW"
          ],
          "foodPresets": [
            {
              "food_preset_name": "coffee_key",
              "supported_units": [
                "NO_UNITS",
                "CUPS"
              ],
              "food_synonyms": [
                {
                  "synonym": [
                    "Coffee"
                  ],
                  "lang": "en"
                }
              ]
            }
          ]
        },
        "deviceInfo": {
          "manufacturer": "smart-home-inc",
          "model": "hs1234",
          "hwVersion": "3.2",
          "swVersion": "11.4"
        }
      }
    ]
  }
}

ตัวอย่างคำตอบ QUERY

คำขอ
{
  "requestId": "6894439706274654514",
  "inputs": [
    {
      "intent": "action.devices.QUERY",
      "payload": {
        "devices": [
          {
            "id": "123"
          }
        ]
      }
    }
  ]
}
การตอบกลับ
{
  "requestId": "6894439706274654514",
  "payload": {
    "devices": {
      "123": {
        "status": "SUCCESS",
        "online": true,
        "on": true,
        "temperatureSetpointCelsius": 70,
        "currentCookingMode": "BREW",
        "currentFoodPreset": "coffee_key",
        "currentFoodQuantity": 2,
        "currentFoodUnit": "CUPS"
      }
    }
  }
}

ตัวอย่างคำสั่ง EXECUTE

ทำอาหาร

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับพารามิเตอร์คำสั่ง โปรดดู action.devices.traits.Cook ข้อมูลอ้างอิง

คำขอ
{
  "requestId": "6894439706274654516",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.Cook",
                "params": {
                  "start": false,
                  "cookingMode": "BREW"
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
การตอบกลับ
{
  "requestId": "6894439706274654516",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "currentCookingMode": "NONE",
          "currentFoodPreset": "NONE"
        }
      }
    ]
  }
}

SetTemperature

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับพารามิเตอร์คำสั่ง โปรดดู action.devices.traits.TemperatureControl ข้อมูลอ้างอิง

คำขอ
{
  "requestId": "6894439706274654518",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.SetTemperature",
                "params": {
                  "temperature": 85
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
การตอบกลับ
{
  "requestId": "6894439706274654518",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "temperatureSetpointCelsius": 85
        }
      }
    ]
  }
}

OnOff

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับพารามิเตอร์คำสั่ง โปรดดู action.devices.traits.OnOff ข้อมูลอ้างอิง

คำขอ
{
  "requestId": "6894439706274654520",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.OnOff",
                "params": {
                  "on": true
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
การตอบกลับ
{
  "requestId": "6894439706274654520",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "on": true
        }
      }
    ]
  }
}

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

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