Willkommen beim Google Home Developer Center, der neuen Anlaufstelle für Smart-Home-Aktionen. Hinweis:Sie erstellen weiterhin Aktionen in der Actions Console.
Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

Schema für Farbspektrums-Smart-Home

action.devices.traits.ColorSpectrum – Diese Eigenschaft gehört zu jedem Gerät, das ein Farbspektrum festlegen kann. Dies gilt für „volle“ Glühbirnen mit RGB-Farbbereichen. Leuchten können eine beliebige Kombination aus ColorSpectrum und ColorTemperature haben. Akzentleuchten und LED-Streifen haben möglicherweise nur Spectrum, während einige Leselampen nur über Temperatur verfügen. Sowohl einfache Lampen als auch dumme Lampen haben keine.

Gerät ATTRIBUTE

Attribut Definition
colorModel Optional. Kann auf String hsv gesetzt werden, um die Gerätepräferenz für das Farbmodell HSV (Farbton, Sättigung, Wert) anzugeben. Der Standardwert ist rgb.

Beispiel für eine SYNC-Anfrage und -Antwort

Anfrage
{
    "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
    "inputs": [{
      "intent": "action.devices.SYNC"
    }]
}
Node.js
'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);
JSON
{
  "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"
        }
      }
    ]
  }
}
Validierung

Gerät STATES

Status Definition
color Objekt. Aktuelle Farbeinstellung. Da sich ein bestimmtes Licht im Spektrum- ODER Temperaturmodus befindet, enthält dieses Objekt die aktuellen Farbeinstellungen im relevanten Modus.
  • name: String Wenn der Farbpunkt (Spektrum oder Temperatur) mit einem voreingestellten Namen in der Farbliste des Partners übereinstimmt, wird der Name zurückgegeben.
  • spectrumRGB Ganzzahl. Spektrumwert in RGB (Hexadezimalwert als Ganzzahl).

Gerätebefehle

Befehl Parameter/Definition
action.devices.commands.ColorAbsolute color-Objekt. Erforderlich. Enthält RGB oder Temperatur und optional einen Namen.
  • name: String Farbname (auf Englisch), wie im Befehl des Nutzers angegeben. Nicht immer verfügbar (für relative Befehle).
  • spectrumRGB Ganzzahl. Spektrumwert in RGB (Hexadezimalwert als Ganzzahl).

Beispiel-EXECUTE-Anfrage und -Antwort

Stell mein Licht auf Rot.
Anfrage
{
  "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
            }
          }
        }]
      }]
    }
  }]
}
Node.js
'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);
JSON
{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "color": {
            "name": "red",
            "spectrumRGB": 12655639
          }
        }
      }
    ]
  }
}
Weitere Beispiele für Aufrufe:
  • Stell meine Lampen auf Grün.
  • Ändere meine Schreibtischlampe zu Rot.