Te damos la bienvenida al Centro para desarrolladores de Google Home, el nuevo destino para aprender a desarrollar acciones de casa inteligente. Nota: Seguirás compilando acciones en la Consola de Actions.

Esquema de la función RunCycle de la casa inteligente

action.devices.traits.RunCycle: Esta característica representa cualquier dispositivo que tenga una duración continua para su operación, que se puede consultar.

Los dispositivos como estos informarán la cantidad total de ciclos al comienzo de cada operación y cada ciclo en el que se encuentren. Esto le permite al usuario realizar consultas como las siguientes:

  • ¿En qué ciclo está la secadora?
  • ¿Cuántos ciclos tiene el lavavajillas?
  • ¿Qué hace la secadora?
  • ¿Cuándo se realizará el lavado?

Algunos dispositivos incluyen una duración en un formato no cíclico. Cualquier dispositivo que se ejecute durante un período específico puede informar el tiempo restante, sin ciclos. Esto también controla los casos en los que los ciclos pueden no ser coherentes (por ejemplo, los lavavajillas no siempre usan todos los ciclos). Por ejemplo, un usuario podría preguntar ¿Cuánto tiempo más durará mi aspiradora?, que mostrará el tiempo en unidades proporcionales al tiempo restante. Esto también se aplica a los dispositivos mencionados anteriormente. ¿Durante cuánto tiempo se secará la ropa?, que mostrará una duración en minutos.

Los dispositivos pueden mostrar lo que saben, y la respuesta de Asistente TTS creará la mejor respuesta con los datos disponibles (por ejemplo, The lavavajilla se está ejecutando y se completará en unos 20 minutos).

Actualmente, RunCycle es una característica de solo lectura que no tiene comandos, solo estados para consultar. En el futuro, es posible que existan mecanismos para volver a ejecutar ciclos u omitir ciclos (bueno para aspersores, malos para lavadoras).

ATRIBUTOS DEL DISPOSITIVO

Ninguna

Dispositivo STATEs

Las entidades con esta característica pueden informar los siguientes estados como parte de la operación QUERY. Para obtener más información sobre el manejo de intents QUERY, consulta Entrega de intents.

Estados Tipo Descripción
currentRunCycle Matriz

Obligatorio.

Contiene los sinónimos del ciclo actual en cada idioma admitido.

[item, ...] Objeto

Nombres de sinónimos de ciclos.

currentCycle String

Obligatorio.

Se está realizando el ciclo actual.

nextCycle String

Opcional. El próximo ciclo por realizar.

lang String

Obligatorio.

Código de idioma para los nombres de ciclos determinados. Consulta Idiomas compatibles.

currentTotalRemainingTime Número entero

Obligatorio.

Tiempo restante en funcionamiento, en segundos.

currentCycleRemainingTime Número entero

Obligatorio.

Tiempo restante en el ciclo actual, en segundos.

Ejemplos

El dispositivo se volverá a enjuagar durante 5 minutos y finalizará en 20 minutos.

{
  "currentRunCycle": [
    {
      "currentCycle": "rinse",
      "lang": "en"
    }
  ],
  "currentTotalRemainingTime": 1200,
  "currentCycleRemainingTime": 300
}

El dispositivo se enjuaga durante otros 5 minutos antes de moverlo.

{
  "currentRunCycle": [
    {
      "currentCycle": "rinse",
      "nextCycle": "spin",
      "lang": "en"
    }
  ],
  "currentTotalRemainingTime": 600,
  "currentCycleRemainingTime": 300
}

Dispositivo COMMANDS

Ninguna

NOTIFICACIONES DE DISPOSITIVOS

Los dispositivos con esta característica pueden mostrar la siguiente carga útil de notificación como parte de un cambio de estado del dispositivo. Si quieres obtener más información a fin de implementar notificaciones, consulta Notificaciones para acciones de casa inteligente.

Campos Tipo Descripción
RunCycle

Obligatorio.

Carga útil de la notificación:

Compatible con una de las siguientes opciones:
0 Objeto

Completado correctamente

priority Número entero

Obligatorio.

Representa el nivel de la notificación. El valor actualmente admitido es 0, lo que indica que la notificación debe decirse en voz alta.

status String

Obligatorio.

Resultado de la operación.

Valores admitidos:

SUCCESS
currentCycleRemainingTime Número entero

Obligatorio.

Tiempo restante en el ciclo actual, en segundos.

1 Objeto

Error

priority Número entero

Obligatorio.

Representa el nivel de la notificación. El valor actualmente admitido es 0, lo que indica que la notificación debe decirse en voz alta.

status String

Obligatorio.

Resultado de la operación.

Valores admitidos:

FAILURE
errorCode String

Obligatorio.

El valor puede ser cualquier código de error para esta característica, por ejemplo, deviceStuck.

Ejemplos

El dispositivo terminó de ejecutarse.

{
  "RunCycle": {
    "priority": 0,
    "status": "SUCCESS",
    "currentCycleRemainingTime": 0
  }
}

Se produjo un error al completar el ciclo actual.

{
  "RunCycle": {
    "priority": 0,
    "status": "FAILURE",
    "errorCode": "deviceStuck"
  }
}

Dispositivo ERRORS

Consulta la lista completa de errores y excepciones.