מדריך מקיף לבית חכם

action.devices.types.BLANKET – אינטראקציות עם שמיכות חכמות עשויות לכלול הפעלה וכיבוי שלהן, שינוי הטמפרטורה שלהן ו/או הגדרת מצבים שונים.

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

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

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

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

דוגמה למכשיר: שמיכה

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

דוגמה לתגובת סנכרון

בקשה
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
תשובה
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.BLANKET",
        "traits": [
          "action.devices.traits.OnOff",
          "action.devices.traits.Modes",
          "action.devices.traits.Toggles"
        ],
        "name": {
          "name": "Blanket"
        },
        "willReportState": true,
        "attributes": {
          "availableModes": [
            {
              "name": "temp_mode",
              "name_values": [
                {
                  "name_synonym": [
                    "Temperature",
                    "Temp"
                  ],
                  "lang": "en"
                }
              ],
              "settings": [
                {
                  "setting_name": "hot_temp",
                  "setting_values": [
                    {
                      "setting_synonym": [
                        "Hot"
                      ],
                      "lang": "en"
                    }
                  ]
                },
                {
                  "setting_name": "warm_temp",
                  "setting_values": [
                    {
                      "setting_synonym": [
                        "Warm"
                      ],
                      "lang": "en"
                    }
                  ]
                }
              ]
            }
          ],
          "availableToggles": [
            {
              "name": "auto_off",
              "name_values": [
                {
                  "name_synonym": [
                    "Auto off"
                  ],
                  "lang": "en"
                }
              ]
            }
          ]
        },
        "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,
        "on": true,
        "currentModeSettings": {
          "temp_mode": "warm_temp"
        },
        "currentToggleSettings": {
          "auto_off": true
        }
      }
    }
  }
}

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

OnOff

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

בקשה
{
  "requestId": "6894439706274654516",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.OnOff",
                "params": {
                  "on": true
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
תשובה
{
  "requestId": "6894439706274654516",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "on": true
        }
      }
    ]
  }
}

SetModes

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

בקשה
{
  "requestId": "6894439706274654518",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.SetModes",
                "params": {
                  "updateModeSettings": {
                    "temp_mode": "hot_temp"
                  }
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
תשובה
{
  "requestId": "6894439706274654518",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "currentModeSettings": {
            "temp_mode": "hot_temp"
          }
        }
      }
    ]
  }
}

SetToggles

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

בקשה
{
  "requestId": "6894439706274654520",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.SetToggles",
                "params": {
                  "updateToggleSettings": {
                    "auto_off": false
                  }
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
תשובה
{
  "requestId": "6894439706274654520",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "currentToggleSettings": {
            "auto_off": false
          }
        }
      }
    ]
  }
}

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

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