

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

# Aktifkan streaming pesan obrolan waktu nyata di Amazon Connect
<a name="chat-message-streaming"></a>

Amazon Connect Chat menyediakan [APIs](https://docs.aws.amazon.com/connect/latest/APIReference/Welcome.html)yang memungkinkan Anda berlangganan streaming pesan obrolan waktu nyata. Dengan menggunakan ini APIs, Anda dapat: 
+ Streaming pesan obrolan secara real time saat kontak obrolan baru dibuat.
+ Perluas fungsionalitas Amazon Connect Chat saat ini untuk mendukung kasus penggunaan seperti membangun integrasi dengan solusi SMS dan aplikasi perpesanan pihak ketiga, mengaktifkan notifikasi push seluler, dan membuat dasbor analitik untuk memantau dan melacak aktivitas pesan obrolan. 

**catatan**  
Halaman ini menjelaskan cara berlangganan titik akhir SNS untuk streaming pesan obrolan waktu nyata di Amazon Connect. Jika Anda mencoba mengaktifkan streaming pesan untuk interaksi AI percakapan di Amazon Connect, lihat[Aktifkan streaming pesan untuk obrolan bertenaga AI](message-streaming-ai-chat.md).

## Cara APIs kerja streaming pesan
<a name="how-chat-message-streaming-apis-work"></a>

[Streaming pesan Amazon Connect APIs](https://docs.aws.amazon.com/connect/latest/APIReference/Welcome.html) dipicu ketika peristiwa tertentu terjadi dalam kontak Obrolan Amazon Connect. Misalnya, ketika pelanggan mengirim pesan obrolan baru, acara mengirimkan [muatan](sns-payload.md) ke titik akhir tertentu yang berisi data tentang pesan yang baru saja dikirim. Pesan dipublikasikan menggunakan [Amazon Simple Notification Service](https://docs.aws.amazon.com/sns/latest/dg/welcome.html) (Amazon SNS) ke titik akhir tertentu. 

Topik ini menjelaskan cara mengatur streaming pesan real-time menggunakan Amazon Connect dan Amazon SNS. Langkah-langkahnya adalah: 

1. Gunakan konsol Amazon SNS untuk membuat topik SNS standar baru dan mengatur pesan.

1. Panggil [StartChatContact](https://docs.aws.amazon.com/connect/latest/APIReference/API_StartChatContact.html)API untuk memulai kontak obrolan.

1. Panggil [StartContactStreaming](https://docs.aws.amazon.com/connect/latest/APIReference/API_StartContactStreaming.html)API untuk memulai streaming pesan. 

1. Panggil [CreateParticipantConnection](https://docs.aws.amazon.com/connect-participant/latest/APIReference/API_CreateParticipantConnection.html)API untuk membuat koneksi peserta.

## Langkah 1: Buat topik SNS standar
<a name="step1-chat-streaming"></a>

1. Buka konsol Amazon SNS. 

1. [Buat topik SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-create-topic.html) di AWS akun Anda. Di bagian **Detail**, untuk **Jenis**, pilih **Standar**, masukkan nama untuk topik, lalu pilih **Buat topik**.
**catatan**  
Saat ini, streaming pesan APIs hanya mendukung SNS standar untuk streaming pesan secara real-time. Mereka tidak mendukung topik [Amazon SNS FIFO (masuk pertama, keluar pertama](https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html)). 

1. Setelah Anda membuat topik, Nama Sumber Daya Amazon (ARN) ditampilkan di bagian **Detail**. Salin topik ARN ke clipboard. Anda akan menggunakan topik ARN di langkah berikutnya, dan di. [Langkah 3: Aktifkan streaming pesan pada kontak](#step3-chat-streaming) 

   Topik ARN terlihat mirip dengan contoh berikut: 

   ```
   arn:aws:sns:us-east-1:123456789012:MyTopic                                
   ```

1. Pilih tab **Kebijakan akses**, pilih **Edit**, lalu tambahkan kebijakan berbasis sumber daya pada topik SNS sehingga Amazon Connect memiliki izin untuk mempublikasikannya. Berikut ini adalah contoh kebijakan SNS yang dapat Anda salin dan tempel ke editor JSON, lalu sesuaikan dengan nilai Anda: 

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

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement":[
         {
            "Effect":"Allow",
            "Principal":{
               "Service":"connect.amazonaws.com"
            },
            "Action":"sns:Publish",
            "Resource":"arn:aws:sns:us-east-1:111122223333:TopicName",
            "Condition":{
               "StringEquals":{
                   "aws:SourceAccount":"111122223333"
               },
               "ArnEquals":{
               "aws:SourceArn":"arn:aws:connect:us-east-1:111122223333:instance/InstanceId"
               }
            }
         }
      ]
   }
   ```

------
**catatan**  
**Kebijakan Access** default dilengkapi dengan ketentuan yang diterapkan `sourceOwner` seperti:   

   ```
   "Condition": {
           "StringEquals": {
             "AWS:SourceOwner": "921772911154"
           }
         }
   ```
Pastikan Anda menghapusnya dan menggantinya dengan`SourceAccount`, misalnya:  

   ```
   "Condition":{
               "StringEquals":{
                  "aws:SourceAccount":"YOUR_AWS_ACCOUNT_ID"
               },
               "ArnEquals":{
                  "aws:SourceArn":"YOUR_CONNECT_INSTANCE_ARN"
               }
            }
   ```
Ini mencegah masalah [wakil lintas layanan yang membingungkan](cross-service-confused-deputy-prevention.md). 

1. Jika Anda menggunakan enkripsi sisi server di SNS, verifikasi bahwa Anda telah mengaktifkan `connect.amazonaws.com` izin di file. KMS key Berikut ini adalah contoh kebijakan:

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Id": "key-consolepolicy-3",
       "Statement": [
           {
               "Sid": "Enable IAM User Permissions",
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::111122223333:root",
                   "Service": "connect.amazonaws.com"
               },
               "Action": "kms:*",
               "Resource": "*"
           },
           {
               "Sid": "Allow access for Key Administrators",
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::111122223333:root",
                   "Service": "connect.amazonaws.com"
               },
               "Action": [
                   "kms:Create*",
                   "kms:Describe*",
                   "kms:Enable*",
                   "kms:List*",
                   "kms:Put*",
                   "kms:Update*",
                   "kms:Revoke*",
                   "kms:Disable*",
                   "kms:Get*",
                   "kms:Delete*",
                   "kms:TagResource",
                   "kms:UntagResource",
                   "kms:ScheduleKeyDeletion",
                   "kms:CancelKeyDeletion"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

------

## Langkah 2: Memulai kontak obrolan
<a name="step2-chat-streaming"></a>

1. Hubungi Amazon Connect [StartChatContact](https://docs.aws.amazon.com/connect/latest/APIReference/API_StartChatContact.html)API untuk memulai kontak obrolan. 

   Untuk informasi tentang cara membuat klien SDK untuk memanggil Amazon Connect APIs, lihat topik berikut:
   + [Kelas AmazonConnectClientBuilder](https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/connect/AmazonConnectClientBuilder.html) 
   + [Membuat Klien Layanan](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/creating-clients.html) 

1. Lacak `ContactId` dan `ParticipantToken` dari [StartChatContact](https://docs.aws.amazon.com/connect/latest/APIReference/API_StartChatContact.html)respons karena atribut respons ini digunakan untuk memanggil obrolan lain APIs yang diperlukan untuk mengaktifkan streaming. Ini dijelaskan pada langkah selanjutnya.

## Langkah 3: Aktifkan streaming pesan pada kontak
<a name="step3-chat-streaming"></a>
+ Hubungi [StartContactStreaming](https://docs.aws.amazon.com/connect/latest/APIReference/API_StartContactStreaming.html)untuk mengaktifkan streaming pesan real-time ke topik SNS Anda.
  + **Batas**: Anda dapat berlangganan hingga dua topik SNS per kontak.
  + Saat menelepon [StartContactStreaming](https://docs.aws.amazon.com/connect/latest/APIReference/API_StartContactStreaming.html), Anda harus memberikan Nama Sumber Daya Amazon (ARN) dari topik SNS (lihat). [Langkah 1: Buat topik SNS standar](#step1-chat-streaming)

    Satu topik SNS ARN dapat digunakan di Akun AWS beberapa, tetapi harus berada di Wilayah yang sama dengan instans Amazon Connect Anda. **Misalnya, jika topik ARN Anda ada di us-east-1, instans Amazon Connect Anda harus berada di **us-east-1**.**
  + Untuk pesan obrolan awal yang tidak diterima di titik akhir streaming, Anda dapat memanggil [GetTranscript](https://docs.aws.amazon.com/connect-participant/latest/APIReference/API_GetTranscript.html)API untuk menerima pesan awal.

## Langkah 4: Buat koneksi peserta
<a name="step4-chat-streaming"></a>
+ Panggil [CreateParticipantConnection](https://docs.aws.amazon.com/connect-participant/latest/APIReference/API_CreateParticipantConnection.html)dengan `ConnectParticipant` atribut diteruskan sebagai true. 
  + Anda harus menelepon [CreateParticipantConnection](https://docs.aws.amazon.com/connect-participant/latest/APIReference/API_CreateParticipantConnection.html)dalam waktu lima menit setelah membuat obrolan.
  + Memanggil [CreateParticipantConnection](https://docs.aws.amazon.com/connect-participant/latest/APIReference/API_CreateParticipantConnection.html)dengan `ConnectParticipant` disetel ke true hanya berfungsi jika Anda mengaktifkan streaming [Langkah 2: Memulai kontak obrolan](#step2-chat-streaming) dan peserta pemanggil. `Customer`
  + Langkah ini (membuat koneksi peserta) adalah opsional jika Anda telah berhasil terhubung ke kontak obrolan menggunakan`WEBSOCKET`.

## Langkah selanjutnya
<a name="nextsteps-chat-streaming"></a>

Anda siap untuk bekerja dengan streaming pesan APIs.

1. Untuk memverifikasi itu berfungsi, periksa apakah pesan dipublikasikan ke topik SNS yang Anda buat. Anda dapat melakukan ini menggunakan CloudWatch metrik Amazon. Untuk petunjuk, lihat [Memantau topik Amazon SNS menggunakan](https://docs.aws.amazon.com/sns/latest/dg/sns-monitoring-using-cloudwatch.html). CloudWatch 

1. Karena SNS memiliki [retensi terbatas](https://aws.amazon.com/blogs//aws/sns-ttl-control/), sebaiknya siapkan [Amazon Simple Queue Service (Amazon [SQS) Amazon](https://aws.amazon.com/kinesis/) Kinesis, atau layanan](https://aws.amazon.com/sqs/) lain untuk menyimpan pesan. 

1. Penggunaan [StopContactStreaming](https://docs.aws.amazon.com/connect/latest/APIReference/API_StopContactStreaming.html)bersifat opsional dan tidak diperlukan jika obrolan [terputus](disconnect-hang-up.md) melalui alur kontak, atau jika pelanggan memutuskan koneksi obrolan. Namun, `StopContactStreaming` menyediakan opsi untuk menghentikan streaming pesan pada topik SNS, bahkan jika obrolan aktif dan berkelanjutan.