מדריך ליצירת סצנות בבית חכם

action.devices.types.SCENE – במקרה של סצנות, הסוג ממופה לתכונה ביחס של 1:1, כי סצנות לא משולבות עם מאפיינים אחרים כדי ליצור מכשירים מורכבים. השמות של הסצנות צריכים תמיד להיות שמות שהמשתמשים סיפקו. כל סצנה היא מכשיר וירטואלי בפני עצמו, עם שמות משלה.

הסוג הזה מציין שהמכשיר מקבל את סמל הסצנה וגם כמה שמות נרדפים וכינויים קשורים.

מידע נוסף זמין במאמר מאפיין סצנה.

יכולות המכשיר

פרטי ההטמעה, כמו המאפיינים והמצבים שהשירות צריך לתמוך בהם, והאופן שבו יוצרים תגובות EXECUTE ו-QUERY, מפורטים במסמכי העזרה של המאפיינים המתאימים.

מאפיינים נדרשים

המאפיינים והפקודות האלה נדרשים, אם הם רלוונטיים למכשיר שלכם. אם המכשיר לא תומך במאפיינים האלה, מזינים את קוד השגיאה functionNotSupported בתגובה של QUERY או EXECUTE. מידע נוסף זמין במאמר שגיאות וחריגות.

דרישות איכות

  • זמן אחזור: חייב להיות קטן מ-3000ms או שווה לו.
  • אמינות: הערך חייב להיות שווה ל-97% או גדול ממנו.

מכשיר לדוגמה: סצנה פשוטה

בקטע הזה מופיעות דוגמאות של נתוני עומס שימושי (payload) של כוונה שמייצגים 'סצנה' נפוצה, על סמך סוג המכשיר והמאפיינים שלמעלה. אם מוסיפים או מסירים מאפיינים בהטמעה, צריך לשנות את התשובות בהתאם כדי לשקף את השינויים האלה.

דוגמה לתגובת SYNC

{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.SCENE",
        "traits": [
          "action.devices.traits.Scene"
        ],
        "name": {
          "name": "Simple scene"
        },
        "willReportState": true,
        "attributes": {
          "sceneReversible": true
        },
        "deviceInfo": {
          "manufacturer": "smart-home-inc",
          "model": "hs1234",
          "hwVersion": "3.2",
          "swVersion": "11.4"
        }
      }
    ]
  }
}

דוגמה לתשובה של QUERY

{
  "requestId": "6894439706274654514",
  "inputs": [
    {
      "intent": "action.devices.QUERY",
      "payload": {
        "devices": [
          {
            "id": "123"
          }
        ]
      }
    }
  ]
}
{
  "requestId": "6894439706274654514",
  "payload": {
    "devices": {
      "123": {
        "status": "SUCCESS",
        "online": true
      }
    }
  }
}

דוגמאות לפקודות EXECUTE

ActivateScene

פרטים נוספים על הפרמטרים של הפקודה זמינים במאמר העזרה של action.devices.traits.Scene.

{
  "requestId": "6894439706274654516",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.ActivateScene",
                "params": {
                  "deactivate": false
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
{
  "requestId": "6894439706274654516",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true
        }
      }
    ]
  }
}

שגיאות במכשיר

הרשימה המלאה של השגיאות והחריגות