Esquema de rasgo de rotación de la casa inteligente

action.devices.traits.Rotation: Esta característica pertenece a dispositivos que admiten la rotación.

La rotación se puede especificar en porcentaje o en grados, y si el dispositivo es compatible con la rotación por grados, la dirección de rotación predeterminada es en el sentido de las manecillas del reloj.

ATRIBUTOS DISPOSITIVOS

Los dispositivos con este trait pueden informar lo siguiente atributos como parte de la operación SYNC. Para aprender Para obtener más información sobre cómo controlar los intents SYNC, consulta Entrega de intents.

Atributos Tipo Descripción
supportsDegrees Booleano

Obligatorio.

Se establece como verdadero si el dispositivo permite la rotación por grado.

supportsPercent Booleano

Obligatorio.

Se establece como verdadero si el dispositivo permite la rotación porcentual

rotationDegreesRange Objeto

Representa el rango en grados que puede rotar un dispositivo.

rotationDegreesMin Número

Obligatorio.

Rotación mínima en grados.

rotationDegreesMax Número

Obligatorio.

Rotación máxima en grados

supportsContinuousRotation Booleano

(Predeterminado: false)

Se establece como verdadero si el dispositivo permite la rotación continua. Cuando se realiza una consulta relativa, el comando RotateAbsolute se ajustará para el 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 de CONSULTA o a un informe de estado de esta característica.

Ejemplos

Dispositivo que admite la rotación en porcentaje y en 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
}

Dispositivo STATES

Las entidades con esta característica pueden informar lo siguiente estados como parte de la operación QUERY. Para aprender Para obtener más información sobre cómo controlar los intents QUERY, consulta Entrega 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 estar relativo a la rotación en el sentido de las manecillas del reloj.

rotationPercent Número

Nivel actual que indica qué porcentaje del dispositivo está rotado. 0.0 corresponde a cerrado y 100.0 a abierto.

targetRotationPercent Número

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

Ejemplos

¿Cuál es la rotación del dispositivo? (porcentaje y grados).

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

¿Cuál es la rotación del dispositivo? (solo grados).

{
  "rotationDegrees": 45
}

¿Cuál es la rotación del dispositivo? (continuación).

{
  "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 lo siguiente comandos como parte de la operación EXECUTE. Para aprender Para obtener más información sobre cómo controlar los intents EXECUTE, consulta Entrega de intents.

action.devices.commands.RotateAbsolute

Configura la rotación absoluta del dispositivo.

Parámetros

La carga útil contiene uno de los siguientes elementos:

Configura la rotación absoluta en grados.

Parámetros Tipo Descripción
rotationDegrees Número

Obligatorio.

Es 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.

Ejemplos

Inclina el dispositivo al 50%.

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

Rota el dispositivo 15 grados en sentido antihorario (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 mientras se configuraba la rotación del dispositivo.

Valores admitidos:

deviceJammingDetected

ERRORES DE DISPOSITIVO

Consulta la lista completa de errores y excepciones.