Smart-Home-Attributschema für die Drehung

action.devices.traits.Rotation : Dieses Attribut gehört zu Geräten, die die Drehung unterstützen.

Die Drehung kann entweder in Prozent oder Grad angegeben werden. Wenn das Gerät die Drehung in Grad unterstützt, ist die Standarddrehrichtung im Uhrzeigersinn.

Geräteattribute

Geräte mit diesem Attribut können die folgenden Attribute im Rahmen des SYNC Vorgangs melden. Weitere Informationen zur Verarbeitung von SYNC Intents findest du unter Intent-Erfüllung.

Attribute Typ Beschreibung
supportsDegrees Boolesch

Erforderlich.

Auf „true“ setzen, wenn das Gerät die Drehung in Grad zulässt.

supportsPercent Boolesch

Erforderlich.

Auf „true“ setzen, wenn das Gerät die Drehung in Prozent zulässt.

rotationDegreesRange Objekt

Stellt den Bereich in Grad dar, um den sich ein Gerät drehen kann.

rotationDegreesMin Zahl

Erforderlich.

Mindestdrehung in Grad.

Der Wert muss zwischen 0 und 360 liegen.

rotationDegreesMax Zahl

Erforderlich.

Maximale Drehung in Grad.

Der Wert muss zwischen 0 und 360 liegen.

supportsContinuousRotation Boolesch

(Standard: false)

Auf „true“ setzen, wenn das Gerät eine kontinuierliche Drehung zulässt. Bei einer relativen Abfrage wird der Befehl RotateAbsolute um den unterstützten Drehbereich herum ausgeführt.

commandOnlyRotation Boolesch

(Standard: false)

Gibt an, ob das Gerät die Einweg- (true) oder Zweiwegkommunikation (false) unterstützt. Setze dieses Attribut auf „true“, wenn das Gerät nicht auf einen QUERY-Intent oder einen Statusbericht für dieses Attribut antworten kann.

Beispiele

Gerät, das sowohl die Drehung in Prozent als auch in Grad unterstützt.

{
  "supportsDegrees": true,
  "supportsPercent": true,
  "rotationDegreesRange": {
    "rotationDegreesMin": 0,
    "rotationDegreesMax": 180
  }
}

Gerät, das nur die Drehung in Grad unterstützt.

{
  "supportsDegrees": true,
  "supportsPercent": false,
  "rotationDegreesRange": {
    "rotationDegreesMin": 0,
    "rotationDegreesMax": 90
  }
}

Gerät, das nur Befehle für die kontinuierliche Drehung unterstützt.

{
  "supportsDegrees": true,
  "supportsPercent": true,
  "rotationDegreesRange": {
    "rotationDegreesMin": 0,
    "rotationDegreesMax": 360
  },
  "supportsContinuousRotation": true,
  "commandOnlyRotation": true
}

Gerätestatus

Entitäten mit diesem Attribut können die folgenden Status im Rahmen des QUERY Vorgangs melden. Weitere Informationen zur Verarbeitung von QUERY Intents findest du unter Intent-Erfüllung.

Status Typ Beschreibung
rotationDegrees Zahl

Aktueller Wert innerhalb von rotationDegreesRange, der angibt, um wie viele Grad das Gerät gedreht wurde. Dieser Wert sollte immer relativ zur Drehung im Uhrzeigersinn sein.

rotationPercent Zahl

Aktueller Wert, der angibt, um wie viel Prozent das Gerät derzeit gedreht ist. 0,0 entspricht geschlossen und 100,0 entspricht geöffnet.

Der Wert muss zwischen 0 und 100 liegen.

targetRotationPercent Zahl

Wert, der den Prozentsatz der Drehung angibt, auf den sich das Gerät bewegt oder bewegt, wenn sich die Drehung ändert.

Der Wert muss zwischen 0 und 100 liegen.

Beispiele

Um wie viel wurde das Gerät gedreht? (Prozent und Grad)

{
  "rotationDegrees": 45,
  "rotationPercent": 25
}

Um wie viel wurde das Gerät gedreht? (nur Grad)

{
  "rotationDegrees": 45
}

Um wie viel wurde das Gerät gedreht? (kontinuierlich)

{
  "rotationDegrees": 270,
  "rotationPercent": 75
}

Ein Gerät, das sich gerade in eine neue Position dreht (Prozent)

{
  "rotationPercent": 75,
  "targetRotationPercent": 100
}

Gerätebefehle

Geräte mit diesem Attribut können im Rahmen des EXECUTE Vorgangs auf die folgenden Befehle antworten. Weitere Informationen zur Verarbeitung von EXECUTE Intents findest du unter Intent-Erfüllung.

action.devices.commands.RotateAbsolute

Die absolute Drehung des Geräts festlegen.

Parameter

Die Nutzlast enthält einen der folgenden Werte:

Die absolute Drehung in Grad festlegen.

Parameter Typ Beschreibung
rotationDegrees Zahl

Erforderlich.

Ein absoluter Wert in Grad, der die endgültige Drehung des Geräts im Uhrzeigersinn angibt. Der Wert muss innerhalb des Attributs rotationDegreesRange liegen.

Die absolute Drehung in Prozent festlegen.

Parameter Typ Beschreibung
rotationPercent Zahl

Erforderlich.

Ein absoluter Wert in Prozent, der die endgültige Drehung des Geräts angibt.

Der Wert muss zwischen 0 und 100 liegen.

Beispiele

Gerät auf 50 % neigen.

{
  "command": "action.devices.commands.RotateAbsolute",
  "params": {
    "rotationPercent": 50
  }
}

Gerät um 15 Grad gegen den Uhrzeigersinn drehen (rotationDegrees: 45).

{
  "command": "action.devices.commands.RotateAbsolute",
  "params": {
    "rotationDegrees": 30
  }
}

Gerät um 100 Grad im Uhrzeigersinn drehen (supportsContinuousRotation: true, rotationDegrees: 270).

{
  "command": "action.devices.commands.RotateAbsolute",
  "params": {
    "rotationDegrees": 10
  }
}

Beim Festlegen der Drehung des Geräts ist ein Fehler aufgetreten.

Unterstützte Werte:

deviceJammingDetected

Gerätefehler

Eine vollständige Liste der Fehler und Ausnahmenfindest du hier.