Agregar más características y controladores

Puedes agregar todas las características que desees a tu modelo de dispositivo. Estos rasgos son no se vinculan a un solo tipo de dispositivo, sino que también puede usarlas como desee.

Este es el proceso para agregar cualquier característica y controlar el comando entrante:

  1. Determina qué trait deseas. para agregar.

  2. Abre el archivo hotword.py.

    cd assistant-sdk-python/google-assistant-sdk/googlesamples/assistant/library
    nano hotword.py
  3. Agrega el siguiente bloque de código debajo del existente que controla el comando action.devices.commands.OnOff (no borres el bloque de código).

    if command == "action.devices.commands.command-name":
        if params['parameter-name']:
            if conditional:
                print('Something happened.')
            else:
                print('Something else happened.')
    
  4. Encuentra la información que necesitas para cada variable en el bloque de código anterior.

    command-nameVe a la página de la característica específica de Paso 1 (por ejemplo, ColorTemperature). Usa un comando de la tabla Device COMMANDS.
    parameter-nameConsulta nuevamente los COMANDOS del dispositivo. en una tabla de la página de la característica. Cada comando tiene uno o más parámetros asociados con ella. Estos se enumeran en "params" en la lista EJECUTE la solicitud de permiso JSON. Usa el nombre exacto del parámetro. Ten en cuenta que algunas de estas los parámetros son objetos que contienen otros parámetros, simplemente usa el objeto de nivel superior.
    conditionalNo es necesario usar un modelo condicional en tu código de controlador, pero puede ser útil diferenciar la forma en que ejecutas el en el dispositivo.

    Estos son algunos ejemplos de las características Brillo y ColorTemperature:

    if command == "action.devices.commands.BrightnessAbsolute":
        if params['brightness']:
            if params['brightness'] > 50:
                print('brightness > 50')
            else:
                print('brightness <= 50')
    
    if command == "action.devices.commands.ColorAbsolute":
        if params['color']:
            if params['color'].get('name') == "blue":
                print('The color is blue.')
            else:
                print('The color is not blue.')
    
  5. Actualiza el modelo del dispositivo con la característica que agregaste en el paso 1.

  6. Ejecuta el código fuente modificado.

    cd assistant-sdk-python/google-assistant-sdk/googlesamples/assistant/library
    python hotword.py --device-model-id my-model
  7. Prueba con una consulta.

    Hey Google, establece el brillo en 65%.

    Hey Google, hazlo azul.

Próximo paso

Cómo registrar acciones personalizadas de dispositivos