Enregistrer manuellement un appareil avec l'API REST

Pour accélérer le développement, vous pouvez utiliser l'outil d'inscription. fourni avec le SDK de l'Assistant Google pour enregistrer ou mettre à jour rapidement un appareil le modèle et l'instance.

Si vous ne souhaitez pas utiliser cet outil, vous pouvez enregistrer manuellement ou mettre à jour un appareil à l'aide d'un fichier JSON et de l'API REST. Vous pouvez effectuer cette opération ordinateur. Commencez par obtenir un jeton d'accès, puis passez à la la section appropriée.

Obtenir un jeton d'accès

  1. Assurez-vous que l'outil d'autorisation est à jour:

    python -m pip install --upgrade google-auth-oauthlib[tool]

  2. Obtenez des identifiants pour pouvoir enregistrer un nouveau modèle d'appareil. Référencez le fichier JSON que vous avez copié dans la appareil lors d'une étape.

    google-oauthlib-tool --scope https://www.googleapis.com/auth/assistant-sdk-prototype \
          --headless --client-secrets /path/to/client_secret_client-id.json

    Une URL devrait s'afficher dans le terminal:

    Please visit this URL to authorize this application: https://...

  3. Copiez l'URL et collez-la dans un navigateur (vous pouvez le faire sur votre ordinateur de développement ou de toute autre machine). Une fois que vous l'avez approuvé, un code apparaîtra dans votre navigateur ("4/XXXX", par exemple). Copiez et collez ce code dans le terminal:

    Enter the authorization code:

    Si l'autorisation aboutit, une réponse JSON semblable à la suivante s'affiche : les éléments suivants:

    {
       "scopes": ["https://www.googleapis.com/auth/assistant-sdk-prototype"],
       "token_uri": "https://accounts.google.com/o/oauth2/token",
       "token": "ya29.GlujBLa_kuXZ5GnGBPBe_A6NpczLcpOtglEC0wHVORnmEhHETzlSW",
       "client_id": "795595571889-6iesr9a3nkmnipbdfnqi6gehiklm2m28.apps.googleusercontent.com",
       "client_secret": "Un8_TNFnb55555auSAGasvAg",
       "refresh_token": "1/4ZMBhTR3bTYWVEMatYWLOxW755555hlQXZI5uC02F2U"
     }

    Si UNAUTHENTICATED s'affiche à la place, cela signifie qu'un code non valide a été saisi. Réessayez en prenant soin de copier et coller l'intégralité du code.

  4. Recherchez token dans la réponse JSON. Copiez ce jeton d'accès (sans inclure le guillemets doubles) dans une variable d'environnement:

    ACCESSTOKEN=access-token

Opérations sur les modèles d'appareils

Définir et enregistrer le modèle de l'appareil

  1. Créez un fichier (par exemple, device_model.json) décrivant les caractéristiques du modèle de votre appareil. Consulter la documentation de référence sur le format JSON du modèle de l'appareil pour en savoir plus.

  2. Enregistrez le modèle de votre appareil en utilisant l'une des méthodes suivantes. N'oubliez pas remplacez project_id associés au modèle de l'appareil dans les URL ci-dessous.

    • Exécutez la commande suivante :

      curl -s -X POST -H "Content-Type: application/json" \
      -H "Authorization: Bearer $ACCESSTOKEN" -d @device_model.json \
      https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/deviceModels/
    • Envoyez une requête HTTPS avec les attributs suivants:

    Quelle que soit la méthode choisie, le serveur doit renvoyer une copie du fichier JSON du modèle d'appareil. que vous avez envoyé. Si le modèle existe déjà sur le serveur, vous recevez une erreur ALREADY_EXISTS.

Obtenir un modèle d'appareil

Obtenez un modèle d'appareil en utilisant l'une des méthodes suivantes. N'oubliez pas remplacez project_id et device_model_id associés au modèle de votre appareil dans les URL ci-dessous.

Lister les modèles d'appareils

Répertoriez tous les modèles d'appareils d'un projet donné en utilisant l'une des méthodes suivantes. N'oubliez pas remplacez project_id associés à vos modèles d'appareils dans les URL ci-dessous.

Modifier le modèle de l'appareil

Mettez à jour le modèle de l'appareil en utilisant l'une des méthodes suivantes. N'oubliez pas remplacez project_id et device_model_id associées au modèle de votre appareil.

Quelle que soit la méthode choisie, le serveur doit renvoyer une copie de l'appareil mis à jour. au format JSON que vous avez envoyé.

Supprimer un modèle d'appareil

Pour supprimer un modèle d'appareil, utilisez l'une des méthodes suivantes. N'oubliez pas remplacez project_id et device_model_id associés au modèle de votre appareil dans les URL ci-dessous.

Opérations sur les instances d'appareil

Définir et enregistrer une instance d'appareil

  1. Créez un fichier (par exemple, test_device.json) qui identifie votre appareil. Consultez la documentation de référence sur JSON sur les instances d'appareils. pour en savoir plus.

  2. Enregistrez votre appareil en utilisant l'une des méthodes suivantes. N'oubliez pas remplacez project_id associés au modèle de l'appareil dans les URL ci-dessous.

    • Exécutez la commande suivante :

      curl -s -X POST -H "Content-Type: application/json" \
      -H "Authorization: Bearer $ACCESSTOKEN" -d @test_device.json \
      https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/devices/
    • Envoyez une requête HTTPS avec les attributs suivants:

    Quelle que soit la méthode choisie, le serveur doit renvoyer une copie du fichier JSON de l'instance d'appareil que vous avez envoyé. Si l'instance existe déjà sur le serveur, vous recevez une erreur ALREADY_EXISTS.

Obtenir une instance d'appareil

Récupérez l'instance de votre appareil à l'aide de l'une des méthodes suivantes. N'oubliez pas remplacez project_id associé au modèle et à l'appareil id dans les URL ci-dessous.

Lister les instances de l'appareil

Répertoriez toutes les instances d'appareil pour un projet donné à l'aide de l'une des suivantes. N'oubliez pas de remplacer project_id associées aux instances d'appareil dans les URL ci-dessous.

Supprimer une instance d'appareil

Supprimez l'instance de votre appareil en utilisant l'une des méthodes suivantes. N'oubliez pas remplacez project_id associé au modèle et à l'appareil id dans les URL ci-dessous.