Google Home Developer Center へようこそ。スマートホーム アクションの開発方法を学習できます。注: アクションの構築は、引き続き Actions Console で行います。

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

action.devices.traits.ColorSetting - このトレイトは、色や色温度を変更できるスマートライトなどのデバイスに適用されます。

RGB、HSV、色温度

RGB は、色を(赤、緑、青)からなる 3 つの値の組で表します。RGB がデフォルトのカラーモデルです。RGB は、3 つの 16 進値を連結した 16 進コードで表せます。たとえば、「青」は (0, 0, 255) および #0000FF です。RGB 色空間内の任意の値、つまり x、y、z が [0, 255] の範囲(RGB、x、y、z)で使用できます。

HSV は、色を(色相、彩度、明度)の 3 つの値の組で表します。HSV のどの色の値も RGB に変換でき、その逆も可能です。色相は、0 度以上、360 度未満の値で表されます(折り返して 0 度になるため、360 度は入りません)。彩度と明度は、0.0 以上、1.0 以下の浮動小数点数で表されます。

色温度は、一部の色を負の小数値で表します。 この属性は、「白色」または「暖色」のライトの説明で、「色は白」や「薄暗い日光」などの色の名前が付けられます。色温度に対応するスマートライトは通常、[2,000, 9,000] ケルビンの範囲で、固定ケルビンを使用する従来のライトに対応します。色温度は線形目盛で、RGB/HSV フルスペクトル カラーモデルのサブセットです。いくつかの温度とそれに対応する色の名前については、以下の表をご覧ください。

温度(ケルビン) 色名
2000キャンドルライト
2500ウルトラウォーム ホワイト
3,000ソフトホワイト、モーニングホワイト、リーディングホワイト
4000クールホワイト
5000デイライト、ホワイト
6000フローラル ホワイト
7,000曇りデイライト、ホワイトスモーク
8000ブルーのどんより
9000ブルースカイ

デバイスの属性

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

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

(デフォルト: false

デバイスが一方向(True)または双方向(False)の通信に対応しているかどうかを示します。デバイスがこのトレイトの QUERY インテントまたは Report State に応答できない場合は、この属性を true に設定します。

次の項目が含まれます。
0 オブジェクト

カラーモデルのサポート。

colorModel 文字列

必須。

デバイスでサポートされているフルスペクトル カラーモデル。

サポートされている値:

rgb
hsv
1 オブジェクト

色温度に対応しました。

colorTemperatureRange オブジェクト

必須。

サポートされている色温度の範囲はケルビンです。

temperatureMinK Integer

必須。

サポートされている最小色温度(ケルビン)。

temperatureMaxK Integer

必須。

サポートされている最大色温度(ケルビン)。

RGB スペクトルのカラーモデルと色温度の両方をサポートするデバイス。

{
  "colorModel": "rgb",
  "colorTemperatureRange": {
    "temperatureMinK": 2000,
    "temperatureMaxK": 9000
  }
}

HSV スペクトル カラーモデルのみをサポートするデバイス。

{
  "colorModel": "hsv"
}

色温度のみをサポートするデバイス。

{
  "colorTemperatureRange": {
    "temperatureMinK": 2000,
    "temperatureMaxK": 9000
  }
}

HSV カラーモデル コマンドのみをサポートするデバイス。

{
  "colorModel": "hsv",
  "commandOnlyColorSetting": true
}

デバイスのステータス

このトレイトを使用するエンティティは、QUERY オペレーションの一部として次の状態を報告できます。QUERY インテントの処理の詳細については、インテントのフルフィルメントをご覧ください。

状態 タイプ 説明
color オブジェクト

必須。

デバイスで現在使用されている色設定。

次のいずれかの項目が含まれています。
0 オブジェクト

色温度に対応しました。

temperatureK Integer

必須。

気温(ケルビン)。

1 オブジェクト

カラー RGB スペクトルのサポート。

spectrumRgb Integer

必須。

スペクトル RGB 値が 10 進整数で示されます。

2 オブジェクト

色 HSV スペクトルのサポート。

spectrumHsv オブジェクト

必須。

スペクトル HSV 値。

hue Number

色相

saturation Number

彩度。

value Number

価値。

ライトは何色ですか。(ウォーム ホワイト)

{
  "color": {
    "temperatureK": 3000
  }
}

ライトは何色ですか。(マゼンタ)

{
  "color": {
    "spectrumRgb": 16711935
  }
}

ライトは何色ですか。(マゼンタ)

{
  "color": {
    "spectrumHsv": {
      "hue": 300,
      "saturation": 1,
      "value": 1
    }
  }
}

デバイスのコマンド

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

action.devices.commands.ColorAbsolute

絶対色の値を設定します。

パラメータ

パラメータ タイプ 説明
color オブジェクト

必須。

設定する色。

name 文字列

ユーザーのコマンドから解析された色名。常に使用できるとは限りません(相対コマンドを使用している場合など)。

次のいずれかの項目が含まれています。
0 オブジェクト

色温度に対応しました。

temperature Integer

必須。

気温(ケルビン)。詳しくは、RGB、HSV、色温度をご覧ください。

1 オブジェクト

カラー RGB スペクトルのサポート。

spectrumRGB Integer

必須。

スペクトル RGB 値が 10 進整数で示されます。詳しくは、RGB、HSV、色温度をご覧ください。

2 オブジェクト

色 HSV スペクトルのサポート。

spectrumHSV オブジェクト

必須。

スペクトル HSV 値。詳しくは、RGB、HSV、色温度をご覧ください。

hue Number

色相

saturation Number

彩度。

value Number

価値。

薄い白色にします。

{
  "command": "action.devices.commands.ColorAbsolute",
  "params": {
    "color": {
      "name": "Warm White",
      "temperature": 3000
    }
  }
}

ライトをマゼンタ色に。

{
  "command": "action.devices.commands.ColorAbsolute",
  "params": {
    "color": {
      "name": "Magenta",
      "spectrumRGB": 16711935
    }
  }
}

ライトをマゼンタ色に。

{
  "command": "action.devices.commands.ColorAbsolute",
  "params": {
    "color": {
      "name": "Magenta",
      "spectrumHSV": {
        "hue": 300,
        "saturation": 1,
        "value": 1
      }
    }
  }
}

パラメータ名は、コマンド パラメータとステータス パラメータでわずかに異なります。これにより、非推奨の ColorSpectrum トレイトと ColorTemperature トレイトの状態パラメータとの競合を回避できます。

コマンド State
temperature temperatureK
spectrumRGB spectrumRgb
spectrumHSV spectrumHsv

サンプル音声

de-DE

  • Stell die Farbe der Lampe auf blau
  • Stelle die Farbtemperatur auf 3000 Kelvin ein.

en-US

  • can you adjust my lights color to 4000 kelvins
  • set the lights to blue

es-ES

  • pon azul la luz de la cocina
  • pon la luz a 2000 k de temperatura de color

fr-FR

  • Allume la lampe de la chambre à 3500 kelvins .
  • mets les lampes en rose dans la chambre

hi-IN

  • तुम लाइट को ब्लू कर दो
  • लैम्प 2000 केल्विन पर लगाओ।

it-IT

  • Imposta la lampada a 2000 K .
  • metti la luce gialla

ja-JP

  • 照明 の色を にして
  • 照明 の色温度を 5000K にセットして

ko-KR

  • 조명 색깔 흰색 으로 바꿔 줘
  • 주방 전등 색 온도를 5000 켈빈 으로 설정해

nl-NL

  • Zet de keukenlamp op 2000 Kelvin .
  • maak het licht rood

pt-BR

  • Colocar a lâmpada em 2000 K .
  • Define a lâmpada para 2000 K .
  • colocar a luz da sala em azul
  • põe a luz da sala a vermelho

sv-SE

  • Ställ in lampan 2000 Kelvin
  • tänd blått ljus i köket

デバイスエラー

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