スマートホームの Rotation トレイトのスキーマ

action.devices.traits.Rotation - このトレイトは、回転をサポートするデバイスに使用します。

回転はパーセントまたは度単位で指定できます。デバイスが回転をサポートしている場合、デフォルトの回転方向は時計回りです。

デバイスの属性

このトレイトを持つデバイスは、SYNC オペレーションの一部として次の属性を報告できます。SYNC インテントの処理の詳細については、インテントのフルフィルメントをご覧ください。

属性 タイプ 説明
supportsDegrees ブール値

必須。

度単位での回転が可能な場合は true に設定します。

supportsPercent ブール値

必須。

デバイスでローテーションをパーセント単位で許可する場合は true に設定します

rotationDegreesRange 温度計

デバイスが回転できる範囲を表します。

rotationDegreesMin 番号

必須。

回転角度(最小)。

rotationDegreesMax 番号

必須。

最大回転数(度)。

supportsContinuousRotation ブール値

(デフォルト: false

デバイスで連続回転が許可されている場合は true に設定します。相対クエリを指定すると、RotateAbsolute コマンドがサポート対象のローテーション範囲をラップします。

commandOnlyRotation ブール値

(デフォルト: false

デバイスが一方向(True)または双方向(False)の通信に対応しているかどうかを示します。デバイスがこのトレイトの QUERY インテントまたは Report State に応答できない場合は、この属性を 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 番号

rotationDegreesRange 内の現在のレベル。デバイスが回転している度数を示します。この値は常に時計回りの角度を基準とします。

rotationPercent 番号

デバイスが現在何パーセント回転しているかを示す現在のレベル。0.0 は閉位置に対応し、100.0 は開位置に対応します。

デバイスはどのくらい回転していますか?(パーセントと度)。

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

デバイスはどのくらい回転していますか?(度のみ)

{
  "rotationDegrees": 45
}

デバイスはどのくらい回転していますか?(続き)

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

デバイスのコマンド

このトレイトを持つデバイスは、EXECUTE オペレーションの一環として次のコマンドに応答できます。EXECUTE インテントの処理の詳細については、インテントのフルフィルメントをご覧ください。

action.devices.commands.RotateAbsolute

デバイスの絶対回転を設定します。

パラメータ

ペイロードには次のいずれかが含まれています。

絶対回転を度数で設定します。

パラメータ タイプ 説明
rotationDegrees 番号

必須。

デバイスの最終的な時計回りの回転を指定する絶対値(度数)。値は rotationDegreesRange 属性の範囲内になければなりません。

絶対回転率をパーセンテージで設定します。

パラメータ タイプ 説明
rotationPercent 番号

必須。

デバイスの最終回転を指定する絶対値(%)。

デバイスを 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

デバイスエラー

エラーと例外の全一覧をご覧ください。