Giản đồ thuộc tính xoay nhà thông minh

action.devices.traits.Rotation – Đặc điểm này thuộc về các thiết bị hỗ trợ tính năng xoay.

Bạn có thể chỉ định chế độ xoay theo tỷ lệ phần trăm hoặc độ. Nếu thiết bị hỗ trợ chế độ xoay theo độ, thì hướng xoay mặc định là theo chiều kim đồng hồ.

Thuộc tính thiết bị

Các thiết bị có đặc điểm này có thể báo cáo các thuộc tính sau đây trong quá trình thao tác SYNC. Để tìm hiểu thêm về cách xử lý ý định SYNC, hãy xem bài viết Thực hiện ý định.

Thuộc tính Loại Mô tả
supportsDegrees Boolean

Bắt buộc.

Đặt thành true nếu thiết bị cho phép xoay theo độ.

supportsPercent Boolean

Bắt buộc.

Đặt thành true nếu thiết bị cho phép xoay theo tỷ lệ phần trăm

rotationDegreesRange Đối tượng

Đại diện cho phạm vi theo độ mà thiết bị có thể xoay.

rotationDegreesMin Number

Bắt buộc.

Xoay tối thiểu theo độ.

rotationDegreesMax Number

Bắt buộc.

Độ xoay tối đa.

supportsContinuousRotation Boolean

(Mặc định: false)

Đặt thành true nếu thiết bị cho phép xoay liên tục. Khi cung cấp một truy vấn tương đối, lệnh RotateAbsolute sẽ bao quanh phạm vi xoay được hỗ trợ.

commandOnlyRotation Boolean

(Mặc định: false)

Cho biết liệu thiết bị có hỗ trợ giao tiếp một chiều (true) hay hai chiều (false) hay không. Đặt thuộc tính này thành true nếu thiết bị không thể phản hồi ý định QUERY hoặc Báo cáo trạng thái cho đặc điểm này.

Ví dụ

Thiết bị hỗ trợ cả chế độ xoay theo tỷ lệ phần trăm và độ.

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

Thiết bị chỉ hỗ trợ xoay theo độ.

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

Thiết bị chỉ hỗ trợ các lệnh xoay liên tục.

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

Trạng thái thiết bị

Các thực thể có đặc điểm này có thể báo cáo các trạng thái sau đây trong quá trình thực hiện thao tác QUERY. Để tìm hiểu thêm về cách xử lý ý định QUERY, hãy xem bài viết Thực hiện ý định.

Tiểu bang Loại Mô tả
rotationDegrees Number

Cấp độ hiện tại trong rotationDegreesRange cho biết số độ mà thiết bị được xoay. Giá trị này phải luôn tương ứng với độ xoay theo chiều kim đồng hồ.

rotationPercent Number

Mức hiện tại cho biết tỷ lệ phần trăm thiết bị hiện đang xoay. 0.0 tương ứng với trạng thái đóng và 100.0 tương ứng với trạng thái mở.

targetRotationPercent Number

Cấp độ cho biết tỷ lệ phần trăm xoay mà thiết bị sẽ chuyển đến hoặc đang chuyển đến do sự thay đổi liên tục về độ xoay.

Ví dụ

Thiết bị được xoay bao nhiêu? (phần trăm và độ).

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

Xoay thiết bị đến mức nào? (chỉ độ).

{
  "rotationDegrees": 45
}

Thiết bị được xoay bao nhiêu? (liên tục).

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

Thiết bị hiện đang xoay sang một vị trí mới (theo phần trăm).

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

LỆNH thiết bị

Các thiết bị có đặc điểm này có thể phản hồi các lệnh sau đây trong quá trình hoạt động EXECUTE. Để tìm hiểu thêm về cách xử lý ý định EXECUTE, hãy xem phần Thực hiện ý định.

action.devices.commands.RotateAbsolute

Đặt độ xoay tuyệt đối của thiết bị.

Thông số

Trọng tải chứa một trong những nội dung sau:

Đặt độ xoay tuyệt đối theo độ.

Thông số Loại Mô tả
rotationDegrees Number

Bắt buộc.

Một giá trị tuyệt đối tính bằng độ, chỉ định vòng xoay cuối cùng theo chiều kim đồng hồ của thiết bị. Giá trị phải nằm trong thuộc tính rotationDegreesRange.

Đặt độ xoay tuyệt đối theo phần trăm.

Thông số Loại Mô tả
rotationPercent Number

Bắt buộc.

Một giá trị tuyệt đối, tính theo tỷ lệ phần trăm, chỉ định độ xoay cuối cùng của thiết bị.

Ví dụ

Góc nghiêng thiết bị là 50%.

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

Xoay thiết bị 15 độ ngược chiều kim đồng hồ (rotationDegrees: 45).

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

Xoay thiết bị 100 độ theo chiều kim đồng hồ (supportsContinuousRotation: true, rotationDegrees: 270).

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

Đã xảy ra lỗi khi thiết lập chế độ xoay của thiết bị.

Các giá trị được hỗ trợ:

deviceJammingDetected

Thiết bị ERRORS

Xem danh sách đầy đủ lỗi và ngoại lệ.