

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Lacak penggunaan AWS IoT dan MQTT dengan Amazon Location Service
<a name="tracking-using-mqtt"></a>

[MQTT](http://mqtt.org/) adalah protokol pesan ringan dan diadopsi secara luas yang dirancang untuk perangkat terbatas. AWS IoT Core mendukung koneksi perangkat yang menggunakan protokol MQTT dan protokol MQTT over WebSocket Secure (WSS). 

[AWS IoT Core](https://aws.amazon.com/iot-core/)menghubungkan perangkat ke AWS dan memungkinkan Anda untuk mengirim dan menerima pesan di antara mereka. Mesin AWS IoT Core aturan menyimpan kueri tentang topik pesan perangkat Anda dan memungkinkan Anda menentukan tindakan untuk mengirim pesan ke AWS layanan lain, seperti Amazon Location Service. Perangkat yang mengetahui lokasinya sebagai koordinat dapat meneruskan lokasinya ke Lokasi Amazon melalui mesin aturan.

**catatan**  
Perangkat mungkin mengetahui posisinya sendiri, misalnya melalui GPS bawaan. AWS IoT juga memiliki dukungan untuk pelacakan lokasi perangkat pihak ketiga. Untuk informasi selengkapnya, lihat [Lokasi Perangkat AWS IoT Inti](https://docs.aws.amazon.com/iot/latest/developerguide/device-location.html) di *Panduan Pengembang AWS IoT Inti*.

Panduan berikut menjelaskan pelacakan menggunakan AWS IoT Core aturan. Anda juga dapat mengirim informasi perangkat ke AWS Lambda fungsi Anda sendiri, jika Anda perlu memprosesnya sebelum mengirim ke Lokasi Amazon. Untuk detail selengkapnya tentang penggunaan Lambda untuk memproses lokasi perangkat, lihat. [Gunakan AWS Lambda dengan MQTT](tracking-using-mqtt-with-lambda.md)

**Topics**
+ [Prasyarat](#mqtt-prerequisite)
+ [Buat AWS IoT Core aturan](#mqtt-create-iot-rule)
+ [Uji AWS IoT Core aturan Anda di konsol](#mqtt-test-iot-rule)
+ [Gunakan AWS Lambda dengan MQTT](tracking-using-mqtt-with-lambda.md)

## Prasyarat
<a name="mqtt-prerequisite"></a>

Sebelum Anda dapat mulai melacak, Anda harus menyelesaikan prasyarat berikut:
+ [Buat sumber daya pelacak](start-create-tracker.md) yang akan Anda kirimi data lokasi perangkat.
+ [Buat peran IAM](https://docs.aws.amazon.com/iot/latest/developerguide/iot-create-role.html) untuk memberikan AWS IoT Core akses ke pelacak Anda.

  Saat mengikuti langkah-langkah tersebut, gunakan kebijakan berikut untuk memberikan akses ke pelacak Anda:

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

## Buat AWS IoT Core aturan
<a name="mqtt-create-iot-rule"></a>

Selanjutnya, buat AWS IoT Core aturan untuk meneruskan telemetri posisi perangkat Anda ke Amazon Location Service. Untuk informasi selengkapnya tentang membuat aturan, lihat topik berikut di *Panduan AWS IoT Core Pengembang*:
+ [Membuat AWS IoT aturan](https://docs.aws.amazon.com/iot/latest/developerguide/iot-create-rule.html) untuk informasi tentang membuat aturan baru.
+ [Tindakan lokasi](https://docs.aws.amazon.com/iot/latest/developerguide/location-rule-action.html) untuk informasi khusus untuk membuat aturan untuk penerbitan ke Lokasi Amazon 

## Uji AWS IoT Core aturan Anda di konsol
<a name="mqtt-test-iot-rule"></a>

Jika saat ini tidak ada perangkat yang menerbitkan telemetri yang menyertakan lokasi, Anda dapat menguji aturan menggunakan konsol. AWS IoT Core Konsol memiliki klien pengujian tempat Anda dapat mempublikasikan pesan sampel untuk memverifikasi hasil solusi.

1. Masuk ke AWS IoT Core konsol di [https://console.aws.amazon.com/iot/](https://console.aws.amazon.com/iot/home).

1. Di navigasi kiri, perluas **Uji**, dan pilih klien uji **MQTT**.

1. Di bawah **Publikasikan ke topik****, setel nama Topik** ke *iot/topic* (atau nama topik yang Anda atur dalam AWS IoT Core aturan, jika berbeda), dan berikan yang berikut ini untuk **muatan Pesan**. Ganti stempel waktu *1604940328* dengan stempel waktu yang valid dalam 30 hari terakhir (stempel waktu yang lebih lama dari 30 hari diabaikan oleh pelacak Amazon Location Service).

   ```
   {
     "payload": {
       "deviceid": "thing123",
       "timestamp": 1604940328,
       "location": { "lat": 49.2819, "long": -123.1187 },
       "accuracy": { "Horizontal": 20.5 },
       "positionProperties": { "field1": "value1", "field2": "value2" }
     }
   }
   ```

1. Pilih **Publikasikan** ke topik untuk mengirim pesan pengujian.

1. Untuk memvalidasi bahwa pesan diterima oleh Amazon Location Service, gunakan AWS CLI perintah berikut. Jika Anda memodifikasinya selama pengaturan, ganti nama pelacak dengan yang Anda gunakan.

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