Ajouter d'autres caractéristiques et gestionnaires

Vous pouvez ajouter autant de caractéristiques que vous le souhaitez au modèle de votre appareil. Ces caractéristiques ne sont pas liées à un seul type d'appareil. Vous pouvez les utiliser à votre guise.

Voici le processus permettant d'ajouter un trait et de gérer la commande entrante:

  1. Déterminez le caractéristique que vous souhaitez ajouter.

  2. Ouvrez le fichier hotword.py.

    cd assistant-sdk-python/google-assistant-sdk/googlesamples/assistant/library
    nano hotword.py
  3. Ajoutez le bloc de code suivant sous celui qui gère la commande action.devices.commands.OnOff (ne supprimez pas le bloc de code existant).

    if command == "action.devices.commands.command-name":
        if params['parameter-name']:
            if conditional:
                print('Something happened.')
            else:
                print('Something else happened.')
    
  4. Vous trouverez les informations dont vous avez besoin pour chaque variable dans le bloc de code ci-dessus.

    command-nameAccédez à la page de caractéristiques spécifique de l'étape 1 (par exemple, ColorTemperature). Utilisez une commande du tableau COMMANDES d'appareil.
    parameter-nameConsultez à nouveau le tableau COMMANDES d'appareil sur la page de caractéristique. Chaque commande est associée à un ou plusieurs paramètres. Ils sont répertoriés sous "params" dans le fichier JSON de la requête EXECUTE. Utilisez le nom exact du paramètre. Notez que certains de ces paramètres sont des objets qui contiennent d'autres paramètres. Utilisez simplement l'objet de premier niveau.
    conditionalL'utilisation d'une expression conditionnelle dans le code de votre gestionnaire n'est pas strictement nécessaire, mais elle peut aider à différencier la façon dont vous exécutez la commande sur l'appareil.

    Voici quelques exemples de caractéristiques Luminosité et 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. Mettez à jour le modèle d'appareil avec la caractéristique que vous avez ajoutée à l'étape 1.

  6. Exécutez le code source modifié.

    cd assistant-sdk-python/google-assistant-sdk/googlesamples/assistant/library
    python hotword.py --device-model-id my-model
  7. Essayez une requête.

    Hey Google, règle la luminosité sur 65%.

    Ok Google, mets-le en bleu.

Étape suivante

Enregistrer des actions personnalisées sur l'appareil