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
Asegúrate de que la herramienta de autorización esté actualizada:
python -m pip install --upgrade google-auth-oauthlib[tool]
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://...
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.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
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.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:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/deviceModels/
- Método:
POST
- Cuerpo: Contenido de
device_model.json
- Encabezados:
Authorization: Bearer <access-token>
, en el que <access-token> es la string que contiene el token de acceso
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.
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/device_model_id
Envía una solicitud HTTPS con los siguientes atributos:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/deviceModels/<device_model_id>
- Método:
GET
- Cuerpo: Ninguno
- Encabezados:
Authorization: Bearer <access-token>
, en el que <access-token> es la string que contiene el token de acceso
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:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/deviceModels/
- Método:
GET
- Cuerpo: Ninguno
- Encabezados:
Authorization: Bearer <access-token>
, en el que <access-token> es la string que contiene el token de acceso
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.
Usa el siguiente comando:
curl -s -X PUT -H "Content-Type: application/json" \ -H "Authorization: Bearer $ACCESSTOKEN" -d @device_model.json \ https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/deviceModels/device_model_id
Envía una solicitud HTTPS con los siguientes atributos:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/deviceModels/<device_model_id>
- Método:
PUT
- Cuerpo: Contenido de
device_model.json
- Encabezados:
Authorization: Bearer <access-token>
, en el que <access-token> es la string que contiene el token de acceso
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.
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/deviceModels/device_model_id
Envía una solicitud HTTPS con los siguientes atributos:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/deviceModels/<device_model_id>
- Método:
DELETE
- Cuerpo: Ninguno
- Encabezados:
Authorization: Bearer <access-token>
, en el que <access-token> es la string que contiene el token de acceso
Operaciones de instancias de dispositivos
Cómo definir y registrar una instancia de dispositivo
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.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:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/devices/
- Método:
POST
- Cuerpo: Contenido de
test_device.json
- Encabezados:
Authorization: Bearer <access-token>
, en el que <access-token> es la string que contiene el token de acceso
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:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/devices/<id>
- Método:
GET
- Cuerpo: Ninguno
- Encabezados:
Authorization: Bearer <access-token>
, en el que <access-token> es la string que contiene el token de acceso
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:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/devices/
- Método:
GET
- Cuerpo: Ninguno
- Encabezados:
Authorization: Bearer <access-token>
, en el que <access-token> es la string que contiene el token de acceso
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:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/devices/<id>
- Método:
DELETE
- Cuerpo: Ninguno
- Encabezados:
Authorization: Bearer <access-token>
, en el que <access-token> es la string que contiene el token de acceso