Esquema de rasgo de configuración de color para casas inteligentes
action.devices.traits.ColorSetting
: Esta característica se aplica a dispositivos, como lámparas inteligentes, que pueden cambiar el color o la temperatura de color.
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 puede representarse 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 (matiz, saturación, 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 alrededor de 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 luces "blancas" o "cálidas", con nombres de colores como "blanco frío" o "luz del día con cielo cubierto". Por lo general, las lámparas inteligentes que admiten temperatura de color tienen un rango de [2,000, 9,000] Kelvin, que corresponde a las luces convencionales con Kelvin fijo. La temperatura del color es una escala lineal y un subconjunto de los modelos de color de espectro completo RGB/HSV. Consulta la siguiente tabla para ver algunas temperaturas de ejemplo y los nombres de los colores correspondientes.
Temperatura (Kelvin) | Nombre del color |
---|---|
2000 | Luz de vela |
2,500 | Blanco ultracálido |
3,000 | Blanco suave, blanco matutino, blanco lectura |
4,000 | Blanco frío |
5,000 | Luz de día, blanco |
6,000 | Blanco floral |
7000 | Luz de día nublado, humo blanco |
8,000 | Cielo azul |
9000 | Blue Sky |
Dispositivo ATTRIBUTES
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 el uso de comunicación unidireccional (verdadero) o bidireccional (falso). Establece este atributo como verdadero si el dispositivo no puede responder a un intent de QUERY o a un estado de informe de esta característica. |
Contiene cualquiera de los siguientes elementos: | ||
0
|
Objeto |
Compatibilidad con modelos de color |
colorModel |
Cadena |
Obligatorio. Modelo de color de espectro completo compatible con el dispositivo. Valores admitidos:
|
1
|
Objeto |
Compatibilidad con la temperatura de color |
colorTemperatureRange |
Objeto |
Obligatorio. Rango de temperaturas 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 compatible con el modelo de color de espectro RGB y la temperatura de color.
{ "colorModel": "rgb", "colorTemperatureRange": { "temperatureMinK": 2000, "temperatureMaxK": 9000 } }
Dispositivo que solo admite el modelo de color del espectro de HSV.
{ "colorModel": "hsv" }
Dispositivo que solo admite temperatura de color.
{ "colorTemperatureRange": { "temperatureMinK": 2000, "temperatureMaxK": 9000 } }
Dispositivo que solo admite comandos de 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 controlar los intents QUERY
, consulta Entrega de intents.
Estados | Tipo | Descripción |
---|---|---|
color |
Objeto |
Obligatorio. La configuración de color actual que se utiliza 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 RGB de color |
spectrumRgb |
Número entero |
Obligatorio. Es un valor de Spectrum RGB como un número entero decimal. |
2
|
Objeto |
Compatibilidad con el espectro HSV de color |
spectrumHsv |
Objeto |
Obligatorio. Valor HSV de 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 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 definir. |
name |
Cadena |
Es el nombre del 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 la temperatura de color |
temperature |
Número entero |
Obligatorio. Valor de la 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. Es un valor de Spectrum RGB 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 HSV de espectro. 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 el color sea blanco cálido.
{ "command": "action.devices.commands.ColorAbsolute", "params": { "color": { "name": "Warm White", "temperature": 3000 } } }
Haz que el color magenta claro
{ "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 levemente entre los parámetros de comando y estado. Esto evita conflictos con los parámetros de estado para las características obsoletas de 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