ヤマムギ

growing hard days.

*

Amazon Location Service入門ワークショップ-トラッカー

   

トラッカーでデバイスの位置や移動履歴を追跡できます。

関連記事

GetDevicePosition

デバイスの位置を取得できます。

ワークショップアプリで[Trackers]を押下して、マップ上をクリックすると、車アイコンのデバイスが追加されます。
これがVehicle-1なので上記のようなコマンドで位置情報が得られます。

GetDevicePositionHistory

ワークショップアプリでマップを数回クリックしてデバイスを複数地点に移動させて、[View History]ボタンを押下すると移動履歴が表示できます。

GetDevicePositionHistoryアクションで情報が取得できています。

CLIの場合、このようなコマンドです。

位置情報のリストが取得できます。
この情報は30日間Amazon Location Serviceに保存されています。
30日間以上保存が必要な場合は定期的に出力してS3などに保存します。

BatchUpdateDevicePosition

デバイスを移動させます。

大阪城に移動させるコマンドです。
このコマンドではドライバーIDや速度といった属性をもたせることができていません。
パラメータにPositionPropertiesを追加することでもたせられます。

IoT CoreとMQTTを使ったトラッキング

IoT CoreルールからLambda関数を呼び出してトラッカーを更新します。

IAMロールの作成

Lambda関数用のIAMロールを作成しました。
ポリシーは、AWS管理ポリシーAWSLambdaBasicExecutionRoleと、次のインラインポリシーを追加しました。

Lambda関数の作成

ワークショップ手順に用意されている次のコードでPython3.9ランタイムのLambda関数を作成しました。
IoT Coreイベントから渡されるlocation情報などでトラッカーを更新するコードです。

AWS IoT Coreルールの作成

IoT Coreにアクセスして、[メッセージのルーティング]-[ルール]でルールの作成をしました。

SQLステートメントは手順通りSELECT * FROM ‘devices/Vehicle-1’にしました。

作成したLambda関数を指定しました。

テスト

AWS Iot Coreコンソールの[MQTT テストクライアント]-[トピックに公開する]で、トピック名devices/Vehicle-1として、次を設定しました。
timestampは過去30日以内が必要なので、ターミナルでdate +%sで求めました。

トラッカーが更新された車が通天閣に移動しました。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS ,

ad

ad

  関連記事

DS18B20センサー+Raspberry Piで取得した温度をAmazon Kinesis FirehoseからS3へ格納してAthenaでクエリーしたのをQuickSightで可視化する

JAWS DAYS 2017でやりますハンズオンの「[IoTハンズオン] Ras …

Amazon Q Developer for CLIでAWS Diagram MCP Serverを使ってAWSアイコンを使った図を書いてもらいました

MacにインストールしているAmazon Q Developer for CLI …

AWS Lambdaで Unable to import module エラーが発生したときは

そもそも、Pycharmのナビゲーションペインでディレクトリごとドラッグ&amp …

RDSのスナップショットをS3へエクスポートが日本語マネジメントコンソールでもできるようになってました

RDSスナップショットをS3にエクスポートする新機能を試そうかと思ったのときは、 …

AWSアカウントの解約

アカウント作成メニュー確認のために作成したAWSアカウントを解約しました。 使っ …

AWS Snowファミリーのジョブ作成画面を確認

使わないのですが、画面を見ておきたかったので確認しました。 Snowファミリージ …

AWS GlueでAurora JDBC接続でS3へのジョブを実行

Aurora Serverless v1のMySQLタイプデータベースからS3へ …

LMA(amazon-transcribe-live-meeting-assistant)を海外とのインタビューミーティングで使ってみました

amazon-transcribe-live-meeting-assistant …

AWS Systems Managerパラメータストアで「Parameter name must be a fully qualified name.」

パラメータストアでパラメータ階層を作成しようとして、パラメータ名に例えば「wor …

AlexaにAWSの最新Feedを読み上げてもらう(Lambda Python)

年末にAmazon Echo Dotを購入しましたので、練習がてらAlexaスキ …