Pesan dua arah SMS - AWS Pesan Pengguna Akhir SMS

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

Pesan dua arah SMS

AWS End User Messaging SMS mencakup dukungan untuk dua arahSMS. Ketika Anda mengatur dua arahSMS, Anda dapat menerima pesan masuk dari pelanggan Anda. Anda juga dapat menggunakan pesan dua arah bersama dengan yang lain AWS layanan, seperti Lambda dan Amazon Lex, untuk menciptakan pengalaman pesan teks interaktif.

Ketika salah satu pelanggan Anda mengirim pesan ke nomor telepon Anda, badan pesan dikirim ke SNS topik Amazon atau instans Amazon Connect untuk diproses.

catatan
Two-way SMS messaging (Console)

Untuk mengaktifkan dua arah SMS menggunakan SMS konsol AWS End User Messaging, ikuti langkah-langkah berikut:

Aktifkan dua arah SMS
  1. Buka SMS konsol AWS End User Messaging di https://console.aws.amazon.com/sms-voice/.

  2. Di panel navigasi, di bawah Konfigurasi, pilih Nomor telepon.

  3. Pada halaman Nomor telepon, pilih nomor telepon.

  4. Pada SMS tab Dua arah, pilih tombol Edit pengaturan.

  5. Pada halaman Edit pengaturan, pilih Aktifkan pesan dua arah.

  6. Untuk jenis Tujuan, pilih Amazon SNS atau Amazon Connect.

    • Untuk Amazon, SNS pilih SNStopik Amazon Baru atau SNS topik Amazon yang ada dan kemudian untuk peran saluran dua arah, pilih Pilih IAMperan yang ada atau Gunakan kebijakan SNS topik Amazon.

      • SNSTopik Amazon Baru - Jika Anda memilih opsi ini, Pesan Pengguna AWS Akhir akan SMS membuat topik di akun Anda. Topik dibuat secara otomatis dengan semua izin yang diperlukan. Untuk informasi selengkapnya tentang SNS topik Amazon, lihat Mengonfigurasi Amazon SNS di Panduan Pengembang Layanan Pemberitahuan Sederhana Amazon.

      • SNSTopik Amazon yang ada - Jika Anda memilih opsi ini, Anda harus memilih SNS topik Amazon yang ada dari menu tarik-turun tujuan pesan masuk.

      • Untuk peran saluran dua arah, pilih salah satu:

    • Untuk Amazon Connect, dalam peran saluran dua arah, pilih Pilih IAM peran yang ada.

  7. Pilih Simpan perubahan.

  8. (Opsional) Jika Anda memilih Amazon Connect sebagai tipe Tujuan, maka di jendela Impor Nomor Telepon ke Amazon Connect:

    1. Untuk menu tarik-turun tujuan Pesan masuk, pilih instans Amazon Connect yang akan menerima pesan masuk.

    2. Pilih Impor Nomor Telepon.

Two-way SMS messaging (AWS CLI)

Anda dapat menggunakan update-phone-numberperintah untuk mengaktifkan dua arahSMS.

Di baris perintah, masukkan perintah berikut:

$ aws pinpoint-sms-voice-v2 update-phone-number \ > --phone-number-id PhoneNumber \ > --two-way-enabled True \ > --two-way-channel-arn TwoWayARN \ > --two-way-channel-role TwoChannelWayRole

Di perintah sebelumnya, lakukan perubahan berikut:

  • Ganti PhoneNumber dengan PhoneNumber ID atau Nama Sumber Daya Amazon (ARN) dari nomor telepon.

  • Ganti TwoWayARN dengan Amazon Resource Name (ARN) untuk menerima SMS pesan masuk. Misalnya SNS kebijakan Amazon, lihatKebijakan SNS topik Amazon untuk SNS topik Amazon. Untuk menetapkan Amazon Connect sebagai set tujuan masuk TwoWayARN keconnect.region.amazonaws.com. Ganti region dengan instans Amazon Connect di-host di. Wilayah AWS

  • Ganti TwoChannelWayRole dengan Amazon Resource Name (ARN) dari IAM peran yang akan digunakan. Misalnya kebijakan SNS izin, lihat IAMkebijakan untuk SNS topik Amazon dan misalnya kebijakan Amazon Connect, lihatIAMkebijakan untuk Amazon Connect. Parameter ini hanya diperlukan jika Anda memilih untuk menggunakan kebijakan IAM izin.

IAMkebijakan untuk SNS topik Amazon

Jika Anda SMS ingin Pesan Pengguna AWS Akhir menggunakan IAM peran yang ada atau jika Anda membuat peran baru, lampirkan kebijakan berikut ke peran tersebut sehingga Pesan Pengguna AWS Akhir SMS dapat menerimanya. Untuk informasi tentang cara mengubah hubungan kepercayaan suatu peran, lihat Memodifikasi Peran dalam panduan IAM pengguna.

Berikut ini adalah kebijakan kepercayaan untuk IAM peran tersebut. Dalam IAM kebijakan berikut, lakukan perubahan berikut:

  • Ganti accountId dengan ID unik untuk AWS akun Anda.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "SMSVoice", "Effect": "Allow", "Principal": { "Service": "sms-voice.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId" } } } ] }

Berikut ini adalah kebijakan izin untuk IAM peran tersebut. SMSVoiceAllowSNSPublishSid adalah kebijakan izin untuk memungkinkan penerbitan ke SNS topik Amazon dan SMSVoiceAllowEncryptedSNSTopics Sid adalah opsi untuk topik Amazon SNS terenkripsi.

Dalam kebijakan IAM izin berikut, lakukan perubahan berikut:

  • Ganti partition dengan AWS partisi yang Anda gunakan AWS End User Messaging SMS di.

  • Ganti region dengan Wilayah AWS yang Anda gunakan AWS End User Messaging SMS di.

  • Ganti accountId dengan ID unik untuk Anda Akun AWS.

  • Ganti snsTopicArn dengan SNS topik Amazon yang akan menerima pesan.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "SMSVoiceAllowSNSPublish", "Effect": "Allow", "Action": "sns:Publish", "Resource": "arn:partition:sns:region:accountId:snsTopicArn", "Condition": { "StringEquals": { "aws:ResourceAccount": "accountId" } } }, { "Sid": "SMSVoiceAllowEncryptedSNSTopics", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey*" ], "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:aws:sns:topicArn": "arn:partition:sns:region:accountId:snsTopicArn", "aws:CalledViaLast": "sns.amazonaws.com" } } } ] }

Kebijakan SNS topik Amazon untuk SNS topik Amazon

SNSTopik Amazon memerlukan kebijakan topik yang sesuai untuk memberikan akses ke Pesan Pengguna AWS Akhir SMS jika tidak disediakan di TwoChannelWayRole parameter.

{ "Effect": "Allow", "Principal": { "Service": "sms-voice.amazonaws.com" }, "Action": "sns:Publish", "Resource": "snsTopicArn" }

Pada contoh sebelumnya, lakukan perubahan berikut:

  • Ganti snsTopicArn dengan SNS topik Amazon yang akan mengirim dan menerima pesan.

catatan

SNSFIFOTopik Amazon tidak didukung.

Meskipun SMS data AWS End User Messaging dienkripsi, Anda dapat menggunakan SNS topik Amazon yang dienkripsi menggunakan AWS KMS kunci untuk tingkat keamanan tambahan. Keamanan tambahan ini dapat membantu jika aplikasi Anda menangani data pribadi atau sensitif.

Anda perlu melakukan beberapa langkah penyiapan tambahan untuk menggunakan SNS topik Amazon terenkripsi dengan pesan dua arah.

Pernyataan contoh berikut menggunakan, opsional tetapi direkomendasikan, SourceAccount dan SourceArn kondisi untuk menghindari masalah wakil yang membingungkan dan hanya akun SMS pemilik Pesan Pengguna AWS Akhir yang memiliki akses. Untuk informasi lebih lanjut tentang masalah wakil yang bingung, lihat Masalah wakil yang bingung di panduan IAM pengguna.

Pertama, kunci yang Anda gunakan harus simetris. SNSTopik Amazon terenkripsi tidak mendukung kunci asimetris AWS KMS .

Kedua, kebijakan kunci harus dimodifikasi agar AWS End User Messaging SMS dapat menggunakan kunci tersebut. Tambahkan izin berikut ke kebijakan kunci yang ada:

{ "Effect": "Allow", "Principal": { "Service": "sms-voice.amazonaws.com" }, "Action": [ "kms:GenerateDataKey*", "kms:Decrypt" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId" }, "ArnLike": { "aws:SourceArn": "arn:aws:sms-voice:region:accountId:*" } } }

Untuk informasi selengkapnya tentang mengedit kebijakan utama, lihat Mengubah kebijakan kunci di Panduan AWS Key Management Service Pengembang.

Untuk informasi selengkapnya tentang mengenkripsi SNS topik Amazon menggunakan AWS KMS kunci, lihat Mengaktifkan kompatibilitas antara sumber peristiwa dari AWS layanan dan topik terenkripsi di Panduan Pengembang Layanan Pemberitahuan Sederhana Amazon.

Contoh payload SMS pesan dua arah untuk topik Amazon SNS

Saat nomor Anda menerima SMS pesan, AWS End User Messaging SMS mengirimkan JSON payload ke SNS topik Amazon yang Anda tentukan. JSONPayload berisi pesan dan data terkait, seperti pada contoh berikut:

{ "originationNumber":"+14255550182", "destinationNumber":"+12125550101", "messageKeyword":"JOIN", "messageBody":"EXAMPLE", "inboundMessageId":"cae173d2-66b9-564c-8309-21f858e9fb84", "previousPublishedMessageId":"wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" }

Payload pesan masuk berisi informasi berikut:

Properti Deskripsi

originationNumber

Nomor telepon yang mengirim pesan masuk kepada Anda (dengan kata lain, nomor telepon pelanggan Anda).

destinationNumber

Nomor telepon tempat pelanggan mengirim pesan (nomor telepon khusus Anda).

messageKeyword

Kata kunci terdaftar yang terkait dengan nomor telepon khusus Anda.

messageBody

Pesan yang dikirimkan pelanggan kepada Anda.

inboundMessageId

Pengenal unik untuk pesan yang masuk.

previousPublishedMessageId

Pengidentifikasi unik dari pesan yang ditanggapi pelanggan.

IAMkebijakan untuk Amazon Connect

Jika Anda SMS ingin Pesan Pengguna AWS Akhir menggunakan IAM peran yang ada atau jika Anda membuat peran baru, lampirkan kebijakan berikut ke peran tersebut sehingga Pesan Pengguna AWS Akhir SMS dapat menerimanya. Untuk informasi tentang cara mengubah hubungan kepercayaan yang ada dari suatu peran, lihat Memodifikasi Peran dalam panduan IAM pengguna.

Untuk membuat IAM kebijakan baru, lakukan hal berikut:

  1. Buat kebijakan izin baru dengan mengikuti petunjuk dalam Membuat kebijakan menggunakan JSON editor di Panduan IAM Pengguna.

    1. Pada langkah 4 gunakan kebijakan izin yang didefinisikan di bawah ini.

  2. Buat kebijakan kepercayaan baru dengan mengikuti petunjuk dalam Membuat peran menggunakan kebijakan kepercayaan khusus di Panduan IAM Pengguna.

    1. Pada langkah 4 gunakan kebijakan kepercayaan yang didefinisikan di bawah ini.

    2. Pada langkah 11 tambahkan kebijakan izin yang Anda buat di langkah sebelumnya.

Berikut ini adalah kebijakan izin untuk IAM peran yang memungkinkan penerbitan ke Amazon Connect.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "connect:SendChatIntegrationEvent" ], "Resource": [ "*" ] } ] }

Berikut ini adalah kebijakan kepercayaan untuk IAM peran tersebut, buat perubahan berikut:

  • Ganti accountId dengan ID unik untuk Anda Akun AWS.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "SMSVoice", "Effect": "Allow", "Principal": { "Service": "sms-voice.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId" } } } ] }