สคีมาลักษณะของ Smart Home ColorSetting
action.devices.traits.ColorSetting
- ลักษณะนี้ใช้กับอุปกรณ์ เช่น หลอดไฟอัจฉริยะ ที่สามารถเปลี่ยนสีหรืออุณหภูมิสีได้
RGB, HSV และอุณหภูมิสี
RGB แสดงสีเป็นชุดค่าผสม 3 ค่า (แดง เขียว น้ำเงิน) RGB เป็นรูปแบบสีเริ่มต้น คู่ RGB 3 ตัวใดก็ได้อาจแสดงเป็นรหัสฐาน 16 ซึ่งเทียบเท่ากับค่าฐาน 16 ของคู่ 3 ตัวที่ต่อเชื่อมกัน เช่น "blue" คือ (0, 0, 255) และ #0000FF คุณใช้ค่าใดก็ได้ภายในพื้นที่สี RGB นั่นคือ RGB(x, y, z) โดยที่ x, y, z อยู่ในช่วง [0, 255]
HSV แสดงสีเป็นชุดค่าผสม 3 รายการ (โทนสี ความอิ่มตัว ค่า) ค่าสีใดก็ได้ใน HSV สามารถแปลงเป็น RGB และในทางกลับกัน เฉดสีมีช่วงเป็นองศา [0, 360) (ไม่รวม 360 เนื่องจากจะวนกลับไปที่ 0 องศา) ความอิ่มตัวและค่าแสดงด้วยค่าทศนิยมในช่วง [0.0, 1.0]
อุณหภูมิสีแสดงบางสีเป็นค่าทศนิยมที่ไม่ใช่ค่าลบในหน่วยเคลวิน แอตทริบิวต์นี้อธิบายแสง "สีขาว" หรือ "โทนอุ่น" พร้อมชื่อสี เช่น "สีขาวอมฟ้า" หรือ "แสงแดดในวันที่มีเมฆมาก" โดยปกติแล้วหลอดไฟอัจฉริยะที่รองรับอุณหภูมิสีจะมีช่วงตั้งแต่ [2,000, 9,000] เคลวิน ซึ่งสอดคล้องกับหลอดไฟแบบดั้งเดิมที่มีค่าเคลวินคงที่ อุณหภูมิสีเป็นรูปแบบเชิงเส้นและชุดย่อยของรูปแบบสีสเปกตรัมแบบเต็ม RGB/HSV ดูตัวอย่างอุณหภูมิและชื่อสีที่เกี่ยวข้องได้ในตารางด้านล่าง
อุณหภูมิ (เคลวิน) | ชื่อสี |
---|---|
2000 | แสงเทียน |
2500 | อัลตร้าวอร์มไวท์ |
3000 | สีขาวนวล สีขาวยามเช้า สีขาวสำหรับอ่าน |
4000 | คูลไวท์ |
5000 | แสงกลางวัน สีขาว |
6000 | สีขาวฟลอรัลไวท์ |
7000 | แสงกลางวันมีเมฆ สีขาวควัน |
8000 | ฟ้าครึ้ม |
9000 | ฟ้าบลูสกาย |
แอตทริบิวต์ของอุปกรณ์
อุปกรณ์ที่มีลักษณะนี้อาจรายงานแอตทริบิวต์ต่อไปนี้เป็นส่วนหนึ่งของการดำเนินการ SYNC
ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent SYNC
ได้ที่การดำเนินการตาม Intent
Attributes | ประเภท | คำอธิบาย |
---|---|---|
commandOnlyColorSetting |
บูลีน |
(ค่าเริ่มต้น: ระบุว่าอุปกรณ์รองรับการสื่อสารแบบทางเดียว (จริง) หรือ 2 ทาง (เท็จ) ตั้งค่าแอตทริบิวต์นี้เป็น "จริง" หากอุปกรณ์ตอบสนองต่อ Intent QUERY หรือการรายงานสถานะสำหรับลักษณะนี้ไม่ได้ |
มีรายการต่อไปนี้ | ||
0
|
ออบเจ็กต์ |
การรองรับรูปแบบสี |
colorModel |
String |
ต้องระบุ รูปแบบสีแบบสเปกตรัมที่อุปกรณ์รองรับ ค่าที่รองรับ
|
1
|
ออบเจ็กต์ |
การรองรับอุณหภูมิสี |
colorTemperatureRange |
ออบเจ็กต์ |
ต้องระบุ ช่วงอุณหภูมิสีที่รองรับในหน่วยเคลวิน |
temperatureMinK |
จำนวนเต็ม |
ต้องระบุ อุณหภูมิสีต่ำสุดที่รองรับในหน่วยเคลวิน |
temperatureMaxK |
จำนวนเต็ม |
ต้องระบุ อุณหภูมิสีสูงสุดที่รองรับในหน่วยเคลวิน |
ตัวอย่าง
อุปกรณ์ที่รองรับทั้งโมเดลสีสเปกตรัม RGB และอุณหภูมิสี
{ "colorModel": "rgb", "colorTemperatureRange": { "temperatureMinK": 2000, "temperatureMaxK": 9000 } }
อุปกรณ์ที่รองรับเฉพาะรูปแบบสีสเปกตรัม HSV
{ "colorModel": "hsv" }
อุปกรณ์ที่รองรับเฉพาะอุณหภูมิสี
{ "colorTemperatureRange": { "temperatureMinK": 2000, "temperatureMaxK": 9000 } }
อุปกรณ์ที่รองรับเฉพาะคำสั่งโมเดลสี HSV เท่านั้น
{ "colorModel": "hsv", "commandOnlyColorSetting": true }
สถานะอุปกรณ์
เอนทิตีที่มีลักษณะนี้อาจรายงานสถานะต่อไปนี้เป็นส่วนหนึ่งของการดำเนินการ QUERY
ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent QUERY
ได้ที่การดำเนินการตาม Intent
รัฐ | ประเภท | คำอธิบาย |
---|---|---|
color |
ออบเจ็กต์ |
ต้องระบุ การตั้งค่าสีที่ใช้อยู่ในอุปกรณ์ |
ประกอบด้วยรายการใดรายการหนึ่งต่อไปนี้ | ||
0
|
ออบเจ็กต์ |
รองรับอุณหภูมิสี |
temperatureK |
จำนวนเต็ม |
ต้องระบุ ค่าอุณหภูมิในหน่วยเคลวิน |
1
|
ออบเจ็กต์ |
รองรับสเปกตรัมสี RGB |
spectrumRgb |
จำนวนเต็ม |
ต้องระบุ ค่า RGB สเปกตรัมที่เป็นจำนวนเต็มทศนิยม |
2
|
ออบเจ็กต์ |
การรองรับสเปกตรัม HSV ของสี |
spectrumHsv |
ออบเจ็กต์ |
ต้องระบุ ค่าสเปกตรัม HSV |
hue |
Number |
Hue |
saturation |
Number |
ความอิ่มตัว |
value |
Number |
ค่า |
ตัวอย่าง
ไฟมีสีอะไร (วอร์มไวท์)
{ "color": { "temperatureK": 3000 } }
ไฟมีสีอะไร (ม่วงแดง)
{ "color": { "spectrumRgb": 16711935 } }
ไฟสีอะไร (ม่วงแดง)
{ "color": { "spectrumHsv": { "hue": 300, "saturation": 1, "value": 1 } } }
คำสั่งอุปกรณ์
อุปกรณ์ที่มีลักษณะนี้อาจตอบสนองต่อคําสั่งต่อไปนี้ซึ่งเป็นส่วนหนึ่งของการดำเนินการ EXECUTE
ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent EXECUTE
ได้ที่การดำเนินการตาม Intent
action.devices.commands.ColorAbsolute
ตั้งค่าสีแบบสัมบูรณ์
พารามิเตอร์
พารามิเตอร์ | ประเภท | คำอธิบาย |
---|---|---|
color |
ออบเจ็กต์ |
ต้องระบุ สีที่จะตั้งค่า |
name |
String |
ชื่อสีที่แยกวิเคราะห์จากคำสั่งของผู้ใช้ อาจไม่พร้อมใช้งานเสมอไป (เช่น เมื่อใช้คำสั่งแบบสัมพัทธ์) |
มีรายการใดรายการหนึ่งต่อไปนี้ | ||
0
|
ออบเจ็กต์ |
รองรับอุณหภูมิสี |
temperature |
จำนวนเต็ม |
ต้องระบุ ค่าอุณหภูมิในหน่วยเคลวิน ดูรายละเอียดได้ที่ RGB, HSV และอุณหภูมิสี |
1
|
ออบเจ็กต์ |
รองรับสเปกตรัมสี RGB |
spectrumRGB |
จำนวนเต็ม |
ต้องระบุ ค่า RGB ของสเปกตรัมเป็นจำนวนเต็มทศนิยม ดูรายละเอียดได้ที่ RGB, HSV และอุณหภูมิสี |
2
|
ออบเจ็กต์ |
การรองรับสเปกตรัม HSV ของสี |
spectrumHSV |
ออบเจ็กต์ |
ต้องระบุ ค่าสเปกตรัม HSV ดูรายละเอียดได้ที่ RGB, HSV และอุณหภูมิสี |
hue |
Number |
Hue |
saturation |
Number |
ความอิ่มตัว |
value |
Number |
ค่า |
ตัวอย่าง
เปลี่ยนสีไฟเป็นสีขาวโทนอุ่น
{ "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 ที่เลิกใช้งานแล้ว
คำสั่ง | รัฐ |
---|---|
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 på 2000 Kelvin
- tänd blått ljus i köket