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.

Guía de persianas para el hogar inteligente

action.devices.types.BLINDS: Las persianas se pueden abrir y cerrar, y se admiten varias clases de persianas, como la de veneciana (se abre en una dirección), la del panel o vertical (puede abrirse hacia la izquierda o la derecha) y la de arriba hacia abajo (puede abrirse hacia arriba o hacia abajo). Algunas persianas pueden tener láminas que se pueden rotar.

Este tipo indica que el dispositivo obtiene el ícono de persianas y algunos sinónimos y alias relacionados.

Funciones del dispositivo

Consulta la documentación de características correspondiente para obtener detalles de la implementación, como atributos y estados que tu servicio debe admitir, y cómo compilar respuestas de EXECUTE y QUERY.

Características obligatorias

Estos rasgos y comandos son obligatorios, si corresponden a tu dispositivo.

Se recomiendan estas características, si corresponde, a tu dispositivo. Sin embargo, puedes combinar todas las características disponibles para que se adapten mejor a la funcionalidad del producto existente.

Requisitos de calidad

  • Latencia: debe ser menor o igual que 2,500 ms.
  • Confiabilidad: Debe ser mayor o igual que el 97%.

Dispositivo de ejemplo: persianas simples

En esta sección, se incluyen cargas útiles de intents de ejemplo que representan una “persiana” común según el tipo de dispositivo y las características anteriores. Si agregas o quitas características en tu implementación, modifica tus respuestas según corresponda para reflejar esos cambios.

En una ventana cenital de abajo hacia arriba, la dirección UP sube la parte inferior de la persiana y la dirección DOWN baja la parte superior de la persiana. En la Figura 1, se muestra un ejemplo de una persiana cenital de arriba abajo en la que la dirección UP sube la parte inferior de la persiana en un 50% y la dirección DOWN la baja en un 30%.

Figura 1: Persiana cenital de arriba abajo

Respuesta de muestra de SYNC

Solicitar
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
Respuesta
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.BLINDS",
        "traits": [
          "action.devices.traits.OpenClose"
        ],
        "name": {
          "name": "Simple blinds"
        },
        "willReportState": true,
        "attributes": {
          "openDirection": [
            "UP",
            "DOWN"
          ]
        },
        "deviceInfo": {
          "manufacturer": "smart-home-inc",
          "model": "hs1234",
          "hwVersion": "3.2",
          "swVersion": "11.4"
        }
      }
    ]
  }
}

Respuesta de muestra QUERY

Solicitar
{
  "requestId": "6894439706274654514",
  "inputs": [
    {
      "intent": "action.devices.QUERY",
      "payload": {
        "devices": [
          {
            "id": "123"
          }
        ]
      }
    }
  ]
}
Respuesta
{
  "requestId": "6894439706274654514",
  "payload": {
    "devices": {
      "123": {
        "status": "SUCCESS",
        "online": true,
        "openState": [
          {
            "openPercent": 30,
            "openDirection": "DOWN"
          },
          {
            "openPercent": 50,
            "openDirection": "UP"
          }
        ]
      }
    }
  }
}

Comandos EXECUTE de muestra

Abrir y cerrar

Para obtener detalles adicionales sobre los parámetros del comando, consulta la referencia de action.devices.traits.OpenClose.

Solicitar
{
  "requestId": "6894439706274654516",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.OpenClose",
                "params": {
                  "openPercent": 10,
                  "openDirection": "DOWN"
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Respuesta
{
  "requestId": "6894439706274654516",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "openState": [
            {
              "openPercent": 10,
              "openDirection": "DOWN"
            },
            {
              "openPercent": 50,
              "openDirection": "UP"
            }
          ]
        }
      }
    ]
  }
}

Dispositivo ERRORS

Consulta la lista completa de errores y excepciones.