

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

# Amazon SNS
<a name="sns-component"></a>

Komponen Amazon SNS (`aws.greengrass.SNS`) menerbitkan pesan ke topik Amazon Simple Notification Service (Amazon SNS). Anda dapat menggunakan komponen ini untuk mengirim peristiwa dari perangkat inti Greengrass ke server web, alamat email, dan pelanggan pesan lainnya. Untuk informasi lebih lanjut, lihat [Apa itu Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/welcome.html) di *Panduan Developer Amazon Simple Notification Service*.

Untuk mempublikasikan topik Amazon SNS dengan komponen ini, mempublikasikan pesan ke topik di mana komponen ini berlangganan. Secara default, komponen ini berlangganan topik [publikasi/berlangganan lokal](ipc-publish-subscribe.md) `sns/message`. Anda dapat menentukan topik lain, termasuk topik AWS IoT Core MQTT, saat Anda menerapkan komponen ini.

Dalam komponen kustom Anda, Anda mungkin ingin menerapkan pemfilteran atau pemformatan logika untuk memproses pesan dari sumber lain sebelum Anda mempublikasikannya ke komponen ini. Hal ini memungkinkan Anda untuk memusatkan logika pemrosesan pesan Anda pada satu komponen.

**catatan**  
Komponen ini menyediakan fungsionalitas yang mirip dengan konektor Amazon SNS di AWS IoT Greengrass V1. Untuk informasi selengkapnya, lihat [konektor Amazon SNS](https://docs.aws.amazon.com/greengrass/latest/developerguide/sns-connector.html) dalam *AWS IoT Greengrass Panduan Developer V1*.

**Topics**
+ [Versi](#sns-component-versions)
+ [Jenis](#sns-component-type)
+ [Sistem operasi](#sns-component-os-support)
+ [Persyaratan](#sns-component-requirements)
+ [Dependensi](#sns-component-dependencies)
+ [Konfigurasi](#sns-component-configuration)
+ [Data input](#sns-component-input-data)
+ [Data output](#sns-component-output-data)
+ [File log lokal](#sns-component-log-file)
+ [Lisensi](#sns-component-licenses)
+ [Changelog](#sns-component-changelog)

## Versi
<a name="sns-component-versions"></a>

Komponen ini memiliki versi berikut:
+ 2.1.x
+ 2.0.x

## Jenis
<a name="sns-component-type"></a>

<a name="public-component-type-lambda"></a><a name="public-component-type-lambda-phrase"></a>Komponen ini adalah komponen Lambda () `aws.greengrass.lambda`. [Inti [Greengrass](greengrass-nucleus-component.md) menjalankan fungsi Lambda komponen ini menggunakan komponen peluncur Lambda.](lambda-launcher-component.md)

<a name="public-component-type-more-information"></a>Untuk informasi selengkapnya, lihat [Jenis komponen](develop-greengrass-components.md#component-types).

## Sistem operasi
<a name="sns-component-os-support"></a>

Komponen ini hanya dapat diinstal pada perangkat inti Linux.

## Persyaratan
<a name="sns-component-requirements"></a>

Komponen ini memiliki persyaratan sebagai berikut:
+ <a name="core-device-lambda-function-requirements"></a>Perangkat inti Anda harus memenuhi persyaratan untuk menjalankan fungsi Lambda. Jika Anda ingin perangkat inti untuk menjalankan fungsi Lambda kontainer, perangkat harus memenuhi persyaratan untuk melakukannya. Untuk informasi selengkapnya, lihat [Persyaratan fungsi Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ <a name="public-component-python3-requirement"></a>[Python](https://www.python.org/) versi 3.7 diinstal pada perangkat inti dan ditambahkan ke variabel lingkungan PATH.
+ Topik Amazon SNS. Untuk informasi lebih lanjut, lihat [Membuat topik Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-create-topic.html) dalam *Panduan Developer Amazon Simple Notification Service*.
+ [Peran perangkat Greengrass](device-service-role.md) harus mengizinkan tindakan `sns:Publish`, seperti yang ditunjukkan dalam contoh kebijakan IAM berikut.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "sns:Publish"
        ],
        "Effect": "Allow",
        "Resource": [
          "arn:aws:sns:us-east-1:123456789012:topic-name"
        ]
      }
    ]
  }
  ```

------

  Anda dapat secara dinamis mengganti topik default dalam muatan pesan masukan untuk komponen ini. Jika aplikasi Anda menggunakan fitur ini, kebijakan IAM harus mencakup semua topik target sebagai sumber daya. Anda dapat memberikan akses terperinci atau bersyarat ke sumber daya (misalnya, dengan menggunakan skema penamaan wildcard `*`).
+ <a name="connector-component-legacy-subscription-router-dependency"></a>Untuk menerima data keluaran dari komponen ini, Anda harus menggabungkan pemutakhiran konfigurasi berikut untuk [komponen router langganan lama (`aws.greengrass.LegacySubscriptionRouter`) saat menerapkan komponen](legacy-subscription-router-component.md) ini. Konfigurasi ini menentukan topik di mana komponen ini menerbitkan tanggapan.

------
#### [ Legacy subscription router v2.1.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-sns": {
        "id": "aws-greengrass-sns",
        "source": "component:aws.greengrass.SNS",
        "subject": "sns/message/status",
        "target": "cloud"
      }
    }
  }
  ```

------
#### [ Legacy subscription router v2.0.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-sns": {
        "id": "aws-greengrass-sns",
        "source": "arn:aws:lambda:region:aws:function:aws-greengrass-sns:version",
        "subject": "sns/message/status",
        "target": "cloud"
      }
    }
  }
  ```<a name="connector-component-legacy-subscription-router-dependency-replace"></a>
  + Ganti *region* dengan Wilayah AWS yang Anda gunakan.
  + Ganti *version* dengan versi fungsi Lambda yang dijalankan komponen ini. Untuk menemukan versi fungsi Lambda, Anda harus melihat resep untuk versi komponen ini yang ingin Anda deploy. Buka halaman detail komponen ini di [konsol AWS IoT Greengrass](https://console.aws.amazon.com//greengrass) tersebut, dan cari pasangan nilai kunci **Fungsi Lambda**. Pasangan kunci-nilai ini berisi nama dan versi fungsi Lambda.

**penting**  <a name="connector-component-legacy-subscription-router-dependency-note"></a>
Anda harus memperbarui versi fungsi Lambda pada router langganan warisan setiap kali Anda men-deploy komponen ini. Hal ini memastikan bahwa Anda menggunakan versi fungsi Lambda yang benar untuk versi komponen yang Anda deploy.

------

  <a name="connector-component-create-deployments"></a>Untuk informasi selengkapnya, lihat [Buat deployment](create-deployments.md).
+ Komponen Amazon SNS didukung untuk berjalan di VPC. Untuk menerapkan komponen ini di VPC, berikut ini diperlukan.
  + Komponen Amazon SNS harus memiliki konektivitas `sns.region.amazonaws.com` yang memiliki titik akhir VPC. `com.amazonaws.us-east-1.sns`

### Titik akhir dan port
<a name="sns-component-endpoints"></a>

Komponen ini harus dapat melakukan permintaan keluar ke titik akhir dan port berikut, selain titik akhir dan port yang diperlukan untuk operasi dasar. Untuk informasi selengkapnya, lihat [Izinkan lalu lintas perangkat melalui proxy atau firewall](allow-device-traffic.md).


| Titik akhir | Port | Diperlukan | Deskripsi | 
| --- | --- | --- | --- | 
|  `sns.region.amazonaws.com`  | 443 | Ya |  Memublikasikan pesan ke Amazon SNS.  | 

## Dependensi
<a name="sns-component-dependencies"></a>

Saat Anda menerapkan komponen, gunakan AWS IoT Greengrass juga versi dependensinya yang kompatibel. Ini berarti bahwa Anda harus memenuhi persyaratan untuk komponen dan semua dependensinya untuk berhasil men-deploy komponen. Bagian ini berisi daftar dependensi untuk [versi yang dirilis](#sns-component-changelog) dari komponen ini dan kendala versi semantik yang menentukan versi komponen untuk setiap dependensi. Anda juga dapat melihat dependensi untuk setiap versi komponen di [konsol AWS IoT Greengrass](https://console.aws.amazon.com//greengrass) tersebut. Pada halaman detail komponen, cari daftar **Dependensi**.

------
#### [ 2.1.10 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.10 dari komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.16.0  | Keras | 
| [Peluncur Lambda](lambda-launcher-component.md) | ^2.0.0  | Keras | 
| [Runtime Lambda](lambda-runtimes-component.md) | ^2.0.0  | Lunak | 
| [Layanan penukaran Token](token-exchange-service-component.md) | ^2.0.0  | Keras | 

------
#### [ 2.1.9 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.9 dari komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.15.0  | Keras | 
| [Peluncur Lambda](lambda-launcher-component.md) | ^2.0.0  | Keras | 
| [Runtime Lambda](lambda-runtimes-component.md) | ^2.0.0  | Lunak | 
| [Layanan penukaran Token](token-exchange-service-component.md) | ^2.0.0  | Keras | 

------
#### [ 2.1.8 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.8 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.14.0  | Keras | 
| [Peluncur Lambda](lambda-launcher-component.md) | ^2.0.0  | Keras | 
| [Runtime Lambda](lambda-runtimes-component.md) | ^2.0.0  | Lunak | 
| [Layanan penukaran Token](token-exchange-service-component.md) | ^2.0.0  | Keras | 

------
#### [ 2.1.7 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.7 dari komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0  | Keras | 
| [Peluncur Lambda](lambda-launcher-component.md) | ^2.0.0  | Keras | 
| [Runtime Lambda](lambda-runtimes-component.md) | ^2.0.0  | Lunak | 
| [Layanan penukaran Token](token-exchange-service-component.md) | ^2.0.0  | Keras | 

------
#### [ 2.1.6 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.6 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0  | Keras | 
| [Peluncur Lambda](lambda-launcher-component.md) | ^2.0.0  | Keras | 
| [Runtime Lambda](lambda-runtimes-component.md) | ^2.0.0  | Lunak | 
| [Layanan penukaran Token](token-exchange-service-component.md) | ^2.0.0  | Keras | 

------
#### [ 2.1.5 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.5 dari komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0  | Keras | 
| [Peluncur Lambda](lambda-launcher-component.md) | ^2.0.0  | Keras | 
| [Runtime Lambda](lambda-runtimes-component.md) | ^2.0.0  | Lunak | 
| [Layanan penukaran Token](token-exchange-service-component.md) | ^2.0.0  | Keras | 

------
#### [ 2.1.4 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.4 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0  | Keras | 
| [Peluncur Lambda](lambda-launcher-component.md) | ^2.0.0  | Keras | 
| [Runtime Lambda](lambda-runtimes-component.md) | ^2.0.0  | Lunak | 
| [Layanan penukaran Token](token-exchange-service-component.md) | ^2.0.0  | Keras | 

------
#### [ 2.1.3 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.3 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0  | Keras | 
| [Peluncur Lambda](lambda-launcher-component.md) | ^2.0.0  | Keras | 
| [Runtime Lambda](lambda-runtimes-component.md) | ^2.0.0  | Lunak | 
| [Layanan penukaran Token](token-exchange-service-component.md) | ^2.0.0  | Keras | 

------
#### [ 2.1.2 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.2 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0  | Keras | 
| [Peluncur Lambda](lambda-launcher-component.md) | ^2.0.0  | Keras | 
| [Runtime Lambda](lambda-runtimes-component.md) | ^2.0.0  | Lunak | 
| [Layanan penukaran Token](token-exchange-service-component.md) | ^2.0.0  | Keras | 

------
#### [ 2.1.1 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.1 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0  | Keras | 
| [Peluncur Lambda](lambda-launcher-component.md) | ^2.0.0  | Keras | 
| [Runtime Lambda](lambda-runtimes-component.md) | ^2.0.0  | Lunak | 
| [Layanan penukaran Token](token-exchange-service-component.md) | ^2.0.0  | Keras | 

------
#### [ 2.0.8 - 2.1.0 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.8 dan 2.1.0 dari komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0  | Keras | 
| [Peluncur Lambda](lambda-launcher-component.md) | ^2.0.0  | Keras | 
| [Runtime Lambda](lambda-runtimes-component.md) | ^2.0.0  | Lunak | 
| [Layanan penukaran Token](token-exchange-service-component.md) | ^2.0.0  | Keras | 

------
#### [ 2.0.7 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.7 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0  | Keras | 
| [Peluncur Lambda](lambda-launcher-component.md) | ^2.0.0  | Keras | 
| [Runtime Lambda](lambda-runtimes-component.md) | ^2.0.0  | Lunak | 
| [Layanan penukaran Token](token-exchange-service-component.md) | ^2.0.0  | Keras | 

------
#### [ 2.0.6 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.6 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0  | Keras | 
| [Peluncur Lambda](lambda-launcher-component.md) | ^2.0.0  | Keras | 
| [Runtime Lambda](lambda-runtimes-component.md) | ^2.0.0  | Lunak | 
| [Layanan penukaran Token](token-exchange-service-component.md) | ^2.0.0  | Keras | 

------
#### [ 2.0.5 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.5 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0  | Keras | 
| [Peluncur Lambda](lambda-launcher-component.md) | ^2.0.0  | Keras | 
| [Runtime Lambda](lambda-runtimes-component.md) | ^2.0.0  | Lunak | 
| [Layanan penukaran Token](token-exchange-service-component.md) | ^2.0.0  | Keras | 

------
#### [ 2.0.4 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.4 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0  | Keras | 
| [Peluncur Lambda](lambda-launcher-component.md) | ^2.0.0  | Keras | 
| [Runtime Lambda](lambda-runtimes-component.md) | ^2.0.0  | Lunak | 
| [Layanan penukaran Token](token-exchange-service-component.md) | ^2.0.0  | Keras | 

------
#### [ 2.0.3 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.3 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.3 <2.1.0  | Keras | 
| [Peluncur Lambda](lambda-launcher-component.md) | >=1.0.0  | Keras | 
| [Runtime Lambda](lambda-runtimes-component.md) | >=1.0.0  | Lunak | 
| [Layanan penukaran Token](token-exchange-service-component.md) | >=1.0.0  | Keras | 

------

Untuk informasi selengkapnya tentang dependensi komponen, lihat [referensi resep komponen](component-recipe-reference.md#recipe-reference-component-dependencies).

## Konfigurasi
<a name="sns-component-configuration"></a>

Komponen ini menyediakan parameter konfigurasi berikut yang dapat Anda sesuaikan ketika Anda men-deploy komponen.

**catatan**  <a name="connector-component-lambda-parameters"></a>
Konfigurasi default komponen ini meliputi parameter fungsi Lambda. Kami sarankan Anda mengedit hanya parameter berikut untuk mengonfigurasi komponen ini pada perangkat Anda.

`lambdaParams`  
Sebuah objek yang berisi parameter untuk fungsi Lambda komponen ini. Objek ini berisi informasi berikut:    
`EnvironmentVariables`  
Sebuah objek yang berisi parameter fungsi Lambda ini. Objek ini berisi informasi berikut:    
`DEFAULT_SNS_ARN`  
ARN topik Amazon SNS default di mana komponen ini menerbitkan pesan. Anda dapat menimpa topik tujuan dengan properti `sns_topic_arn` dalam muatan pesan masukan.

`containerMode`  <a name="connector-component-container-mode-parameter"></a>
(Opsional) Mode kontainerisasi untuk komponen ini. Pilih dari salah satu pilihan berikut:  <a name="lambda-function-component-container-mode-parameter"></a>
+ `NoContainer` – Komponen tersebut tidak berjalan di lingkungan waktu aktif terisolasi.
+ `GreengrassContainer`— Komponen berjalan di lingkungan runtime yang terisolasi di dalam AWS IoT Greengrass wadah.
Default: `GreengrassContainer`

`containerParams`  
<a name="connector-component-container-params-description"></a>(Opsional) Sebuah objek yang berisi parameter kontainer untuk komponen ini. Komponen menggunakan parameter ini jika Anda menentukan `GreengrassContainer` untuk `containerMode`.  
Objek ini berisi informasi berikut:    
`memorySize`  
<a name="connector-component-container-params-memory-size-description"></a>(Opsional) Jumlah memori (dalam kilobyte) yang akan dialokasikan ke komponen.  
Defaultnya 512 MB (525.312 KB).

`pubsubTopics`  <a name="connector-component-pubsub-topics-parameter"></a>
(Opsional) Sebuah objek yang berisi topik di mana komponen berlangganan untuk menerima pesan. Anda dapat menentukan setiap topik dan apakah komponen berlangganan topik MQTT dari AWS IoT Core atau topik lokal. publish/subscribe   
Objek ini berisi informasi berikut:    
`0` - Ini adalah indeks himpunan sebagai string.  
Objek yang berisi informasi berikut:    
`type`  
(Opsional) Jenis publish/subscribe pesan yang digunakan komponen ini untuk berlangganan pesan. Pilih dari salah satu pilihan berikut:  
+ `PUB_SUB` — Berlangganan pesan publish/subscribe lokal. Jika Anda memilih opsi ini, topik tidak dapat berisi wildcard MQTT. Untuk informasi lebih lanjut tentang cara mengirim pesan dari komponen kustom ketika Anda menentukan opsi ini, lihat [Pesan lokal publikasi/berlangganan](ipc-publish-subscribe.md).
+ `IOT_CORE`— Berlangganan pesan AWS IoT Core MQTT. Jika Anda memilih opsi ini, topik dapat berisi wildcard MQTT. Untuk informasi lebih lanjut tentang cara mengirim pesan dari komponen kustom ketika Anda menentukan opsi ini, lihat [Terbitkan/berlangganan pesan MQTT AWS IoT Core](ipc-iot-core-mqtt.md).
Default: `PUB_SUB`  
`topic`  
(Opsional) Topik yang menjadi langganan komponen untuk menerima pesan. Jika Anda menentukan `IotCore` untuk `type`, Anda dapat menggunakan wildcard MQTT (`+` dan `#`) dalam topik ini.

**Example Contoh: Pembaruan gabungan konfigurasi (mode kontainer)**  

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "DEFAULT_SNS_ARN": "arn:aws:sns:us-west-2:123456789012:mytopic"
    }
  },
  "containerMode": "GreengrassContainer"
}
```

**Example Contoh: Pembaruan gabungan konfigurasi (tidak ada mode kontainer)**  

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "DEFAULT_SNS_ARN": "arn:aws:sns:us-west-2:123456789012:mytopic"
    }
  },
  "containerMode": "NoContainer"
}
```

## Data input
<a name="sns-component-input-data"></a>

Komponen ini menerima pesan pada topik berikut dan menerbitkan pesan sebagaimana adanya ke target topik Amazon SNS. <a name="connector-component-local-publish"></a>Secara default, komponen ini berlangganan publish/subscribe pesan lokal. Untuk informasi lebih lanjut tentang cara mempublikasikan pesan ke komponen ini dari komponen kustom Anda, lihat [Pesan lokal publikasi/berlangganan](ipc-publish-subscribe.md). 

**Topik default (publish/subscribe lokal):** `sns/message`

<a name="connector-component-input-properties"></a>Pesan menerima properti berikut. Pesan input harus dalam format JSON.

`request`  
Informasi tentang pesan yang akan dikirim ke topik Amazon SNS.  
Jenis: `object` yang berisi informasi berikut:    
`message`  
Isi dari pesan sebagai string.  
Untuk mengirim objek JSON, buat serialnya sebagai string, dan tentukan `json` untuk properti `message_structure`.  
Tipe: `string`  
`subject`  
(Opsional) Subjek pesan.  
Tipe: `string`  
Subjek dapat berupa teks ASCII dan hingga 100 karakter. Ia harus dimulai dengan huruf, angka, atau tanda baca. Ia tidak dapat berupa jeda baris atau karakter kontrol.  
`sns_topic_arn`  
ARN topik Amazon SNS tempat komponen ini menerbitkan pesan. Tentukan properti ini untuk menimpa topik Amazon SNS default.  
Tipe: `string`  
`message_structure`  
(Opsional) Struktur pesan. Tentukan `json` untuk mengirim pesan JSON yang Anda buat serialnya sebagai string dalam properti `content`.  
Tipe: `string`  
Nilai yang valid: `json`

`id`  <a name="connector-component-input-property-id"></a>
ID acak untuk permintaan. Gunakan properti ini untuk memetakan permintaan inpun untuk respons output. Ketika Anda menentukan properti ini, komponen menetapkan properti `id` di objek respons untuk nilai ini.  
Tipe: `string`

**catatan**  
Ukuran pesan dapat maksimal 256 KB.

**Example Contoh input: Pesan string**  

```
{
  "request": {
    "subject": "Message subject",
    "message": "Message data",
    "sns_topic_arn": "arn:aws:sns:region:account-id:topic2-name"
  },
  "id": "request123"
}
```

**Example Contoh input: pesan JSON**  

```
{
  "request": {
    "subject": "Message subject",
    "message": "{ \"default\": \"Message data\" }",
    "message_structure": "json"
  },
  "id": "request123"
}
```

## Data output
<a name="sns-component-output-data"></a>

 <a name="connector-component-output-data"></a>Komponen ini menerbitkan tanggapan sebagai data output pada topik MQTT berikut secara default. Anda harus menentukan topik ini sebagai `subject` dalam konfigurasi untuk [komponen router langganan warisan](legacy-subscription-router-component.md). Untuk informasi lebih lanjut tentang cara mempublikasikan pesan ke komponen ini dari komponen kustom Anda, lihat [Terbitkan/berlangganan pesan MQTT AWS IoT Core](ipc-iot-core-mqtt.md). 

**Topik default (AWS IoT Core MQTT):** `sns/message/status`

**Example Contoh output: Berhasil**  

```
{
  "response": {
    "sns_message_id": "f80a81bc-f44c-56f2-a0f0-d5af6a727c8a",
    "status": "success"
  },
  "id": "request123"
}
```

**Example Contoh output: Gagal**  

```
{
  "response" : {
    "error": "InvalidInputException",
    "error_message": "SNS Topic Arn is invalid",
    "status": "fail"
  },
  "id": "request123"
}
```

## File log lokal
<a name="sns-component-log-file"></a>

Komponen ini menggunakan file log berikut.

```
/greengrass/v2/logs/aws.greengrass.SNS.log
```

**Untuk melihat log komponen ini**
+ Jalankan perintah berikut pada perangkat inti untuk melihat file log komponen ini secara real time. Ganti `/greengrass/v2` dengan jalur ke folder AWS IoT Greengrass root.

  ```
  sudo tail -f /greengrass/v2/logs/aws.greengrass.SNS.log
  ```

## Lisensi
<a name="sns-component-licenses"></a>

Komponen ini mencakup perangkat lunak/lisensi pihak ketiga berikut:<a name="boto-3-licenses"></a>
+ [AWS SDK untuk Python (Boto3)](https://pypi.org/project/boto3/)/Apache License 2.0
+ [botocore](https://pypi.org/project/botocore/)/Apache License 2.0
+ [dateutil](https://pypi.org/project/python-dateutil/1.4/)/PSF License
+ [docutils](https://pypi.org/project/docutils/)/BSD License, Lisensi Publik Umum (GPL) GNU, Lisensi Dasar Perangkat Lunak Python, Domain Publik
+ [jmespath](https://pypi.org/project/jmespath/)/MIT License
+ [s3transfer](https://pypi.org/project/s3transfer/)/Apache License 2.0
+ [urllib3](https://pypi.org/project/urllib3/)/MIT License

<a name="component-core-software-license"></a>Komponen ini dirilis menurut [Perjanjian Lisensi Perangkat Lunak Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Changelog
<a name="sns-component-changelog"></a>

Tabel berikut menjelaskan perubahan dalam setiap versi komponen.


|  **Versi**  |  **Perubahan**  | 
| --- | --- | 
|  2.1.10  | Versi diperbarui untuk Greengrass nucleus versi 2.15.0 rilis. | 
|  2.1.9  | Versi diperbarui untuk Greengrass nucleus versi 2.14.0 rilis. | 
|  2.1.8  | Versi diperbarui untuk Greengrass nucleus versi 2.13.0 rilis. | 
|  2.1.7  | Versi diperbarui untuk Greengrass nucleus versi 2.12.0 rilis. | 
|  2.1.6  | Versi diperbarui untuk Greengrass nucleus versi 2.11.0 rilis. | 
|  2.1.5  | Versi diperbarui untuk Greengrass nucleus versi 2.10.0 rilis. | 
|  2.1.4  | Versi diperbarui untuk Greengrass nucleus versi 2.9.0 rilis. | 
|  2.1.3  | Versi diperbarui untuk Greengrass nucleus versi 2.8.0 rilis. | 
|  2.1.2  |  Versi diperbarui untuk Greengrass nucleus versi 2.7.0 rilis.  | 
|  2.1.1  |  Versi diperbarui untuk Greengrass nucleus versi 2.6.0 rilis.  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/greengrass/v2/developerguide/sns-component.html)  | 
|  2.0.8  |  Versi diperbarui untuk Greengrass nucleus versi 2.5.0 rilis.  | 
|  2.0.7  |  Versi diperbarui untuk Greengrass nucleus versi 2.4.0 rilis.  | 
|  2.0.6  |  Versi yang diperbarui untuk rilis inti Greengrass versi 2.3.0.  | 
|  2.0.5  |  Versi yang diperbarui untuk rilis inti Greengrass versi 2.2.0.  | 
|  2.0.4  |  Versi yang diperbarui untuk rilis inti Greengrass versi 2.1.0.  | 
|  2.0.3  |  Versi awal.  | 