مرحبًا بك في "مركز مطوّري برامج Google Home"، وجهتك الجديدة لتعلّم كيفية تطوير إجراءات منزلية ذكية. ملاحظة: ستواصل إنشاء الإجراءات في وحدة تحكم الإجراءات.
تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

مخطط سمة درجة حرارة المنزل الذكي

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

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

الجهاز ATTRIBUTES

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

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

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

حالة الجهاز STATES

الولاية التعريف
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

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

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

ضبط الإضاءة على اللون الأبيض الفاتح.
طلب
{
  "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
          }
        }
      }
    ]
  }
}