מדריך לארון הבית החכם

action.devices.types.CLOSET – אפשר לפתוח ולסגור ארונות, אולי יותר מכיוון אחד.

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

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

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

התכונות הנדרשות

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

דרישות איכות

  • זמן האחזור: הערך חייב להיות פחות מ-2,500 אלפיות השנייה.
  • אמינות: חייבת להיות שווה ל-97%.

מכשיר לדוגמה: ארון פשוט

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

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

בקשה
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
תשובה
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.CLOSET",
        "traits": [
          "action.devices.traits.OpenClose"
        ],
        "name": {
          "name": "Simple closet"
        },
        "willReportState": true,
        "attributes": {
          "openDirection": [
            "LEFT",
            "RIGHT"
          ]
        },
        "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,
        "openState": [
          {
            "openPercent": 30,
            "openDirection": "LEFT"
          },
          {
            "openPercent": 50,
            "openDirection": "RIGHT"
          }
        ]
      }
    }
  }
}

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

פתיחה וסגירה

למידע נוסף על הפרמטרים של הפקודות, אפשר לעיין במאמר action.devices.traits.OpenClose.

בקשה
{
  "requestId": "6894439706274654516",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.OpenClose",
                "params": {
                  "openPercent": 10,
                  "openDirection": "LEFT"
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
תשובה
{
  "requestId": "6894439706274654516",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "openState": [
            {
              "openPercent": 10,
              "openDirection": "LEFT"
            },
            {
              "openPercent": 50,
              "openDirection": "RIGHT"
            }
          ]
        }
      }
    ]
  }
}

ERRORS מכשיר

לצפייה ברשימה המלאה של השגיאות והחריגים