Para um desenvolvimento rápido, você pode usar a ferramenta de registro fornecida com o SDK do Google Assistente para registrar ou atualizar rapidamente um modelo de dispositivo e uma instância.
Se não quiser usar essa ferramenta, registre ou atualize manualmente um dispositivo usando um arquivo JSON e a API REST. É possível fazer isso em qualquer computador. Primeiro, receba um token de acesso e pule para a seção apropriada.
Receber um token de acesso
Verifique se a ferramenta de autorização está atualizada:
python -m pip install --upgrade google-auth-oauthlib[tool]
Conseguir credenciais para registrar um novo modelo de dispositivo. Faça referência ao arquivo JSON que você copiou para o dispositivo em uma etapa etapa.
google-oauthlib-tool --scope https://www.googleapis.com/auth/assistant-sdk-prototype \ --headless --client-secrets /path/to/client_secret_client-id.json
O URL exibido no terminal deve aparecer:
Please visit this URL to authorize this application: https://...
Copie e cole o URL em um navegador. Isso pode ser feito na sua máquina de desenvolvimento ou em qualquer outra. Após sua aprovação, um código aparecerá no navegador, como "4/XXXX". Copie e cole este código no terminal:
Enter the authorization code:
Se a autorização for bem-sucedida, você verá uma resposta JSON semelhante a esta:
{ "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" }
Se, no entanto,
UNAUTHENTICATED
aparecer, isso significa que um código inválido foi inserido. Tente novamente, com cuidado para copiar e colar o código inteiro.Encontre
token
na resposta JSON. Copie esse token de acesso (sem incluir as aspas duplas) em uma variável de ambiente:ACCESSTOKEN=access-token
Operações do modelo de dispositivo
Definir e registrar o modelo do dispositivo
Crie um arquivo (por exemplo,
device_model.json
) que descreve as características do modelo do dispositivo. Consulte a referência JSON do modelo de dispositivo para mais informações.Registre o modelo de dispositivo usando um dos métodos a seguir. Lembre-se de substituir o
project_id
associado ao modelo do dispositivo nos URLs abaixo.Use o comando a seguir:
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/
Envie uma solicitação HTTPS com os seguintes atributos:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/deviceModels/
- Método:
POST
- Corpo: Conteúdo de
device_model.json
- Cabeçalhos:
Authorization: Bearer <access-token>
, em que <access-token> é a string que contém o token de acesso.
Para qualquer um dos métodos, o servidor precisa retornar uma cópia do modelo de dispositivo JSON que você enviou. Se o modelo já existir no servidor, você receberá um erro
ALREADY_EXISTS
.
Receber um modelo de dispositivo
Consiga um modelo de dispositivo usando um dos métodos a seguir. Lembre-se de
substituir o project_id
e o device_model_id
associados ao modelo do dispositivo nos URLs abaixo.
Use o comando a seguir:
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
Envie uma solicitação HTTPS com os seguintes atributos:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/deviceModels/<device_model_id>
- Método:
GET
- Corpo: nenhum
- Cabeçalhos:
Authorization: Bearer <access-token>
, em que <access-token> é a string que contém o token de acesso.
Listar os modelos de dispositivo
Liste todos os modelos de dispositivo de um determinado projeto usando um dos métodos a seguir. Lembre-se de
substituir o project_id
associado aos modelos de dispositivo nos URLs abaixo.
Use o comando a seguir:
curl -s -X GET -H "Content-Type: application/json" \ -H "Authorization: Bearer $ACCESSTOKEN" \ https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/deviceModels/
Envie uma solicitação HTTPS com os seguintes atributos:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/deviceModels/
- Método:
GET
- Corpo: nenhum
- Cabeçalhos:
Authorization: Bearer <access-token>
, em que <access-token> é a string que contém o token de acesso.
Atualizar o modelo do dispositivo
Atualize o modelo do dispositivo usando um dos métodos a seguir. Lembre-se de
substituir o project_id
e o device_model_id
associados ao modelo do dispositivo.
Use o comando a seguir:
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
Envie uma solicitação HTTPS com os seguintes atributos:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/deviceModels/<device_model_id>
- Método:
PUT
- Corpo: Conteúdo de
device_model.json
- Cabeçalhos:
Authorization: Bearer <access-token>
, em que <access-token> é a string que contém o token de acesso.
Para qualquer um dos métodos, o servidor retornará uma cópia do JSON do modelo de dispositivo atualizado que você enviou.
Excluir um modelo de dispositivo
Exclua um modelo de dispositivo usando um dos métodos a seguir. Lembre-se de
substituir o project_id
e o device_model_id
associados ao modelo do dispositivo nos URLs abaixo.
Use o comando a seguir:
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
Envie uma solicitação HTTPS com os seguintes atributos:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/deviceModels/<device_model_id>
- Método:
DELETE
- Corpo: nenhum
- Cabeçalhos:
Authorization: Bearer <access-token>
, em que <access-token> é a string que contém o token de acesso.
Operações da instância do dispositivo
Definir e registrar uma instância de dispositivo
Crie um arquivo (por exemplo,
test_device.json
), que identifica seu dispositivo. Consulte a referência JSON da instância do dispositivo para mais informações.Registre seu dispositivo usando um dos métodos a seguir. Lembre-se de substituir o
project_id
associado ao modelo do dispositivo nos URLs abaixo.Use o comando a seguir:
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/
Envie uma solicitação HTTPS com os seguintes atributos:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/devices/
- Método:
POST
- Corpo: Conteúdo de
test_device.json
- Cabeçalhos:
Authorization: Bearer <access-token>
, em que <access-token> é a string que contém o token de acesso.
Para qualquer um dos métodos, o servidor retornará uma cópia do JSON da instância do dispositivo que você enviou. Se a instância já existir no servidor, você receberá um erro
ALREADY_EXISTS
.
Acessar uma instância de dispositivo
Acesse a instância do dispositivo usando um dos métodos a seguir. Lembre-se de
substituir o project_id
associado ao modelo do dispositivo e o id
nos URLs abaixo.
Use o comando a seguir:
curl -s -X GET -H "Content-Type: application/json" \ -H "Authorization: Bearer $ACCESSTOKEN" \ https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/devices/id
Envie uma solicitação HTTPS com os seguintes atributos:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/devices/<id>
- Método:
GET
- Corpo: nenhum
- Cabeçalhos:
Authorization: Bearer <access-token>
, em que <access-token> é a string que contém o token de acesso.
Listar as instâncias do dispositivo
Liste todas as instâncias de dispositivo de um determinado projeto usando um dos
métodos a seguir. Lembre-se de substituir o project_id
associado às instâncias do dispositivo nos URLs abaixo.
Use o comando a seguir:
curl -s -X GET -H "Content-Type: application/json" \ -H "Authorization: Bearer $ACCESSTOKEN" \ https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/devices/
Envie uma solicitação HTTPS com os seguintes atributos:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/devices/
- Método:
GET
- Corpo: nenhum
- Cabeçalhos:
Authorization: Bearer <access-token>
, em que <access-token> é a string que contém o token de acesso.
Excluir uma instância de dispositivo
Exclua a instância do dispositivo usando um dos métodos a seguir. Lembre-se de
substituir o project_id
associado ao modelo do dispositivo e o id
nos URLs abaixo.
Use o comando a seguir:
curl -s -X DELETE -H "Content-Type: application/json" \ -H "Authorization: Bearer $ACCESSTOKEN" \ https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/devices/id
Envie uma solicitação HTTPS com os seguintes atributos:
- URL: https://embeddedassistant.googleapis.com/v1alpha2/projects/<project_id>/devices/<id>
- Método:
DELETE
- Corpo: nenhum
- Cabeçalhos:
Authorization: Bearer <access-token>
, em que <access-token> é a string que contém o token de acesso.