סכימת תכונות של הגדרות צבעים לבית חכם

action.devices.traits.ColorSetting – התכונה הזו חלה על מכשירים, כמו נורות חכמות, שיכולים לשנות את הצבע או את טמפרטורת הצבעים.

RGB, HSV וטמפרטורת הצבע

RGB מייצג את הצבעים כשלשה (אדום, ירוק, כחול). RGB הוא מודל הצבעים שמוגדר כברירת מחדל. כל שלשה RGB יכולה להיות מיוצגת כקוד הקסדצימלי, שווה ערך לערכים ההקסדצימליים של השלשה המשורשרת. לדוגמה, "כחול" הוא (0, 0, 255) ו-#0000FF. אפשר להשתמש בכל ערך בטווח הצבעים של ה-RGB. כלומר, RGB(x, y, z) כאשר x, y, z נמצאים בטווח של [0, 255] כולל.

HSV מייצג את הצבעים כשלשה (גוון, רוויה, ערך). אפשר להמיר כל ערך של צבע ב-HSV ל-RGB, ולהפך. לגוון יש טווח של [0, 360) מעלות (לא כולל 360, כי הוא עוטף ל-0 מעלות). הרוויה וערך מיוצגים על ידי צפים בטווח [0.0, 1.0].

טמפרטורת צבע מייצגת צבעים מסוימים כערכים עשרוניים לא שליליים בקלווין. מאפיין זה מתאר מנורות 'לבנות' או 'חמימות', עם שמות צבעים כמו 'לבן קריר' או 'אור יום מעונן'. לנורות חכמות שתומכות בטמפרטורת צבע יש בדרך כלל טווח של [2000, 9000] קלווין, שמתאים לנורות רגילות עם רמת קלווין קבועה. טמפרטורת הצבעים היא קנה מידה לינארי וקבוצת משנה של מודלים של צבעי ספקטרום RGB/HSV. בטבלה שלמטה מוצגות טמפרטורות לדוגמה ושמות הצבעים התואמים.

טמפרטורה (קלווין) שם הצבע
2,000אור נרות
2,500לבן חם במיוחד
3,000לבן רך, לבן בוקר, לבן קריאה
4,000לבן קר
5,000אור יום, לבן
6000לבן פרחוני
7000אור יום מעונן, עשן לבן
8000כחול מעונן
9000שמיים כחולים

מאפייני המכשיר

מכשירים עם התכונה הזו עשויים לדווח על המאפיינים הבאים כחלק מהפעולה SYNC. מידע נוסף על טיפול באובייקטים מסוג SYNC זמין במאמר מילוי אובייקטים של Intent.

מאפיינים סוג תיאור
commandOnlyColorSetting בוליאני

(ברירת המחדל: false)

הערך הזה מציין אם המכשיר תומך בתקשורת חד-כיוונית (true) או בתקשורת דו-כיוונית (לא נכונה). יש להגדיר את המאפיין הזה כ-True אם המכשיר לא יכול להגיב ל-Intent QUERY או למצב דיווח של התכונה הזו.

מכיל אחד מהפריטים הבאים:
0 אובייקט

תמיכה במודלי צבעים.

colorModel String

חובה.

מודל צבע ספקטרום מלא שנתמך על ידי המכשיר.

ערכים נתמכים:

rgb
hsv
1 אובייקט

תמיכה בטמפרטורת צבע.

colorTemperatureRange אובייקט

חובה.

טווח טמפרטורות צבעים נתמך בקלווין.

temperatureMinK Integer

חובה.

טמפרטורת הצבע המינימלית הנתמכת בקלווין.

temperatureMaxK Integer

חובה.

טמפרטורת הצבע המקסימלית הנתמכת בקלווין.

דוגמאות

מכשיר שתומך במודל צבעים של ספקטרום RGB וגם בטמפרטורת צבעים.

{
  "colorModel": "rgb",
  "colorTemperatureRange": {
    "temperatureMinK": 2000,
    "temperatureMaxK": 9000
  }
}

מכשיר שתומך רק במודל צבע ספקטרום של HSV

{
  "colorModel": "hsv"
}

מכשיר שתומך רק בטמפרטורת צבע

{
  "colorTemperatureRange": {
    "temperatureMinK": 2000,
    "temperatureMaxK": 9000
  }
}

מכשיר שתומך רק בפקודות למודל צבעים של HSV.

{
  "colorModel": "hsv",
  "commandOnlyColorSetting": true
}

מכשיר STATES

ישויות עם התכונה הזו עשויות לדווח על המצבים הבאים כחלק מהפעולה QUERY. מידע נוסף על טיפול באובייקטים מסוג QUERY זמין במאמר מילוי אובייקטים של Intent.

מדינות סוג תיאור
color אובייקט

חובה.

הגדרת הצבע הנוכחית נמצאת בשימוש במכשיר.

מכיל אחד מהפריטים הבאים:
0 אובייקט

תמיכה בטמפרטורת צבע.

temperatureK Integer

חובה.

ערך הטמפרטורה בקלווין.

1 אובייקט

תמיכה בספקטרום הצבעים RGB.

spectrumRgb Integer

חובה.

ספקטרום של ערך RGB כמספר שלם עשרוני.

2 אובייקט

תמיכה בספקטרום צבעים של HSV.

spectrumHsv אובייקט

חובה.

ערך HSV ב-Spectrum.

hue מספר

גוון.

saturation מספר

רוויה.

value מספר

ערך.

דוגמאות

מה צבע התאורה? (לבן חם)

{
  "color": {
    "temperatureK": 3000
  }
}

מה צבע התאורה? (מג'נטה)

{
  "color": {
    "spectrumRgb": 16711935
  }
}

מה צבע התאורה? (מג'נטה)

{
  "color": {
    "spectrumHsv": {
      "hue": 300,
      "saturation": 1,
      "value": 1
    }
  }
}

COMMANDS של מכשיר

מכשירים עם התכונה הזו עשויים להגיב לפקודות הבאות כחלק מהפעולה EXECUTE. מידע נוסף על טיפול באובייקטים מסוג EXECUTE זמין במאמר מילוי אובייקטים של Intent.

action.devices.commands.ColorAbsolute

מגדירים את ערך הצבע המוחלט.

פרמטרים

פרמטרים סוג תיאור
color אובייקט

חובה.

צבע להגדרה.

name String

שם הצבע שנותח מהפקודה של המשתמש. יכול להיות שלא תמיד יהיה זמין (כלומר כשמשתמשים בפקודות יחסיות).

מכיל אחד מהפריטים הבאים:
0 אובייקט

תמיכה בטמפרטורת צבע.

temperature Integer

חובה.

ערך הטמפרטורה בקלווין. פרטים נוספים זמינים במאמר RGB , HSV וטמפרטורת צבע.

1 אובייקט

תמיכה בספקטרום הצבעים RGB.

spectrumRGB Integer

חובה.

ספקטרום של ערך RGB כמספר שלם עשרוני. פרטים נוספים זמינים במאמר RGB , HSV וטמפרטורת צבע.

2 אובייקט

תמיכה בספקטרום צבעים של HSV.

spectrumHSV אובייקט

חובה.

ערך HSV ב-Spectrum. פרטים נוספים זמינים במאמר RGB , HSV וטמפרטורת צבע.

hue מספר

גוון.

saturation מספר

רוויה.

value מספר

ערך.

דוגמאות

יוצרים צבע לבן בהיר וחום.

{
  "command": "action.devices.commands.ColorAbsolute",
  "params": {
    "color": {
      "name": "Warm White",
      "temperature": 3000
    }
  }
}

יוצרים את המג'נטה הבהיר.

{
  "command": "action.devices.commands.ColorAbsolute",
  "params": {
    "color": {
      "name": "Magenta",
      "spectrumRGB": 16711935
    }
  }
}

יוצרים את המג'נטה הבהיר.

{
  "command": "action.devices.commands.ColorAbsolute",
  "params": {
    "color": {
      "name": "Magenta",
      "spectrumHSV": {
        "hue": 300,
        "saturation": 1,
        "value": 1
      }
    }
  }
}

שימו לב ששמות הפרמטרים משתנים מעט בין הפרמטרים של הפקודה ומצב. כך אפשר למנוע התנגשויות עם הפרמטרים של המצב עבור התכונות ColorSpectrum ו-ColorTemperature שהוצאו משימוש.

Command ארץ
temperature temperatureK
spectrumRGB spectrumRgb
spectrumHSV spectrumHsv

ביטויים לדוגמה

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

מכשיר ERRORS

כדאי לעיין ברשימה המלאה של שגיאות וחריגים.