מדריך לאמבטית בית חכם

action.devices.types.BATHTUB – אפשר למלא אמבטיות ולהתנקז מהן, אם בכלל, אם האמבטיה תומכת בהן.

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

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

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

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

דרישות איכות

  • זמן אחזור: חייב להיות קטן מ-800 אלפיות השנייה או שווה לו.
  • אמינות: חייבת להיות שווה ל-97%.

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

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

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

בקשה
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
תשובה
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.BATHTUB",
        "traits": [
          "action.devices.traits.Fill",
          "action.devices.traits.TemperatureControl",
          "action.devices.traits.OnOff"
        ],
        "name": {
          "name": "Simple bathtub"
        },
        "willReportState": true,
        "attributes": {
          "availableFillLevels": {
            "levels": [
              {
                "level_name": "half_key",
                "level_values": [
                  {
                    "level_synonym": [
                      "Half",
                      "Halfway",
                      "One half"
                    ],
                    "lang": "en"
                  }
                ]
              }
            ],
            "ordered": false
          },
          "temperatureRange": {
            "minThresholdCelsius": 25,
            "maxThresholdCelsius": 100
          },
          "temperatureUnitForUX": "F"
        },
        "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": false,
        "currentFillLevel": "half_key",
        "isFilled": true,
        "temperatureSetpointCelsius": 30
      }
    }
  }
}

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

מילוי

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

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

הגדרת טמפרטורה

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

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

מצב כבוי

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

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

ERRORS מכשיר

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