Alexa.ColorTemperatureControllerインターフェース



Alexa.ColorTemperatureControllerインターフェース

Alexa.ColorTemperatureControllerインターフェースには、調整可能な白色照明をサポートするエンドポイントの色温度を制御して、レポートするために使用するメッセージが含まれます。

ディレクティブ

このインターフェースの制御とクエリーのディレクティブは、以下の言語のスキルで使用できます。

  • 英語 - すべてのロケール
  • フランス語(フランス)
  • ドイツ語
  • イタリア語
  • 日本語
  • スペイン語(スペイン)

詳細については、スマートホームスキルを複数の言語で開発するを参照してください。

DecreaseColorTemperature

デバイスのケルビン温度値を下げるリクエストです。このディレクティブは特定の設定を指定しませんが、デバイスの現在の設定よりも暖色寄りの設定をリクエストします。指定したデバイスの設定をどれくらい調整するかを、現在の設定、機能および他の値に基づいて選択できます。デバイスの設定をそれ以上下げることができない場合、最小の色温度に設定します。

ユーザー: アレクサ、デバイス名をもっと暖色/ソフトに設定して

ユーザー: アレクサ、ダイニングの照明をもっとソフトに設定して

ユーザー: アレクサ、リビングの照明をもっと暖色にして

リクエストの例:


{
    "directive": {
        "header": {
            "namespace": "Alexa.ColorTemperatureController",
            "name": "DecreaseColorTemperature",
            "payloadVersion": "3",
            "messageId": "1bd5d003-31b9-476f-ad03-71d471922820",
            "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg=="
        },
        "endpoint": {
            "scope": {
                "type": "BearerToken",
                "token": "access-token-from-skill"
            },
            "endpointId": "appliance-001",
            "cookie": {}
        },
        "payload": {}
    }
}

ペイロードの詳細

フィールド 説明 必須
なし ペイロードに必須または任意のフィールドはありません。 なし なし

IncreaseColorTemperature

デバイスのケルビン温度値を上げるリクエストです。このディレクティブは特定の設定を指定しませんが、デバイスの現在の設定よりも寒色/白色寄りの設定をリクエストします。指定したデバイスの設定をどれくらい調整するかを、現在の設定、機能および他の値に基づいて選択できます。デバイスの設定をそれ以上上げることができない場合、最大の色温度に設定します。

ユーザー: アレクサ、デバイス名をもっと白っぽく/白くして

ユーザー: アレクサ、ダイニングの照明をもっと白っぽくして

ユーザー: アレクサ、リビングの照明をもっと白くして

リクエストの例:


{
    "directive": {
        "header": {
            "namespace": "Alexa.ColorTemperatureController",
            "name": "IncreaseColorTemperature",
            "payloadVersion": "3",
            "messageId": "abc-123-def-456",
            "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg=="
        },
        "endpoint": {
            "scope": {
                "type": "BearerToken",
                "token": "access-token-from-skill"
            },
            "endpointId": "appliance-001",
            "cookie": {}
        },
        "payload": {}
    }
}

ペイロードの詳細

フィールド 説明 必須
なし ペイロードに必須または任意のフィールドはありません。 なし なし

SetColorTemperature

指定されたデバイスの色温度を、指定された設定に変更するようリクエストします。次の表は、APIが送信するリクエスト可能な色温度と、関連する値の一覧です。ご使用の照明デバイスがリクエストされた値をサポートしていない場合、デバイスを利用可能な最も近い値に設定することをお勧めします。

白の色調 colorTemperatureInKelvin値
暖色 2200
電球色 2700
白っぽい色 4000
昼白色 5500
クールホワイト 7000

ユーザー: アレクサ、デバイス名を白の色調に変更して

ユーザー: アレクサ、リビングを暖色にして

ユーザー: アレクサ、キッチンを昼光色に設定して

ユーザー: Alexa, schalte Schlafzimmerlicht auf warmes Weiß

リクエストの例


{
    "directive": {
        "header": {
            "namespace": "Alexa.ColorTemperatureController",
            "name": "SetColorTemperature",
            "payloadVersion": "3",
            "messageId": "1bd5d003-31b9-476f-ad03-71d471922820",
            "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg=="
        },
        "endpoint": {
            "scope": {
                "type": "BearerToken",
                "token": "access-token-from-skill"
            },
            "endpointId": "appliance-001",
            "cookie": {}
        },
        "payload": {
            "colorTemperatureInKelvin": 7500
        }
    }
}

ペイロードの詳細

フィールド 説明 必須
colorTemperatureinKelvin リクエストされた色温度をケルビン度で示す整数です。有効な範囲は1000~10000(両端の値を含む)です。 整数

プロパティとイベント

この機能では、次のいずれかの応答を使用する必要があります。

  • 同期的に、Lambda関数からAlexaにResponseイベントを送信します。
  • 非同期的に、AlexaイベントゲートウェイにResponseイベントを送信します。非同期的に応答する場合、認可トークンにscopeを含めてユーザーを識別し、相関トークンを含めて応答先のディレクティブを識別する必要があります。

応答を送信する場合、メッセージのcontextにインターフェースのプロパティの状態を含めます。

ColorControllerColorTemperatureControllerインターフェースをサポートする照明エンドポイントでは、エンドポイントに色が設定されたときはcolorの状態を、エンドポイントに白の色調が設定されたときはcolorTemperatureInKelvinの状態をレポートします。

プロパティ

プロパティ名 説明
colorTemperatureInKelvin colorTemperatureinKelvin リクエストされた色温度をケルビン度で示します。値は、1000~10000までの範囲(両端の値を含む)の整数です。このプロパティはエンドポイントが白の色調に設定されている場合にのみレポートされます。

応答

エンドポイントの色温度を設定または調整するリクエストの処理が成功した場合、Responseイベントを送信します。メッセージのcontextcolorTemperatureInKelvinの状態を含めます。

応答の例

色温度をサポートするエンドポイント、またはHSBカラーと色温度をサポートするが現在は白の色調に設定されているエンドポイントの応答の例を次に示します。

{
    "context": {
        "properties": [ {
            "namespace": "Alexa.ColorTemperatureController",
            "name": "colorTemperatureInKelvin",
            "value": 7500,
            "timeOfSample": "2017-02-03T16:20:50.52Z",
            "uncertaintyInMilliseconds": 500
        } ]
    },
    "event": {
        "header": {
            "namespace": "Alexa",
            "name": "Response",
            "payloadVersion": "3",
            "messageId": "abc-123-def-456",
            "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg=="
        },
        "endpoint": {
            "scope": {
              "type": "BearerToken",
              "token": "access-token-from-Amazon"
            },
            "endpointId": "appliance-001"
        },
        "payload": {}
    }
}

ErrorResponse

デバイスが色温度のディレクティブで制御できないモードに設定されている場合、NOT_SUPPORTED_IN_CURRENT_MODEエラーを返します。たとえば、現在HSBカラーに設定されている照明にIncreaseColorTemperatureまたはDecreaseColorTemperatureのリクエストが出されたことを示すためにこのエラーを返します。このシナリオでは、Alexaは「それは照明が白の色調に設定されているときだけ可能です」と応答します。

NOT_SUPPORTED_IN_CURRENT_MODEの例

{
  "event": {
    "header": {
      "namespace": "Alexa.ColorTemperatureController",
      "name": "ErrorResponse",
      "messageId": "abc-123-def-456",
      "correlationToken": "abcdef-123456",
      "payloadVersion": "3"
    },
     "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "access-token-from-Amazon"
      },
      "endpointId": "appliance-001"
    },
    "payload": {
      "type": "NOT_SUPPORTED_IN_CURRENT_MODE",
      "message": "照明は現在、カラーに設定されています。",
      "currentDeviceMode": "COLOR"
      }
  }
}

ペイロードの詳細

フィールド 説明 必須
currentDeviceMode 現在デバイスは、設定を変更できないモードであることを示します。 文字列です。有効な値は、COLORASLEEPNOT_PROVISIONEDOTHERです。

その他のサンプルコード

リクエストと応答のサンプルについては、AlexaスマートホームのGitHubリポジトリで以下を参照してください。

ColorTemperatureController

インターフェース 説明
Alexa.BrightnessController エンドポイントの輝度を制御します。
Alexa.ColorController 照明エンドポイントの色を設定します。