Esquema de atributos de ColorSetting de la casa inteligente

action.devices.traits.ColorSetting: Este atributo se aplica a dispositivos, como luces inteligentes, que pueden cambiar de color o temperatura.

RGB, HSV y temperatura de color

RGB representa los colores como un triplete (rojo, verde, azul). RGB es el modelo de color predeterminado. Cualquier triplete RGB se puede representar como un código hexadecimal, equivalente a los valores hexadecimales del triplete concatenado. Por ejemplo, “azul” es (0, 0, 255) y #0000FF. Puedes usar cualquier valor dentro del espacio de color RGB, es decir, RGB(x, y, z), donde x, y, z están dentro del rango [0, 255] inclusive.

HSV representa los colores como un triplete (tono, saturación y valor). Cualquier valor de color en HSV se puede convertir a RGB y viceversa. El matiz tiene un rango de [0, 360) grados (exclusivo de 360, ya que se ajusta a 0 grados). La saturación y el valor se representan con números de punto flotante en el rango [0.0, 1.0].

La temperatura de color representa algunos colores como valores decimales no negativos en Kelvin. Este atributo describe las luces “blancas” o “cálidas”, con nombres de colores como “blanco frío” o “luz del día nublado”. Las luces inteligentes compatibles con la temperatura de color suelen tener un rango de [2,000, 9,000] Kelvin, que corresponde a luces convencionales con Kelvin fijo. La temperatura de color es una escala lineal y un subconjunto de los modelos de color de espectro completo RGB/HSV. Consulta la siguiente tabla para ver algunos ejemplos de temperaturas y los nombres de colores correspondientes.

Temperatura (Kelvin) Nombre del color
2000Luz de vela
2,500Blanco ultracálido
3000Blanco suave, blanco matutino y blanco para lectura
4000Blanco frío
5000Luz del día, blanca
6000Blanco floral
7000Día nublado, luz, humo blanco
8000Nublado azulado
9000Azul cielo

ATRIBUTOS del dispositivo

Los dispositivos con esta característica pueden informar los siguientes atributos como parte de la operación SYNC. Para obtener más información sobre cómo controlar los intents SYNC, consulta Entrega de intents.

Atributos Tipo Descripción
commandOnlyColorSetting Booleano

(Predeterminado: false)

Indica si el dispositivo admite la comunicación unidireccional (verdadero) o bidireccional (falso). Establece este atributo como verdadero si el dispositivo no puede responder a un intent de CONSULTA o a un estado de informe de esta característica.

Contiene cualquiera de los siguientes elementos:
0 Objeto

Compatibilidad con el modelo de color.

colorModel String

Obligatorio.

Es el modelo de color de espectro completo que admite el dispositivo.

Valores admitidos:

rgb
hsv
1 Objeto

Compatibilidad con la temperatura de color

colorTemperatureRange Objeto

Obligatorio.

Rango de temperatura de color admitido en Kelvin.

temperatureMinK Número entero

Obligatorio.

Temperatura de color mínima admitida en Kelvin.

temperatureMaxK Número entero

Obligatorio.

Es la temperatura de color máxima admitida en Kelvin.

Ejemplos

Dispositivo que admite el modelo de color del espectro RGB y la temperatura de color.

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

Dispositivo que solo admite el modelo de color del espectro HSV.

{
  "colorModel": "hsv"
}

Dispositivo que solo admite temperatura de color.

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

Dispositivo que solo admite comandos del modelo de color HSV.

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

ESTADOS DEL DISPOSITIVO

Las entidades con esta característica pueden informar los siguientes estados como parte de la operación QUERY. Para obtener más información sobre cómo controlar los intents QUERY, consulta Entrega de intents.

Estados Tipo Descripción
color Objeto

Obligatorio.

Es el parámetro de configuración de color que se usa actualmente en el dispositivo.

Contiene uno de los siguientes elementos:
0 Objeto

Compatibilidad con la temperatura de color

temperatureK Número entero

Obligatorio.

Valor de la temperatura en Kelvin.

1 Objeto

Compatibilidad con el espectro de colores RGB

spectrumRgb Número entero

Obligatorio.

Valor RGB del espectro como número entero decimal.

2 Objeto

Compatibilidad con el espectro HSV de colores

spectrumHsv Objeto

Obligatorio.

Es el valor HSV del espectro.

hue Número

Tono.

saturation Número

Saturación.

value Número

Valor

Ejemplos

¿De qué color es la luz? (blanco cálido)

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

¿De qué color es la luz? (Magenta)

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

¿De qué color es la luz? (Magenta)

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

COMANDOS del dispositivo

Los dispositivos con esta característica pueden responder a los siguientes comandos como parte de la operación EXECUTE. Para obtener más información sobre cómo controlar intents EXECUTE, consulta Cómo entregar intents.

action.devices.commands.ColorAbsolute

Configura el valor de color absoluto.

Parámetros

Parámetros Tipo Descripción
color Objeto

Obligatorio.

Es el color que se establecerá.

name String

Es el nombre de color analizado del comando del usuario. Es posible que no siempre esté disponible (es decir, cuando se usan comandos relativos).

Contiene uno de los siguientes elementos:
0 Objeto

Compatibilidad con la temperatura de color

temperature Número entero

Obligatorio.

Es el valor de la temperatura en Kelvin. Consulta RGB, HSV y temperatura de color para obtener más información.

1 Objeto

Compatibilidad con el espectro de colores RGB

spectrumRGB Número entero

Obligatorio.

Valor de Spectrum RGB como un número entero decimal. Consulta RGB, HSV y temperatura de color para obtener más información.

2 Objeto

Compatibilidad con el espectro HSV de colores

spectrumHSV Objeto

Obligatorio.

Es el valor HSV del espectro. Consulta RGB, HSV y temperatura de color para obtener más información.

hue Número

Tono.

saturation Número

Saturación.

value Número

Valor

Ejemplos

Haz que la luz sea de color blanco cálido.

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

Haz que la luz sea magenta.

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

Haz que el color magenta claro.

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

Ten en cuenta que los nombres de los parámetros difieren ligeramente entre los parámetros de comando y los de estado. Esto evita colisiones con los parámetros de estado de los atributos ColorSpectrum y ColorTemperature obsoletos.

Comando Estado
temperature temperatureK
spectrumRGB spectrumRgb
spectrumHSV spectrumHsv

Expresiones de muestra

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

ERRORES DE DISPOSITIVO

Consulta la lista completa de errores y excepciones.