

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

# SendConnectorEvent API를 사용하여 디바이스 이벤트 전송
<a name="send-connector-events"></a>

## 디바이스 시작 이벤트 개요
<a name="device-initiated-events-overview"></a>

`SendConnectorEvent` API는 `AWS.SendCommand` 및 `AWS.DiscoverDevices` 작업에 비동기적으로 응답하는 데 사용되지만 디바이스 시작 이벤트를 관리형 통합에 알리는 데도 사용됩니다. 디바이스 시작 이벤트는 사용자 시작 명령 없이 디바이스에서 생성된 모든 이벤트로 정의할 수 있습니다. 이러한 디바이스 이벤트에는 디바이스 상태 변경, 모션 감지, 배터리 잔량 등이 포함될 수 있지만 이에 국한되지 않습니다. **DEVICE\_EVENT** 작업과 함께 `SendConnectorEvent` API를 사용하여 이러한 이벤트를 관리형 통합으로 다시 보낼 수 있습니다.

다음 섹션에서는 홈에 설치된 스마트 카메라를 예로 사용하여 이러한 이벤트의 작업 흐름을 자세히 설명합니다.

![디바이스 이벤트 워크플로](https://docs.aws.amazon.com/ko_kr/iot-mi/latest/devguide/images/device-events-workflow.png)


**디바이스 이벤트 워크플로**

1. 카메라는 리소스 서버로 전송되는 이벤트를 생성하는 모션을 감지합니다.

1. 리소스 서버는 이벤트를 처리하고 C2C 커넥터로 전송합니다.

1. 커넥터는이 이벤트를 AWS IoT Device Management `DEVICE_EVENT` 인터페이스의 관리형 통합으로 변환합니다.

1. C2C 커넥터는 작업이 "DEVICE\_EVENT"로 설정된 `SendConnectorEvent` API를 사용하여이 디바이스 이벤트를 관리형 통합으로 전송합니다.

1. 관리형 통합은 관련 고객을 식별하고이 이벤트를 고객에게 다시 전달합니다.

1. 고객은이 이벤트를 수신하여 사용자 식별자를 통해 사용자에게 표시합니다.

`SendConnectorEvent` API 작업에 대한 자세한 내용은 AWS IoT Device Management API용 관리형 통합 참조 안내서`SendConnectorEvent`의 섹션을 참조하세요.

## 디바이스 시작 이벤트 요구 사항
<a name="device-events-requirements"></a>

다음은 디바이스 시작 이벤트에 대한 몇 가지 요구 사항입니다.
+ C2C 커넥터 리소스는 리소스 서버에서 비동기 디바이스 이벤트를 수신할 수 있어야 합니다.
+ C2C 커넥터 리소스는 C2C 커넥터를 등록하는 데 AWS 계정 사용되는의 AWS 자격 증명을 사용하여 SigV4를 통해 AWS IoT Device Management 서비스 API에 대한 관리형 통합을 호출할 수 있어야 합니다.

다음 예제에서는 SendConnectorEvent API를 통해 디바이스에서 시작된 이벤트를 전송하는 커넥터를 보여줍니다.

```
AWS-API: /SendConnectorEvent
URI: POST /connector-event/{{{Your-Connector-Id}}}

{
   "UserId": "Your-End-User-ID",
   "Operation": "DEVICE_EVENT",
   "OperationVersion": "1.0",
   "StatusCode": 200,
   "Message": None,
   "ConnectorDeviceId": "{{Your_Device_Id}}",
   "MatterEndpoint": {
        "id": "1",    
        "clusters": [{
            "id": "0x0202",
            "attributes": [
                {
                    "0x0000": "3"
                }
            ]
        }]
    }]
}
```

다음 예제에서 다음을 볼 수 있습니다.
+ ID가 1인 디바이스 엔드포인트에서 가져옵니다.
+ 이 이벤트와 관련된 디바이스 기능은 팬 제어 문제 클러스터와 관련하여 클러스터 ID가 **0x0202**입니다.
+ 변경된 속성의 ID는 **0x000**이며 클러스터 내의 팬 모드 열거형과 관련이 있습니다. High 값과 관련하여 값 **3**으로 업데이트되었습니다****.
+  `connectorId`는 생성 시 클라우드 서비스에서 반환하는 파라미터이므로 커넥터는 GetCloudConnector를 사용하여 쿼리하고를 기준으로 필터링해야 합니다`lambdaARN`. Lambda 자체`ARN`는 `Lambda.get_function_url_config` API를 사용하여 쿼리됩니다. 이렇게 하면 lambda에서에 동적으로 액세스할 `CloudConnectorId` 수 있으며 이전과 같이 정적으로 구성되지 않습니다.