Esquema de características do SmartSetting ColorSetting Home
action.devices.traits.ColorSetting
: esta característica se aplica a dispositivos, como iluminação inteligente, que podem mudar de cor ou de temperatura.
RGB, HSV e temperatura da cor
RGB representa as cores como um terceto (vermelho, verde, azul). RGB é o modelo de cor padrão. Qualquer trio RGB pode ser representado como um hexadecimal, equivalente aos valores hexadecimais do trio concatenado. Por exemplo, "azul" é (0, 0, 255) e #0000FF. Você pode usar qualquer valor dentro do espaço de cor RGB, ou seja, RGB(x, y, z) em que x, y, z estão dentro do intervalo [0, 255], inclusive.
HSV representa as cores como um terceto (matiz, saturação, valor). Qualquer valor de cor no HSV pode ser convertido em RGB e vice-versa. O Hue tem um intervalo de [0, 360] graus (exclusivo de 360, já que o valor volta a 0 grau). Saturação e valor são representados por pontos flutuantes no intervalo [0.0, 1.0].
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 encoberto". As luzes inteligentes compatíveis com a temperatura de cor geralmente têm [2000, 9000] Kelvin, que corresponde a luzes convencionais com Kelvin fixo. A temperatura da cor é uma escala linear e um subconjunto dos modelos de cores RGB/HSV de espectro completo. Consulte a tabela abaixo para ver alguns exemplos de temperaturas e nomes de cores correspondentes.
Temperatura (Kelvin) | Nome da cor |
---|---|
2.000 | Luz de velas |
2.500 | Branco extremamente quente |
3.000 | Branco suave, branco matinal, branco de leitura |
4.000 | Branco frio |
5000 | Luz do Dia, Branco |
6.000 | Branco floral |
7.000 | Luz diurna clara, fumaça branca |
8.000 | Encoberto azul |
9000 | Azul celeste |
ATRIBUTOS do dispositivo
Os dispositivos com essa característica podem informar os seguintes atributos como parte da operação SYNC
. Para saber
mais sobre como lidar com intents SYNC
, consulte
fulfillment de intent.
Atributos | Tipo | Descrição |
---|---|---|
commandOnlyColorSetting |
Booleano |
Padrão: Indica se o dispositivo suporta o uso de comunicação unidirecional (verdadeiro) ou bidirecional (falso). Defina esse atributo como verdadeiro se o dispositivo não puder responder a uma intent QUERY ou a um estado de relatório para essa característica. |
contém qualquer um dos seguintes itens: | ||
0
|
Object |
Compatibilidade com modelos coloridos. |
colorModel |
String |
Obrigatório. Modelo de cores completo do dispositivo compatível. Os valores suportados são:
|
1
|
Object |
Compatibilidade com temperatura da cor. |
colorTemperatureRange |
Object |
Obrigatório. Faixa de temperatura de cor compatível em Kelvin. |
temperatureMinK |
Número inteiro |
Obrigatório. Temperatura de cor mínima compatível em Kelvin. |
temperatureMaxK |
Número inteiro |
Obrigatório. Temperatura máxima de cor compatível em Kelvin. |
Exemplos
Dispositivo compatível com o modelo de cores RGB e a temperatura da cor.
{ "colorModel": "rgb", "colorTemperatureRange": { "temperatureMinK": 2000, "temperatureMaxK": 9000 } }
Dispositivo compatível apenas com o modelo de cores do espectro HSV.
{ "colorModel": "hsv" }
Dispositivo compatível apenas com temperatura da cor.
{ "colorTemperatureRange": { "temperatureMinK": 2000, "temperatureMaxK": 9000 } }
Dispositivo compatível apenas com comandos de modelo de cores HSV.
{ "colorModel": "hsv", "commandOnlyColorSetting": true }
STATES do dispositivo
As entidades com essa característica podem informar os estados a seguir como parte da operação QUERY
. Para saber
mais sobre como lidar com intents QUERY
, consulte
fulfillment de intent.
Estados | Tipo | Descrição |
---|---|---|
color |
Object |
Obrigatório. A configuração de cor atual que está sendo usada no dispositivo. |
Contém um dos seguintes itens: | ||
0
|
Object |
Compatibilidade com temperatura da cor. |
temperatureK |
Número inteiro |
Obrigatório. Valor de temperatura em Kelvin. |
1
|
Object |
Suporte a espectro de cores RGB. |
spectrumRgb |
Número inteiro |
Obrigatório. Valor RGB do espectro como um número inteiro decimal. |
2
|
Object |
Suporte a espectro HSV de cores. |
spectrumHsv |
Object |
Obrigatório. Valor HSV de espectro. |
hue |
Número |
Matiz. |
saturation |
Número |
Saturação. |
value |
Número |
Valor. |
Exemplos
Qual é a cor da luz? (em branco)
{ "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 } } }
Dispositivo COMMANDS
Os dispositivos com essa característica podem responder aos comandos a seguir como parte da operação EXECUTE
. Para saber
mais sobre como lidar com intents EXECUTE
, consulte
fulfillment de intent.
action.devices.commands.ColorAbsolute
Define o valor absoluto da cor.
Parâmetros
Parâmetros | Tipo | Descrição |
---|---|---|
color |
Object |
Obrigatório. Cor definida. |
name |
String |
Nome de cor analisado a partir do comando do usuário. Nem sempre pode estar disponível (ou seja, ao usar comandos relativos). |
Contém um dos seguintes itens: | ||
0
|
Object |
Compatibilidade com temperatura da cor. |
temperature |
Número inteiro |
Obrigatório. Valor de temperatura em Kelvin. Consulte RGB, HSV e temperatura da cor para detalhes. |
1
|
Object |
Suporte a 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 detalhes. |
2
|
Object |
Suporte a espectro HSV de cores. |
spectrumHSV |
Object |
Obrigatório. Valor HSV de espectro. Consulte RGB, HSV e temperatura da cor para detalhes. |
hue |
Número |
Matiz. |
saturation |
Número |
Saturação. |
value |
Número |
Valor. |
Exemplos
Deixar a luz branca e quente.
{ "command": "action.devices.commands.ColorAbsolute", "params": { "color": { "name": "Warm White", "temperature": 3000 } } }
Defina a luz magenta.
{ "command": "action.devices.commands.ColorAbsolute", "params": { "color": { "name": "Magenta", "spectrumRGB": 16711935 } } }
Defina a luz magenta.
{ "command": "action.devices.commands.ColorAbsolute", "params": { "color": { "name": "Magenta", "spectrumHSV": { "hue": 300, "saturation": 1, "value": 1 } } } }
Os nomes dos parâmetros são um pouco diferentes entre os parâmetros de comando e de estado. Isso evita colisões com os parâmetros de estado das características obsoletas ColorSpectrum e ColorTemperature.
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