Panduan Garasi Smart Home

action.devices.types.GARAGE - Pintu garasi dapat membuka, menutup, dan mendeteksi status terbuka. Metrik ini juga dapat menunjukkan apakah suatu objek telah menghalangi jalur pintu saat ditutup atau jika pintu terkunci sehingga tidak dapat dikontrol.

Jenis ini menunjukkan bahwa perangkat mendapatkan ikon Garasi serta 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 2000 md.
  • Keandalan: harus lebih dari atau sama dengan 97%.

Contoh perangkat: Garasi sederhana

Bagian ini berisi contoh payload intent yang merepresentasikan "Garage" 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.GARAGE",
        "traits": [
          "action.devices.traits.OpenClose",
          "action.devices.traits.LockUnlock"
        ],
        "name": {
          "name": "Simple garage"
        },
        "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": 50,
        "isLocked": false,
        "isJammed": false
      }
    }
  }
}

Contoh perintah EXECUTE

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

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

ERRORS perangkat

Lihat daftar lengkap error dan pengecualian.
  • obstructionDetected - Pengguna mencoba menutup pintu garasi, tetapi ada benda yang menghalangi pintu.
  • lockedState - Pengguna mencoba mengontrol pintu garasi tetapi dalam status terkunci yang tidak mengizinkan perangkat tersebut untuk bergerak.