Registra un dispositivo de forma manual con la API de REST

Para un desarrollo rápido, puedes usar la herramienta de registro que se proporciona con el SDK de Asistente de Google para registrar o actualizar rápidamente un modelo de dispositivo y una instancia.

Si no quieres usar esta herramienta, puedes registrar o actualizar un dispositivo de forma manual con un archivo JSON y la API de REST. Puedes hacerlo en cualquier computadora. Primero, obtén un token de acceso y, luego, ve a la sección correspondiente.

Obtén un token de acceso

  1. Asegúrate de que la herramienta de autorización esté actualizada:

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

  2. Obtén credenciales para poder registrar un nuevo modelo de dispositivo. Haz referencia al archivo JSON que copiaste en el dispositivo en un paso anterior de paso.

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

    Deberías ver una URL en la terminal:

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

  3. Copia la URL y pégala en un navegador (puedes hacerlo en tu máquina de desarrollo o en cualquier otra máquina). Después de tu aprobación, aparecerá un código en tu navegador, como "4/XXXX". Copia y pega este código en la terminal:

    Enter the authorization code:

    Si la autorización se realizó de forma correcta, verás una respuesta JSON similar a la siguiente:

    {
       "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"
     }

    En cambio, si ves UNAUTHENTICATED, significa que se ingresó un código no válido. Vuelve a intentarlo. Asegúrate de copiar y pegar todo el código.

  4. Busca token en la respuesta JSON. Copia este token de acceso (sin incluir las comillas dobles) en una variable de entorno:

    ACCESSTOKEN=access-token

Operaciones de modelos de dispositivo

Cómo definir y registrar el modelo de dispositivo

  1. Crea un archivo (p.ej., device_model.json) que describen las características del modelo de tu dispositivo. Para obtener más información, consulta la referencia de JSON del modelo de dispositivo.

  2. Registra el modelo de tu dispositivo con cualquiera de los siguientes métodos. Recuerda sustituir el project_id asociado con el modelo de dispositivo en las siguientes URLs.

    • Usa el siguiente comando:

      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/
    • Envía una solicitud HTTPS con los siguientes atributos:

    Para cualquiera de los métodos, el servidor debe mostrar una copia del modelo de dispositivo JSON que enviaste. Si el modelo ya existe en el servidor, recibirás un error ALREADY_EXISTS.

Obtén un modelo de dispositivo

Obtén un modelo de dispositivo con cualquiera de los siguientes métodos. Recuerda sustituir el project_id y el device_model_id asociados con el modelo de tu dispositivo en las siguientes URLs.

Obtén una lista de los modelos de dispositivos

Genera una lista de todos los modelos de dispositivos de un proyecto determinado usando cualquiera de los siguientes métodos. Recuerda sustituir el project_id asociado con los modelos de tu dispositivo en las siguientes URLs.

  • Usa el siguiente comando:

    curl -s -X GET -H "Content-Type: application/json" \
    -H "Authorization: Bearer $ACCESSTOKEN" \
    https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/deviceModels/
  • Envía una solicitud HTTPS con los siguientes atributos:

Actualiza el modelo del dispositivo

Actualiza el modelo del dispositivo usando cualquiera de los siguientes métodos. Recuerda sustituir el project_id y el device_model_id asociados con el modelo de tu dispositivo.

Para cualquiera de los métodos, el servidor debe mostrar una copia del JSON del modelo de dispositivo actualizado que enviaste.

Cómo borrar un modelo de dispositivo

Borra un modelo de dispositivo con cualquiera de los siguientes métodos. Recuerda sustituir el project_id y el device_model_id asociados con el modelo de tu dispositivo en las siguientes URLs.

Operaciones de instancias de dispositivos

Cómo definir y registrar una instancia de dispositivo

  1. Crea un archivo (p.ej., test_device.json) que identifica tu dispositivo. Consulta la referencia de JSON de la instancia del dispositivo para obtener más información.

  2. Registra tu dispositivo con cualquiera de los siguientes métodos. Recuerda sustituir el project_id asociado con el modelo de dispositivo en las siguientes URLs.

    • Usa el siguiente comando:

      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/
    • Envía una solicitud HTTPS con los siguientes atributos:

    Para cualquiera de los métodos, el servidor debe mostrar una copia de la instancia de dispositivo JSON que enviaste. Si la instancia ya existe en el servidor, recibirás un error ALREADY_EXISTS.

Obtén una instancia de dispositivo

Obtén la instancia de dispositivo con cualquiera de los siguientes métodos. Recuerda sustituir el project_id asociado con el modelo del dispositivo y el id del dispositivo en las siguientes URLs.

  • Usa el siguiente comando:

    curl -s -X GET -H "Content-Type: application/json" \
    -H "Authorization: Bearer $ACCESSTOKEN" \
    https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/devices/id
  • Envía una solicitud HTTPS con los siguientes atributos:

Obtén una lista de las instancias del dispositivo

Enumera todas las instancias de dispositivos de un proyecto determinado con cualquiera de los siguientes métodos. Recuerda sustituir el project_id asociado con las instancias de dispositivo en las siguientes URLs.

  • Usa el siguiente comando:

    curl -s -X GET -H "Content-Type: application/json" \
    -H "Authorization: Bearer $ACCESSTOKEN" \
    https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/devices/
  • Envía una solicitud HTTPS con los siguientes atributos:

Borra una instancia de dispositivo

Borra la instancia de tu dispositivo con cualquiera de los siguientes métodos. Recuerda sustituir el project_id asociado con el modelo del dispositivo y el id del dispositivo en las siguientes URLs.

  • Usa el siguiente comando:

    curl -s -X DELETE -H "Content-Type: application/json" \
    -H "Authorization: Bearer $ACCESSTOKEN" \
    https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/devices/id
  • Envía una solicitud HTTPS con los siguientes atributos: