Smart-Home-Duschanleitung

action.devices.types.SHOWER – Du kannst die Duschen ein- und ausschalten und möglicherweise die Temperaturanpassung unterstützen.

Dieser Typ gibt an, dass das Gerät das Duschsymbol und einige verwandte Synonyme und Aliasse erhält.

Gerätefunktionen

Informationen zur Implementierung finden Sie in der entsprechenden Trait-Dokumentation, z. B. zu Attributen und Statusangaben, die Ihr Dienst unterstützen sollte, und zum Erstellen von EXECUTE- und QUERY-Antworten.

Diese Traits werden empfohlen, sofern für Ihr Gerät zutreffend. Sie können jedoch alle verfügbaren Merkmale beliebig kombinieren, um der vorhandenen Produktfunktionalität am besten zu entsprechen.

Qualitätsanforderungen

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

Beispielgerät: einfache Dusche

Dieser Abschnitt enthält Beispielnutzlasten für Intents, die eine gemeinsame „Dusche“ basierend auf dem obigen Gerätetyp und den obigen Merkmalen darstellen. Wenn Sie in Ihrer Implementierung Traits hinzufügen oder entfernen, passen Sie Ihre Antworten entsprechend an.

Beispiel für SYNC-Antwort

Anfrage
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
Antwort
{
  "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"
        }
      }
    ]
  }
}

Beispiel für QUERY-Antwort

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

Beispiele für EXECUTE-Befehle

SetTemperature

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

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

StartStop

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

Anfrage
{
  "requestId": "6894439706274654518",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.StartStop",
                "params": {
                  "start": true
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Antwort
{
  "requestId": "6894439706274654518",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "isRunning": true
        }
      }
    ]
  }
}

Gerät ERRORS

Sehen Sie sich die vollständige Liste der Fehler und Ausnahmen an.