Amazon Location Service による AWS IoT と MQTT を使ったトラッキング - Amazon Location Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon Location Service による AWS IoT と MQTT を使ったトラッキング

MQTT は、制約のあるデバイス向けに設計された軽量で広く採用されているメッセージングプロトコルです。 は、MQTT プロトコルと MQTT over WebSocket Secure (WSS) プロトコルを使用するデバイス接続AWS IoT Coreをサポートしています。

AWS IoT Core はデバイスをAWSに接続し、デバイス間でメッセージの送受信を可能にする。AWS IoT Core ルールエンジンは、デバイスのメッセージトピックに関するクエリを保存し、Amazon Location Service などの他の AWS サービスにメッセージを送信するためのアクションを定義できるようにします。位置を座標として認識するデバイスは、ルールエンジンを通じて Amazon Location に位置情報を転送できます。

注記

デバイスは内蔵の GPS などを通じて自分の位置を知ることができます。 AWS IoT はサードパーティのデバイスの位置追跡もサポートしています。詳細については、AWS IoT 開発者ガイド (デベロッパーガイド) のAWS IoTコアデバイスのデータ を参照してください。

以下のウォークスルーでは、AWS IoT Coreルールを使ったトラッキングについて説明します。Amazon Location に送信する前に処理する必要がある場合は、デバイス情報を独自の AWS Lambda 機能に送信することもできます。Lambda を使用してデバイスの位置を処理する方法の詳細については、「MQTT AWS Lambda との併用」を参照してください。

前提条件

開始する前に、以下の前提条件と設定を完了する必要があります。

  • デバイスの位置データを送信するトラッカーリソースを作成します

  • トラッカーへのAWS IoT Coreアクセスを許可する IAM ロールを作成します

    これらの手順を実行するときは、以下のポリシーを使用してトラッカーへのアクセスを許可してください。

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

AWS IoT Core ルールを作成します

次に、デバイスの位置テレメトリを Amazon Location Service に転送する AWS IoT Core ルールを作成します。Lambda 関数 URL の詳細については、AWS IoT Core デベロッパーガイドの以下のトピックを参照してください。

コンソールで AWS IoT Core ルールをテストします。

現在位置情報を含むテレメトリを公開しているデバイスがない場合は、AWS IoT Coreコンソールを使用してルールをテストすることができます。コンソールにはテストクライアントがあり、サンプルメッセージを公開してソリューションの結果を検証することができます。

  1. https://console.aws.amazon.com/iot/ で AWS IoT Coreコンソールにサインインします。

  2. 左側のナビゲーションメニューの テスト で、MQTT テストクライアント を選択します。

  3. トピックに公開で、トピック名iot/topic (異なる場合は AWS IoT Core ルールで設定したトピックの名前) に設定し、メッセージペイロードには次のように入力します。タイムスタンプ 1604940328 を過去 30 日以内の有効なタイムスタンプに置き換えます (30 日を超えるタイムスタンプは 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. MQTT メッセージを送信するには、トピックに発行 を選択します。

  5. メッセージが Amazon Location Service によって受信されたことを確認するには、次の AWS CLI コマンドを使用します。セットアップ中に変更した場合は、トラッカー名を使用していたものに置き換えてください。

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