Smart Home ColorSpectrum Trait Şeması
Bu özellik kullanımdan kaldırıldı. Bunun yerine ColorSettings 'i kullanın.
action.devices.traits.ColorSpectrum
: Bu özellik, renk spektrumu ayarlayabilen tüm cihazlara aittir. Bu, RGB renk aralıklarını alan "tam" renk ampulleri için geçerlidir. Işıklarda ColorSpectrum ve ColorTemperature herhangi bir kombinasyonu bulunabilir. Aksan lambalar ve LED'li bantlarda yalnızca Spectrum olabilir.
Bazı okuma ampüllerinde ise yalnızca sıcaklık vardır. Temel ampuller veya akıllı prizlerdeki hareketsiz ışıklar da yoktur.
Cihaz ATTRIBUTES
Özellik
Tanım
colorModel
İsteğe bağlı. HSV (ton, doygunluk, değer) renk modeli için cihaz tercihini belirtmek üzere hsv
dizesine ayarlanabilir. Varsayılan değer: rgb
.
Örnek SYNC İsteği ve Yanıtı
{
"requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
"inputs": [{
"intent": "action.devices.SYNC"
}]
}
'use strict';
const {smarthome} = require('actions-on-google');
const functions = require('firebase-functions');
const app = smarthome();
app.onSync((body, headers) => {
return {
requestId: body.requestId,
payload: {
agentUserId: '1836.15267389',
devices: [{
id: '123',
type: 'action.devices.types.LIGHT',
traits: [
'action.devices.traits.ColorSpectrum'
],
name: {
defaultNames: ['AAA bulb A19 color hyperglow'],
name: 'lamp1',
nicknames: ['reading lamp']
},
willReportState: true,
attributes: {
colorModel: 'rgb'
},
deviceInfo: {
manufacturer: 'AAA',
model: 'hg11',
hwVersion: '1.2',
swVersion: '5.4'
},
customData: {
fooValue: 12,
barValue: false,
bazValue: 'dancing alpaca'
}
}]
}
};
});
// ...
exports.smarthome = functions.https.onRequest(app);
{
"requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
"payload": {
"agentUserId": "1836.15267389",
"devices": [
{
"id": "123",
"type": "action.devices.types.LIGHT",
"traits": [
"action.devices.traits.ColorSpectrum"
],
"name": {
"defaultNames": [
"AAA bulb A19 color hyperglow"
],
"name": "lamp1",
"nicknames": [
"reading lamp"
]
},
"willReportState": true,
"attributes": {
"colorModel": "rgb"
},
"deviceInfo": {
"manufacturer": "AAA",
"model": "hg11",
"hwVersion": "1.2",
"swVersion": "5.4"
},
"customData": {
"fooValue": 12,
"barValue": false,
"bazValue": "dancing alpaca"
}
}
]
}
}
Cihaz STATUS
Eyalet
Tanım
color
Nesne. Geçerli renk ayarı. Belirli bir ışık spektrum VEYA sıcaklık modunda olduğu için bu nesne, alakalı moddaki geçerli renk ayarlarını içerir.
name
Dizesi. Renk noktası (Spektrum veya Sıcaklık) iş ortağının renk listesindeki önceden belirlenmiş bir adla eşleşirse adı iade edin.
spectrumRGB
Tam sayı. RGB cinsinden spektrum değeri (tam sayı olarak onaltılık değer).
Cihaz Komisyonları
Komut
Parametreler/Tanımlar
action.devices.commands.ColorAbsolute
color
Nesne. Zorunlu. RGB veya sıcaklık ve isteğe bağlı olarak bir ad içerir.
name
Dizesi. Kullanıcının komutunda sağlanan renk adı (İngilizce). Her zaman kullanılamaz (göreli komutlar için).
spectrumRGB
Tam sayı. RGB cinsinden spektrum değeri (tam sayı olarak onaltılık değer).
Örnek Yürütme İsteği ve Yanıtı
Işıkımı kırmızı yap.
{
"requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
"inputs": [{
"intent": "action.devices.EXECUTE",
"payload": {
"commands": [{
"devices": [{
"id": "123",
"customData": {
"fooValue": 74,
"barValue": true,
"bazValue": "sheepdip"
}
}],
"execution": [{
"command": "action.devices.commands.ColorAbsolute",
"params": {
"color": {
"name": "red",
"spectrumRGB": 16711680
}
}
}]
}]
}
}]
}
'use strict';
const {smarthome} = require('actions-on-google');
const functions = require('firebase-functions');
const app = smarthome();
app.onExecute((body, headers) => {
return {
requestId: body.requestId,
payload: {
commands: [{
ids: ['123'],
status: 'SUCCESS',
states: {
color: {
name: 'red',
spectrumRGB: 12655639
}
}
}]
}
};
});
// ...
exports.smarthome = functions.https.onRequest(app);
{
"requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
"payload": {
"commands": [
{
"ids": [
"123"
],
"status": "SUCCESS",
"states": {
"color": {
"name": "red",
"spectrumRGB": 12655639
}
}
}
]
}
}
Diğer örnek çağrılar aşağıdakileri içerir:
Işıklarımı yeşile ayarla.
Masa lambamı kırmızı olarak değiştir.