スマートホーム 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 以下の浮動小数点数で表されます。
色温度は、一部の色をケルビン絶対温度の非負の 10 進数で表します。 この属性は、「白い」光や「暖かい」光を、「cool white」や「overcast daylight」などの色の名前で表します。色温度をサポートするスマートライトは通常、[2,000, 9,000] ケルビンの範囲です。これは、固定ケルビンの従来のライトに相当します。色温度は線形スケールであり、RGB / HSV フルスペクトル カラーモデルのサブセットになっています。温度と対応する色の名前の例は、下記の表をご覧ください。
| 温度(ケルビン) | 色名 | 
|---|---|
| 2000 | キャンドルライト | 
| 2500 | ウルトラウォーム ホワイト | 
| 3000 | Soft White、Morning White、Reading White | 
| 4000 | クールホワイト | 
| 5000 | 昼光色、白色 | 
| 6000 | フローラルホワイト | 
| 7,000 | 曇りの日光、白い煙 | 
| 8000 | ブルー オーバーキャスト | 
| 9000 | ブルースカイ | 
デバイスの属性
このトレイトを持つデバイスは、SYNC オペレーションの一部として次の属性を報告できます。SYNC インテントの処理の詳細については、インテントのフルフィルメントをご覧ください。
| 属性 | タイプ | 説明 | 
|---|---|---|
commandOnlyColorSetting | 
    ブール値 | 
       (デフォルト:  デバイスが一方向(true)または双方向(false)の通信の使用をサポートしているかどうかを示します。デバイスがこのトレイトの QUERY インテントまたは Report State に応答できない場合は、この属性を true に設定します。  | 
  
| 次のいずれかのアイテムが含まれている: | ||
      0
     | 
    オブジェクト | 
       カラーモデルのサポート。  | 
  
colorModel | 
    String | 
       必須。 デバイスでサポートされているフルスペクトル カラーモデル。 サポートされている値: 
  | 
  
      1
     | 
    オブジェクト | 
       色温度のサポート。  | 
  
colorTemperatureRange | 
    オブジェクト | 
       必須。 サポートされている色温度の範囲(ケルビン単位)。  | 
  
temperatureMinK | 
    整数 | 
       必須。 サポートされている最小色温度(ケルビン単位)。  | 
  
temperatureMaxK | 
    整数 | 
       必須。 サポートされている最大色温度(ケルビン単位)。  | 
  
例
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 | 
    整数 | 
       必須。 ケルビン単位の温度値。  | 
  
      1
     | 
    オブジェクト | 
       カラー RGB スペクトルのサポート。  | 
  
spectrumRgb | 
    整数 | 
       必須。 10 進数のスペクトル RGB 値。  | 
  
      2
     | 
    オブジェクト | 
       カラー HSV スペクトルのサポート。  | 
  
spectrumHsv | 
    オブジェクト | 
       必須。 スペクトルの HSV 値。  | 
  
hue | 
    数値 | 
       色相。  | 
  
saturation | 
    数値 | 
       彩度。  | 
  
value | 
    数値 | 
       価値。  | 
  
例
ライトは何色ですか?(ウォーム ホワイト)
{
  "color": {
    "temperatureK": 3000
  }
}
ライトは何色ですか?(Magenta)
{
  "color": {
    "spectrumRgb": 16711935
  }
}
ライトは何色ですか?(Magenta)
{
  "color": {
    "spectrumHsv": {
      "hue": 300,
      "saturation": 1,
      "value": 1
    }
  }
}
デバイスのコマンド
このトレイトを持つデバイスは、EXECUTE オペレーションの一部として次のコマンドに応答できます。EXECUTE インテントの処理の詳細については、インテントのフルフィルメントをご覧ください。
action.devices.commands.ColorAbsolute
絶対色値を設定します。
パラメータ
| パラメータ | タイプ | 説明 | 
|---|---|---|
color | 
    オブジェクト | 
       必須。 設定する色。  | 
  
name | 
    String | 
       ユーザーのコマンドから解析された色名。常に利用できるとは限りません(相対コマンドを使用している場合など)。  | 
  
| 次のいずれかを含む。 | ||
      0
     | 
    オブジェクト | 
       色温度のサポート。  | 
  
temperature | 
    整数 | 
       必須。 ケルビン単位の温度値。詳しくは、RGB、HSV、色温度をご覧ください。  | 
  
      1
     | 
    オブジェクト | 
       カラー RGB スペクトルのサポート。  | 
  
spectrumRGB | 
    整数 | 
       必須。 スペクトル 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 på 2000 Kelvin
 - tänd blått ljus i köket