Alexa.ColorTemperatureControllerインターフェース3


Alexa.ColorTemperatureControllerインターフェース3

Alexa.ColorTemperatureControllerインターフェースをAlexaスキルに実装すると、ユーザーは白色光を調整可能な電球などのデバイスで色温度を制御できます。スマートホームスキルの詳細については、スマートホームスキルを理解するを参照してください。

ColorTemperatureControllerインターフェースがサポートする言語については、Alexaインターフェースとサポートしている言語の一覧を参照してください。メッセージプロパティの定義については、Alexaインターフェースのメッセージとプロパティを参照してください。

発話

Alexa.ColorTemperatureControllerインターフェースではプリビルド音声対話モデルを使用します。ユーザーがこのような発話をしたら、Alexaがそれに対応するディレクティブをスキルに送信します。

以下に、ユーザーの発話の例を示します。

Alexa, make the living room lights warmer.
Alexa, set the dining room lights cooler.
Alexa, set the dining room softer.
Alexa, make the living room light whiter.
Alexa, make the living room light warm white.
Alexa, set the kitchen to daylight.

Alexa, mache mein wohnzimmerlampen wärmer.
Alexa, mache mein esszimmerlampen kühler.
Alexa, stelle das Esszimmer weicher.
Alexa, mache das Wohnzimmerlicht weißer.
Alexa, schalte Schlafzimmerlicht auf warmes Weiß.
Alexa, stelle die Küche auf Tageslicht.

Alexa, rends la lumière plus chaude.
Alexa, règle les lumières moins chaudes.
Alexa, rends la salle à manger plus douce.
Alexa, rends le salon plus blanc.
Alexa, mets la lumière du salon en blanc chaud.
Alexa, règle la cuisine à lumière du jour.

Alexa, लिविंग रूम की रोशनी को गर्म करो।
Alexa, डाइनिंग रूम की लाइट को ठंडा करो।
Alexa, भोजन कक्ष को नरम करो।
Alexa, लिविंग रूम को हल्का सफेद बनाओ।
Alexa, लिविंग रूम को हल्का गर्म सफेद बनाएं।
Alexa, किचन को दिन की रोशनी में सेट करो।

Alexa, rendi più calde le luci del soggiorno.
Alexa, raffredda le luci della sala da pranzo.
Alexa, metti la sala da pranzo più morbida.
Alexa, rendi la luce del soggiorno più bianca.
Alexa, fai in modo che la luce del soggiorno sia di un bianco caldo.
Alexa, cambia la cucina in bianco diurno.

アレクサ、リビングを暖かい色にして。
アレクサ、ダイニングルームを寒色系にして。
アレクサ、ダイニングルームをソフトな色にして。
アレクサ、リビングの電気をもっと白っぽくして。
アレクサ、リビングを暖かい白色にして。
アレクサ、キッチンを昼白色にして

Alexa, coloque as luzes da sala mais quentes.
Alexa, ponha as luzes da sala mais quentes.
Alexa, coloque a sala de jantar mais fria.
Alexa, ponha a sala de jantar mais fria.
Alexa, coloque a sala de jantar mais suave.
Alexa, ponha a sala de jantar mais suave.
Alexa, coloque a luz da sala mais branca.
Alexa, ponha a luz da sala mais branca.
Alexa, coloque a luz da sala em branco quente.
Alexa, ponha a luz da sala em branco quente.
Alexa, coloque a cozinha em branco diurno.
Alexa, muda a cozinha para branco diurno.

Alexa, haz que las luces de la sala sean más cálidas.
Alexa, pon las luces del comedor más frías.
Alexa, pon la luz del comedor más suave.
Alexa, pon la luz del comedor más tenue.
Alexa, pon la luz de la sala más blanca.
Alexa, haz que la luz de la sala de estar sea blanca cálida.
Alexa, pon la cocina a luz del día.
Alexa, pon la luz de la cocina a modo día.

Alexa, maak de verlichting in de woonkamer warmer.
Alexa, maak de verlichting in de eetkamer koeler.
Alexa, maak de verlichting in de eetkamer zachter.
Alexa, maak de verlichting in de woonkamer witter.
Alexa, zet de verlichting in de woonkamer op warm-wit.
Alexa, zet de keuken op daglicht.

出力可能なプロパティ

Alexa.ColorTemperatureControllerインターフェースでは、プライマリプロパティとしてcolorTemperatureInKelvinプロパティを使用します。検出応答で、サポートするプロパティを指定します。

colorTemperatureInKelvinプロパティは、エンドポイントの色温度をケルビン度で表し、白色光を調整可能なエンドポイントで使用されます。有効な値の範囲は、1,000~10,000の絶対ケルビン度です。

次の表は、ユーアー発話に対応する色温度値の一覧です。エンドポイントがユーザーがリクエストする値をサポートしていない場合、設定可能な最も近い値に設定します。

白の色調 絶対色温度(ケルビン単位)
暖色 2200
電球色 2700
白っぽい色 4000
昼白色 5500
クールホワイト 7000

検出

Alexa.ColorTemperatureControllerをサポートするエンドポイントを指定するには、Alexa.Discoveryの標準検出メカニズムを使用します。

Alexaからスキルに状態レポートリクエストが送信されるときにレポートするすべてのインターフェースとプロパティのretrievableをtrueに設定します。変更レポートでAlexaにプロアクティブにレポートするインターフェースとプロパティのproactivelyReportedをtrueに設定します。

表示カテゴリーの一覧は、表示カテゴリーを参照してください。

Alexaにデバイスの健全性を通知する場合、Alexa.EndpointHealthインターフェースも実装してください。

検出応答の例

以下は、Alexa.PowerControllerインターフェース、Alexa.ColorTemperatureControllerインターフェース、Alexa.EndpointHealthインターフェースをサポートする照明のDiscover.Responseメッセージの例です。

クリップボードにコピーされました。

{
  "event": {
    "header": {
      "namespace": "Alexa.Discovery",
      "name": "Discover.Response",
      "payloadVersion": "3",
      "messageId": "一意の識別子、バージョン4 UUIDが望ましい"
    },
    "payload": {
      "endpoints": [
        {
          "endpointId": "エンドポイントの一意のID",
          "manufacturerName": "エンドポイントのメーカー名",
          "description": "Alexaアプリに表示される説明",
          "friendlyName": "Alexaアプリに表示されているデバイス名",
          "displayCategories": ["LIGHT"],
          "additionalAttributes":  {
            "manufacturer": "エンドポイントのメーカー名",
            "model" : "デバイスのモデル",
            "customIdentifier": "デバイスの任意のカスタム識別子"
          },
          "cookie": {},
          "capabilities": [
            {
              "type": "AlexaInterface",
              "interface": "Alexa.PowerController",
              "version": "3",
              "properties": {
                "supported": [
                  {
                    "name": "powerState"
                  }
                ],
                "proactivelyReported": true,
                "retrievable": true
              }
            },
            {
              "type": "AlexaInterface",
              "interface": "Alexa.ColorTemperatureController",
              "version": "3",
              "properties": {
                "supported": [
                  {
                    "name": "colorTemperatureInKelvin"
                  }
                ],
                "proactivelyReported": true,
                "retrievable": true
              }
            },
            {
                "type": "AlexaInterface",
                "interface": "Alexa.EndpointHealth",
                "version": "3.1",
                "properties": {
                    "supported": [{
                        "name": "connectivity"
                    }],
                    "proactivelyReported": true,
                    "retrievable": true
                }
            },
            {
              "type": "AlexaInterface",
              "interface": "Alexa",
              "version": "3"
            }
          ]
        }
      ]
    }
  }
}

ディレクティブ

Alexaは次のAlexa.ColorTemperatureControllerインターフェースディレクティブをスキルに送信します。

SetColorTemperatureディレクティブ

SetColorTemperatureディレクティブをサポートすると、ユーザーはエンドポイントの色温度を設定できます。

以下に、ユーザーの発話の例を示します。

Alexa, make the living room warm white.
Alexa, set the kitchen to daylight.

Alexa, schalte Schlafzimmerlicht auf warmes Weiß.
Alexa, stelle die Küche auf Tageslicht.

Alexa, mets la lumière du salon en blanc chaud.
Alexa, règle la cuisine à lumière du jour.

Alexa, लिविंग रूम को हल्का गर्म सफेद बनाएं।
Alexa, किचन को दिन की रोशनी में सेट करो।

Alexa, fai in modo che la luce del soggiorno sia di un bianco caldo.
Alexa, cambia la cucina in bianco diurno.

アレクサ、リビングを暖かい色にして
アレクサ、キッチンを昼白色にして

Alexa, coloque a luz da sala em branco quente.
Alexa, ponha a luz da sala em branco quente.
Alexa, coloque a cozinha em branco diurno.
Alexa, muda a cozinha para branco diurno.

Alexa, haz que la luz de la sala de estar sea blanca cálida.
Alexa, pon la cocina a luz del día.
Alexa, pon la luz de la cocina a modo día.

Alexa, maak de woonkamer warm-wit.
Alexa, zet de woonkamer op warm-wit.
Alexa, zet de keuken op daglicht.

SetColorTemperatureディレクティブの例

以下は、色温度を5500ケルビン度に設定するためにAlexaがスキルに送信するSetColorTemperatureディレクティブの例です。


{
  "directive": {
    "header": {
      "namespace": "Alexa.ColorTemperatureController",
      "name": "SetColorTemperature",
      "messageId": "一意のバージョン4 UUID",
      "correlationToken": "opaque相関トークン",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "OAuth2.0ベアラートークン"
      },
      "endpointId": "エンドポイントID",
      "cookie": {}
    },
    "payload": {
      "colorTemperatureInKelvin": 5500
    }
  }
}

SetColorTemperatureディレクティブのパラメーター

フィールド 説明
colorTemperatureinKelvin 色温度(ケルビン度)です。 整数

SetColorTemperature応答

SetColorTemperatureディレクティブを正しく処理したら、Alexa.Responseイベントを使用して応答します。contextオブジェクトに、変更されたすべてのプロパティの値を含めます。応答は同期または非同期のどちらでも可能です。非同期で応答する場合、相関トークンと、認可トークンを含めたスコープを含めます。

以下は、SetColorTemperature応答の例です。

クリップボードにコピーされました。

{
    "event": {
        "header": {
            "namespace": "Alexa",
            "name": "Response",
            "messageId": "一意の識別子、バージョン4 UUIDが望ましい",
            "correlationToken": "リクエストに一致するopaque相関トークン",
            "payloadVersion": "3"
        },
        "endpoint": {
            "scope": {
                "type": "BearerToken",
                "token": "OAuth2.0ベアラートークン"
            },
            "endpointId": "エンドポイントID"
        },
        "payload": {}
    },
    "context": {
        "properties": [{
                "namespace": "Alexa.ColorTemperatureController",
                "name": "colorTemperatureInKelvin",
                "value": 5500,
                "timeOfSample": "2020-02-03T16:21:10.02Z",
                "uncertaintyInMilliseconds": 500
            },
            {
                "namespace": "Alexa.EndpointHealth",
                "name": "connectivity",
                "value": {
                    "value": "OK"
                },
                "timeOfSample": "2020-02-03T16:20:50Z",
                "uncertaintyInMilliseconds": 0
            }
        ]
    }
}

SetColorTemperatureディレクティブのエラー処理

SetColorTemperatureディレクティブを正しく処理できなかった場合は、Alexa.ErrorResponseイベントを使用して応答します。デバイスが色温度のディレクティブで制御できないモードに設定されている場合、NOT_SUPPORTED_IN_CURRENT_MODEエラータイプを使用します。たとえば、照明がHSB色に設定されている場合、エラーを返します。このとき、Alexaは、ユーザーに「照明が白の色調に設定されている場合にのみ機能します」と応答します。

IncreaseColorTemperatureディレクティブ

IncreaseColorTemperatureディレクティブをサポートすると、ユーザーはエンドポイントの色温度を上げることができます。このディレクティブは特定の値を指定しませんが、現在のデバイス設定に応じてより寒色寄り、またはより白みの強い設定をリクエストします。デバイスの設定を変更する量を調整できます。デバイスの設定をそれ以上上げることができない場合、最大の色温度に設定します。

以下に、ユーザーの発話の例を示します。

Alexa, set the dining room lights cooler.
Alexa, make the living room light whiter.

Alexa, règle les lumières moins chaudes.
Alexa, rends le salon plus blanc.

Alexa, mache mein esszimmerlampen kühler.
Alexa, mache das Wohnzimmerlicht weißer.

Alexa, डाइनिंग रूम की लाइट को ठंडा करो।
Alexa, लिविंग रूम को हल्का सफेद बनाओ।

Alexa, raffredda le luci della sala da pranzo.
Alexa, rendi la luce del soggiorno più bianca.

アレクサ、リビングを暖かい色にして。
アレクサ、リビングの電気をもっと白っぽくして

Alexa, coloque a sala de jantar mais fria.
Alexa, ponha a sala de jantar mais fria.
Alexa, coloque a luz da sala mais branca.
Alexa, ponha a luz da sala mais branca.

Alexa, pon las luces del comedor más frías.
Alexa, pon la luz de la sala más blanca.

Alexa, maak de verlichting in de eetkamer koeler.
Alexa, maak de verlichting in de woonkamer witter.

IncreaseColorTemperatureディレクティブの例

以下は、Alexaがスキルに送信するIncreaseColorTemperatureディレクティブの例です。

{
  "directive": {
    "header": {
      "namespace": "Alexa.ColorTemperatureController",
      "name": "IncreaseColorTemperature",
      "messageId": "一意のバージョン4 UUID",
      "correlationToken": "opaque相関トークン",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "OAuth2.0ベアラートークン"
      },
      "endpointId": "エンドポイントID",
      "cookie": {}
    },
    "payload": {}
  }
}

IncreaseColorTemperatureディレクティブのパラメーター

IncreaseColorTemperatureディレクティブは、ペイロードパラメーターを定義しません。

IncreaseColorTemperature応答

IncreaseColorTemperatureディレクティブを正しく処理したら、Alexa.Responseイベントを使用して応答します。contextオブジェクトに、変更されたすべてのプロパティの値を含めます。応答は同期または非同期のどちらでも可能です。非同期で応答する場合、相関トークンと、認可トークンを含めたスコープを含めます。

以下は、新しい色温度が7000ケルビン度であることを示すIncreaseColorTemperature応答の例です。

クリップボードにコピーされました。

{
  "event": {
    "header": {
      "namespace": "Alexa",
      "name": "Response",
      "messageId": "一意の識別子、バージョン4 UUIDが望ましい",
      "correlationToken": "リクエストに一致するopaque相関トークン",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "OAuth2.0ベアラートークン"
      },
      "endpointId": "エンドポイントID"
    },
    "payload": {}
  },
  "context": {
    "properties": [
      {
        "namespace": "Alexa.ColorTemperatureController",
        "name": "colorTemperatureInKelvin",
        "value": 7000,
        "timeOfSample": "2020-02-03T16:21:10.02Z",
        "uncertaintyInMilliseconds": 500
      }
    ]
  }
}

IncreaseColorTemperatureディレクティブのエラー処理

IncreaseColorTemperatureディレクティブを正しく処理できなかった場合は、Alexa.ErrorResponseイベントを使用して応答します。デバイスが色温度のディレクティブで制御できないモードに設定されている場合、NOT_SUPPORTED_IN_CURRENT_MODEエラータイプを使用します。たとえば、照明がHSB色に設定されている場合、エラーを返します。このとき、Alexaは、ユーザーに「照明が白の色調に設定されている場合にのみ機能します」と応答します。

DecreaseColorTemperatureディレクティブ

DecreaseColorTemperatureディレクティブをサポートすると、ユーザーはエンドポイントの色温度を下げることができます。このディレクティブは特定の値を指定しませんが、現在のデバイス設定に応じてより暖色寄り、またはより白みの弱い設定をリクエストします。デバイスの設定を変更する量を調整できます。デバイスの設定をそれ以上下げることができない場合、最小の色温度に設定します。

以下に、ユーザーの発話の例を示します。

Alexa, set the dining room softer.
Alexa, make the living room lights warmer.

Alexa, rends la salle à manger plus douce.
Alexa, rends la lumière plus chaude.

Alexa, stelle das Esszimmer weicher.
Alexa, mache mein wohnzimmerlampen wärmer.

Alexa, भोजन कक्ष को नरम करो।
Alexa, लिविंग रूम की रोशनी को गर्म करो।

Alexa, metti la sala da pranzo più morbida.
Alexa, rendi più calde le luci del soggiorno.

アレクサ、ダイニングルームをソフトな色にして。
アレクサ、リビングをもっと暖かい色にして

Alexa, coloque a sala de jantar mais suave.
Alexa, ponha a sala de jantar mais suave.
Alexa, coloque as luzes da sala mais quentes.
Alexa, ponha as luzes da sala mais quentes.

Alexa, pon la luz del comedor más suave.
Alexa, pon la luz del comedor más tenue.
Alexa, haz que las luces de la sala sean más cálidas.

Alexa, maak de verlichting in de eetkamer zachter.
Alexa, maak de verlichting in de woonkamer warmer.

DecreaseColorTemperatureディレクティブの例

以下は、Alexaがスキルに送信するDecreaseColorTemperatureディレクティブの例です。

{
  "directive": {
    "header": {
      "namespace": "Alexa.ColorTemperatureController",
      "name": "DecreaseColorTemperature",
      "messageId": "一意のバージョン4 UUID",
      "correlationToken": "opaque相関トークン",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "OAuth2.0ベアラートークン"
      },
      "endpointId": "エンドポイントID",
      "cookie": {}
    },
    "payload": {}
  }
}

DecreaseColorTemperatureディレクティブのパラメーター

DecreaseColorTemperatureディレクティブは、ペイロードパラメーターを定義しません。

DecreaseColorTemperature応答

DecreaseColorTemperatureディレクティブを正しく処理したら、Alexa.Responseイベントを使用して応答します。contextオブジェクトに、変更されたすべてのプロパティの値を含めます。応答は同期または非同期のどちらでも可能です。非同期で応答する場合、相関トークンと、認可トークンを含めたスコープを含めます。

以下は、新しい色温度が2200ケルビン度であることを示すDecreaseColorTemperature応答の例です。

クリップボードにコピーされました。

{
  "event": {
    "header": {
      "namespace": "Alexa",
      "name": "Response",
      "messageId": "一意の識別子、バージョン4 UUIDが望ましい",
      "correlationToken": "リクエストに一致するopaque相関トークン",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "OAuth2.0ベアラートークン"
      },
      "endpointId": "エンドポイントID"
    },
    "payload": {}
  },
  "context": {
    "properties": [
      {
        "namespace": "Alexa.ColorTemperatureController",
        "name": "colorTemperatureInKelvin",
        "value": 2200,
        "timeOfSample": "2020-02-03T16:21:10.02Z",
        "uncertaintyInMilliseconds": 500
      }
    ]
  }
}

DecreaseColorTemperatureディレクティブのエラー処理

DecreaseColorTemperatureディレクティブを正しく処理できなかった場合は、Alexa.ErrorResponseイベントを使用して応答します。デバイスが色温度のディレクティブで制御できないモードに設定されている場合、NOT_SUPPORTED_IN_CURRENT_MODEエラータイプを使用します。たとえば、照明がHSB色に設定されている場合、エラーを返します。このとき、Alexaは、ユーザーに「照明が白の色調に設定されている場合にのみ機能します」と応答します。

状態レポート

Alexaはエンドポイントの状態についての情報をリクエストするために、ReportStateディレクティブを送信します。AlexaがReportStateディレクティブを送信したら、それに対する応答としてStateReportイベントを送信します。この応答には、contextオブジェクトのすべてのretrievableプロパティの現在の状態を含めます。retrievableプロパティは検出応答で特定します。状態レポートの詳細については、状態および変更レポートについてを参照してください。

StateReport応答の例

クリップボードにコピーされました。

{
    "event": {
        "header": {
            "namespace": "Alexa",
            "name": "StateReport",
            "messageId": "一意の識別子、バージョン4 UUIDが望ましい",
            "correlationToken": "リクエストに一致するopaque相関トークン",
            "payloadVersion": "3"
        },
        "endpoint": {
            "scope": {
                "type": "BearerToken",
                "token": "OAuth2.0ベアラートークン"
            },
            "endpointId": "エンドポイントID"
        },
        "payload": {}
    },
    "context": {
        "properties": [{
                "namespace": "Alexa.ColorTemperatureController",
                "name": "colorTemperatureInKelvin",
                "value": 2200,
                "timeOfSample": "2024-02-03T16:18:10.00Z",
                "uncertaintyInMilliseconds": 0
            },
            {
                "namespace": "Alexa.EndpointHealth",
                "name": "connectivity",
                "value": {
                    "value": "OK"
                },
                "timeOfSample": "2024-02-03T16:15:00.00Z",
                "uncertaintyInMilliseconds": 100
            }
        ]
    }
}

変更レポート

エンドポイントの状態の変化をプロアクティブにレポートするために、ChangeReportイベントを送信します。プロアクティブにレポートするプロパティは検出応答で特定します。変更レポートの詳細については、状態および変更レポートについてを参照してください。

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

ChangeReportイベントの例

クリップボードにコピーされました。

{
    "event": {
        "header": {
            "namespace": "Alexa",
            "name": "ChangeReport",
            "messageId": "一意の識別子、バージョン4 UUIDが望ましい",
            "payloadVersion": "3"
        },
        "endpoint": {
            "scope": {
                "type": "BearerToken",
                "token": "OAuth2.0ベアラートークン"
            },
            "endpointId": "エンドポイントID"
        },
        "payload": {
            "change": {
                "cause": {
                    "type": "PHYSICAL_INTERACTION"
                },
                "properties": [{
                    "namespace": "Alexa.ColorTemperatureController",
                    "name": "colorTemperatureInKelvin",
                    "value": 4000,
                    "timeOfSample": "2024-02-03T16:1519:20.00Z",
                    "uncertaintyInMilliseconds": 0
                }]
            }
        }
    },
    "context": {
        "properties": [{
            "namespace": "Alexa.EndpointHealth",
            "name": "connectivity",
            "value": {
                "value": "OK"
            },
            "timeOfSample": "2024-02-03T16:15:00.00Z",
            "uncertaintyInMilliseconds": 100
        }]
    }
}


このページは役に立ちましたか?

最終更新日: 2024 年 11 月 12 日