AWS IoT, MQTT, Amazon Location Service를 사용하여 추적
MQTT
AWS IoT Core
참고
예를 들어, 디바이스는 내장된 GPS를 통해 자신의 위치를 알 수 있습니다. 또한 AWS IoT는 타사 디바이스 위치 추적을 지원합니다. 자세한 내용은 AWS IoT 코어 개발자 가이드의 AWS IoT 코어 디바이스 위치를 참조하세요.
다음 안내에서는 AWS IoT Core 규칙을 사용한 추적에 대해 설명합니다. Amazon Location으로 디바이스 정보를 보내기 전에 처리해야 하는 경우, 디바이스 정보를 자체 AWS Lambda 함수로 전송할 수도 있습니다. Lambda를 사용하여 디바이스 위치를 처리하는 방법에 대한 자세한 내용은 자습서: MQTT와 함께 AWS Lambda 사용 항목을 참조하세요.
사전 조건
추적을 시작하기 전에 다음과 같은 전제 조건을 완료해야 합니다.
-
디바이스 위치 데이터를 전송할 트래커 리소스를 생성합니다.
-
트래커에 대한 AWS IoT Core 액세스 권한을 부여하는 IAM 역할을 생성합니다.
이러한 단계를 따를 때는 다음 정책을 사용하여 트래커에 대한 액세스 권한을 부여하세요.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "WriteDevicePosition", "Effect": "Allow", "Action": "geo:BatchUpdateDevicePosition", "Resource": "arn:aws:geo:*:*:tracker/*" } ] }
AWS IoT Core 규칙 생성
다음으로, 디바이스의 위치 원격 측정을 Amazon Location Service로 전달하는 AWS IoT Core 규칙을 생성합니다. 규칙 생성에 대한 자세한 내용은 AWS IoT Core 개발자 가이드에서 다음을 참조하세요.
-
새 규칙 생성에 대한 정보를 위한 AWS IoT 규칙 생성.
-
Amazon Location에 게시하기 위한 규칙 생성과 관련된 정보를 위한 Location 작업
자습서: 콘솔에서 AWS IoT Core 규칙 테스트
현재 위치가 포함된 원격 측정을 게시하는 디바이스가 없는 경우 AWS IoT Core 콘솔을 사용하여 규칙을 테스트할 수 있습니다. 콘솔에는 샘플 메시지를 게시하여 솔루션 결과를 확인할 수 있는 테스트 클라이언트가 있습니다.
-
AWS IoT Core 콘솔(https://console.aws.amazon.com/iot/
)에 로그인합니다. -
왼쪽 탐색창에서 테스트를 확장하고 MQTT 테스트 클라이언트를 선택합니다.
-
주제 게시에서 주제 이름을
iot/topic
(또는 다른 경우 AWS IoT Core 규칙에 설정한 주제 이름)으로 설정하고, 메시지 페이로드에 다음을 입력합니다.{ "payload": { "deviceid": "thing123", "timestamp":
1604940328
, "location": { "lat": 49.2819, "long": -123.1187 }, "accuracy": { "Horizontal": 20.5 }, "positionProperties": { "field1": "value1", "field2": "value2" } } } -
테스트 메시지를 보내려면 주제 게시를 선택합니다.
-
Amazon Location Service에서 메시지를 수신했는지 확인하려면 다음 AWS CLI 명령을 사용하세요. 설정 중에 수정한 경우, 트래커 이름을 사용한 이름으로 바꿉니다.
aws location batch-get-device-position --tracker-name
MyTracker
--device-ids thing123