Schema del tratto ColorSetting per la smart home
action.devices.traits.ColorSetting
: questo attributo si applica ai dispositivi, come le lampadine smart, che possono cambiare colore o temperatura di colore.
RGB, HSV e temperatura di colore
RGB rappresenta i colori come una tripletta (rosso, verde, blu). RGB è il modello di colore predefinito. Qualsiasi tripletta RGB può essere rappresentata come codice esadecimale, equivalente ai valori esadecimali della tripletta concatenata. Ad esempio, "blu" corrisponde a (0, 0, 255) e #0000FF. Puoi utilizzare qualsiasi valore all'interno dello spazio colore RGB, ovvero RGB(x, y, z) dove x, y, z rientrano nell'intervallo [0, 255] inclusi.
HSV rappresenta i colori come una tripletta (tinta, saturazione, valore). Qualsiasi valore di colore in HSV può essere convertito in RGB e viceversa. La tonalità ha un intervallo di gradi [0, 360] (escluso 360, poiché torna a 0 gradi). La saturazione e il valore sono rappresentati da numeri in virgola mobile nell'intervallo [0,0, 1,0].
La temperatura di colore rappresenta alcuni colori come valori decimali non negativi in Kelvin. Questo attributo descrive le luci "bianco" o "caldo", con nomi di colore come "bianco freddo" o "luce del giorno nuvolosa". Le luci smart che supportano la temperatura di colore in genere hanno un intervallo di [2000, 9000] Kelvin, che corrisponde alle luci convenzionali con Kelvin fissi. La temperatura colore è una scala lineare e un sottoinsieme dei modelli di colore a spettro completo RGB/HSV. Consulta la tabella riportata di seguito per alcuni esempi di temperature e nomi dei colori corrispondenti.
Temperatura (Kelvin) | Nome colore |
---|---|
2000 | Lume di candela |
2500 | Bianco molto caldo |
3000 | Bianco tenue, Bianco mattutino, Bianco lettura |
4000 | Bianco freddo |
5000 | Luce diurna, bianca |
6000 | Bianco floreale |
7000 | Luce diurna nuvolosa, fumo bianco |
8000 | Blu nuvoloso |
9000 | Blue Sky |
ATTRIBUTI del dispositivo
I dispositivi con questa caratteristica possono segnalare i seguenti
attributi nell'ambito dell'operazione SYNC
. Per scoprire di più sulla gestione degli intent SYNC
, consulta Adempimento degli intent.
Attributi | Tipo | Descrizione |
---|---|---|
commandOnlyColorSetting |
Valore booleano |
(Valore predefinito: Indica se il dispositivo supporta l'utilizzo della comunicazione unidirezionale (true) o bidirezionale (false). Imposta questo attributo su true se il dispositivo non può rispondere a un intento QUERY o a uno stato Report per questa caratteristica. |
Contiene uno dei seguenti elementi: | ||
0
|
Oggetto |
Supporto del modello di colore. |
colorModel |
String |
Obbligatorio. Modello di colore a spettro completo supportato dal dispositivo. Valori supportati:
|
1
|
Oggetto |
Supporto della temperatura di colore. |
colorTemperatureRange |
Oggetto |
Obbligatorio. Intervallo di temperatura di colore supportato in Kelvin. |
temperatureMinK |
Intero |
Obbligatorio. Temperatura di colore minima supportata in Kelvin. |
temperatureMaxK |
Intero |
Obbligatorio. Temperatura di colore massima supportata in Kelvin. |
Esempi
Dispositivo che supporta sia il modello di colore dello spettro RGB sia la temperatura di colore.
{ "colorModel": "rgb", "colorTemperatureRange": { "temperatureMinK": 2000, "temperatureMaxK": 9000 } }
Dispositivo che supporta solo il modello di colore dello spettro HSV.
{ "colorModel": "hsv" }
Dispositivo che supporta solo la temperatura di colore.
{ "colorTemperatureRange": { "temperatureMinK": 2000, "temperatureMaxK": 9000 } }
Dispositivo che supporta solo i comandi del modello di colore HSV.
{ "colorModel": "hsv", "commandOnlyColorSetting": true }
STATI del dispositivo
Le entità con questo attributo possono segnalare i seguenti stati nell'ambito dell'operazione QUERY
. Per scoprire di più sulla gestione degli intent QUERY
, consulta Completamento dell'intent.
Stati | Tipo | Descrizione |
---|---|---|
color |
Oggetto |
Obbligatorio. L'impostazione del colore attualmente in uso sul dispositivo. |
Contiene uno dei seguenti elementi: | ||
0
|
Oggetto |
Supporto della temperatura di colore. |
temperatureK |
Intero |
Obbligatorio. Valore della temperatura in Kelvin. |
1
|
Oggetto |
Supporto dello spettro di colori RGB. |
spectrumRgb |
Intero |
Obbligatorio. Valore RGB dello spettro come numero intero decimale. |
2
|
Oggetto |
Supporto dello spettro HSV dei colori. |
spectrumHsv |
Oggetto |
Obbligatorio. Valore HSV spettro. |
hue |
Number |
Tonalità. |
saturation |
Number |
Saturazione. |
value |
Number |
conv. |
Esempi
Qual è il colore della luce? (bianco caldo)
{ "color": { "temperatureK": 3000 } }
Di che colore è la luce? (magenta)
{ "color": { "spectrumRgb": 16711935 } }
Qual è il colore della luce? (magenta)
{ "color": { "spectrumHsv": { "hue": 300, "saturation": 1, "value": 1 } } }
COMANDI del dispositivo
I dispositivi con questa caratteristica possono rispondere ai seguenti comandi nell'ambito dell'operazione EXECUTE
. Per scoprire di più sulla gestione degli intent EXECUTE
, consulta Adempimento degli intent.
action.devices.commands.ColorAbsolute
Imposta il valore assoluto del colore.
Parametri
Parametri | Tipo | Descrizione |
---|---|---|
color |
Oggetto |
Obbligatorio. Colore da impostare. |
name |
String |
Nome del colore analizzato dal comando dell'utente. Potrebbe non essere sempre disponibile (ad es. quando si utilizzano i comandi relativi). |
Contiene uno dei seguenti elementi: | ||
0
|
Oggetto |
Supporto della temperatura di colore. |
temperature |
Intero |
Obbligatorio. Valore della temperatura in Kelvin. Per maggiori dettagli, consulta RGB, HSV e temperatura del colore. |
1
|
Oggetto |
Supporto dello spettro di colori RGB. |
spectrumRGB |
Intero |
Obbligatorio. Valore RGB dello spettro come numero intero decimale. Per informazioni dettagliate, consulta RGB, HSV e temperatura di colore. |
2
|
Oggetto |
Supporto dello spettro HSV dei colori. |
spectrumHSV |
Oggetto |
Obbligatorio. Valore HSV spettro. Per informazioni dettagliate, consulta RGB, HSV e temperatura di colore. |
hue |
Number |
Tonalità. |
saturation |
Number |
Saturazione. |
value |
Number |
conv. |
Esempi
Rendi la luce bianco caldo.
{ "command": "action.devices.commands.ColorAbsolute", "params": { "color": { "name": "Warm White", "temperature": 3000 } } }
Rendi la luce magenta.
{ "command": "action.devices.commands.ColorAbsolute", "params": { "color": { "name": "Magenta", "spectrumRGB": 16711935 } } }
Rendi la luce magenta.
{ "command": "action.devices.commands.ColorAbsolute", "params": { "color": { "name": "Magenta", "spectrumHSV": { "hue": 300, "saturation": 1, "value": 1 } } } }
Tieni presente che i nomi dei parametri sono leggermente diversi tra i parametri di comando e di stato. In questo modo vengono evitate collisioni con i parametri di stato per i trait deprecati ColorSpectrum e ColorTemperature.
Comando | Stato |
---|---|
temperature |
temperatureK |
spectrumRGB |
spectrumRgb |
spectrumHSV |
spectrumHsv |
Esempi di enunciato
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