Esquema de la característica de configuración de colores de Smart Home
action.devices.traits.ColorSetting
: Esta característica se aplica a dispositivos como las lámparas inteligentes, que pueden cambiar de color o temperatura.
RGB, HSV y temperatura de color
RGB representa los colores como un triplete (rojo, verde y azul). RGB es el modelo de color predeterminado. Cualquier triplete RGB se puede representar como un código hexadecimal, lo que equivale a los valores hexadecimales del triplet 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 puede convertirse 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 un número 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 solar superpuesta". Las lámparas inteligentes que admiten la temperatura de color suelen tener un rango de [2,000, 9,000] Kelvin, que corresponde a las luces convencionales con Kelvin fijo. La temperatura de color es una escala lineal y un subconjunto de los modelos de color espectro completo RGB/HSV. Consulta la tabla siguiente para ver algunos ejemplos de temperaturas y los nombres de colores correspondientes.
Temperatura (Kelvin) | Nombre del color |
---|---|
2000 | Luz de vela |
2,500 | Blanco muy cálido |
3,000 | Blanco suave, Blanco matutino, Blanco para leer |
4,000 | Blanco frío |
5000 | Luz diurna, blanca |
6,000 | Blanco floral |
7000 | Nublado con luz solar, blanco humo |
8,000 | Cielo cubierto |
9000 | Blue Sky |
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 manejar los intents SYNC
, consulta Entrega de intents.
Atributos | Tipo | Descripción |
---|---|---|
commandOnlyColorSetting |
Booleano |
(Predeterminado: Indica si el dispositivo admite el uso de comunicación unidireccional (verdadero) o bidireccional (falso). Establece este atributo como verdadero si el dispositivo no puede responder a un intent QUERY o al estado del informe para esta característica. |
Contiene alguno de los siguientes elementos: | ||
0
|
Objeto |
Compatibilidad con modelos de colores |
colorModel |
String |
Obligatorio. Modelo de color de espectro completo admitido por el dispositivo. Valores admitidos:
|
1
|
Objeto |
Compatibilidad con 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. Temperatura de color máxima admitida en Kelvin |
Ejemplos
Dispositivo que admite el modelo de color 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 la temperatura de color.
{ "colorTemperatureRange": { "temperatureMinK": 2000, "temperatureMaxK": 9000 } }
Dispositivo que solo admite comandos del modelo de color HSV.
{ "colorModel": "hsv", "commandOnlyColorSetting": true }
Dispositivo STATEs
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 manejar los intents QUERY
, consulta Entrega de intents.
Estados | Tipo | Descripción |
---|---|---|
color |
Objeto |
Obligatorio. La configuración de color actual que se usa actualmente en el dispositivo. |
Contiene uno de los siguientes elementos: | ||
0
|
Objeto |
Compatibilidad con temperatura de color |
temperatureK |
Número entero |
Obligatorio. Valor de temperatura en Kelvin |
1
|
Objeto |
Compatibilidad con el espectro RGB de color |
spectrumRgb |
Número entero |
Obligatorio. Valor RGB de espectro como un número entero decimal. |
2
|
Objeto |
Compatibilidad con el espectro HSV de color |
spectrumHsv |
Objeto |
Obligatorio. Valor de espectro HSV. |
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 } } }
Dispositivo COMMAND
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 manejar los intents EXECUTE
, consulta Entrega de intents.
action.devices.commands.ColorAbsolute
Establece el valor de color absoluto.
Parámetros
Parámetros | Tipo | Descripción |
---|---|---|
color |
Objeto |
Obligatorio. Color para establecer |
name |
String |
Nombre de color analizado a partir 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 temperatura de color |
temperature |
Número entero |
Obligatorio. Valor de temperatura en Kelvin Consulta RGB, HSV y temperatura de color para obtener más detalles. |
1
|
Objeto |
Compatibilidad con el espectro RGB de color |
spectrumRGB |
Número entero |
Obligatorio. Valor RGB de espectro como un número entero decimal. Consulta RGB, HSV y temperatura de color para obtener más detalles. |
2
|
Objeto |
Compatibilidad con el espectro HSV de color |
spectrumHSV |
Objeto |
Obligatorio. Valor de espectro HSV. Consulta RGB, HSV y temperatura de color para obtener más detalles. |
hue |
Número |
Tono. |
saturation |
Número |
Saturación. |
value |
Número |
Valor. |
Ejemplos
Haz que la luz sea cálida, de color blanco.
{ "command": "action.devices.commands.ColorAbsolute", "params": { "color": { "name": "Warm White", "temperature": 3000 } } }
Haz que la luz sea de color magenta.
{ "command": "action.devices.commands.ColorAbsolute", "params": { "color": { "name": "Magenta", "spectrumRGB": 16711935 } } }
Haz que la luz sea de color magenta.
{ "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 estado. Esto evita colisiones con los parámetros de estado para los rasgos obsoletos ColorSpectrum y ColorTemperature.
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