Panduan Lemari Smart Home

action.devices.types.CLOSET - Lemari dapat dibuka dan ditutup, kemungkinan berada di lebih dari satu arah.

Jenis ini menunjukkan bahwa perangkat mendapatkan ikon Closet dan beberapa hal terkait sinonim dan alias.

Kemampuan perangkat

Lihat dokumentasi sifat yang sesuai untuk detail penerapan, seperti atribut dan status yang harus didukung layanan Anda, serta cara membangun respons EXECUTE dan QUERY.

Ciri yang diperlukan

Sifat dan perintah ini diperlukan, jika berlaku untuk perangkat seluler. Jika perangkat Anda tidak mendukung ciri ini, masukkan kode kesalahan functionNotSupported dalam respons QUERY atau EXECUTE. Lihat Error dan pengecualian untuk info selengkapnya.

Persyaratan kualitas

  • Latensi: harus kurang dari atau sama dengan 2500 md.
  • Keandalan: harus lebih dari atau sama dengan 97%.

Perangkat contoh: Lemari sederhana

Bagian ini berisi contoh payload intent yang mewakili "Closet" umum berdasarkan jenis dan karakteristik perangkat di atas. Jika Anda menambahkan atau menghapus ciri khas dalam implementasi Anda, ubah respons Anda untuk mencerminkan perubahan tersebut.

Contoh respons SYNC

Minta
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
Respons
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.CLOSET",
        "traits": [
          "action.devices.traits.OpenClose"
        ],
        "name": {
          "name": "Simple closet"
        },
        "willReportState": true,
        "attributes": {
          "openDirection": [
            "LEFT",
            "RIGHT"
          ]
        },
        "deviceInfo": {
          "manufacturer": "smart-home-inc",
          "model": "hs1234",
          "hwVersion": "3.2",
          "swVersion": "11.4"
        }
      }
    ]
  }
}

Contoh tanggapan QUERY

Minta
{
  "requestId": "6894439706274654514",
  "inputs": [
    {
      "intent": "action.devices.QUERY",
      "payload": {
        "devices": [
          {
            "id": "123"
          }
        ]
      }
    }
  ]
}
Respons
{
  "requestId": "6894439706274654514",
  "payload": {
    "devices": {
      "123": {
        "status": "SUCCESS",
        "online": true,
        "openState": [
          {
            "openPercent": 30,
            "openDirection": "LEFT"
          },
          {
            "openPercent": 50,
            "openDirection": "RIGHT"
          }
        ]
      }
    }
  }
}

Contoh perintah EXECUTE

OpenClose

Untuk detail tambahan tentang parameter perintah, lihat action.devices.traits.OpenClose alamat IP internal.

Minta
{
  "requestId": "6894439706274654516",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.OpenClose",
                "params": {
                  "openPercent": 10,
                  "openDirection": "LEFT"
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Respons
{
  "requestId": "6894439706274654516",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "openState": [
            {
              "openPercent": 10,
              "openDirection": "LEFT"
            },
            {
              "openPercent": 50,
              "openDirection": "RIGHT"
            }
          ]
        }
      }
    ]
  }
}

Perangkat ERRORS

Lihat daftar lengkap error dan pengecualian.