Skema Trait Rotasi Smart Home

action.devices.traits.Rotation - Trait ini milik perangkat yang mendukung rotasi.

Rotasi dapat ditentukan dalam persen atau derajat, dan jika perangkat mendukung rotasi berdasarkan derajat, arah default rotasi adalah searah jarum jam.

ATRIBUT Perangkat

Perangkat dengan karakteristik ini dapat melaporkan atribut berikut sebagai bagian dari operasi SYNC. Untuk mempelajari penanganan intent SYNC lebih lanjut, lihat Fulfillment intent.

Atribut Jenis Deskripsi
supportsDegrees Boolean

Wajib.

Setel ke true jika perangkat memungkinkan rotasi berdasarkan derajat.

supportsPercent Boolean

Wajib.

Tetapkan ke true jika perangkat memungkinkan rotasi berdasarkan persen

rotationDegreesRange Objek

Merepresentasikan rentang dalam derajat yang dapat diputar perangkat.

rotationDegreesMin Number

Wajib.

Rotasi minimum dalam derajat.

rotationDegreesMax Number

Wajib.

Rotasi maksimum dalam derajat.

supportsContinuousRotation Boolean

(Default: false)

Tetapkan ke true jika perangkat memungkinkan rotasi berkelanjutan. Saat diberi kueri relatif, perintah RotateAbsolute akan mencakup rentang rotasi yang didukung.

commandOnlyRotation Boolean

(Default: false)

Menunjukkan apakah perangkat mendukung penggunaan komunikasi satu arah (benar) atau dua arah (salah). Tetapkan atribut ini ke benar jika perangkat tidak dapat merespons intent QUERY atau Status Laporan untuk karakteristik ini.

Contoh

Perangkat yang mendukung rotasi dalam persen dan derajat.

{
  "supportsDegrees": true,
  "supportsPercent": true,
  "rotationDegreesRange": {
    "rotationDegreesMin": 0,
    "rotationDegreesMax": 180
  }
}

Perangkat yang hanya mendukung rotasi dalam derajat.

{
  "supportsDegrees": true,
  "supportsPercent": false,
  "rotationDegreesRange": {
    "rotationDegreesMin": 0,
    "rotationDegreesMax": 90
  }
}

Perangkat yang hanya mendukung perintah rotasi berkelanjutan.

{
  "supportsDegrees": true,
  "supportsPercent": true,
  "rotationDegreesRange": {
    "rotationDegreesMin": 0,
    "rotationDegreesMax": 360
  },
  "supportsContinuousRotation": true,
  "commandOnlyRotation": true
}

STATUS Perangkat

Entitas dengan trait ini dapat melaporkan status berikut sebagai bagian dari operasi QUERY. Untuk mempelajari penanganan intent QUERY lebih lanjut, lihat Fulfillment intent.

Status Jenis Deskripsi
rotationDegrees Number

Level saat ini dalam rotationDegreesRange yang menunjukkan derajat rotasi perangkat. Nilai ini harus selalu relatif terhadap rotasi searah jarum jam.

rotationPercent Number

Level saat ini yang menunjukkan persentase perangkat yang diputar saat ini. 0,0 berarti tertutup dan 100,0 artinya terbuka.

targetRotationPercent Number

Tingkat yang menunjukkan persentase rotasi tempat perangkat akan bergerak atau bergerak sebagai hasil dari perubahan rotasi yang sedang berlangsung.

Contoh

Berapa banyak perangkat akan diputar? (persen dan derajat).

{
  "rotationDegrees": 45,
  "rotationPercent": 25
}

Berapa banyak perangkat akan diputar? (hanya derajat).

{
  "rotationDegrees": 45
}

Berapa banyak perangkat akan diputar? (berkelanjutan).

{
  "rotationDegrees": 270,
  "rotationPercent": 75
}

Perangkat yang sedang berputar ke posisi baru (persen).

{
  "rotationPercent": 75,
  "targetRotationPercent": 100
}

COMMAND Perangkat

Perangkat dengan karakteristik ini dapat merespons perintah berikut sebagai bagian dari operasi EXECUTE. Untuk mempelajari penanganan intent EXECUTE lebih lanjut, lihat Fulfillment intent.

action.devices.commands.RotateAbsolute

Menetapkan rotasi absolut perangkat.

Parameter

Payload berisi salah satu hal berikut:

Menetapkan rotasi absolut dalam derajat.

Parameter Jenis Deskripsi
rotationDegrees Number

Wajib.

Nilai absolut, dalam derajat, yang menentukan rotasi akhir perangkat searah jarum jam. Nilai harus berada dalam atribut rotationDegreesRange.

Menetapkan rotasi absolut dalam persentase.

Parameter Jenis Deskripsi
rotationPercent Number

Wajib.

Nilai mutlak, dalam persentase, yang menentukan rotasi akhir perangkat.

Contoh

Miringkan perangkat hingga 50 persen.

{
  "command": "action.devices.commands.RotateAbsolute",
  "params": {
    "rotationPercent": 50
  }
}

Putar perangkat sebesar 15 derajat berlawanan arah jarum jam (rotationDegrees: 45).

{
  "command": "action.devices.commands.RotateAbsolute",
  "params": {
    "rotationDegrees": 30
  }
}

Putar perangkat 100 derajat searah jarum jam (supportsContinuousRotation: true, rotationDegrees: 270).

{
  "command": "action.devices.commands.RotateAbsolute",
  "params": {
    "rotationDegrees": 10
  }
}

Terjadi error saat menyetel rotasi perangkat.

Nilai yang didukung:

deviceJammingDetected

KESALAHAN Perangkat

Lihat daftar lengkap error dan pengecualian.