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
2000Lume di candela
2500Bianco molto caldo
3000Bianco tenue, Bianco mattutino, Bianco lettura
4000Bianco freddo
5000Luce diurna, bianca
6000Bianco floreale
7000Luce diurna nuvolosa, fumo bianco
8000Blu nuvoloso
9000Blue 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: false)

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:

rgb
hsv
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 2000 Kelvin
  • tänd blått ljus i köket

ERRORI del dispositivo

Consulta l'elenco completo di errori ed eccezioni.