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 |
---|---|
2000 | Luz de vela |
2,500 | Blanco ultracálido |
3000 | Blanco suave, blanco matutino y blanco para lectura |
4000 | Blanco frío |
5000 | Luz del día, blanca |
6000 | Blanco floral |
7000 | Día nublado, luz, humo blanco |
8000 | Nublado azulado |
9000 | Azul 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: 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:
|
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 på 2000 Kelvin
- tänd blått ljus i köket