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 de modos de casa inteligente

action.devices.traits.Modes: Esta característica abarca todos los modos disponibles y la configuración específica del modo de un dispositivo.

Esta característica pertenece a cualquier dispositivo con una cantidad arbitraria de modos "n-way" en los que los modos y la configuración para cada modo sean arbitrarios y únicos para cada dispositivo o tipo de dispositivo. Cada modo tiene varias opciones de configuración posibles, pero solo se puede seleccionar una a la vez; una secadora no puede estar en modo "delicado", "normal" y "resistente". Una configuración que se puede activar o desactivar simplemente pertenece a la característica Activar o desactivar.

Por ejemplo, una lavadora puede configurar el tamaño de carga y la temperatura. Ambos serían modos porque son independientes entre sí, pero cada uno puede estar en un solo estado a la vez. El usuario puede configurar un modo como el de temperatura explícitamente con un comando como Establece la temperatura de la lavadora en frío.

Algunos modos están “ordenados” y también se pueden ajustar con el aumento o la disminución de la redacción. Por ejemplo, el tamaño de la carga (pequeño, mediano, grande) y la temperatura están ordenados de manera clara (ten en cuenta que la temperatura no es un termostato real con un objetivo numérico, como en otros dispositivos), pero el tipo de carga (delicada, normal, lana, etc.) no lo es.

Esta característica abarca uno o más modos individuales que los usuarios pueden configurar. En general, estos modos se deben usar para la funcionalidad que se desvincula del comportamiento de otros dispositivos. El comportamiento vinculado, como encender o apagar el dispositivo, debe usar rasgos más específicos (por ejemplo, el thermostatMode en la configuración de temperatura).

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 el manejo de intents SYNC, consulta Entrega de intents.

Atributos Tipo Descripción
availableModes Matriz

Obligatorio.

Lista de modos disponibles.

[item, ...] Objeto

Modo disponible.

name String

Obligatorio.

Nombre interno del modo, que se usará en comandos y estados. Esto puede ser poco fácil de usar y se compartirá en todos los idiomas.

name_values Matriz

Obligatorio.

Sinónimos del modo en cada idioma compatible.

[item, ...] Objeto

Sinónimos del modo en un idioma determinado.

name_synonym Matriz

Obligatorio.

Sinónimos del modo. La primera string de esta lista se usa como el nombre canónico del nivel en ese idioma.

[item, ...] String

Nombre del sinónimo.

lang String

Obligatorio.

Código de idioma (ISO 639-1). Consulta los idiomas compatibles.

settings Matriz

Obligatorio.

Configuración compatible con este modo.

[item, ...] Objeto

Configuración compatible.

Requiere al menos 2 elementos.

setting_name String

Obligatorio.

Nombre interno de la configuración del modo, que se usará en comandos y estados. Esto puede ser poco fácil de usar y se compartirá en todos los idiomas.

setting_values Matriz

Obligatorio.

Sinónimos de la configuración en cada idioma admitido.

[item, ...] Objeto

Sinónimos de la configuración en un idioma determinado.

setting_synonym Matriz

Obligatorio.

Sinónimos del parámetro de configuración. La primera string de esta lista se usa como el nombre canónico del nivel en ese idioma.

[item, ...] String

Nombre del sinónimo.

lang String

Obligatorio.

Código de idioma (ISO 639-1). Consulta los idiomas compatibles.

ordered Booleano

(Predeterminado: false)

Si se establece como verdadera, se aplicará una gramática adicional para la lógica de aumento o disminución, en el orden (creciente) del array de configuración.

commandOnlyModes 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 QUERY o al estado de informe para esta característica.

queryOnlyModes Booleano

(Predeterminado: false)

Obligatorio si el dispositivo admite la ejecución de solo consulta. Este atributo indica si el dispositivo solo se puede consultar para obtener información de estado y no se puede controlar.

Ejemplos

Dispositivo con varios modos y parámetros de configuración.

{
  "availableModes": [
    {
      "name": "load_mode",
      "name_values": [
        {
          "name_synonym": [
            "Load",
            "Size",
            "Load size"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "small_load",
          "setting_values": [
            {
              "setting_synonym": [
                "Small",
                "Half"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "medium_load",
          "setting_values": [
            {
              "setting_synonym": [
                "Medium",
                "Normal"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "large_load",
          "setting_values": [
            {
              "setting_synonym": [
                "Large",
                "Full"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": true
    },
    {
      "name": "temp_mode",
      "name_values": [
        {
          "name_synonym": [
            "Temperature",
            "Temp"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "hot_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "Hot",
                "White"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "warm_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "Warm",
                "Color"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "cold_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "Cold",
                "Delicate"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": false
    }
  ]
}

Dispositivo con modos de solo comando.

{
  "availableModes": [
    {
      "name": "light_mode",
      "name_values": [
        {
          "name_synonym": [
            "Light",
            "Lighting"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "day_light",
          "setting_values": [
            {
              "setting_synonym": [
                "Day",
                "Bright"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "night_light",
          "setting_values": [
            {
              "setting_synonym": [
                "Night",
                "Dark"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "reading_light",
          "setting_values": [
            {
              "setting_synonym": [
                "Reading",
                "Ambiant"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": false
    }
  ],
  "commandOnlyModes": true,
  "queryOnlyModes": false
}

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
currentModeSettings Objeto

Obligatorio.

Es el par clave-valor con el modo name del dispositivo como clave y el setting_name actual como valor.

<string> String

setting_name actual.

Ejemplos

¿En qué modo está el dispositivo?

{
  "currentModeSettings": {
    "load_mode": "small_load",
    "temp_mode": "cold_temp"
  }
}

Dispositivo COMMANDS

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 el manejo de intents EXECUTE, consulta Entrega de intents.

action.devices.commands.SetModes

Actualiza la configuración del modo.

Parámetros

Parámetros Tipo Descripción
updateModeSettings Objeto

Obligatorio.

Es el par clave-valor con el modo name del dispositivo como clave y el nuevo setting_name como valor.

<string> String

Nuevo: setting_name.

Ejemplos

Establece el modelo en una carga grande.

{
  "command": "action.devices.commands.SetModes",
  "params": {
    "updateModeSettings": {
      "load_mode": "large_load"
    }
  }
}

Expresiones de muestra

de-DE

  • Stelle den Staubsauger auf Ruhemodus

en-US

  • set the vacuum to energy saver mode

es-ES

  • pon la lavadora en modo frío

fr-FR

  • mets l'aspirateur en silencieux

hi-IN

  • वैक्यूम पर कार्पेट मोड लगाएं

it-IT

  • imposta l'aspirapolvere su silenzioso

ja-JP

  • 掃除機 静音 モードに設定して

ko-KR

  • 세탁기 세탁량 많음 으로 설정해

pt-BR

  • acionar a função autolimpeza do aspirador
  • ligar o modo de aquecimento

Dispositivo ERRORS

Consulta la lista completa de errores y excepciones.