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á.
Comece a rastrear com a Amazon Location
Esta seção orienta você na criação de um aplicativo de rastreamento que captura a localização dos dispositivos.
Tópicos
Criar um rastreador
Crie um recurso de rastreador para armazenar e processar as atualizações de posição de seus dispositivos. Você pode usar o console do Amazon Location Service AWS CLI, o ou o Amazon LocationAPIs.
Cada atualização de posição armazenada em seus recursos de rastreador pode incluir uma medida da precisão da posição e até três campos de metadados sobre a posição ou o dispositivo que você deseja armazenar. Os metadados são armazenados como pares chave-valor e podem armazenar informações como velocidade, direção, pressão dos pneus ou temperatura do motor.
Os rastreadores filtram as atualizações de posição à medida que elas são recebidas. Isso reduz o ruído visual nos caminhos do dispositivo (chamado de instabilidade) e reduz o número de eventos falsos de entrada e saída da geocerca. Isso também ajuda a gerenciar custos, reduzindo o número de avaliações iniciadas de geocercas.
Os rastreadores oferecem três opções de filtragem de posições para ajudar a gerenciar custos e reduzir a instabilidade nas atualizações de localização.
-
Baseado na precisão: use com qualquer dispositivo que forneça uma medição de precisão. A maioria dos dispositivos móveis fornece essas informações. A precisão de cada medição de posição é afetada por muitos fatores ambientais, incluindo recepção de GPS satélite, paisagem e proximidade de dispositivos Wi-Fi e Bluetooth. A maioria dos dispositivos, incluindo a maioria dos dispositivos móveis, pode fornecer uma estimativa da precisão da medição junto com a medição. Com a filtragem
AccuracyBased
, o Amazon Location ignora atualizações de localização se o dispositivo tiver se movido menos em relação à precisão medida. Por exemplo, se duas atualizações consecutivas de um dispositivo tiverem uma faixa de precisão de 5 m e 10 m, o Amazon Location ignora a segunda atualização se o dispositivo tiver se movido menos de 15 m. O Amazon Location não avalia nem armazena as atualizações ignoradas em relação a geocercas.Quando a precisão não é fornecida, ela é tratada como zero, a medição é considerada perfeitamente precisa.
nota
Você também pode usar a filtragem baseada em precisão para remover toda a filtragem. Se você selecionar a filtragem com base na precisão, mas substituir todos os dados de precisão para zero ou omitir totalmente a precisão, o Amazon Location não filtrará nenhuma atualização.
-
Baseada na distância: use quando seus dispositivos não fornecem uma medição precisa, mas você quer aproveitar a filtragem para reduzir a instabilidade e gerenciar os custos mesmo assim. A filtragem
DistanceBased
ignora as atualizações de localização nas quais os dispositivos se moveram menos de 30 m (98,4 pés). Quando você usa a filtragem de posiçõesDistanceBased
, o Amazon Location não avalia nem armazena essas atualizações ignoradas em relação a geocercas.A precisão da maioria dos dispositivos móveis, incluindo a precisão média dos dispositivos iOS e Android, é de cerca de 15 m. Na maioria dos aplicativos, a filtragem
DistanceBased
pode reduzir o efeito das imprecisões de localização ao exibir a trajetória do dispositivo em um mapa e o efeito de vai e vem de vários eventos consecutivos de entrada e saída quando os dispositivos estão próximos à borda de uma geocerca. Ela também pode ajudar a reduzir o custo do seu aplicativo, fazendo menos chamadas para avaliar as geocercas vinculadas ou recuperar as posições dos dispositivos. -
Baseada no tempo: (padrão) use quando seus dispositivos enviam atualizações de posição com muita frequência (mais de uma vez a cada 30 segundos) e você deseja obter as avaliações da geocerca em tempo quase real sem armazenar todas as atualizações.Na filtragem
TimeBased
, cada atualização de localização é avaliada em relação a coleções de geocercas vinculadas, mas nem todas as atualizações de localização são armazenadas. Se a frequência de atualização for superior a 30 segundos, apenas uma atualização a cada 30 segundos será armazenada para cada ID de dispositivo exclusivo.
nota
Esteja atento aos custos do seu aplicativo de rastreamento ao decidir seu método de filtragem e a frequência das atualizações de posição. Você é cobrado por cada atualização de localização e uma vez para avaliar a atualização de posição em relação a cada coleção de geocercas vinculada. Por exemplo, ao usar a filtragem baseada no tempo, se seu rastreador estiver vinculado a duas coleções de geocercas, cada atualização de posição contará como uma solicitação de atualização de localização e duas avaliações da coleção de geocercas. Se você estiver registrando atualizações de posição a cada cinco segundos para seus dispositivos e usando a filtragem com base no tempo, você será cobrado por 720 atualizações de localização e 1.440 avaliações da geocerca por hora para cada dispositivo.
Sua fatura não é afetada pelo número de geocercas em cada coleção. Como cada coleção de geocercas pode conter até 50 mil geocercas, convém combinar suas geocercas em menos coleções, sempre que possível, para reduzir o custo das avaliações das geocercas.
Por padrão, você receberá EventBridge eventos sempre que um dispositivo rastreado entrar ou sair de uma cerca geográfica vinculada. Para obter mais informações, consulte Tutorial: vincular um rastreador a uma coleção de cercas geográficas na Amazon Location.
Você pode ativar eventos para todas as atualizações de posição filtradas para um recurso de rastreador. Para obter mais informações, consulte Ativar eventos de atualização para um rastreador.
nota
Se você deseja criptografar seus dados usando sua própria chave gerenciada pelo AWS KMS cliente, o recurso Bounding Polygon Queries será desativado por padrão. Isso ocorre porque, ao usar esse recurso Bounding Polygon Queries, uma representação das posições do seu dispositivo não será criptografada usando a chave gerenciada. AWS KMS No entanto, a posição exata do dispositivo é criptografada mesmo assim usando sua chave gerenciada.
Você pode optar por ativar o atributo Bounding Polygon Queries definindo o parâmetro KmsKeyEnableGeospatialQueries
como verdadeiro ao criar ou atualizar um rastreador.
nota
O faturamento depende do seu uso. Você pode incorrer em taxas pelo uso de outros serviços da AWS
. Para obter mais informações, consulte os preços do Amazon Location Service
Você pode editar a Descrição, a filtragem de posição e a EventBridge configuração após a criação do rastreador, escolhendo Editar rastreador.
Autenticando suas solicitações
Depois de criar um recurso de rastreador e estiver pronto para começar a avaliar as posições dos dispositivos em relação às geocercas, escolha como autenticar suas solicitações:
-
Para explorar as formas para acessar os serviços, consulte Acessando o Amazon Location Service.
-
Se você quiser publicar as posições de dispositivos com solicitações não autenticadas, talvez você deva usar o Amazon Cognito.
Exemplo
O exemplo a seguir mostra o uso de um pool de identidades do Amazon Cognito para autorização, usando a AWS JavaScript SDKv3
e o Amazon Location. JavaScript Auxiliar de autenticação import { LocationClient, BatchUpdateDevicePositionCommand } from "@aws-sdk/client-location"; import { withIdentityPoolId } from "@aws/amazon-location-utilities-auth-helper"; // Unauthenticated identity pool you created const identityPoolId = "
us-east-1:1234abcd-5678-9012-abcd-sample-id
"; // Create an authentication helper instance using credentials from Cognito const authHelper = await withIdentityPoolId(identityPoolId); const client = new LocationClient({ region: "us-east-1
", // The region containing both the identity pool and tracker resource ...authHelper.getLocationClientConfig(), // Provides configuration required to make requests to Amazon Location }); const input = { TrackerName: "ExampleTracker
", Updates: [ { DeviceId: "ExampleDevice-1
", Position: [-123.4567, 45.6789], SampleTime: new Date("2020-10-02T19:09:07.327Z"), }, { DeviceId: "ExampleDevice-2
", Position: [-123.123, 45.123], SampleTime: new Date("2020-10-02T19:10:32Z"), }, ], }; const command = new BatchUpdateDevicePositionCommand(input); // Send device position updates const response = await client.send(command);
Atualize seu rastreador com a posição de um dispositivo
Para rastrear seus dispositivos, você pode publicar atualizações das posições dos dispositivos em seu rastreador. Posteriormente, você pode recuperar essas posições dos dispositivos ou o histórico das posições do dispositivo a partir do seu recurso de rastreador.
Cada atualização de posição deve incluir a ID do dispositivo, um carimbo de data e hora e uma posição. Opcionalmente, você pode incluir outros metadados, incluindo a precisão e até três pares chave-valor para seu próprio uso.
Se o seu rastreador estiver vinculado a uma ou mais coleções de geocercas, as atualizações serão avaliadas em relação a essas geocercas (seguindo as regras de filtragem que você especificou para o rastreador). Se um dispositivo violar uma área cercada geograficamente (movendo-se de dentro para fora da área ou vice-versa), você receberá eventos em. EventBridge Esses ENTER
ou EXIT
eventos incluem os detalhes da atualização da posição, incluindo a ID do dispositivo, o timestamp e quaisquer metadados associados.
nota
Para obter mais informações sobre a filtragem de posições, consulte Criar um rastreador.
Para obter mais informações sobre os eventos das geocercas, consulte Reagindo aos eventos do Amazon Location Service com a Amazon EventBridge.
Use um desses métodos para enviar atualizações do dispositivo:
-
Envie MQTT atualizações para um recurso AWS do IoT Core e vincule-o ao seu recurso rastreador.
-
Envie atualizações de localização usando os Amazon Location TrackersAPI, usando o AWS CLI, ou o Amazon Location. APIs Você pode usar o AWS SDKspara ligar para o a APIs partir do seu aplicativo iOS ou Android.
Obtenha o histórico de localização de um dispositivo a partir de um rastreador
Seu recurso de rastreador do Amazon Location guarda o histórico de localização de todos os seus dispositivos rastreados por um período de 30 dias. Você pode recuperar o histórico de localização do dispositivo, incluindo todos os metadados associados, do seu recurso de rastreador. Os exemplos a seguir usam o AWS CLI, ou o Amazon LocationAPIs.
Liste suas posições dos dispositivos
Você pode ver uma lista de posições de dispositivos para um rastreador usando o AWS CLI, ou o Amazon LocationAPIs, com o. ListDevicePositions API Quando você liga para o ListDevicePositions API, uma lista das posições mais recentes de todos os dispositivos associados a um determinado rastreador é retornada. Por padrão, isso API retorna 100 das posições mais recentes do dispositivo por página de resultados para um determinado rastreador. Para retornar somente os dispositivos que estão dentro de uma região específica, use o parâmetro FilterGeometry
para criar uma Bounding Polygon Query (solicitação do polígono limítrofe). Dessa forma, quando você ligar ListDevicePositions, somente os dispositivos dentro do polígono serão retornados.
nota
Se você deseja criptografar seus dados usando sua própria chave gerenciada pelo AWS KMS cliente, o recurso Bounding Polygon Queries será desativado por padrão. Isso ocorre porque, ao usar esse recurso, uma representação das posições do seu dispositivo não será criptografada usando a chave AWS KMS gerenciada. A posição exata do dispositivo é criptografada mesmo assim usando sua chave gerenciada.
Você pode optar por ativar o atributo Bounding Polygon Queries. Isso é feito definindo o parâmetro KmsKeyEnableGeospatialQueries
como verdadeiro ao criar ou atualizar um rastreador.