スマートホームの Rotation トレイトのスキーマ
action.devices.traits.Rotation - このトレイトは、回転をサポートするデバイスに使用します。
回転はパーセントまたは度単位で指定できます。デバイスが度単位での回転をサポートしている場合、デフォルトの回転方向は時計回りです。
デバイスの属性
このトレイトを持つデバイスは、SYNC オペレーションの一部として次の属性を報告できます。SYNC インテントの処理の詳細については、インテントのフルフィルメントをご覧ください。
| 属性 | タイプ | 説明 |
|---|---|---|
supportsDegrees |
ブール値 |
必須。 度単位での回転が可能な場合は true に設定します。 |
supportsPercent |
ブール値 |
必須。 パーセント単位での回転が可能な場合は true に設定します。 |
rotationDegreesRange |
オブジェクト |
デバイスが回転可能な角度の範囲を表します。 |
rotationDegreesMin |
数値 |
必須。 最小回転角度(度)。 |
rotationDegreesMax |
数値 |
必須。 最大回転角度(度)。 |
supportsContinuousRotation |
ブール値 |
(デフォルト: 連続回転が可能な場合は true に設定します。相対クエリを指定すると、 |
commandOnlyRotation |
ブール値 |
(デフォルト: デバイスが一方向(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 |
数値 |
デバイスが現在何度回転しているかを示します。範囲は |
rotationPercent |
数値 |
デバイスが現在何パーセント回転しているかを示します。0.0 は閉位置に対応し、100.0 は開位置に対応します。 |
targetRotationPercent |
数値 |
デバイスが移動する、または移動中の回転の割合を示すレベル。 |
例
デバイスの回転角度はどのくらいですか?(パーセントと度)。
{
"rotationDegrees": 45,
"rotationPercent": 25
}デバイスの回転角度はどのくらいですか?(度のみ)。
{
"rotationDegrees": 45
}デバイスの回転角度はどのくらいですか?(継続的)
{
"rotationDegrees": 270,
"rotationPercent": 75
}デバイスが現在新しい位置に回転している割合(パーセント)。
{
"rotationPercent": 75,
"targetRotationPercent": 100
}デバイスのコマンド
このトレイトを持つデバイスは、EXECUTE オペレーションの一部として次のコマンドに応答する場合があります。EXECUTE インテントの処理の詳細については、インテントのフルフィルメントをご覧ください。
action.devices.commands.RotateAbsolute
デバイスの絶対回転を設定します。
パラメータ
ペイロードには次のいずれかを含めます。
絶対回転を度単位で設定します。
| パラメータ | タイプ | 説明 |
|---|---|---|
rotationDegrees |
数値 |
必須。 デバイスの最終的な時計回りの回転を指定する度単位の絶対値。値は |
絶対回転をパーセンテージで設定します。
| パラメータ | タイプ | 説明 |
|---|---|---|
rotationPercent |
数値 |
必須。 デバイスの最終的な回転位置を指定するパーセント単位の絶対値。 |
例
デバイスを 50% 傾けて
{
"command": "action.devices.commands.RotateAbsolute",
"params": {
"rotationPercent": 50
}
}デバイスを左回りに 15 度回転します(rotationDegrees: 45)。
{
"command": "action.devices.commands.RotateAbsolute",
"params": {
"rotationDegrees": 30
}
}デバイスを時計回りに 100 度回転します(supportsContinuousRotation: true、rotationDegrees: 270)。
{
"command": "action.devices.commands.RotateAbsolute",
"params": {
"rotationDegrees": 10
}
}関連するエラー
デバイスの回転の設定中にエラーが発生しました。
サポートされている値:
deviceJammingDetected