Esquema de características de ColorSetting da casa inteligente
action.devices.traits.ColorSetting: essa característica se aplica a dispositivos, como iluminação inteligente, que podem mudar de cor ou de temperatura da cor.
RGB, HSV e temperatura de cor
RGB representa cores como um trio (vermelho, verde, azul). RGB é o modelo de cor padrão. Qualquer trio RGB pode ser representado como um código hexadecimal, equivalente aos valores hexadecimais do trio concatenado. Por exemplo, "azul" é (0, 0, 255) e #0000FF. Você pode usar qualquer valor no espaço de cores RGB, ou seja, RGB(x, y, z), em que x, y, z estão no intervalo [0, 255], inclusive.
HSV representa cores como um trio (matiz, saturação, valor). Qualquer valor de cor em HSV pode ser convertido para RGB e vice-versa. O matiz tem um intervalo de [0, 360) graus (exclusivo de 360, já que ele é repetido em 0 graus). A saturação e o valor são representados por floats no intervalo [0,0, 1,0].
A Temperatura da cor representa algumas cores como valores decimais não negativos em Kelvin. Esse atributo descreve "luzes" "brancas" ou "quentes", com nomes de cores como "branco frio" ou "luz do dia nublado." As luzes inteligentes que oferecem suporte à temperatura da cor normalmente têm um intervalo de [2000, 9000] Kelvin, que corresponde a luzes convencionais com Kelvin fixo. A temperatura de cor é uma escala linear e um subconjunto dos modelos de cores de espectro completo RGB/HSV. Consulte a tabela abaixo para conferir alguns exemplos de temperaturas e nomes de cores correspondentes.
| Temperatura (Kelvin) | Nome da cor |
|---|---|
| 2000 | Luz de vela |
| 2500 | Branco ultraquente |
| 3000 | Branco suave, branco da manhã, branco de leitura |
| 4000 | Branco frio |
| 5000 | Luz do dia, branco |
| 6000 | Branco-floral |
| 7000 | Iluminação de dia nublado, fumaça branca |
| 8000 | Azul cinzento |
| 9000 | Azul celeste |
ATRIBUTOS do dispositivo
Os dispositivos com essa característica podem informar os seguintes
atributos como parte da SYNC operação. Para saber
mais sobre como processar SYNC intents, consulte
Processamento de intents.
| Atributos | Tipo | Descrição |
|---|---|---|
commandOnlyColorSetting |
Booleano |
Padrão: Indica se o dispositivo oferece suporte à comunicação unidirecional (verdadeira) ou bidirecional (falsa). Defina esse atributo como verdadeiro se o dispositivo não puder responder a um intent QUERY ou ao estado do relatório para essa característica. |
| Contém um dos seguintes itens: | ||
0
|
Objeto |
Suporte ao modelo de cores. |
colorModel |
String |
Obrigatório. Modelo de cores de espectro completo com suporte do dispositivo. Valores aceitos:
|
1
|
Objeto |
Suporte à temperatura da cor. |
colorTemperatureRange |
Objeto |
Obrigatório. Intervalo de temperatura da cor com suporte em Kelvin. |
temperatureMinK |
Número inteiro |
Obrigatório. Temperatura da cor mínima com suporte em Kelvin. |
temperatureMaxK |
Número inteiro |
Obrigatório. Temperatura da cor máxima com suporte em Kelvin. |
Exemplos
Dispositivo que oferece suporte ao modelo de cores de espectro RGB e à temperatura da cor.
{
"colorModel": "rgb",
"colorTemperatureRange": {
"temperatureMinK": 2000,
"temperatureMaxK": 9000
}
}Dispositivo que oferece suporte apenas ao modelo de cores de espectro HSV.
{
"colorModel": "hsv"
}Dispositivo que oferece suporte apenas à temperatura da cor.
{
"colorTemperatureRange": {
"temperatureMinK": 2000,
"temperatureMaxK": 9000
}
}Dispositivo que oferece suporte apenas a comandos de modelo de cores HSV.
{
"colorModel": "hsv",
"commandOnlyColorSetting": true
}ESTADOS do dispositivo
As entidades com essa característica podem informar os seguintes
estados como parte da QUERY operação. Para saber
mais sobre como processar QUERY intents, consulte
Processamento de intents.
| Estados | Tipo | Descrição |
|---|---|---|
color |
Objeto |
Obrigatório. A configuração de cor atual em uso no dispositivo. |
| Contém um dos seguintes itens: | ||
0
|
Objeto |
Suporte à temperatura da cor. |
temperatureK |
Número inteiro |
Obrigatório. Valor de temperatura em Kelvin. |
1
|
Objeto |
Suporte ao espectro de cores RGB. |
spectrumRgb |
Número inteiro |
Obrigatório. Valor RGB do espectro como um número inteiro decimal. |
2
|
Objeto |
Suporte ao espectro de cores HSV. |
spectrumHsv |
Objeto |
Obrigatório. Valor HSV do espectro. |
hue |
Número |
Matiz. Valor mínimo: |
saturation |
Número |
Saturação. O valor precisa estar entre |
value |
Número |
Valor. O valor precisa estar entre |
Exemplos
Qual é a cor da luz? (Branco quente)
{
"color": {
"temperatureK": 3000
}
}Qual é a cor da luz? (Magenta)
{
"color": {
"spectrumRgb": 16711935
}
}Qual é a cor da luz? (Magenta)
{
"color": {
"spectrumHsv": {
"hue": 300,
"saturation": 1,
"value": 1
}
}
}COMANDOS do dispositivo
Os dispositivos com essa característica podem responder aos seguintes
comandos como parte da EXECUTE operação. Para saber
mais sobre como processar EXECUTE intents, consulte
Processamento de intents.
action.devices.commands.ColorAbsolute
Defina o valor de cor absoluto.
Parâmetros
| Parâmetros | Tipo | Descrição |
|---|---|---|
color |
Objeto |
Obrigatório. Cor a ser definida. |
name |
String |
Nome da cor analisado no comando do usuário. Pode não estar sempre disponível (ou seja, ao usar comandos relativos). |
| Contém um dos seguintes itens: | ||
0
|
Objeto |
Suporte à temperatura da cor. |
temperature |
Número inteiro |
Obrigatório. Valor de temperatura em Kelvin. Consulte RGB, HSV e Temperatura da cor para mais detalhes. |
1
|
Objeto |
Suporte ao espectro de cores RGB. |
spectrumRGB |
Número inteiro |
Obrigatório. Valor RGB do espectro como um número inteiro decimal. Consulte RGB, HSV e Temperatura da cor para mais detalhes. |
2
|
Objeto |
Suporte ao espectro de cores HSV. |
spectrumHSV |
Objeto |
Obrigatório. Valor HSV do espectro. Consulte RGB, HSV e Temperatura da cor para mais detalhes. |
hue |
Número |
Matiz. Valor mínimo: |
saturation |
Número |
Saturação. O valor precisa estar entre |
value |
Número |
Valor. O valor precisa estar entre |
Exemplos
Deixar a luz branca quente.
{
"command": "action.devices.commands.ColorAbsolute",
"params": {
"color": {
"name": "Warm White",
"temperature": 3000
}
}
}Deixar a luz magenta.
{
"command": "action.devices.commands.ColorAbsolute",
"params": {
"color": {
"name": "Magenta",
"spectrumRGB": 16711935
}
}
}Deixar a luz magenta.
{
"command": "action.devices.commands.ColorAbsolute",
"params": {
"color": {
"name": "Magenta",
"spectrumHSV": {
"hue": 300,
"saturation": 1,
"value": 1
}
}
}
}Os nomes dos parâmetros variam um pouco entre os parâmetros de comando e de estado. Isso evita conflitos com os parâmetros de estado das características ColorSpectrum e ColorTemperature descontinuadas.
| Comando | Estado |
|---|---|
temperature |
temperatureK |
spectrumRGB |
spectrumRgb |
spectrumHSV |
spectrumHsv |
Exemplos de declarações
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