ヤマムギ

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認定クラウドプラクティショナー 改訂第2版」という本を書きました。

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

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

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

 - AWS ,

ad

ad

  関連記事

AWSアカウントrootユーザーのメールアドレスを変更

昔、うっかり会社の個人メールアドレスで作ってしまったAWSアカウントがあるのでメ …

ブログの画像を別アカウントのS3に移動するためにIAMロールでクロスアカウントアクセス

ずっと先延ばしにしていたのですが、このブログの画像はEC2から直接配信しています …

CUSTOMINEを使ってkintoneからAWS Lambdaを実行する(Cognito認証付き)

先日の記事「kintoneのカスタマイズ開発を超速にするCUSTOMINE」で書 …

kintoneに登録されたアカウントの電話番号にGoogleカレンダーの予定をAmazon Pollyが読み上げてTwilioから電話でお知らせする(AWS Lambda Python)

Google Calendar Twilio Reminder Googleカレ …

AWS SSOのパスワードリマインダーでADのパスワードを変更

AWS Managed Microsoft ADを構築してユーザー追加までで構築 …

IAMセッションポリシーの利用(GetFederationToken)

GetFederationTokenでのセッションポリシーは、呼び出し元のIAM …

IAMアクセス許可の境界でIAMロールの権限を制御する

IAMユーザー自身の権限はIAMポリシーで制御できますが、IAMユーザーにIAM …

S3リクエストメトリクスをプレフィックスを指定して有効化

検証でどのリクエストがどれぐらい発生しているのか、さっと知りたくなったので、特定 …

AWS Lambdaで「Process exited before completing request」

AWS lambdaで「Process exited before comple …

AWSアカウント内のLambda関数を削除するLambda(Python)

やりたいこと 特定のAWSアカウントの特定リージョンのAWS Lambda関数を …