مخطط سمة درجة حرارة الألوان للمنزل المزوّد بأجهزة ذكية

action.devices.traits.ColorTemperature - تنتمي هذه السمة إلى أي أجهزة يمكنها ضبط درجة حرارة الألوان.

وينطبق هذا على المصابيح "الدافئة" التي تأخذ نقطة لون بها كلفن. ويكون هذا بشكل عام أسلوبًا منفصلاً عن ColorSpectrum، وقد تكون هناك نقاط بيضاء متاحة عبر "درجة الحرارة" لا يمكن الوصول إليها من خلال Spectrum. استنادًا إلى السمات المتاحة، قد تختار Google الوضع المناسب لاستخدامه بناءً على الطلب ونوع الإضاءة (على سبيل المثال، جعل مصابيح غرفة المعيشة بيضاء قد ترسل أوامر ضبط درجة الحرارة إلى بعض المصابيح وأوامر Spectrum إلى شرائط LED).

سمات الجهاز

السمة التعريف
temperatureMinK اختياريّ. تكون هذه السمة مطلوبة في حال ضبط السمة temperatureMaxK. الحد الأدنى لدرجة حرارة الألوان التي يدعمها الضوء، بالكلفن.
temperatureMaxK اختياريّ. تكون هذه السمة مطلوبة في حال ضبط السمة temperatureMinK. الحد الأقصى لدرجة حرارة الألوان التي يدعمها الضوء، بالكلفن.

نموذج طلب المزامنة والاستجابة

طلب
{
    "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.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);
JSON
{
  "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"
        }
      }
    ]
  }
}
أداة التحقّق من الصحة

حالات الجهاز

الحالة التعريف
color كائن. إعداد اللون الحالي. بما أنّ ضوءًا معيّنًا يكون في وضع "الطيف أو" الحرارة، يتضمّن هذا العنصر إعدادات الألوان الحالية في الوضع المناسب.
  • سلسلة name إذا كانت نقطة اللون (طيف أو درجة الحرارة) تتطابق مع اسم تم إعداده مسبقًا في قائمة الألوان للشريك، يجب عرض الاسم.
  • عدد صحيح واحد (temperature). درجة حرارة الألوان بالكلفن.

نموذج لطلب وردّ QUERY

ما هي درجة حرارة ألوان الإضاءة الحالية؟
طلب
{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "inputs": [{
    "intent": 'action.devices.QUERY',
    "payload": {
      "devices": [{
        "id": "123",
        "customData": {
          "fooValue": 74,
          "barValue": true,
          "bazValue": "foo"
        }
      }]
    }
  }]
}
Node.js
'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);
JSON
{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "devices": {
      "123": {
        "online": true,
        "color": {
          "name": "warm white",
          "temperature": 25000
        },
        "status": "SUCCESS"
      }
    }
  }
}

مفاتيح الجهاز

Command المَعلمات/التعريف
action.devices.commands.ColorAbsolute كائن color. مطلوبة. ستتضمّن نموذج أحمر أخضر أزرق أو درجة الحرارة، ويمكنك اختيار اسم.
  • سلسلة name اسم اللون (باللغة الإنجليزية) كما هو مقدَّم في طلب المستخدم. غير متوفر دائمًا (للأوامر النسبية).
  • عدد صحيح واحد (temperature). درجة حرارة الألوان بالكلفن.

نموذج لطلب وردّ التنفيذ

ضبط الإضاءة على اللون الأبيض الهادئ
طلب
{
  "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
              }
          }
        }]
      }]
    }
  }]
}
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: 'soft white',
            temperature: 2700
          }
        }
      }]
    }
  };
});

// ...

exports.smarthome = functions.https.onRequest(app);
JSON
{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "color": {
            "name": "soft white",
            "temperature": 2700
          }
        }
      }
    ]
  }
}