쿠키 기본 설정 선택

당사는 사이트와 서비스를 제공하는 데 필요한 필수 쿠키 및 유사한 도구를 사용합니다. 고객이 사이트를 어떻게 사용하는지 파악하고 개선할 수 있도록 성능 쿠키를 사용해 익명의 통계를 수집합니다. 필수 쿠키는 비활성화할 수 없지만 '사용자 지정' 또는 ‘거부’를 클릭하여 성능 쿠키를 거부할 수 있습니다.

사용자가 동의하는 경우 AWS와 승인된 제3자도 쿠키를 사용하여 유용한 사이트 기능을 제공하고, 사용자의 기본 설정을 기억하고, 관련 광고를 비롯한 관련 콘텐츠를 표시합니다. 필수가 아닌 모든 쿠키를 수락하거나 거부하려면 ‘수락’ 또는 ‘거부’를 클릭하세요. 더 자세한 내용을 선택하려면 ‘사용자 정의’를 클릭하세요.

디바이스 섀도우 MQTT 주제

포커스 모드
디바이스 섀도우 MQTT 주제 - AWS IoT Core

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

디바이스 섀도우 서비스는 예약된 MQTT 주제를 사용하여 디바이스 및 앱이 디바이스(섀도우)의 상태 정보를 가져오거나 업데이트하거나 삭제할 수 있도록 합니다.

섀도우 주제에 대해 게시 또는 구독하려면 주제 기반 인증이 필요합니다. AWS IoT 은(는) 기존 주제 구조에 새 주제를 추가할 권리를 보유합니다. 그러므로 섀도우 주제에 대한 와일드 카드 구독은 삼가도록 권장합니다. 예를 들어가 새로운 섀도우 주제를 AWS IoT 도입함에 따라이 주제 필터와 일치하는 주제 수가 증가할 수 $aws/things/thingName/shadow/# 있으므로와 같은 주제 필터를 구독하지 마세요. 이러한 주제에 게시되는 메시지의 예는 섀도우와의 상호 작용 섹션을 참조하세요.

섀도우는 명명되거나 명명되지 않을(클래식) 수 있습니다. 각 섀도우에 사용되는 주제는 주제 접두사만 다릅니다. 이 표에서는 각 섀도우 유형에서 사용하는 주제 접두사를 보여줍니다.

ShadowTopicPrefix 섀도우 유형
$aws/things/thingName/shadow 명명되지 않은(클래식) 섀도우
$aws/things/thingName/shadow/name/shadowName 명명된 섀도우

전체 주제를 생성하려면 참조할 섀도우 유형에 대해 ShadowTopicPrefix를 선택하고 thingNameshadowName(해당하는 경우)을 해당 값으로 바꾸고 다음 섹션에 표시된 대로 주제 스텁을 추가합니다.

다음은 그림자와 상호 작용하는 데 사용되는 MQTT 주제입니다.

/get

디바이스 섀도우를 가져오려면 이 주제에 빈 메시지를 게시합니다.

ShadowTopicPrefix/get

AWS IoT 는 /get/accepted 또는에 게시하여 응답합니다/get/rejected.

예제 정책

다음은 필요한 정책의 예입니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Publish" ], "Resource": [ "arn:aws:iot:region:account:topic/$aws/things/thingName/shadow/get" ] } ] }

/get/accepted

AWS IoT 는 디바이스의 섀도우를 반환할 때이 주제에 응답 섀도우 문서를 게시합니다.

ShadowTopicPrefix/get/accepted

자세한 내용은 응답 상태 문서 단원을 참조하십시오.

예제 정책

다음은 필요한 정책의 예입니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Subscribe" ], "Resource": [ "arn:aws:iot:region:account:topicfilter/$aws/things/thingName/shadow/get/accepted" ] }, { "Effect": "Allow", "Action": [ "iot:Receive" ], "Resource": [ "arn:aws:iot:region:account:topic/$aws/things/thingName/shadow/get/accepted" ] } ] }

/get/rejected

AWS IoT 는 디바이스의 섀도우를 반환할 수 없을 때 오류 응답 문서를이 주제에 게시합니다.

ShadowTopicPrefix/get/rejected

자세한 내용은 오류 응답 문서 단원을 참조하십시오.

예제 정책

다음은 필요한 정책의 예입니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Subscribe" ], "Resource": [ "arn:aws:iot:region:account:topicfilter/$aws/things/thingName/shadow/get/rejected" ] }, { "Action": [ "iot:Receive" ], "Resource": [ "arn:aws:iot:region:account:topic/$aws/things/thingName/shadow/get/rejected" ] } ] }

/update

디바이스 섀도우를 업데이트하려면 이 주제에 요청 상태 문서를 게시합니다.

ShadowTopicPrefix/update

메시지 본문에 부분 요청 상태 문서가 포함되어 있습니다.

디바이스의 상태를 업데이트하려는 클라이언트는 다음과 같은 desired 속성이 포함된 JSON 요청 상태 문서를 보냅니다.

{ "state": { "desired": { "color": "red", "power": "on" } } }

섀도우를 업데이트하는 디바이스는 다음과 같은 reported 속성이 포함된 JSON 요청 상태 문서를 전송합니다.

{ "state": { "reported": { "color": "red", "power": "on" } } }

AWS IoT 는 /update/accepted 또는에 게시하여 응답합니다/update/rejected.

예제 정책

다음은 필요한 정책의 예입니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Publish" ], "Resource": [ "arn:aws:iot:region:account:topic/$aws/things/thingName/shadow/update" ] } ] }

/update/delta

AWS IoT 는 디바이스의 섀도우에 대한 변경을 수락할 때 응답 상태 문서를이 주제에 게시하고 요청 상태 문서에는 desiredreported 상태에 대한 다양한 값이 포함됩니다.

ShadowTopicPrefix/update/delta

메시지 버퍼에 /delta response state document가 포함되어 있습니다.

메시지 본문 세부 정보

  • update/delta에 게시되는 메시지에는 desiredreported 섹션이 서로 다른 경우에만 원하는 속성이 포함됩니다. 이 메시지는 이러한 속성이 현재 업데이트 메시지에 포함되어 있든지, 또는 이미 AWS IoT에 저장되어 있든지 상관없이 모두 포함합니다. desiredreported 섹션이 서로 다르지 않은 속성은 포함하지 않습니다.

  • 속성이 reported 섹션에는 있지만 desired 섹션에는 동일한 속성이 없는 경우 이 속성은 포함되지 않습니다.

  • 속성이 desired 섹션에는 있지만 reported 섹션에는 동일한 속성이 없는 경우 이 속성은 포함됩니다.

  • 속성이 reported 섹션에서 삭제되었지만 desired 섹션에는 계속 존재하는 경우 이 속성은 포함됩니다.

예제 정책

다음은 필요한 정책의 예입니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Subscribe" ], "Resource": [ "arn:aws:iot:region:account:topicfilter/$aws/things/thingName/shadow/update/delta" ] }, { "Effect": "Allow", "Action": [ "iot:Receive" ], "Resource": [ "arn:aws:iot:region:account:topic/$aws/things/thingName/shadow/update/delta" ] } ] }

/update/accepted

AWS IoT 는 디바이스의 섀도우에 대한 변경 사항을 수락하면이 주제에 응답 상태 문서를 게시합니다.

ShadowTopicPrefix/update/accepted

메시지 버퍼에 /accepted response state document가 포함되어 있습니다.

예제 정책

다음은 필요한 정책의 예입니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Subscribe" ], "Resource": [ "arn:aws:iot:region:account:topicfilter/$aws/things/thingName/shadow/update/accepted" ] }, { "Effect": "Allow", "Action": [ "iot:Receive" ], "Resource": [ "arn:aws:iot:region:account:topic/$aws/things/thingName/shadow/update/accepted" ] } ] }

/update/documents

AWS IoT 는 섀도우에 대한 업데이트가 성공적으로 수행될 때마다 상태 문서를이 주제에 게시합니다.

ShadowTopicPrefix/update/documents

메시지 본문에 /documents response state document가 포함되어 있습니다.

예제 정책

다음은 필요한 정책의 예입니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Subscribe" ], "Resource": [ "arn:aws:iot:region:account:topicfilter/$aws/things/thingName/shadow/update/documents" ] }, { "Effect": "Allow", "Action": [ "iot:Receive" ], "Resource": [ "arn:aws:iot:region:account:topic/$aws/things/thingName/shadow/update/documents" ] } ] }

/update/rejected

AWS IoT 는 디바이스의 섀도우에 대한 변경을 거부할 때 오류 응답 문서를이 주제에 게시합니다.

ShadowTopicPrefix/update/rejected

메시지 본문에 오류 응답 문서가 포함되어 있습니다.

예제 정책

다음은 필요한 정책의 예입니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Subscribe" ], "Resource": [ "arn:aws:iot:region:account:topicfilter/$aws/things/thingName/shadow/update/rejected" ] }, { "Effect": "Allow", "Action": [ "iot:Receive" ], "Resource": [ "arn:aws:iot:region:account:topic/$aws/things/thingName/shadow/update/rejected" ] } ] }

/delete

디바이스 섀도우를 삭제하려면 삭제 주제에 빈 메시지를 게시합니다.

ShadowTopicPrefix/delete

메시지의 내용은 무시됩니다.

섀도우를 삭제해도 버전 번호가 0으로 재설정되지는 않습니다.

AWS IoT 는 /delete/accepted 또는에 게시하여 응답합니다/delete/rejected.

예제 정책

다음은 필요한 정책의 예입니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Publish" ], "Resource": [ "arn:aws:iot:region:account:topic/$aws/things/thingName/shadow/delete" ] } ] }

/delete/accepted

AWS IoT 는 디바이스의 섀도우가 삭제될 때이 주제에 메시지를 게시합니다.

ShadowTopicPrefix/delete/accepted

예제 정책

다음은 필요한 정책의 예입니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Subscribe" ], "Resource": [ "arn:aws:iot:region:account:topicfilter/$aws/things/thingName/shadow/delete/accepted" ] }, { "Effect": "Allow", "Action": [ "iot:Receive" ], "Resource": [ "arn:aws:iot:region:account:topic/$aws/things/thingName/shadow/delete/accepted" ] } ] }

/delete/rejected

AWS IoT 는 디바이스의 섀도우를 삭제할 수 없을 때이 주제에 오류 응답 문서를 게시합니다.

ShadowTopicPrefix/delete/rejected

메시지 본문에 오류 응답 문서가 포함되어 있습니다.

예제 정책

다음은 필요한 정책의 예입니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Subscribe" ], "Resource": [ "arn:aws:iot:region:account:topicfilter/$aws/things/thingName/shadow/delete/rejected" ] }, { "Effect": "Allow", "Action": [ "iot:Receive" ], "Resource": [ "arn:aws:iot:region:account:topic/$aws/things/thingName/shadow/delete/rejected" ] } ] }
프라이버시사이트 이용 약관쿠키 기본 설정
© 2025, Amazon Web Services, Inc. 또는 계열사. All rights reserved.