Schema dei tratti per l'impostazione del colore per la smart home
action.devices.traits.ColorSetting
- Questa caratteristica si applica ai dispositivi, ad esempio le luci smart, in grado di 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 terzina RGB può essere rappresentata come codice esadecimale, equivalente ai valori esadecimali della terzina concatenata. Ad esempio, "blu" è (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 terzina (tonalità, saturazione, valore). Qualsiasi valore di colore in HSV può essere convertito in RGB e viceversa. Hue ha un intervallo di [0, 360) gradi (esclusivo di 360, poiché il campo va a 0 gradi). Saturazione e valore sono rappresentati da numeri in virgola mobile nell'intervallo [0,0, 1,0].
Temperatura colore rappresenta alcuni colori come valori decimali non negativi in Kelvin. Questo attributo descrive le luci "bianco" o "calde", con nomi di colore come "bianco freddo" o "luce diurna coperta". In genere, le luci smart che supportano la temperatura di colore hanno un intervallo di [2000, 9000] Kelvin, corrispondente a quelle convenzionali con Kelvin fisso. La temperatura di colore è una scala lineare e un sottoinsieme dei modelli di colore a spettro completo RGB/HSV. Consulta la tabella seguente 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 mattina, bianco da lettura |
4000 | Bianco freddo |
5000 | Luce diurna, bianco |
6000 | Bianco floreale |
7000 | Luce giornata nuvolosa, fumo bianco |
8000 | Blu nuvoloso |
9000 | Blu cielo |
ATTRIBUTES del dispositivo
I dispositivi con questo trait potrebbero segnalare i seguenti attributi nell'ambito dell'operazione SYNC
. Per scoprire di più sulla gestione degli intent SYNC
, consulta fulfillment dell'intent.
Attributi | Tipo | Descrizione |
---|---|---|
commandOnlyColorSetting |
Booleano |
(Valore predefinito: Indica se il dispositivo supporta l'uso di una comunicazione unidirezionale (true) o bidirezionale (false). Imposta questo attributo su true se il dispositivo non può rispondere a un intent QUERY o a uno stato del report per questo trait. |
Contiene uno dei seguenti elementi: | ||
0
|
Oggetto |
Supporto per i modelli di colore. |
colorModel |
String |
Obbligatorio. Modello di colore a spettro completo supportato dal dispositivo. Valori supportati:
|
1
|
Oggetto |
Supporto per la 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 per il modello di colore HSV.
{ "colorModel": "hsv", "commandOnlyColorSetting": true }
Dispositivo STATES
Le entità con questo trait possono segnalare i seguenti
stati nell'ambito dell'operazione QUERY
. Per scoprire di più sulla gestione degli intent QUERY
, consulta fulfillment dell'intent.
Stati | Tipo | Descrizione |
---|---|---|
color |
Oggetto |
Obbligatorio. L'impostazione di colore corrente attualmente in uso sul dispositivo. |
Contiene uno dei seguenti elementi: | ||
0
|
Oggetto |
Supporto per la temperatura di colore. |
temperatureK |
Intero |
Obbligatorio. Valore della temperatura in Kelvin. |
1
|
Oggetto |
Supporto dello spettro dei colori RGB. |
spectrumRgb |
Intero |
Obbligatorio. Valore dello spettro RGB come numero intero decimale. |
2
|
Oggetto |
Supporto dello spettro HSV dei colori. |
spectrumHsv |
Oggetto |
Obbligatorio. Valore HSV dello spettro. |
hue |
Number |
Tonalità. |
saturation |
Number |
Saturazione. |
value |
Number |
Qualità/prezzo. |
Esempi
Di che colore è la luce? (bianco caldo)
{ "color": { "temperatureK": 3000 } }
Di che colore è la luce? (Magenta)
{ "color": { "spectrumRgb": 16711935 } }
Di che colore è la luce? (Magenta)
{ "color": { "spectrumHsv": { "hue": 300, "saturation": 1, "value": 1 } } }
COMMANDS dispositivo
I dispositivi con questa caratteristica potrebbero rispondere ai seguenti comandi nell'ambito dell'operazione EXECUTE
. Per scoprire di più sulla gestione degli intent EXECUTE
, consulta fulfillment dell'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 esempio quando si utilizzano comandi relativi). |
Contiene uno dei seguenti elementi: | ||
0
|
Oggetto |
Supporto per la temperatura di colore. |
temperature |
Intero |
Obbligatorio. Valore della temperatura in Kelvin. Per informazioni dettagliate, consulta la sezione RGB, HSV e temperatura di colore. |
1
|
Oggetto |
Supporto dello spettro dei colori RGB. |
spectrumRGB |
Intero |
Obbligatorio. Valore dello spettro RGB come numero intero decimale. Per informazioni dettagliate, consulta la sezione RGB, HSV e temperatura di colore. |
2
|
Oggetto |
Supporto dello spettro HSV dei colori. |
spectrumHSV |
Oggetto |
Obbligatorio. Valore HSV dello spettro. Per informazioni dettagliate, consulta la sezione RGB, HSV e temperatura di colore. |
hue |
Number |
Tonalità. |
saturation |
Number |
Saturazione. |
value |
Number |
Qualità/prezzo. |
Esempi
Imposta la luce su un bianco caldo.
{ "command": "action.devices.commands.ColorAbsolute", "params": { "color": { "name": "Warm White", "temperature": 3000 } } }
Scegli il colore magenta chiaro.
{ "command": "action.devices.commands.ColorAbsolute", "params": { "color": { "name": "Magenta", "spectrumRGB": 16711935 } } }
Scegli il colore magenta chiaro.
{ "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 quelli di stato. Ciò evita conflitti con i parametri di stato per i trait ColorSpectrum e ColorTemperature deprecati.
Comando | Stato |
---|---|
temperature |
temperatureK |
spectrumRGB |
spectrumRgb |
spectrumHSV |
spectrumHsv |
Espressioni di esempio
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