Rastrear usando AWS IoT e MQTT com o Amazon Location Service - Amazon Location Service

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Rastrear usando AWS IoT e MQTT com o Amazon Location Service

O MQTT é um protocolo de mensagens leve e amplamente adotado, projetado para dispositivos restritos. O AWS IoT Core suporta conexões de dispositivos que usam o protocolo MQTT e o protocolo MQTT over WebSocket Secure (WSS).

O AWS IoT Core conecta dispositivos à AWS e permite que você envie e receba mensagens entre eles. O mecanismo de regras do AWS IoT Core armazena consultas sobre os tópicos de mensagens de seus dispositivos e permite que você defina ações para enviar mensagens para outros serviços da AWS, como o Amazon Location Service. Dispositivos que estão cientes de sua localização como coordenadas podem ter suas localizações encaminhadas para a Amazon Location por meio do mecanismo de regras.

nota

Os dispositivos podem saber sua própria posição, por exemplo, via GPS integrado. O AWS IoT também tem suporte para rastreamento de localização de dispositivos de terceiros. Para obter mais informações, consulte Local do dispositivo AWS IoT Core no Guia do desenvolvedor do AWS IoT Core.

O passo a passo a seguir descreve o rastreamento usando regras AWS IoT Core. Você também pode enviar as informações do dispositivo para sua própria função AWS Lambda, se precisar processá-las antes de enviar para o Amazon Location. Para obter mais detalhes sobre o uso do Lambda para processar as localizações de seus dispositivos, consulte Usar AWS Lambda com o MQTT.

Pré-requisito

Antes de começar a rastrear, conclua os seguintes pré-requisitos:

  • Crie um recurso rastreador para o qual você enviará os dados de localização do dispositivo.

  • Crie um perfil do IAM para conceder acesso AWS IoT Core ao seu rastreador.

    Ao seguir essas etapas, use a política a seguir para dar acesso ao seu rastreador:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "WriteDevicePosition", "Effect": "Allow", "Action": "geo:BatchUpdateDevicePosition", "Resource": "arn:aws:geo:*:*:tracker/*" } ] }

Criar uma regra de AWS IoT Core

Em seguida, crie uma regra de AWS IoT Core para encaminhar a telemetria posicional de seus dispositivos para o Amazon Location Service. Para obter mais informações sobre como criar regras, consulte os seguintes tópicos no Guia do desenvolvedor do AWS IoT Core:

Teste sua regra de AWS IoT Core no console

Se nenhum dispositivo estiver publicando telemetria que inclua localização no momento, você poderá testar sua regra usando o console do AWS IoT Core. O console tem um cliente de teste no qual você pode publicar uma mensagem de amostra para verificar os resultados da solução.

  1. Faça login no console do AWS IoT Core em https://console.aws.amazon.com/iot/.

  2. No painel de navegação à esquerda, expanda Teste e escolha Cliente de teste MQTT.

  3. Em Publicar em um tópico, defina o Nome do tópico como iot/tópico (ou o nome do tópico que você configurou na sua regra AWS IoT Core, se for diferente) e forneça o seguinte para a Carga útil da mensagem. Substitua o carimbo de data/hora 1604940328 por um carimbo de data/hora válido nos últimos 30 dias (qualquer carimbo de data/hora anterior a 30 dias é ignorado pelos rastreadores do Amazon Location Service).

    { "payload": { "deviceid": "thing123", "timestamp": 1604940328, "location": { "lat": 49.2819, "long": -123.1187 }, "accuracy": { "Horizontal": 20.5 }, "positionProperties": { "field1": "value1", "field2": "value2" } } }
  4. Escolha Publicar no tópico para enviar a mensagem de teste.

  5. Para validar se a mensagem foi recebida pelo Amazon Location Service, use o comando AWS CLI a seguir. Se você o modificou durante a configuração, substitua o nome do rastreador pelo que você usou.

    aws location batch-get-device-position --tracker-name MyTracker --device-ids thing123