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

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

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

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

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

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

דרישות איכות

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

מכשיר לדוגמה: מקלחת פשוטה

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

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

בקשה
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
תשובה
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.SHOWER",
        "traits": [
          "action.devices.traits.TemperatureControl",
          "action.devices.traits.StartStop"
        ],
        "name": {
          "name": "Simple shower"
        },
        "willReportState": true,
        "attributes": {
          "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,
        "isRunning": true,
        "temperatureSetpointCelsius": 30
      }
    }
  }
}

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

SetTemperature

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

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

StartStop

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

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

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

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