Entfeuchteranleitung für Smart-Home-Geräte

action.devices.types.DEHUMIDIFIER: Entfeuchter sind Geräte, die Feuchtigkeit aus der Luft entfernen. Sie können ein- und ausgeschaltet werden, melden und passen die Zielfeuchtigkeit an und haben unter Umständen verschiedene einstellbare Modi oder Einstellungen für die Lüftergeschwindigkeit.

Dieser Typ gibt an, dass das Gerät das Entfeuchtersymbol und einige verwandte Synonyme und Aliasse erhalten.

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.

Erforderliche Merkmale

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

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 1.000 ms sein.
  • Zuverlässigkeit: muss größer oder gleich 97% sein.

Beispielgerät: Einfacher Entfeuchter

Dieser Abschnitt enthält Beispiel-Intent-Nutzlasten, die einen gemeinsamen „Entfeuchter“ basierend auf dem oben genannten Gerätetyp und den obigen Eigenschaften 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.DEHUMIDIFIER",
        "traits": [
          "action.devices.traits.FanSpeed",
          "action.devices.traits.HumiditySetting",
          "action.devices.traits.OnOff"
        ],
        "name": {
          "name": "Simple dehumidifier"
        },
        "willReportState": true,
        "attributes": {
          "humiditySetpointRange": {
            "minPercent": 5,
            "maxPercent": 50
          },
          "availableFanSpeeds": {
            "speeds": [
              {
                "speed_name": "low_key",
                "speed_values": [
                  {
                    "lang": "en",
                    "speed_synonym": [
                      "Low",
                      "Slow"
                    ]
                  },
                  {
                    "lang": "de",
                    "speed_synonym": [
                      "Niedrig",
                      "Schleppend"
                    ]
                  }
                ]
              },
              {
                "speed_name": "high_key",
                "speed_values": [
                  {
                    "lang": "en",
                    "speed_synonym": [
                      "High"
                    ]
                  },
                  {
                    "lang": "de",
                    "speed_synonym": [
                      "Hoch"
                    ]
                  }
                ]
              }
            ],
            "ordered": true
          }
        },
        "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,
        "on": true,
        "currentFanSpeedSetting": "low_key",
        "humiditySetpointPercent": 10,
        "humidityAmbientPercent": 20
      }
    }
  }
}

Beispiele für EXECUTE-Befehle

SetFanSpeed

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

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

SetHumidity

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

Anfrage
{
  "requestId": "6894439706274654518",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.SetHumidity",
                "params": {
                  "humidity": 15
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Antwort
{
  "requestId": "6894439706274654518",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "humiditySetpointPercent": 15,
          "humidityAmbientPercent": 20
        }
      }
    ]
  }
}

OnOff

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

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

Gerät ERRORS

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