View a markdown version of this page

Mengirim pesan dengan Notify - AWS SMS Pesan Pengguna Akhir

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

Mengirim pesan dengan Notify

Notify menyediakan dua APIs untuk mengirim pesan:

  • SendNotifyTextMessage— Mengirim pesan SMS menggunakan template yang telah disetujui sebelumnya.

  • SendNotifyVoiceMessage— Mengirim panggilan suara yang membaca konten template menggunakan text-to-speech.

Mengirim pesan SMS

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

  2. Arahkan ke konfigurasi Notify dan pilih tab Test.

  3. Untuk saluran, pilih Teks.

  4. Pilih template dari tabel template.

  5. Masukkan nomor telepon tujuan dalam format E.164.

  6. Isi variabel template.

  7. Pilih Kirim.

AWS CLI
aws pinpoint-sms-voice-v2 send-notify-text-message \ --notify-configuration-id nc-1234567890abcdef0 \ --destination-phone-number +12065550100 \ --template-id notify-code-verification-english-001 \ --template-variables '{"code":"123456"}'
Python (boto3)
import boto3 client = boto3.client('pinpoint-sms-voice-v2') response = client.send_notify_text_message( NotifyConfigurationId='nc-1234567890abcdef0', DestinationPhoneNumber='+12065550100', TemplateId='notify-code-verification-english-001', TemplateVariables={ 'code': '123456' } ) print(f"Message sent. MessageId: {response['MessageId']}") print(f"Resolved body: {response.get('ResolvedMessageBody')}")

Mengirim pesan suara

Pesan suara mengharuskan VOICE saluran diaktifkan pada konfigurasi Pemberitahuan Anda.

Tip

Untuk pesan suara, pisahkan digit dengan titik atau spasi (misalnya,"1. 2. 3. 4. 5. 6.") sehingga text-to-speech mesin membaca setiap digit secara individual, bukan sebagai nomor tunggal.

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

  2. Arahkan ke konfigurasi Notify dan pilih tab Test.

  3. Untuk saluran, pilih Suara.

  4. Pilih template suara dari tabel template.

  5. Masukkan nomor telepon tujuan dan isi variabel template.

  6. Pilih Kirim.

AWS CLI
aws pinpoint-sms-voice-v2 send-notify-voice-message \ --notify-configuration-id nc-1234567890abcdef0 \ --destination-phone-number +12065550100 \ --template-id notify-code-verification-english-001 \ --template-variables '{"code":"123456"}' \ --voice-id JOANNA

Menggunakan DryRun mode

Setel DryRun true untuk memvalidasi permintaan kirim tanpa benar-benar mengirimkan pesan. DryRun mode memeriksa validasi variabel template, pembatasan negara, dan batas pengeluaran, tetapi tidak mengirim pesan atau mengurangi dari batas pengeluaran Anda.

aws pinpoint-sms-voice-v2 send-notify-text-message \ --notify-configuration-id nc-1234567890abcdef0 \ --destination-phone-number +12065550100 \ --template-id notify-code-verification-english-001 \ --template-variables '{"code":"123456"}' \ --dry-run

Kirim parameter permintaan

Keduanya SendNotifyTextMessage dan SendNotifyVoiceMessage terima parameter berikut:

NotifyConfigurationId (Diperlukan)

ID atau ARN dari konfigurasi Notify.

DestinationPhoneNumber (Diperlukan)

Nomor telepon penerima dalam format E.164.

TemplateVariables (Diperlukan)

Peta nama variabel ke nilai. Semua nilai adalah string, bahkan untuk variabel integer atau boolean.

TemplateId

Template yang akan digunakan. Jika dihilangkan, template default konfigurasi digunakan.

ConfigurationSetName

Set konfigurasi untuk perutean acara.

Konteks

Pasangan kunci-nilai termasuk dalam catatan peristiwa.

DryRun

Memvalidasi permintaan tanpa mengirim.

TimeToLive

Berapa lama pesan itu valid, dalam hitungan detik. Defaultnya adalah 72 jam.

MessageFeedbackEnabled

Mengaktifkan pelacakan umpan balik pesan melalui PutMessageFeedback API.

VoiceId (hanya suara)

Suara Amazon Polly untuk digunakan (misalnya,JOANNA,MATTHEW).

Cara kerja perutean pesan

AWS secara otomatis memilih identitas originasi terbaik untuk setiap pesan berdasarkan negara tujuan. Jika Anda telah mengaitkan kumpulan telepon dengan konfigurasi Notify, identitas milik pelanggan di kumpulan akan dicoba terlebih dahulu. Jika tidak ada identitas milik pelanggan yang sesuai, identitas AWS-managed digunakan sebagai fallback.

Umpan balik pesan

Jika Anda mengaktifkan MessageFeedbackEnabled saat mengirim pesan, Anda dapat melaporkan apakah pengguna akhir berhasil menerima dan menggunakan kode:

client.put_message_feedback( MessageId='msg-1234567890abcdef', MessageFeedbackStatus='RECEIVED' # or 'FAILED' )

Acara pengiriman

Beri tahu acara pengiriman yang akan dipancarkan ke tujuan acara yang dikonfigurasi (, CloudWatch Amazon Data Firehose, atau Amazon SNS). Untuk informasi tentang menyiapkan tujuan acara, lihatSet konfigurasi di SMS Pesan Pengguna AWS Akhir.

Jenis acara pengiriman
Peristiwa Deskripsi
PENDING Pesan diantrian untuk pengiriman.
DELIVERED Pesan dikirim ke perangkat penerima.
FAILED Pengiriman pesan gagal. Periksa alasan kegagalan untuk detailnya.
BLOCKED Pesan diblokir oleh aturan konfigurasi Lindungi.

Penanganan kesalahan

ValidationException

Variabel templat yang hilang atau tidak valid, format nomor telepon tidak valid, atau negara tujuan tidak diaktifkan pada konfigurasi.

ResourceNotFoundException

Konfigurasi atau templat Notify tidak ditemukan.

ServiceQuotaExceededException

Batas pesan harian (Tingkat dasar) atau batas pengeluaran bulanan tercapai.

ConflictException

Konfigurasi Notify tidak dalam ACTIVE status.

Catatan penting

  • Pesan dua arah — Pesan dua arah tidak didukung saat menggunakan identitas originasi yang AWS dikelola. Jika Anda memerlukan pesan dua arah, kaitkan kumpulan telepon Anda sendiri. Lihat Menggunakan nomor khusus dengan Notify.

  • Perilaku memilih keluar — Untuk kasus penggunaan OTP dengan identitas yang AWS dikelola, respons kata kunci STOP hanya bersifat informasi. Tidak ada daftar opt-out persisten yang dipertahankan karena setiap permintaan OTP adalah opt-in implisit. Jika Anda mengaitkan kumpulan ponsel Anda sendiri, daftar opt-out pool dihormati.

Pemecahan masalah

Pesan tidak terkirim

Jika pesan Anda tidak terkirim, verifikasi hal berikut:

  1. Verifikasi nomor telepon tujuan dalam format E.164 (dimulai dengan + dan kode negara).

  2. Periksa apakah negara tujuan ada dalam EnabledCountries daftar Anda.

  3. Verifikasi status konfigurasi AndaACTIVE.

  4. Periksa batas pengeluaran Anda belum terlampaui.

Status DIBLOKIR

Pesan diblokir oleh konfigurasi Protect. Alasan umum termasuk negara tujuan yang tidak ada dalam daftar negara yang diaktifkan, atau pesan yang ditandai sebagai AIT potensial (lalu lintas yang meningkat secara artifitis).

Kesalahan validasi

Pastikan semua yang TemplateVariables diperlukan disediakan. Periksa apakah nilai variabel cocok dengan tipe yang dideklarasikan (misalnya, bilangan bulat adalah angka yang valid). Verifikasi ID template ada dan aktif.