智慧型住宅旋轉結構定義

action.devices.traits.Rotation - 這個特徵屬於支援旋轉功能的裝置。

可用百分比或度數來指定旋轉角度,以及如果裝置支援旋轉功能,則可指定旋轉角度 度,預設的旋轉方向為順時針。

裝置屬性

具備這項特徵的裝置可能會回報下列資料: 在 SYNC 作業中使用屬性變更。學習 如要進一步瞭解如何處理 SYNC 意圖,請參閱 意圖執行要求

屬性 類型 說明
supportsDegrees 布林值

必要。

如果裝置允許旋轉角度,則設為 true。

supportsPercent 布林值

必要。

如果裝置允許旋轉百分比,則設為 true

rotationDegreesRange 物件

代表裝置可旋轉的範圍,以度為單位。

rotationDegreesMin Number

必要。

最小旋轉角度。

rotationDegreesMax Number

必要。

最大旋轉角度。

supportsContinuousRotation 布林值

(預設值:false)

如果裝置允許持續旋轉,請設為 true。指定相對查詢時,RotateAbsolute 指令會包裝支援的旋轉範圍。

commandOnlyRotation 布林值

(預設值:false)

指出裝置是否支援單向 (true) 或雙向 (false) 通訊。如果裝置無法回應此特徵的「QUERY」意圖或「回報狀態」,請將這項屬性設為 true。

範例

支援以百分比和角度旋轉的裝置。

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

僅支援旋轉角度的裝置。

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

僅支援連續旋轉指令的裝置。

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

裝置狀態

具有此特徵的實體可能會回報下列資料: 做為 QUERY 作業的一部分。學習 如要進一步瞭解如何處理 QUERY 意圖,請參閱 意圖執行要求

類型 說明
rotationDegrees Number

目前的音量在 rotationDegreesRange 內,表示裝置的旋轉角度。這個值應一律相對於順時針旋轉角度。

rotationPercent Number

目前的等級,指出裝置目前旋轉的百分比。0.0 代表封閉,100.0 代表開啟。

targetRotationPercent Number

等級表示因旋轉時持續改變而移動或移動後裝置的旋轉百分比。

範例

裝置旋轉到多少?(百分比和度)。

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

裝置旋轉到多少?(僅限度)。

{
  "rotationDegrees": 45
}

裝置旋轉到多少?(連續)。

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

裝置目前正在旋轉至新位置 (百分比)。

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

裝置指令

具備這種特徵的裝置可能會回應下列問題 做為 EXECUTE 作業的一部分。學習 如要進一步瞭解如何處理 EXECUTE 意圖,請參閱 意圖執行要求

action.devices.commands.RotateAbsolute

設定裝置的絕對旋轉角度。

參數

酬載包含下列其中一個項目:

設定絕對旋轉角度。

參數 類型 說明
rotationDegrees Number

必要。

以度為單位的絕對值,指定裝置的最終順時針旋轉。值必須位於 rotationDegreesRange 屬性中。

設定絕對旋轉百分比。

參數 類型 說明
rotationPercent Number

必要。

以百分比表示的絕對值,指定裝置最終的旋轉角度。

範例

將裝置傾斜至百分之 50。

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

將裝置逆時針旋轉 15 度 (rotationDegrees: 45)。

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

將裝置順時針旋轉 100 度 (supportsContinuousRotation: truerotationDegrees: 270)。

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

設定裝置旋轉功能時發生錯誤。

支援的值:

deviceJammingDetected

裝置錯誤

查看完整清單 錯誤和例外狀況