

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

# 모바일 애플리케이션에 대한 Amazon SNS 애플리케이션 이벤트 알림
<a name="application-event-notifications"></a>

Amazon SNS는 특정 애플리케이션 이벤트가 발생할 때 알림을 트리거하도록 지원합니다. 그런 다음에 해당 이벤트에 대해 프로그래밍 방식의 작업을 수행할 수 있습니다. 애플리케이션에는 Apple 푸시 알림 서비스(APN), Firebase Cloud Messaging(FCM) 및 Windows 푸시 알림 서비스(WNS)와 같은 푸시 알림 서비스에 대한 지원이 포함되어야 합니다. Amazon SNS 콘솔 AWS CLI또는 AWS SDKs를 사용하여 애플리케이션 이벤트 알림을 설정합니다.

## 사용 가능한 애플리케이션 이벤트
<a name="application-event-notifications-events"></a>

애플리케이션 이벤트 알림은 개별 플랫폼 엔드포인트가 전송 실패뿐 아니라 생성, 삭제 및 업데이트되는 시기도 추적합니다. 다음은 애플리케이션 이벤트의 속성 이름입니다.


| 속성 이름 | 알림 트리거 | 
| --- | --- | 
| EventEndpointCreated | 새 플랫폼 엔드포인트가 애플리케이션에 추가됩니다. | 
| EventEndpointDeleted | 애플리케이션과 연결된 플랫폼 엔드포인트가 삭제됩니다. | 
| EventEndpointUpdated | 애플리케이션과 연결된 플랫폼 엔드포인트의 속성이 변경됩니다. | 
| EventDeliveryFailure | 애플리케이션과 연결된 플랫폼 엔드포인트로 전송할 때 영구 실패가 발생합니다. 플랫폼 애플리케이션 쪽에서 전송 실패를 추적하려면 애플리케이션의 메시지 전송 상태 이벤트를 구독하세요. 자세한 정보는 [메시지 전송 상태를 위한 Amazon SNS 애플리케이션 속성 사용](https://docs.aws.amazon.com/sns/latest/dg/sns-msg-status.html)을 참조하세요.  | 

이러한 이벤트 알림을 받을 수 있는 애플리케이션에 속성을 연결할 수 있습니다.

## 모바일 푸시 알림 전송
<a name="application-event-notifications-howto-set"></a>

애플리케이션 이벤트 알림을 전송하려면 각 유형의 이벤트에 대한 알림을 수신할 주제를 지정합니다. Amazon SNS가 알림을 전송할 때 주제는 프로그래밍 방식의 작업을 수행하는 엔드포인트로 알림을 라우팅할 수 있습니다.

**중요**  
대용량 애플리케이션은 많은 수(예: 수만 개)의 애플리케이션 이벤트 알림을 생성합니다. 이렇게 많은 알림은 이메일 주소, 전화번호 및 모바일 애플리케이션과 같이 인간이 사용하도록 설계된 엔드포인트에 부담이 될 수 있습니다. 애플리케이션 이벤트 알림을 주제에 전송할 때 다음 지침을 고려하세요.  
알림을 수신하는 각 주제에는 HTTP 또는 HTTPS 엔드포인트, Amazon SQS 대기열 또는 AWS Lambda 함수와 같은 프로그래밍 방식의 엔드포인트에 대한 구독만 포함되어야 합니다.
알림을 통해 트리거되는 처리량을 줄이려면 각 주제의 구독을 작은 수(예: 5개 이하)로 제한합니다.

Amazon SNS 콘솔, AWS Command Line Interface (AWS CLI) 또는 AWS SDKs.

### AWS Management Console
<a name="application-event-notifications-howto-set-console"></a>

1. [Amazon SNS 콘솔](https://console.aws.amazon.com/sns/home)에 로그인합니다.

1. 탐색 창에서 **모바일(Mobile)**, **푸시 알림(Push notifications)**을 선택합니다.

1. **모바일 푸시 알림** 페이지의 **플랫폼 애플리케이션** 섹션에서 애플리케이션을 선택한 후 **편집**을 선택합니다.

1. **Event notifications(이벤트 알림)** 섹션을 확장합니다.

1. **작업**, **이벤트 구성**을 선택합니다.

1. 다음 이벤트에 사용할 주제의 ARN을 입력합니다.
   + 엔드포인트 생성 완료
   + 엔드포인트 삭제 완료
   + 엔드포인트 업데이트 완료
   + 전송 실패

1. **변경 사항 저장**을 선택합니다.

### AWS CLI
<a name="awscli"></a>

[set-platform-application-attributes](https://docs.aws.amazon.com/cli/latest/reference/sns/set-platform-application-attributes.html) 명령을 실행합니다.

다음 예는 4가지 애플리케이션 이벤트 모두에 대해 동일한 Amazon SNS 주제를 설정합니다.

```
aws sns set-platform-application-attributes
--platform-application-arn arn:aws:sns:us-east-1:12345EXAMPLE:app/FCM/MyFCMPlatformApplication
--attributes EventEndpointCreated="arn:aws:sns:us-east-1:12345EXAMPLE:MyFCMPlatformApplicationEvents",
EventEndpointDeleted="arn:aws:sns:us-east-1:12345EXAMPLE:MyFCMPlatformApplicationEvents",
EventEndpointUpdated="arn:aws:sns:us-east-1:12345EXAMPLE:MyFCMPlatformApplicationEvents",
EventDeliveryFailure="arn:aws:sns:us-east-1:12345EXAMPLE:MyFCMPlatformApplicationEvents"
```

### AWS SDKs
<a name="application-event-notifications-sdk"></a>

 AWS SDK를 사용하여 Amazon SNS API로 `SetPlatformApplicationAttributes` 요청을 제출하여 애플리케이션 이벤트 알림을 설정합니다.

시작하기 도움말 및 이전 버전에 대한 정보를 포함하여 AWS SDK 개발자 안내서 및 코드 예제의 전체 목록은 섹션을 참조하세요[AWS SDK에서 Amazon SNS 사용](sdk-general-information-section.md).