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