플랫폼별 페이로드로 게시 - Amazon Simple Notification Service

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

플랫폼별 페이로드로 게시

AWS Management Console 또는 Amazon을 사용하여 플랫폼별 페이로드를 사용하여 사용자 지정 메시지를 모바일 디바이스로 SNS APIs 전송할 수 있습니다. Amazon 사용에 대한 자세한 내용은 SNS 의 모바일 푸시 API 작업SNSMobilePush.java 파일을 APIs참조하세요snsmobilepush.zip.

JSON형식이 지정된 메시지 전송

플랫폼별 페이로드를 보낼 때는 따옴표가 이스케이프된 JSON 키-값 페어 문자열로 데이터를 포맷해야 합니다.

다음 예제에서는 FCM 플랫폼에 대한 사용자 지정 메시지를 보여줍니다.

{ "GCM": "{\"fcmV1Message\": {\"message\": {\"notification\": {\"title\": \"Hello\", \"body\": \"This is a test.\"}, \"data\": {\"dataKey\": \"example\"}}}}" }

플랫폼별 메시지 전송 중

사용자 지정 데이터를 키-값 쌍으로 전송할 수 있을 뿐 아니라, 플랫폼별 키-값 쌍을 전송할 수도 있습니다.

다음 예제는 FCM 파라미터에 사용자 지정 데이터 키-값 페어 collapse_key 뒤에 FCM data 파라미터 time_to_live 및 를 포함하는 것을 보여줍니다.

{ "GCM": "{\"fcmV1Message\": {\"message\": {\"notification\": {\"title\": \"TitleTest\", \"body\": \"Sample message for Android or iOS endpoints.\"}, \"data\":{\"time_to_live\": 3600,\"collapse_key\":\"deals\"}}}}" }

Amazon 에서 지원되는 각 푸시 알림 서비스에서 지원하는 키-값 페어 목록은 다음을 SNS참조하세요.

중요

SNS 이제 Amazon은 Android 디바이스로 모바일 푸시 알림을 보내기 API 위해 Firebase Cloud Messaging(FCM) HTTP v1을 지원합니다.

2024년 3월 26일 - Amazon은 Apple 디바이스 및 Webpush 대상API용 FCM HTTP v1을 SNS 지원합니다. 애플리케이션 중단을 방지하려면 2024년 6월 1일 API 또는 그 이전에 기존 모바일 푸시 애플리케이션을 최신 FCM HTTP v1로 마이그레이션하는 것이 좋습니다.

다중 플랫폼의 애플리케이션으로 메시지 전송 중

FCM 및 와 같은 여러 플랫폼의 디바이스에 설치된 애플리케이션에 메시지를 보내려면 먼저 Amazon의 주제에 모바일 엔드포인트를 구독SNS한 다음 주제에 메시지를 게시해야 APNs합니다.

다음 예제에서는 APNs, 및 에서 구독한 모바일 엔드포인트에 보낼 메시지를 보여줍니다FCMADM.

{ "default": "This is the default message which must be present when publishing a message to a topic. The default message will only be used if a message is not present for one of the notification platforms.", "APNS": "{\"aps\":{\"alert\": \"Check out these awesome deals!\",\"url\":\"www.amazon.com\"} }", "GCM": "{\"data\":{\"message\":\"Check out these awesome deals!\",\"url\":\"www.amazon.com\"}}", "ADM": "{\"data\":{\"message\":\"Check out these awesome deals!\",\"url\":\"www.amazon.com\"}}" }

알림 또는 백그라운드 알림APNs으로 에 메시지 전송

Amazon은 메시지를 APNs 로 보내alert거나 background 알림을 보낼 SNS 수 있습니다(자세한 내용은 APNs 설명서의 앱에 백그라운드 업데이트 푸시 참조).

  • alert APNs 알림은 알림 메시지를 표시하거나, 소리를 재생하거나, 애플리케이션 아이콘에 배지를 추가하여 사용자에게 알립니다.

  • background APNs 알림은 사용자에게 알리지 않고 알림의 내용을 실행하도록 애플리케이션을 깨우거나 지시합니다.

사용자 지정 APNs 헤더 값 지정

Amazon SNS Publish API 작업 AWS SDKs또는 를 사용하여 AWS.SNS.MOBILE.APNS.PUSH_TYPE 예약 메시지 속성에 대한 사용자 지정 값을 지정하는 것이 좋습니다 AWS CLI. 다음 CLI 예제는 지정된 주제에 apns-push-type background 대해 content-available 1 및 로 설정됩니다.

aws sns publish \ --endpoint-url https://sns.us-east-1.amazonaws.com \ --target-arn arn:aws:sns:us-east-1:123456789012:endpoint/APNS_PLATFORM/MYAPP/1234a567-bc89-012d-3e45-6fg7h890123i \ --message '{"APNS_PLATFORM":"{\"aps\":{\"content-available\":1}}"}' \ --message-attributes '{ \ "AWS.SNS.MOBILE.APNS.TOPIC":{"DataType":"String","StringValue":"com.amazon.mobile.messaging.myapp"}, \ "AWS.SNS.MOBILE.APNS.PUSH_TYPE":{"DataType":"String","StringValue":"background"} \ "AWS.SNS.MOBILE.APNS.PRIORITY":{"DataType":"String","StringValue":"5"}}', \ --message-structure json

페이로드에서 APNs 푸시 유형 헤더 추론

apns-push-type APNs 헤더를 설정하지 않으면 Amazon은 JSON형식이 지정된 aps APNs페이로드 구성의 사전에서 content-available 키를 background 기준으로 헤더를 alert 또는 로 SNS 설정합니다.

참고

AmazonSNS은 alert 또는 background 헤더만 추론할 apns-push-type 수 있지만 헤더는 다른 값으로 설정할 수 있습니다.

  • 다음의 경우 apns-push-typealert로 설정됩니다.

    • aps 사전에 1로 설정된 content-available과 사용자 상호 작용을 트리거하는 하나 이상의 키가 포함되어 있는 경우.

    • aps 사전에 0으로 설정된 content-available이 포함되어 있거나 content-available 키가 없는 경우.

    • content-available 키의 값이 정수 또는 부울이 아닌 경우.

  • 다음의 경우 apns-push-typebackground로 설정됩니다.

    • aps 사전에 1로 설정된 content-available 포함되어 있고 사용자 상호 작용을 트리거하는 다른 키가 없는 경우.

      중요

      Amazon이 에 대한 원시 구성 객체를 백그라운드 전용 알림APNs으로 SNS 보내는 경우 사전1에서 apscontent-available 설정된 를 포함해야 합니다. 사용자 지정 키를 포함할 수 있지만 aps 사전에는 사용자 상호 작용을 트리거하는 키(예: 경보, 배지 또는 사운드)를 포함할 수 없습니다.

다음은 원시 구성 객체의 예입니다.

{ "APNS": "{\"aps\":{\"content-available\":1},\"Foo1\":\"Bar\",\"Foo2\":123}" }

이 예제에서 Amazon은 메시지의 apns-push-type APNs 헤더를 로 SNS 설정합니다background. Amazon이 사전에 apn 로 설정된 content-available 키가 포함되어 1있고 사용자 상호 작용을 트리거할 수 있는 다른 키가 포함되어 있지 않음을 SNS 감지하면 헤더를 로 설정합니다background.