

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Atribut aplikasi seluler Amazon SNS
<a name="sns-msg-status"></a>

Amazon Simple Notification Service (Amazon SNS) menyediakan dukungan untuk mencatat status pengiriman pesan notifikasi push. Setelah Anda mengonfigurasi atribut aplikasi, entri log akan dikirim ke CloudWatch Log untuk pesan yang dikirim dari Amazon SNS ke titik akhir seluler. Mencatat status pengiriman pesan membantu memberikan wawasan operasional yang lebih baik, seperti berikut ini: 
+ Mengetahui apakah pesan notifikasi push dikirim dari Amazon SNS ke layanan notifikasi push.
+ Mengidentifikasi respons yang dikirim dari layanan notifikasi push ke Amazon SNS.
+ Tentukan waktu tunggu pesan (waktu antara stempel waktu publikasi dan sesaat sebelum diserahkan ke layanan notifikasi push).

 Untuk mengonfigurasi atribut aplikasi untuk status pengiriman pesan, Anda dapat menggunakan Konsol Manajemen AWS, kit pengembangan AWS perangkat lunak (SDKs), atau API kueri. 

## Mengkonfigurasi atribut status pengiriman pesan menggunakan Konsol Manajemen AWS
<a name="sns-msg-console"></a>

1. Masuk ke [konsol Amazon SNS](https://console.aws.amazon.com/sns/home).

1. Pada panel navigasi, arahkan ke **Seluler**, lalu pilih **Notifikasi push**.

1. Dari bagian **Aplikasi Platform**, pilih aplikasi yang berisi titik akhir yang Anda inginkan menerima CloudWatch Log.

1. Pilih **Tindakan Aplikasi** lalu pilih **Status Pengiriman**.

1. Pada kotak dialog **Status Pengiriman**, pilih **Buat Peran IAM**.

   Anda kemudian akan diarahkan ke konsol IAM.

1. Pilih **Izinkan** untuk memberikan akses tulis Amazon SNS untuk menggunakan CloudWatch Log atas nama Anda.

1. Sekarang, kembali ke kotak dialog **Status Pengiriman**, masukkan nomor di bidang **Persentase Sukses ke Sampel (0-100)** untuk persentase pesan yang berhasil dikirim yang ingin Anda terima CloudWatch Log.
**catatan**  
Setelah Anda mengonfigurasi atribut aplikasi untuk status pengiriman pesan, semua pengiriman pesan yang gagal menghasilkan CloudWatch Log.

1. Terakhir, pilih **Simpan Konfigurasi**. Anda sekarang akan dapat melihat dan mengurai CloudWatch Log yang berisi status pengiriman pesan. Untuk informasi selengkapnya tentang penggunaan CloudWatch, lihat [CloudWatchDokumentasi](https://aws.amazon.com/documentation/cloudwatch).

## Contoh log status CloudWatch pengiriman pesan Amazon SNS
<a name="sns-msg-examples"></a>

Setelah Anda mengonfigurasi atribut status pengiriman pesan untuk titik akhir aplikasi, CloudWatch Log akan dihasilkan. Contoh log, dalam format JSON, ditampilkan sebagai berikut:

**SUKSES**

```
{
  "status": "SUCCESS",
  "notification": {
    "timestamp": "2015-01-26 23:07:39.54",
    "messageId": "9655abe4-6ed6-5734-89f7-e6a6a42de02a"
  },
  "delivery": {
    "statusCode": 200,
    "dwellTimeMs": 65,
    "token": "Examplei7fFachkJ1xjlqT64RaBkcGHochmf1VQAr9k-IBJtKjp7fedYPzEwT_Pq3Tu0lroqro1cwWJUvgkcPPYcaXCpPWmG3Bqn-wiqIEzp5zZ7y_jsM0PKPxKhddCzx6paEsyay9Zn3D4wNUJb8m6HXrBf9dqaEw",
    "attempts": 1,
    "providerResponse": "{\"multicast_id\":5138139752481671853,\"success\":1,\"failure\":0,\"canonical_ids\":0,\"results\":[{\"message_id\":\"0:1422313659698010%d6ba8edff9fd7ecd\"}]}",
    "destination": "arn:aws:sns:us-east-2:111122223333:endpoint/FCM/FCMPushApp/c23e42de-3699-3639-84dd-65f84474629d"
  }
}
```

**KEGAGALAN**

```
{
  "status": "FAILURE",
  "notification": {
    "timestamp": "2015-01-26 23:29:35.678",
    "messageId": "c3ad79b0-8996-550a-8bfa-24f05989898f"
  },
  "delivery": {
    "statusCode": 8,
    "dwellTimeMs": 1451,
    "token": "examp1e29z6j5c4df46f80189c4c83fjcgf7f6257e98542d2jt3395kj73",
    "attempts": 1,
    "providerResponse": "NotificationErrorResponse(command=8, status=InvalidToken, id=1, cause=null)",
    "destination": "arn:aws:sns:us-east-2:111122223333:endpoint/APNS_SANDBOX/APNSPushApp/986cb8a1-4f6b-34b1-9a1b-d9e9cb553944"
  }
}
```

Untuk daftar kode respons layanan notifikasi push, lihat [Kode respons platform](#platform-returncodes).

## Mengkonfigurasi atribut status pengiriman pesan dengan AWS SDKs
<a name="sns-msg-sdk"></a>

[AWS SDKs](https://aws.amazon.com/tools/)Menyediakan APIs dalam beberapa bahasa untuk menggunakan atribut status pengiriman pesan dengan Amazon SNS. 

Contoh Java berikut menunjukkan cara menggunakan API `SetPlatformApplicationAttributes` untuk mengonfigurasi atribut aplikasi untuk status pengiriman pesan dari pesan notifikasi push. Anda dapat menggunakan atribut berikut untuk status pengiriman pesan: `SuccessFeedbackRoleArn`, `FailureFeedbackRoleArn`, dan `SuccessFeedbackSampleRate`. `FailureFeedbackRoleArn`Atribut `SuccessFeedbackRoleArn` dan digunakan untuk memberikan akses tulis Amazon SNS untuk menggunakan CloudWatch Log atas nama Anda. Atribut `SuccessFeedbackSampleRate` adalah untuk menentukan persentase tingkat sampel (0-100) dari pesan yang berhasil terkirim. Setelah Anda mengonfigurasi `FailureFeedbackRoleArn` atribut, maka semua pengiriman pesan yang gagal menghasilkan CloudWatch Log. 

```
SetPlatformApplicationAttributesRequest setPlatformApplicationAttributesRequest = new SetPlatformApplicationAttributesRequest();
Map<String, String> attributes = new HashMap<>();
attributes.put("SuccessFeedbackRoleArn", "arn:aws:iam::111122223333:role/SNS_CWlogs");
attributes.put("FailureFeedbackRoleArn", "arn:aws:iam::111122223333:role/SNS_CWlogs");
attributes.put("SuccessFeedbackSampleRate", "5");
setPlatformApplicationAttributesRequest.withAttributes(attributes);
setPlatformApplicationAttributesRequest.setPlatformApplicationArn("arn:aws:sns:us-west-2:111122223333:app/FCM/FCMPushApp");
sns.setPlatformApplicationAttributes(setPlatformApplicationAttributesRequest);
```

Untuk informasi selengkapnya tentang SDK for Java, lihat [Memulai dengan AWS SDK untuk Java](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/get-started.html).

## Kode respons platform
<a name="platform-returncodes"></a>

Berikut ini adalah daftar tautan untuk kode respons layanan notifikasi push:


****  

| Layanan notifikasi push | Kode respons | 
| --- | --- | 
| Olahpesan Perangkat Amazon (ADM) | Lihat [Format Respons](https://developer.amazon.com/docs/adm/send-message.html#response-format) dalam dokumentasi ADM. | 
| Layanan Pemberitahuan Push Apple (APNs) | Lihat Respons HTTP/2 dari APNs dalam [Berkomunikasi dengan APNs](https://developer.apple.com/library/archive/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/CommunicatingwithAPNs.html#/apple_ref/doc/uid/TP40008194-CH11-SW1) di Panduan Pemrograman Pemberitahuan Lokal dan Jarak Jauh. | 
| Pesan Cloud Firebase (FCM) | Lihat [Kode Respons Kesalahan Pesan Hilir](https://firebase.google.com/docs/cloud-messaging/http-server-ref#error-codes) di dokumentasi Firebase Cloud Messaging. | 
| Layanan Notifikasi Push Microsoft untuk Ponsel Windows (MPNS) | Lihat [Kode Respons Layanan Notifikasi Push untuk Ponsel Windows 8](https://msdn.microsoft.com/en-us/library/windows/apps/ff941100%28v=vs.105%29.aspx#BKMK_PushNotificationServiceResponseCodes) dalam dokumentasi Pengembangan Windows 8. | 
| Layanan Notifikasi Push Windows (WNS) | Lihat "Kode respons" di [Permintaan Layanan Notifikasi Push dan Header Respons (Aplikasi Windows Runtime)](https://msdn.microsoft.com/en-us/library/windows/apps/hh465435.aspx) di dokumentasi Pengembangan Windows 8. | 