Esquema de la función de configuración de color del hogar inteligente
action.devices.traits.ColorSetting
: Esta característica se aplica a dispositivos (como 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, que equivale a valores de hexadecimales concatenados. 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, valor). Cualquier valor de color en HSV se puede convertir a RGB, y viceversa. Hue 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 cubierta". Por lo general, las lámparas inteligentes que admiten temperatura de color tienen un rango de [2,000, 9,000] Kinvin, lo 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 color correspondientes.
Temperatura (Kelvin) | Nombre del color |
---|---|
2000 | Luz de vela |
2,500 | Ultra blanco cálido |
3,000 | Blanco suave, Blanco matutino, Blanco para leer |
4,000 | Blanco fresco |
5000 | Luz diurna, color blanco |
6,000 | Blanco floral |
7000 | Nublado por el día, humo blanco |
8,000 | Cielo cubierto de color azul |
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 el manejo de 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 de informe para esta característica. |
Contiene cualquiera de los siguientes elementos: | ||
0
|
Objeto |
Compatibilidad con el modelo de color. |
colorModel |
String |
Obligatorio. Modelo de color de espectro completo compatible con 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 mínima de color admitida en Kelvin. |
temperatureMaxK |
Número entero |
Obligatorio. Temperatura máxima de color admitida en Kelvin. |
Ejemplos
Es un dispositivo que admite tanto el modelo de color del espectro RGB como 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 el manejo de intents QUERY
, consulta Entrega de intents.
Estados | Tipo | Descripción |
---|---|---|
color |
Objeto |
Obligatorio. La configuración de color actual que se utiliza 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 COMMANDS
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 el manejo de 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 del 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 del 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 del 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 de color blanco cálido.
{ "command": "action.devices.commands.ColorAbsolute", "params": { "color": { "name": "Warm White", "temperature": 3000 } } }
Aclara la luz:
{ "command": "action.devices.commands.ColorAbsolute", "params": { "color": { "name": "Magenta", "spectrumRGB": 16711935 } } }
Aclara la luz:
{ "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. De esta manera, se evitan las colisiones con los parámetros de estado de las características ColorSpectrum y ColorTemperature obsoletas.
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