Esquema de atributos de rotación de la casa inteligente

action.devices.traits.Rotation: Este atributo pertenece a 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 predeterminada de rotación es en el sentido de las manecillas del reloj.

ATRIBUTOS del dispositivo

Los dispositivos con esta característica pueden informar los siguientes atributos como parte de la operación SYNC. Para obtener más información sobre cómo controlar intents SYNC, consulta Cómo entregar intents.

Atributos Tipo Descripción
supportsDegrees Booleano

Obligatorio.

Establece como verdadero si el dispositivo permite la rotación por grados.

supportsPercent Booleano

Obligatorio.

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

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)

Establece como verdadero si el dispositivo permite la rotación continua. Cuando se proporciona una consulta relativa, el comando RotateAbsolute une el rango de rotación admitido.

commandOnlyRotation Booleano

(Predeterminado: false)

Indica si el dispositivo admite la comunicación unidireccional (verdadero) o bidireccional (falso). Establece este atributo como verdadero si el dispositivo no puede responder a un intent de QUERY o al estado de informe de esta característica.

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 atributo pueden informar los siguientes estados como parte de la operación QUERY. Para obtener más información sobre cómo controlar intents QUERY, consulta Cómo entregar 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

Es el nivel actual que indica en qué porcentaje se encuentra rotado el dispositivo. 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á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? (continuación).

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

Un dispositivo que se está rotando a una posición nueva (porcentaje).

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

COMANDOS del dispositivo

Los dispositivos con esta característica pueden responder a los siguientes comandos como parte de la operación EXECUTE. Para obtener más información sobre cómo controlar los intents EXECUTE, consulta Entrega de intents.

action.devices.commands.RotateAbsolute

Establece la rotación absoluta del dispositivo.

Parámetros

La carga útil contiene una de las siguientes opciones:

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

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

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 cuando se configuraba la rotación del dispositivo.

Valores admitidos:

deviceJammingDetected

ERRORES del dispositivo

Consulta la lista completa de errores y excepciones.