Esquema de característica del ciclo de ejecución de la casa inteligente

action.devices.traits.RunCycle: Esta característica representa a los dispositivos que tienen una duración continua de su operación y se pueden consultar.

Los dispositivos como estos informarán la cantidad total de ciclos al inicio de la operación. y cada ciclo en el que se encuentra el dispositivo mientras está en ejecución. Esto le permite al usuario realizar consultas, como las siguientes:

  • ¿En qué ciclo está la secadora?
  • ¿Cuántos ciclos le quedan al lavavajillas?
  • ¿Qué hace la secadora?
  • ¿Cuándo se terminará el lavado?

Algunos dispositivos incluyen una duración en un formato no cíclico. Cualquier dispositivo que se ejecuta durante un período específico pueden informar el tiempo restante, sin en ciclos de vida. Esto también aborda casos en los que los ciclos pueden no ser coherentes (por ejemplo, es posible que los lavavajillas no siempre usen todos los ciclos). Por ejemplo, un usuario podría preguntar: ¿Cómo ¿Cuánto más tiempo durará la aspiradora? que devolverá la cantidad de tiempo en unidades proporcional al tiempo restante. Esto también se aplica a los dispositivos mencionados arriba; ¿Por cuánto tiempo se seca la ropa? muestra una duración en minutos.

Los dispositivos pueden devolver lo que saben, y la respuesta de TTS del Asistente formará el mejor respuesta con los datos disponibles (por ejemplo, El lavavajillas está funcionando y se completará en unos 20 minutos.)

RunCycle es actualmente una característica de solo lectura: no tiene comandos, solo estados para para cada búsqueda. En el futuro, podría haber mecanismos para volver a ejecutar ciclos u omitirlos. (bueno para aspersores y malo para lavadoras).

ATRIBUTOS DISPOSITIVOS

Ninguno

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
currentRunCycle Matriz

Obligatorio.

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

[item, ...] Objeto

Nombres de sinónimos de ciclo.

currentCycle String

Obligatorio.

Se está realizando el ciclo actual.

nextCycle String

Opcional. Siguiente ciclo a realizar.

lang String

Obligatorio.

Es el código de idioma de los nombres de ciclos especificados. Consulta Idiomas compatibles.

currentTotalRemainingTime Número entero

Obligatorio.

Tiempo restante de funcionamiento, en segundos.

currentCycleRemainingTime Número entero

Obligatorio.

Tiempo restante del ciclo actual, en segundos.

Ejemplos

El dispositivo estará en enjuague por otros 5 minutos y terminará en 20 minutos.

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

El dispositivo debe permanecer enjuague durante otros 5 minutos antes de moverse para girar.

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

COMANDOS del dispositivo

Ninguno

NOTIFICACIONES DEL DISPOSITIVO

Los dispositivos con este trait pueden devolver lo siguiente: útil de notificaciones como parte de un cambio de estado del dispositivo. Para aprender para implementar notificaciones, consulta Notificaciones para Acciones de casa inteligente

Campos Tipo Descripción
RunCycle

Obligatorio.

Carga útil de la notificación:

Admite una de las siguientes opciones:
0 Objeto

Listo

priority Número entero

Obligatorio.

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

status String

Obligatorio.

Resultado de la operación.

Valores admitidos:

SUCCESS
currentCycleRemainingTime Número entero

Obligatorio.

Tiempo restante del ciclo actual, en segundos.

1 Objeto

Con errores

priority Número entero

Obligatorio.

Representa el nivel de notificación. El valor admitido actualmente es 0, lo que indica que la notificación se debe leer 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 cuando se intentaba completar el ciclo actual.

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

ERRORES DE DISPOSITIVO

Consulta la lista completa de errores y excepciones.