Panduan Jendela Smart Home

action.devices.types.WINDOW - Jendela dapat dibuka dan ditutup, secara opsional dengan bagian yang terbuka ke berbagai arah, serta dapat dikunci dan tidak dikunci.

Jenis ini menunjukkan bahwa perangkat mendapatkan ikon Window dan beberapa sinonim dan alias yang terkait.

Kemampuan perangkat

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

Sifat yang diperlukan

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

Ciri-ciri ini direkomendasikan, jika berlaku untuk perangkat Anda. Namun, Anda bebas untuk memadupadankan semua sifat yang tersedia agar cocok dengan fungsi produk yang ada.

Persyaratan kualitas

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

Contoh perangkat: Jendela sederhana

Bagian ini berisi contoh payload intent yang merepresentasikan "Window" umum berdasarkan jenis dan karakteristik perangkat di atas. Jika Anda menambahkan atau menghapus fitur dalam penerapan, ubah respons Anda untuk mencerminkan perubahan tersebut.

Contoh respons SYNC

Permintaan
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
Respons
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.WINDOW",
        "traits": [
          "action.devices.traits.LockUnlock",
          "action.devices.traits.OpenClose"
        ],
        "name": {
          "name": "Simple window"
        },
        "willReportState": true,
        "deviceInfo": {
          "manufacturer": "smart-home-inc",
          "model": "hs1234",
          "hwVersion": "3.2",
          "swVersion": "11.4"
        }
      }
    ]
  }
}

Contoh respons QUERY

Permintaan
{
  "requestId": "6894439706274654514",
  "inputs": [
    {
      "intent": "action.devices.QUERY",
      "payload": {
        "devices": [
          {
            "id": "123"
          }
        ]
      }
    }
  ]
}
Respons
{
  "requestId": "6894439706274654514",
  "payload": {
    "devices": {
      "123": {
        "status": "SUCCESS",
        "online": true,
        "openPercent": 0,
        "isLocked": true,
        "isJammed": false
      }
    }
  }
}

Contoh perintah EXECUTE

Buka Kunci

Untuk detail tambahan tentang parameter perintah, lihat referensi action.devices.traits.LockUnlock.

Permintaan
{
  "requestId": "6894439706274654516",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.LockUnlock",
                "params": {
                  "lock": true
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Respons
{
  "requestId": "6894439706274654516",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "isLocked": true,
          "isJammed": false
        }
      }
    ]
  }
}

BukaTutup

Untuk detail tambahan tentang parameter perintah, lihat referensi action.devices.traits.OpenClose.

Permintaan
{
  "requestId": "6894439706274654518",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.OpenClose",
                "params": {
                  "openPercent": 100
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Respons
{
  "requestId": "6894439706274654518",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "openPercent": 100
        }
      }
    ]
  }
}

ERRORS perangkat

Lihat daftar lengkap error dan pengecualian.