ברוכים הבאים למרכז המפתחים של Google Home. זהו היעד החדש ללימוד פיתוח פעולות לבית חכם. הערה :תצטרכו להמשיך ליצור פעולות במסוף הפעולות.
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
סכימת תכונות ColorSpectrum לבית חכם
התכונה הזו הוצאה משימוש. במקומה צריך להשתמש במדיניות ColorSetting .
action.devices.traits.ColorSpectrum
– התכונה הזו שייכת לכל מכשיר שיכול להגדיר קשת צבעים. האפשרות הזו רלוונטית בנורות צבעוניות "מלאות" עם טווחי צבעי RGB. התאורה יכולה לכלול כל שילוב של ColorSpectrum ו-ColorTemperature . מנורות בולטות ורצועות LED עשויות לכלול רק את 'ספקטרום',
וחלק מנורות קריאה מסוימות יש רק טמפרטורה. נורות בסיסיות או נורות טיפשיות בשקעים חכמים
אין להן אף אחת מהן.
מאפייני המכשיר
מאפיין
הגדרה
colorModel
אופציונלי. אפשר להגדיר את המחרוזת hsv
כדי לציין העדפת מכשיר למודל הצבע של HSV (גוון, רוויה, ערך). ברירת המחדל היא
rgb
.
דוגמה של בקשת סנכרון ותגובה
{
"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"
}
}
]
}
}
מכשיר STATES
ארץ
הגדרה
color
אובייקט. הגדרת הצבע הנוכחית. מכיוון שאור נתון נמצא במצב ספקטרום או
טמפרטורה, האובייקט הזה כולל את הגדרות הצבעים הנוכחיות
במצב הרלוונטי.
מחרוזת name
. אם נקודת הצבע (Spectrum או Temperature)
תואמת לשם שהוגדר מראש ברשימת הצבעים של השותף, צריך להחזיר את השם.
מספר שלם אחד (spectrumRGB
). ערך ספקטרום ב-RGB (ערך הקסדצימלי כמספר שלם).
COMMANDS של מכשיר
Command
פרמטרים/הגדרה
action.devices.commands.ColorAbsolute
אובייקט color
. חובה. יכלול את ה-RGB או את 'טמפרטורה',
ואפשר גם גם את השם.
מחרוזת name
. שם הצבע (באנגלית) כפי שצוין בפקודה של המשתמש. לא תמיד זמין (לפקודות יחסיות).
מספר שלם אחד (spectrumRGB
). ערך ספקטרום ב-RGB (ערך הקסדצימלי כמספר שלם).
דוגמה של בקשה ותגובה
הגדרת הנורה כאדום.
{
"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
}
}
}
]
}
}
הפעלות לדוגמה נוספות כוללות:
הגדרת הנורות לירוק.
שינוי מנורות שולחן לאדום.
אלא אם צוין אחרת, התוכן של דף זה הוא ברישיון Creative Commons Attribution 4.0 ודוגמאות הקוד הן ברישיון Apache 2.0 . לפרטים, ניתן לעיין במדיניות האתר Google Developers . Java הוא סימן מסחרי רשום של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2023-09-21 (שעון UTC).
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"חסרים לי מידע או פרטים"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"התוכן מורכב מדי או עם יותר מדי שלבים"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"התוכן לא עדכני"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"בעיה בתרגום"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"בעיה בדוגמאות/בקוד"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"סיבה אחרת"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"התוכן קל להבנה"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"התוכן עזר לי לפתור בעיה"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"סיבה אחרת"
}]
{
"lastModified": "עדכון אחרון: 2023-09-21 (שעון UTC).",
"confidential": False
}