Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Lokasi
Tindakan Location (location
) mengirimkan data lokasi geografis Anda ke Amazon Location Service.
Persyaratan
Tindakan aturan ini memiliki persyaratan sebagai berikut:
-
IAMPeran yang AWS IoT dapat diasumsikan untuk melakukan
geo:BatchUpdateDevicePosition
operasi. Untuk informasi selengkapnya, lihat Memberikan AWS IoT aturan akses yang dibutuhkannya.Di AWS IoT konsol, Anda dapat memilih atau membuat peran untuk memungkinkan AWS IoT untuk melakukan tindakan aturan ini.
Parameter
Saat Anda membuat AWS IoT aturan dengan tindakan ini, Anda harus menentukan informasi berikut:
deviceId
-
ID unik perangkat yang menyediakan data lokasi. Untuk informasi selengkapnya, lihat
DeviceId
dari APIReferensi Layanan Lokasi Amazon.Mendukung template substitusi: Ya
latitude
-
String yang mengevaluasi nilai ganda yang mewakili garis lintang lokasi perangkat.
Mendukung template substitusi: Ya
longitude
-
String yang mengevaluasi nilai ganda yang mewakili bujur lokasi perangkat.
Mendukung template substitusi: Ya
roleArn
-
IAMPeran yang memungkinkan akses ke domain Amazon Location Service. Untuk informasi selengkapnya, lihat Persyaratan.
timestamp
-
Waktu data lokasi diambil sampelnya. Nilai default adalah waktu MQTT pesan diproses.
timestamp
Nilai terdiri dari dua nilai berikut:-
value
: Ekspresi yang mengembalikan nilai waktu epoch yang panjang. Anda dapat menggunakan time_to_epoch (String, String) fungsi ini untuk membuat stempel waktu yang valid dari nilai tanggal atau waktu yang diteruskan dalam payload pesan. Mendukung template substitusi: Ya. -
unit
: (Opsional) Ketepatan nilai stempel waktu yang dihasilkan dari ekspresi yang dijelaskan dalam.value
Nilai yang valid:SECONDS
|MILLISECONDS
|MICROSECONDS
|NANOSECONDS
. Default-nya adalahMILLISECONDS
. Mendukung template substitusi: API dan AWS CLI hanya.
-
trackerName
-
Nama sumber daya pelacak di Amazon Lokasi di mana lokasi diperbarui. Untuk informasi selengkapnya, lihat Tracker dari Amazon Location Service Developer Guide.
Mendukung template substitusi: API dan hanya AWS CLI
Contoh
JSONContoh berikut mendefinisikan tindakan Lokasi dalam AWS IoT aturan.
{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "location": { "roleArn": "arn:aws:iam::123454962127:role/service-role/ExampleRole", "trackerName": "MyTracker", "deviceId": "001", "sampleTime": { "value": "${timestamp()}", "unit": "MILLISECONDS" }, "latitude": "-12.3456", "longitude": "65.4321" } } ] } }
JSONContoh berikut mendefinisikan tindakan Lokasi dengan template substitusi dalam aturan. AWS IoT
{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "location": { "roleArn": "arn:aws:iam::123456789012:role/service-role/ExampleRole", "trackerName": "${TrackerName}", "deviceId": "${DeviceID}", "timestamp": { "value": "${timestamp()}", "unit": "MILLISECONDS" }, "latitude": "${get(position, 0)}", "longitude": "${get(position, 1)}" } } ] } }
Contoh MQTT payload berikut menunjukkan bagaimana template substitusi dalam contoh sebelumnya mengakses data. Anda dapat menggunakan get-device-position-historyCLIperintah untuk memverifikasi bahwa data MQTT payload dikirimkan di pelacak lokasi Anda.
{ "TrackerName": "mytracker", "DeviceID": "001", "position": [ "-12.3456", "65.4321" ] }
aws location get-device-position-history --device-id
001
--tracker-namemytracker
{ "DevicePositions": [ { "DeviceId": "001", "Position": [ -12.3456, 65.4321 ], "ReceivedTime": "2022-11-11T01:31:54.464000+00:00", "SampleTime": "2022-11-11T01:31:54.308000+00:00" } ] }
Lihat juga
-
Apa itu Amazon Location Service? di Panduan Pengembang Layanan Lokasi Amazon.