Schemat funkcji ustawienia kolorów inteligentnego domu
action.devices.traits.ColorSetting
– ta cecha dotyczy urządzeń takich jak inteligentne oświetlenie, które mogą zmieniać kolor lub temperaturę kolorów.
RGB, HSV i temperatura kolorów
RGB reprezentuje kolory jako triole (czerwony, zielony, niebieski). RGB to domyślny model kolorów. Dowolny triole RGB może być reprezentowany jako kod szesnastkowy, odpowiadający wartościom szesnastkowym łączonych trioli. Na przykład „niebieski” to (0, 0, 255) i #0000FF. Możesz użyć dowolnej wartości w przestrzeni kolorów RGB, czyli RGB(x, y, z), gdzie x, y, z mieszczą się w zakresie [0, 255] włącznie.
HSV przedstawia kolory jako triole (barwa, nasycenie, wartość). Każda wartość koloru w HSV może zostać przekonwertowana na RGB i odwrotnie. Odcień ma zakres [0–360) stopni (poza 360°, ponieważ zawija się do 0 stopni). Nasycenie i wartość są przedstawiane w postaci liczby zmiennoprzecinkowej w zakresie [0,0; 1,0].
Temperatura kolorów reprezentuje niektóre kolory jako nieujemne wartości dziesiętne w kelwinach. Ten atrybut opisuje „białe” lub „ciepłe” światło o nazwach kolorów, np. „chłodna biel” lub „słońce zachmurzone”. Inteligentne oświetlenie wspierające temperaturę kolorów ma zwykle zakres [2000, 9000] kelwinów, co odpowiada konwencjonalnemu rodzajowi oświetlenia o stałym zakresie Kelwina. Temperatura kolorów jest skalą liniową i podzbiorem modeli kolorów o pełnym zakresie RGB/HSV. W tabeli poniżej znajdziesz przykładowe temperatury i odpowiadające im nazwy kolorów.
Temperatura (Kelwina) | Nazwa koloru |
---|---|
2000 | Świeca |
2500 | Ultraciepła biel |
3000 | Miękka biel, poranek, biel do czytania |
4000 | Zimna biel |
5000 | Światło dzienne, biały |
6000 | Biały kwiatowy |
7000 | Pochmurny dzień – światło dzienne, biały dym |
8000 | Niebieskie zachmurzenie |
9000 | Błękitne niebo |
Urządzenie ATTRIBUTES
Urządzenia z tą cechą mogą zgłaszać poniższe atrybuty w ramach operacji SYNC
. Więcej informacji o obsłudze intencji SYNC
znajdziesz w artykule o realizacji intencji.
Atrybuty | Typ | Opis |
---|---|---|
commandOnlyColorSetting |
Wartość logiczna |
(Domyślnie: Określa, czy urządzenie obsługuje komunikację jednokierunkową (prawda) czy dwukierunkową (fałsz). Ustaw ten atrybut na wartość true, jeśli urządzenie nie może odpowiedzieć na intencję QUERY lub stan raportu w przypadku tej cechy. |
Zawiera następujące produkty: | ||
0
|
Obiekt |
Obsługa modelu koloru. |
colorModel |
String |
Wymagane. Obsługiwany przez urządzenie model kolorów o pełnym zakresie. Obsługiwane wartości:
|
1
|
Obiekt |
Obsługa temperatury kolorów. |
colorTemperatureRange |
Obiekt |
Wymagane. Obsługiwany zakres temperatury kolorów w kelwinach. |
temperatureMinK |
Liczba całkowita |
Wymagane. Minimalna obsługiwana temperatura kolorów w kelwinach. |
temperatureMaxK |
Liczba całkowita |
Wymagane. Maksymalna obsługiwana temperatura kolorów w kelwinach. |
Przykłady
Urządzenie, które obsługuje zarówno model kolorów widma RGB, jak i temperaturę kolorów.
{ "colorModel": "rgb", "colorTemperatureRange": { "temperatureMinK": 2000, "temperatureMaxK": 9000 } }
Urządzenie, które obsługuje tylko model kolorów widma HSV
{ "colorModel": "hsv" }
Urządzenie, które obsługuje tylko temperaturę kolorów.
{ "colorTemperatureRange": { "temperatureMinK": 2000, "temperatureMaxK": 9000 } }
Urządzenie, które obsługuje tylko polecenia dotyczące modelu kolorów HSV.
{ "colorModel": "hsv", "commandOnlyColorSetting": true }
Urządzenie STATES
Encje z tą cechą mogą zgłaszać poniższe stany w ramach operacji QUERY
. Więcej informacji o obsłudze intencji QUERY
znajdziesz w artykule o realizacji intencji.
Stany | Typ | Opis |
---|---|---|
color |
Obiekt |
Wymagane. Obecnie używane ustawienie koloru na urządzeniu. |
Zawiera jeden z tych produktów: | ||
0
|
Obiekt |
Obsługa temperatury kolorów. |
temperatureK |
Liczba całkowita |
Wymagane. Wartość temperatury w kelwinach. |
1
|
Obiekt |
Obsługa spektrum kolorów RGB. |
spectrumRgb |
Liczba całkowita |
Wymagane. Wartość widma RGB w postaci dziesiętnej liczby całkowitej. |
2
|
Obiekt |
Obsługa spektrum kolorów HSV. |
spectrumHsv |
Obiekt |
Wymagane. Wartość widma HSV. |
hue |
Number |
Odcień. |
saturation |
Number |
Nasycenie. |
value |
Number |
Wartość. |
Przykłady
Jaki jest kolor światła? (ciepła biel)
{ "color": { "temperatureK": 3000 } }
Jaki jest kolor światła? (purpurowy)
{ "color": { "spectrumRgb": 16711935 } }
Jaki jest kolor światła? (purpurowy)
{ "color": { "spectrumHsv": { "hue": 300, "saturation": 1, "value": 1 } } }
CommandS na urządzeniu
Urządzenia z tą cechą mogą reagować na podane niżej polecenia w ramach operacji EXECUTE
. Więcej informacji o obsłudze intencji EXECUTE
znajdziesz w artykule o realizacji intencji.
action.devices.commands.ColorAbsolute
Ustaw bezwzględną wartość koloru.
Parametry
Parametry | Typ | Opis |
---|---|---|
color |
Obiekt |
Wymagane. Kolor do ustawienia. |
name |
String |
Nazwa koloru pobrana z polecenia użytkownika; może nie zawsze być dostępna (np. w przypadku używania poleceń względnych). |
Zawiera jeden z tych produktów: | ||
0
|
Obiekt |
Obsługa temperatury kolorów. |
temperature |
Liczba całkowita |
Wymagane. Wartość temperatury w kelwinach. Szczegółowe informacje znajdziesz na stronach RGB, HSV i temperatura kolorów. |
1
|
Obiekt |
Obsługa spektrum kolorów RGB. |
spectrumRGB |
Liczba całkowita |
Wymagane. Wartość widma RGB w postaci dziesiętnej liczby całkowitej. Szczegółowe informacje znajdziesz na stronach RGB, HSV i temperatura kolorów. |
2
|
Obiekt |
Obsługa spektrum kolorów HSV. |
spectrumHSV |
Obiekt |
Wymagane. Wartość widma HSV. Szczegółowe informacje znajdziesz na stronach RGB, HSV i temperatura kolorów. |
hue |
Number |
Odcień. |
saturation |
Number |
Nasycenie. |
value |
Number |
Wartość. |
Przykłady
Zmień kolor światła na ciepły, biały.
{ "command": "action.devices.commands.ColorAbsolute", "params": { "color": { "name": "Warm White", "temperature": 3000 } } }
Zmień kolor na jasnopurpurowy.
{ "command": "action.devices.commands.ColorAbsolute", "params": { "color": { "name": "Magenta", "spectrumRGB": 16711935 } } }
Zmień kolor na jasnopurpurowy.
{ "command": "action.devices.commands.ColorAbsolute", "params": { "color": { "name": "Magenta", "spectrumHSV": { "hue": 300, "saturation": 1, "value": 1 } } } }
Zwróć uwagę, że nazwy parametrów różnią się nieco między parametrami polecenia i stanu. Pozwala to uniknąć kolizji z parametrami stanu wycofanych cech ColorSpectrum i ColorTemperature.
Polecenie | Stan |
---|---|
temperature |
temperatureK |
spectrumRGB |
spectrumRgb |
spectrumHSV |
spectrumHsv |
Przykładowe wypowiedzi
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