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

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

RGB、HSV、色温度

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

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

色温度は、一部の色をケルビン絶対法の 10 進数で表します。この属性は、「白色」または「暖色」のライトを、「coolwhite」や「overcast daylight」などの色名で表します。色温度をサポートするスマートライトは通常、2, 000 ~ 9, 000 ケルビンの範囲です。これは、固定ケルビンの従来のライトに相当します。色温度は線形スケールであり、RGB/HSV フルスペクトル カラーモデルのサブセットです。温度とそれに対応する色名の例については、下記の表をご覧ください。

温度(ケルビン) 色名
2000キャンドルライト
2500ウルトラウォーム ホワイト
3000ソフトホワイト、モーニング ホワイト、リーディング ホワイト
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 番号

色相。

saturation 番号

彩度。

value 番号

価値。

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

{
  "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 番号

色相。

saturation 番号

彩度。

value 番号

価値。

ライトをウォームホワイトにして。

{
  "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 トレイトの状態パラメータとの競合が回避されます。

コマンド 状態
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

デバイスエラー

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