Ratgeber für Smart-Home-Szenen

action.devices.types.SCENE: Bei Szenen wird der Typ 1:1 dem Attribut zugeordnet, da Szenen nicht mit anderen Attributen kombiniert werden, um zusammengesetzte Geräte zu bilden. Szenen sollten immer von Nutzern angegebene Namen haben. Jede Szene ist ein eigenes virtuelles Gerät mit eigenen Namen.

Dieser Typ gibt an, dass das Gerät das Szenensymbol und einige zugehörige Synonyme und Aliase erhält.

Weitere Informationen finden Sie unter Scene-Trait.

Gerätefunktionen

In der entsprechenden Trait-Dokumentation finden Sie Implementierungsdetails wie Attribute und Status, die Ihr Dienst unterstützen sollte, und Informationen zum Erstellen von EXECUTE- und QUERY-Antworten.

Erforderliche Merkmale

Diese Attribute und Befehle sind erforderlich, sofern sie für dein Gerät gelten. Wenn dein Gerät diese Merkmale nicht unterstützt, gib den Fehlercode functionNotSupported in einer QUERY- oder EXECUTE-Antwort ein. Weitere Informationen finden Sie unter Fehler und Ausnahmen.

Beispielgerät: Einfache Szene

Dieser Abschnitt enthält Beispiel-Intent-Nutzlasten für eine gemeinsame „Szene“ basierend auf dem Gerätetyp und den oben genannten Eigenschaften. Wenn Sie Ihrer Implementierung Attribute hinzufügen oder daraus entfernen, müssen Sie Ihre Antworten entsprechend anpassen.

Beispiel für eine SYNC-Antwort

Anfrage
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
Antwort
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.SCENE",
        "traits": [
          "action.devices.traits.Scene"
        ],
        "name": {
          "name": "Simple scene"
        },
        "willReportState": true,
        "attributes": {
          "sceneReversible": true
        },
        "deviceInfo": {
          "manufacturer": "smart-home-inc",
          "model": "hs1234",
          "hwVersion": "3.2",
          "swVersion": "11.4"
        }
      }
    ]
  }
}

Beispiel für eine QUERY-Antwort

Anfrage
{
  "requestId": "6894439706274654514",
  "inputs": [
    {
      "intent": "action.devices.QUERY",
      "payload": {
        "devices": [
          {
            "id": "123"
          }
        ]
      }
    }
  ]
}
Antwort
{
  "requestId": "6894439706274654514",
  "payload": {
    "devices": {
      "123": {
        "status": "SUCCESS",
        "online": true
      }
    }
  }
}

Beispielbefehle für EXECUTE

ActivateScene

Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu action.devices.traits.Scene.

Anfrage
{
  "requestId": "6894439706274654516",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.ActivateScene",
                "params": {
                  "deactivate": false
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Antwort
{
  "requestId": "6894439706274654516",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true
        }
      }
    ]
  }
}

GERÄTEFEHLER

Vollständige Liste der Fehler und Ausnahmen