Schema del colore della temperatura smart home
action.devices.traits.ColorTemperature
: questo tratto appartiene a qualsiasi
dispositivo in grado di impostare la temperatura del colore.
Questo vale per le lampadine "calde" che assumono un punto di colore
in Kelvin. In genere si tratta di una modalità separata da
ColorSpectrum
e la disponibilità di punti bianchi tramite la temperatura non è raggiungibile da Spectrum. In base alle caratteristiche disponibili, Google potrebbe scegliere la modalità appropriata da utilizzare in base alla richiesta e al tipo di luce. Ad esempio,
Fai diventare bianche le luci del salotto potrebbe inviare comandi di Temperatura ad alcune lampadine e i comandi Spectrum alle strisce LED.
ATTRIBUTE dispositivo
Attributo |
Definizione |
temperatureMinK |
Campo facoltativo. Obbligatorio se il criterio temperatureMaxK è impostato. Temperatura minima del colore supportata dalla luce, in Kelvin. |
temperatureMaxK |
Campo facoltativo. Obbligatorio se il criterio temperatureMinK è impostato. Temperatura massima del colore supportata dalla luce, in Kelvin. |
Esempio di richiesta e risposta di SYNC
{
"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.ColorTemperature'
],
name: {
defaultNames: ['AAA bulb A19 color hyperglow'],
name: 'lamp1',
nicknames: ['reading lamp']
},
willReportState: true,
attributes: {
temperatureMinK: 2000,
temperatureMaxK: 6500
},
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.ColorTemperature"
],
"name": {
"defaultNames": [
"AAA bulb A19 color hyperglow"
],
"name": "lamp1",
"nicknames": [
"reading lamp"
]
},
"willReportState": true,
"attributes": {
"temperatureMinK": 2000,
"temperatureMaxK": 6500
},
"deviceInfo": {
"manufacturer": "AAA",
"model": "hg11",
"hwVersion": "1.2",
"swVersion": "5.4"
},
"customData": {
"fooValue": 12,
"barValue": false,
"bazValue": "dancing alpaca"
}
}
]
}
}
STATO dispositivo
Stato |
Definizione |
color |
Oggetto. Impostazione colore attuale. Poiché una determinata luce è in modalità spettro O
temperatura, questo oggetto include le impostazioni del colore attuali
nella modalità pertinente.
- Stringa
name . Se il punto colore (Spettro o Temperatura) corrisponde a un nome preimpostato nell'elenco colori del partner, restituiscilo.
- Numero intero di
temperature . Temperatura colore a Kelvin.
|
Esempio di richiesta e risposta QUERY
Qual è la temperatura attuale del colore della luce?
{
"requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
"inputs": [{
"intent": 'action.devices.QUERY',
"payload": {
"devices": [{
"id": "123",
"customData": {
"fooValue": 74,
"barValue": true,
"bazValue": "foo"
}
}]
}
}]
}
'use strict';
const {smarthome} = require('actions-on-google');
const functions = require('firebase-functions');
const app = smarthome();
app.onQuery((body, headers) => {
return {
requestId: body.requestId,
payload: {
devices: {
123: {
online: true,
color: {
name: 'warm white',
temperature: 25000
},
status: 'SUCCESS'
}
}
}
};
});
// ...
exports.smarthome = functions.https.onRequest(app);
{
"requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
"payload": {
"devices": {
"123": {
"online": true,
"color": {
"name": "warm white",
"temperature": 25000
},
"status": "SUCCESS"
}
}
}
}
COMANDI dispositivo
Comando |
Parametri/definizione |
action.devices.commands.ColorAbsolute |
Oggetto color . Obbligatorio. Includerà il RGB o la temperatura e, facoltativamente, un nome.
- Stringa
name . Nome del colore (in inglese) come fornito nel comando dell'utente. Non sempre disponibile (per i comandi relativi).
- Numero intero di
temperature . Temperatura colore a Kelvin.
|
Esempio di ESECUZIONE Richiesta e risposta
Regola la luce sul bianco.
{
"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": "soft white",
"temperature": 2700
}
}
}]
}]
}
}]
}
'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: 'soft white',
temperature: 2700
}
}
}]
}
};
});
// ...
exports.smarthome = functions.https.onRequest(app);
{
"requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
"payload": {
"commands": [
{
"ids": [
"123"
],
"status": "SUCCESS",
"states": {
"color": {
"name": "soft white",
"temperature": 2700
}
}
}
]
}
}