O Google Cloud IoT Core será desativado em 16 de agosto de 2023. Entre em contato com sua equipe de conta do Google Cloud para mais informações.

Exemplos da CLI da gcloud

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

Nesta seção, apresentamos exemplos de como usar a CLI do Google Cloud para realizar várias operações comuns em dispositivos e registros do Cloud IoT Core.

Veja todos os detalhes na referência do comando gcloud iot.

Criar um registro

gcloud iot registries create my-registry \
    --project=my-iot-project \
    --region=us-central1 \
    --event-notification-config=topic=projects/my-iot-project/topics/device-events

Cria um registro em projects/my-iot-project/locations/us-central1. Os eventos de telemetria serão publicados no tópico projects/my-iot-project/topics/device-events do Cloud Pub/Sub.

Criar um registro com vários tópicos do Cloud Pub/Sub

gcloud iot registries create my-registry \
    --project=my-iot-project \
    --region=us-central1 \
    --event-notification-config=topic=projects/my-iot-project/topics/device-events,subfolder=deviceEventsSubfolder \
    --event-notification-config=topic=projects/my-iot-project/topics/default-topic

Cria um registro em projects/my-iot-project/locations/us-central1. Os eventos de telemetria publicados na subpasta deviceEventsSubfolder serão encaminhados para o tópico projects/my-iot-project/topics/device-events do Cloud Pub/Sub. Todos os eventos de telemetria publicados sem uma subpasta ou com uma subpasta que não tenha um tópico do Pub/Sub correspondente serão encaminhados para o tópico projects/my-iot-project/topics/default-topic do Cloud Pub/Sub padrão.

Descrever um registro

gcloud iot registries describe my-registry \
    --project=my-iot-project \
    --region=us-central1

Descreve os atributos do gerenciador de dispositivos de my-registry.

Atualizar um registro

gcloud iot registries update my-registry \
    --project=my-iot-project \
    --region=us-central1 \
    --event-notification-config=topic=projects/my-iot-project/topics/device-events-2

Atualiza o registro my-registry existente para começar a publicar no tópico projects/my-iot-project/topics/device-events-2 do Cloud Pub/Sub.

gcloud iot registries update my-registry \
    --project=my-iot-project \
    --region=us-central1 \
    --enable-mqtt-config \
    --enable-http-config

Atualiza o registro my-registry atual para ativar as conexões de dispositivos por MQTT e HTTP.

Excluir um registro

gcloud iot registries delete my-registry \
    --project=my-iot-project \
    --region=us-central1

Exclui o registro my-registry. É necessário excluir todos os dispositivos no registro antes de excluir o próprio registro: Caso contrário, o comando falhará com um erro.

Listar registros

gcloud iot registries list --project=my-iot-project \
    --region=us-central1

Lista todos os registros no projeto my-iot-project.

Criar um dispositivo autenticado pelo RS256

gcloud iot devices create my-rs256-device \
    --project=my-iot-project \
    --region=us-central1 \
    --registry=my-registry \
    --public-key path=/path/to/rsa_cert.pem,type=rs256

Cria um dispositivo my-rs256-device que usará a autenticação RS256 no registro my-registry. O certificado X509 de chave pública precisa estar localizado em /path/to/rsa_cert.pem. O certificado é usado apenas para a chave pública, e o valor de expiração dele é ignorado.

Criar um dispositivo autenticado por ES256

gcloud iot devices create my-es256-device \
    --project=my-iot-project \
    --region=us-central1 \
    --registry=my-registry \
    --public-key path=/path/to/ec_public.pem,type=es256

Cria um dispositivo my-es256-device que usará a autenticação ES256 no registro my-registry. A chave pública da curva elíptica no formato PEM precisa ser localizada em /path/to/ec_public.pem.

Bloquear ou permitir a comunicação de um dispositivo

gcloud iot devices update my-device \
    --project=example-project \
    --region=us-central1 \
    --registry=my-registry \
    --blocked

Bloqueia a comunicação do dispositivo my-device. Quando um dispositivo é bloqueado, ele é desconectado do Cloud IoT Core e não pode se reconectar. Para permitir a comunicação, transmita --no-blocked para o comando acima.

Descrever um dispositivo

gcloud iot devices describe my-device --project=my-iot-project \
    --region=us-central1 \
    --registry=my-registry

Descreve os atributos do gerenciador de dispositivos de my-device.

Listar dispositivos

gcloud iot devices list --project=my-iot-project \
    --region=us-central1 \
    --registry=my-registry

Lista todos os dispositivos no registro my-registry.

Excluir um dispositivo

gcloud iot devices delete my-device --project=my-iot-project \
    --region=us-central1 \
    --registry=my-registry

Exclui o dispositivo my-device do registro my-registry.

Listar configurações do dispositivo

gcloud iot devices configs list --project=my-iot-project \
    --region=us-central1 \
    --registry=my-registry \
    --device=my-device \
    --limit=5

Recupera as cinco configurações mais recentes do seu dispositivo. Observe que o Cloud IoT Core armazena somente as 10 versões mais recentes da configuração do seu dispositivo. um limite superior a 10 ainda retorna no máximo 10 configurações.

Recuperar a configuração mais recente do dispositivo

gcloud iot devices configs describe --project=my-iot-project \
    --region=us-central1 \
    --registry=my-registry \
    --device=my-device

Recupera a configuração mais recente do dispositivo.

Atualizar configurações do dispositivo

gcloud iot devices configs update --project=my-iot-project \
    --region=us-central1 \
    --registry=my-registry \
    --device=my-device \
    --config-data="configuration data"

Atualiza os dados de configuração do dispositivo usando os dados transmitidos em --config-data. Como alternativa, é possível usar --config-file=my_config.txt para enviar o conteúdo de um arquivo. O arquivo de configuração pode usar qualquer codificação. o conteúdo sempre será enviado ao dispositivo como bytes brutos. As configurações são limitadas a 32 KB.

Esse comando também aceita um argumento --version_to_update, que precisa ser a versão mais recente da configuração a ser atualizada. Se você incluir esse argumento e uma versão de configuração mais recente tiver sido enviada (por exemplo, se outro usuário tiver atualizado a configuração), o comando de atualização falhará. Para garantir que você esteja especificando a versão mais recente, use o comando gcloud iot devices configs describe para recuperar a versão mais recente. (Para atualizar a versão da configuração do dispositivo, independentemente da versão mais recente, omita --version_to_update.)

Se o dispositivo estiver conectado por MQTT e inscrito no tópico de configuração, o config será enviado ao dispositivo imediatamente. Caso contrário, ele será enviado ao dispositivo na próxima vez que se conectar e se inscrever no tópico de configuração.

Os dispositivos que usam a ponte HTTP precisam solicitar novas configurações explicitamente.