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
2500Ultraciepła biel
3000Miękka biel, poranek, biel do czytania
4000Zimna biel
5000Światło dzienne, biały
6000Biały kwiatowy
7000Pochmurny dzień – światło dzienne, biały dym
8000Niebieskie zachmurzenie
9000Błę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: false)

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:

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

Urządzenie ERRORS

Zobacz pełną listę błędów i wyjątków.