Anleitung zum Smart-Home-Schloss

action.devices.types.LOCK – Schlösser können verriegeln, entriegeln und einen gesperrten Zustand melden.

Dieser Typ gibt an, dass das Gerät das Schloss-Symbol und einige zugehörige Synonyme und Aliasse.

Gerätefunktionen

Weitere Informationen finden Sie in der entsprechenden Dokumentation Implementierungsdetails wie Attribute und Angaben, die Ihr Dienst unterstützen soll, und wie Sie EXECUTE- und QUERY-Antworten erstellen.

Erforderliche Merkmale

Diese Traits und Befehle sind erforderlich, sofern auf Ihre . Wenn dein Gerät diese Traits nicht unterstützt, gib den Fehlercode ein: functionNotSupported in einer QUERY- oder EXECUTE-Antwort. Weitere Informationen finden Sie unter Fehler und Ausnahmen.

Qualitätsanforderungen

  • Latenz:muss kleiner oder gleich 2.000 ms sein.
  • Zuverlässigkeit:Muss größer oder gleich 97% sein.

Beispielgerät: Einfache Sperre

Dieser Abschnitt enthält Beispiele für Intent-Nutzlasten, die eine gängige Sperre darstellen basierend auf dem Gerätetyp und den oben genannten Merkmalen. Wenn Sie in Ihrer Implementierung Tragen hinzufügen oder entfernen, und passen Sie Ihre Antworten entsprechend an.

Beispiel für SYNC-Antwort

<ph type="x-smartling-placeholder">
</ph> <ph type="x-smartling-placeholder">
</ph>
Anfrage
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
<ph type="x-smartling-placeholder">
</ph>
Antwort
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.LOCK",
        "traits": [
          "action.devices.traits.LockUnlock"
        ],
        "name": {
          "name": "Simple lock"
        },
        "willReportState": true,
        "deviceInfo": {
          "manufacturer": "smart-home-inc",
          "model": "hs1234",
          "hwVersion": "3.2",
          "swVersion": "11.4"
        }
      }
    ]
  }
}

Beispiel für eine QUERY-Antwort

<ph type="x-smartling-placeholder">
</ph> <ph type="x-smartling-placeholder">
</ph>
Anfrage
{
  "requestId": "6894439706274654514",
  "inputs": [
    {
      "intent": "action.devices.QUERY",
      "payload": {
        "devices": [
          {
            "id": "123"
          }
        ]
      }
    }
  ]
}
<ph type="x-smartling-placeholder">
</ph>
Antwort
{
  "requestId": "6894439706274654514",
  "payload": {
    "devices": {
      "123": {
        "status": "SUCCESS",
        "online": true,
        "isLocked": true,
        "isJammed": false
      }
    }
  }
}

Beispiele für EXECUTE-Befehle

LockUnlock

Weitere Informationen zu den Befehlsparametern Siehe action.devices.traits.LockUnlock. Referenz.

<ph type="x-smartling-placeholder">
</ph> <ph type="x-smartling-placeholder">
</ph>
Anfrage
{
  "requestId": "6894439706274654516",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.LockUnlock",
                "params": {
                  "lock": true
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
<ph type="x-smartling-placeholder">
</ph>
Antwort
{
  "requestId": "6894439706274654516",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "isLocked": true,
          "isJammed": false
        }
      }
    ]
  }
}

Gerätefehler

Vollständige Liste der Fehler und Ausnahmen.