Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Lokasi
Tindakan Loc location ation () mengirimkan data lokasi geografis Anda ke Layanan Lokasi Amazon.
Persyaratan
Tindakan aturan ini memiliki persyaratan sebagai berikut:
-
Peran IAM yang AWS IoT dapat diasumsikan untuk melakukan
geo:BatchUpdateDevicePositionoperasi. Untuk informasi selengkapnya, lihat Pemberian AWS IoT mengatur akses yang dibutuhkannya.Di AWS IoT konsol, Anda dapat memilih atau membuat peran AWS IoT untuk memungkinkan 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
DeviceIddari Referensi API 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 garis bujur lokasi perangkat.
Mendukung template substitusi: Ya
roleArn-
Peran IAM yang memungkinkan akses ke domain Layanan Lokasi Amazon. Untuk informasi selengkapnya, lihat Persyaratan.
timestamp-
Waktu data lokasi diambil sampelnya. Nilai default adalah waktu pesan MQTT diproses.
timestampNilai terdiri dari dua nilai berikut:-
value: Ekspresi yang mengembalikan nilai waktu zaman yang panjang. Anda dapat menggunakan time_to_epoch (String, String) fungsi untuk membuat stempel waktu yang valid dari nilai tanggal atau waktu yang diteruskan dalam payload pesan. Men dukung template substitusi: Ya. -
unit: (Opsional) Ketepatan nilai stempel waktu yang dihasilkan dari ekspresi yang dijelaskan di.valueNilai yang valid:SECONDS|MILLISECONDS|MICROSECONDS|NANOSECONDS. Nilai default-nyaMILLISECONDS. Men dukung template substitusi: API dan AWS CLI hanya.
-
trackerName-
Nama sumber daya pelacak di Lokasi Amazon tempat lokasi diperbarui. Untuk informasi selengkapnya, lihat Pelacak dari Panduan Pengembang Layanan Lokasi Amazon.
Men dukung template substitusi: API dan AWS CLI hanya
Contoh
Contoh JSON 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" } } ] } }
Contoh JSON berikut mendefinisikan tindakan Lokasi dengan template substitusi dalam AWS IoT aturan.
{ "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 payload MQTT berikut menunjukkan bagaimana template substitusi dalam contoh sebelumnya mengakses data. Anda dapat menggunakan perintah get-device-position-history CLI untuk memverifikasi bahwa data muatan MQTT dikirimkan di pelacak lokasi Anda.
{ "TrackerName": "mytracker", "DeviceID": "001", "position": [ "-12.3456", "65.4321" ] }
aws location get-device-position-history --device-id001--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 Layanan Lokasi Amazon? dalam Panduan Pengembang Layanan Lokasi Amazon.