Panduan Pintu Smart Home

action.devices.types.DOOR - Pintu dapat dibuka dan ditutup, mungkin ke lebih dari satu arah.

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

Kemampuan perangkat

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

Ciri-ciri yang diperlukan

Perintah dan ciri 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.

Karakteristik ini direkomendasikan, jika berlaku untuk perangkat Anda. Namun, Anda bebas mencampur dan mencocokkan semua sifat yang tersedia agar paling sesuai dengan fungsi produk yang ada.

Contoh perangkat: Pintu sederhana

Bagian ini berisi contoh payload intent yang merepresentasikan "Pintu" umum berdasarkan jenis dan karakteristik perangkat di atas. Jika Anda menambahkan atau menghapus ciri dalam penerapan, ubah respons Anda dengan tepat 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.DOOR",
        "traits": [
          "action.devices.traits.LockUnlock",
          "action.devices.traits.OpenClose"
        ],
        "name": {
          "name": "Simple door"
        },
        "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

LockUnlock

Untuk mengetahui 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
        }
      }
    ]
  }
}

OpenClose

Untuk mengetahui 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
        }
      }
    ]
  }
}

ERROR Perangkat

Lihat daftar lengkap error dan pengecualian.