Schéma du trait de rotation pour la maison connectée

action.devices.traits.Rotation : ce trait appartient aux appareils compatibles avec la rotation.

La rotation peut être spécifiée en pourcentage ou en degrés. Si l'appareil prend en charge la rotation en degrés, le sens de rotation par défaut est le sens des aiguilles d'une montre.

ATTRIBUTS de l'appareil

Les appareils dotés de ce trait peuvent signaler les attributs suivants dans le cadre de l'opération SYNC. Pour en savoir plus sur la gestion des intents SYNC, consultez Fulfillment d'intent.

Attributs Type Description
supportsDegrees Valeur booléenne

Obligatoire.

Défini sur "true" si l'appareil autorise la rotation par degré.

supportsPercent Valeur booléenne

Obligatoire.

Défini sur "true" si l'appareil autorise la rotation en pourcentage

rotationDegreesRange Objet

Représente la plage en degrés dans laquelle un appareil peut pivoter.

rotationDegreesMin Number

Obligatoire.

Rotation minimale en degrés.

La valeur doit être comprise entre 0 et 360.

rotationDegreesMax Number

Obligatoire.

Rotation maximale en degrés.

La valeur doit être comprise entre 0 et 360.

supportsContinuousRotation Valeur booléenne

(Par défaut : false)

Définissez sur "true" si l'appareil permet une rotation continue. Lorsqu'une requête relative est fournie, la commande RotateAbsolute s'enroule autour de la plage de rotation acceptée.

commandOnlyRotation Valeur booléenne

(Par défaut : false)

Indique si l'appareil est compatible avec la communication unidirectionnelle (true) ou bidirectionnelle (false). Définissez cet attribut sur "true" si l'appareil ne peut pas répondre à une intention QUERY ni à un rapport d'état pour cette caractéristique.

Exemples

Appareil compatible avec la rotation en pourcentage et en degrés.

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

Appareil qui ne prend en charge que la rotation en degrés.

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

Appareil qui n'accepte que les commandes de rotation continue.

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

ÉTATS des appareils

Les entités dotées de ce trait peuvent signaler les états suivants dans le cadre de l'opération QUERY. Pour en savoir plus sur la gestion des intents QUERY, consultez Fulfillment d'intent.

États Type Description
rotationDegrees Number

Niveau actuel dans rotationDegreesRange qui indique le nombre de degrés de rotation de l'appareil. Cette valeur doit toujours être relative à la rotation dans le sens des aiguilles d'une montre.

rotationPercent Number

Niveau actuel indiquant le pourcentage de rotation de l'appareil. 0,0 correspond à "fermé" et 100,0 à "ouvert".

La valeur doit être comprise entre 0 et 100.

targetRotationPercent Number

Niveau indiquant le pourcentage de rotation vers lequel l'appareil va ou se déplace en raison d'un changement de rotation en cours.

La valeur doit être comprise entre 0 et 100.

Exemples

Sur combien est réglé le pivotement de l'appareil ? (pourcentage et degrés).

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

Sur combien est réglé le pivotement de l'appareil ? (degrés uniquement).

{
  "rotationDegrees": 45
}

Sur combien l'appareil est-il pivoté ? (continu)

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

Pourcentage de rotation d'un appareil vers une nouvelle position.

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

COMMANDES de l'appareil

Les appareils dotés de ce trait peuvent répondre aux commandes suivantes dans le cadre de l'opération EXECUTE. Pour en savoir plus sur la gestion des intents EXECUTE, consultez Fulfillment d'intent.

action.devices.commands.RotateAbsolute

Définissez la rotation absolue de l'appareil.

Paramètres

La charge utile contient l'un des éléments suivants :

Définissez la rotation absolue en degrés.

Paramètres Type Description
rotationDegrees Number

Obligatoire.

Valeur absolue, en degrés, qui spécifie la rotation finale de l'appareil dans le sens des aiguilles d'une montre. La valeur doit être comprise dans l'attribut rotationDegreesRange.

Définissez la rotation absolue en pourcentage.

Paramètres Type Description
rotationPercent Number

Obligatoire.

Valeur absolue, en pourcentage, qui spécifie la rotation finale de l'appareil.

La valeur doit être comprise entre 0 et 100.

Exemples

Inclinez l'appareil à 50 %.

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

Faites pivoter l'appareil de 15 degrés dans le sens inverse des aiguilles d'une montre (rotationDegrees: 45).

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

Faites pivoter l'appareil de 100 degrés dans le sens des aiguilles d'une montre (supportsContinuousRotation: true, rotationDegrees: 270).

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

Une erreur s'est produite lors de la définition de l'orientation de l'appareil.

Valeurs acceptées :

deviceJammingDetected

ERREURS liées à l'appareil

Consultez la liste complète des erreurs et exceptions.