Panduan Garasi Smart Home

action.devices.types.GARAGE - Pintu garasi dapat membuka, menutup, dan mendeteksi status terbuka. Sensor ini juga dapat menunjukkan apakah ada objek yang menghalangi jalur pintu saat menutup atau apakah pintu terkunci sehingga tidak dapat dikontrol.

Jenis ini menunjukkan bahwa perangkat mendapatkan ikon Garasi 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 mem-build respons EXECUTE dan QUERY.

Sifat yang diperlukan

Ciri 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.

Karakteristik ini direkomendasikan, jika berlaku untuk perangkat Anda. Namun, Anda bebas menggabungkan dan mencocokkan dari semua karakteristik yang tersedia agar sesuai dengan fungsi produk yang ada.

Persyaratan kualitas

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

Contoh perangkat: Garasi sederhana

Bagian ini berisi contoh payload intent yang mewakili "Garasi" umum berdasarkan jenis dan karakteristik perangkat di atas. Jika Anda menambahkan atau menghapus karakteristik dalam penerapan, ubah respons Anda agar sesuai dengan perubahan tersebut.

Contoh respons SYNC

{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
{
  "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

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

Contoh perintah EXECUTE

OpenClose

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

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

LockUnlock

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

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

ERROR Perangkat

Lihat daftar lengkap error dan pengecualian.
  • obstructionDetected - Pengguna mencoba menutup pintu garasi, tetapi ada objek yang menghalangi pintu.
  • lockedState - Pengguna mencoba mengontrol pintu garasi, tetapi pintu tersebut dalam keadaan terkunci sehingga tidak dapat bergerak.