Esquema del rasgo de rotación de casa inteligente

action.devices.traits.Rotation: Este rasgo pertenece a los dispositivos que admiten la rotación.

La rotación se puede especificar en porcentaje o grados. Si el dispositivo admite la rotación en grados, la dirección de rotación predeterminada es en el sentido de las manecillas del reloj.

Atributos del dispositivo

Los dispositivos con este rasgo pueden informar los siguientes atributos como parte de la SYNC operación. Para obtener más información sobre el control de intents SYNC, consulta Fulfillment de intents.

Atributos Tipo Descripción
supportsDegrees Booleano

Obligatorio.

Se establece como verdadero si el dispositivo permite la rotación en grados.

supportsPercent Booleano

Obligatorio.

Se establece como verdadero si el dispositivo permite la rotación en porcentaje.

rotationDegreesRange Objeto

Representa el rango en grados que puede rotar un dispositivo.

rotationDegreesMin Número

Obligatorio.

Rotación mínima en grados.

El valor debe estar entre 0 y 360.

rotationDegreesMax Número

Obligatorio.

Rotación máxima en grados.

El valor debe estar entre 0 y 360.

supportsContinuousRotation Booleano

(predeterminado: false)

Se establece como verdadero si el dispositivo permite la rotación continua. Cuando se proporciona una consulta relativa, el comando RotateAbsolute se ajustará al rango de rotación admitido.

commandOnlyRotation Booleano

(predeterminado: false)

Indica si el dispositivo admite el uso de comunicación unidireccional (verdadero) o bidireccional (falso). Establece este atributo como verdadero si el dispositivo no puede responder a un intent QUERY o informar el estado de este rasgo.

Ejemplos

Dispositivo que admite la rotación en porcentaje y grados.

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

Dispositivo que solo admite la rotación en grados.

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

Dispositivo que solo admite comandos de rotación continua.

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

Estados del dispositivo

Las entidades con este rasgo pueden informar los siguientes estados como parte de la QUERY operación. Para obtener más información sobre el control de intents QUERY consulta Fulfillment de intents.

Estados Tipo Descripción
rotationDegrees Número

Nivel actual dentro de rotationDegreesRange que indica cuántos grados se rota el dispositivo. Este valor siempre debe ser relativo a la rotación en el sentido de las manecillas del reloj.

rotationPercent Número

Nivel actual que indica el porcentaje que se rota el dispositivo en este momento. 0.0 corresponde a cerrado y 100.0 a abierto.

El valor debe estar entre 0 y 100.

targetRotationPercent Número

Nivel que indica el porcentaje de rotación al que se dirigirá el dispositivo o al que se está moviendo como resultado de un cambio en curso en la rotación.

El valor debe estar entre 0 y 100.

Ejemplos

¿Cuánto se rota el dispositivo? (porcentaje y grados).

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

¿Cuánto se rota el dispositivo? (solo grados).

{
  "rotationDegrees": 45
}

¿Cuánto se rota el dispositivo? (continuo).

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

Un dispositivo que actualmente rota a una nueva posición (porcentaje).

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

Comandos del dispositivo

Los dispositivos con este rasgo pueden responder a los siguientes comandos como parte de la EXECUTE operación. Para obtener más información sobre el control de intents EXECUTE, consulta Fulfillment de intents.

action.devices.commands.RotateAbsolute

Establece la rotación absoluta del dispositivo.

Parámetros

La carga útil contiene uno de los siguientes elementos:

Establece la rotación absoluta en grados.

Parámetros Tipo Descripción
rotationDegrees Número

Obligatorio.

Un valor absoluto, en grados, que especifica la rotación final del dispositivo en el sentido de las manecillas del reloj. El valor debe estar dentro del atributo rotationDegreesRange.

Establece la rotación absoluta en porcentaje.

Parámetros Tipo Descripción
rotationPercent Número

Obligatorio.

Un valor absoluto, en porcentaje, que especifica la rotación final del dispositivo.

El valor debe estar entre 0 y 100.

Ejemplos

Inclina el dispositivo al 50 por ciento.

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

Rota el dispositivo 15 grados en sentido contrario a las manecillas del reloj (rotationDegrees: 45).

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

Rota el dispositivo 100 grados en el sentido de las manecillas del reloj (supportsContinuousRotation: true, rotationDegrees: 270).

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

Se produjo un error al establecer la rotación del dispositivo.

Valores admitidos:

deviceJammingDetected

ERRORES del dispositivo

Consulta la lista completa de errores y excepciones.