SMS

Apa perbedaan antara SMS satu arah dan dua arah?

SMS satu arah mengirim pesan tanpa menerima balasan; SMS dua arah juga menerima pesan dari penerima.

Bentuk pengirim menentukan apakah balasan memiliki alamat tujuan. Nomor SMS yang memenuhi syarat bisa menerima pesan; nama alfanumerik tidak bisa.

Perbedaan ini terdengar seperti fitur yang Anda aktifkan. Kenyataannya lebih mendekati sifat fisik dari apa yang Anda gunakan untuk mengirim, dengan kebijakan per negara yang diterapkan di atasnya.

Apa yang membuat pengirim bersifat satu arah?

Tidak adanya alamat di baliknya.

Balasan adalah pesan yang ditujukan kepada siapa pun yang terakhir mengirim. Jika pengirimnya berupa nomor, alamat itu ada dan perangkat bisa menggunakannya. Jika pengirimnya berupa sender ID alfanumerik, tidak ada nomor untuk dituju, dan model Bird sendiri mencatat ketiadaan itu secara langsung: kode negara pengirim semacam ini bernilai null, dideskripsikan sebagai "the country of the number this sender sends from", dan tidak memiliki number id karena "an alphanumeric sender has no number behind it".

Jadi pembagian pertama bersifat struktural. Long code, nomor toll-free, dan short code bisa menerima. Pengirim alfanumerik tidak bisa, di negara mana pun, di bawah registrasi apa pun.

Pembagian kedua bersifat per negara. Setiap tipe pengirim yang didukung sebuah destinasi melaporkan direction bernilai one_way atau two_way, jadi tipe nomor yang menerima balasan di satu destinasi bisa bersifat kirim-saja di destinasi lain. Kebijakan SMS negara tersebut juga memiliki flag is_two_way_supported sendiri. Keduanya adalah nilai per-destinasi yang bisa berubah, sehingga dipublikasikan di destinasi SMS dan bukan dicantumkan di sini; setiap halaman destinasi menyatakan apakah pesan dua arah didukung.

Bagaimana balasan sampai ke aplikasi saya?

Sebagai event, di-push kepada Anda, dengan pesan yang sudah tersimpan.

Ketika pelanggan mengirim SMS ke salah satu nomor Anda, Bird menyimpan pesan tersebut bersama pesan terkirim Anda dan mengirimkan sms.received. Payload-nya berisi isi pesan, rincian segmen, kedua nomor, dan operator jika carrier melaporkannya. Tidak ada yang perlu di-poll.

Satu hal terjadi sebelum event itu sampai kepada Anda, dan hal ini mengubah apa yang sebaiknya Anda lakukan di handler. Bird mengevaluasi balasan terhadap aturan keyword untuk nomor tersebut terlebih dahulu. Keyword stop yang didukung mencatat supresi pengirim-dan-pelanggan serta mengirim konfirmasi opt-out, dan tetap mengirimkan sms.received. Jadi pesan masuk yang merupakan opt-out tiba di endpoint Anda tampak seperti pesan masuk biasa, sudah ditindaklanjuti.

Konsekuensi untuk kode Anda: jangan perlakukan setiap sms.received sebagai giliran percakapan. Sebagian di antaranya adalah opt-out yang sudah diproses Bird, dan mengirim balasan apa pun terhadap pesan tersebut adalah kesalahan yang diundang oleh pola ini. Apa itu keyword STOP membahas keyword mana yang dikenali, di mana, dan apa yang terjadi di negara yang tidak ada dalam katalog.

Dari pengirim mana saya membalas?

Gunakan nomor yang dihubungi orang tersebut selama masih memenuhi syarat, agar balasan tetap mudah dikenali. Aplikasi Anda mengirim melalui endpoint publik SMS dengan pemeriksaan pengirim, destinasi, dan penerima seperti biasa.

Konfirmasi keyword bawaan Bird memiliki konteks balasan internal yang terpisah. Konteks itu bukan field yang bisa diklaim oleh permintaan API Anda. Konteks tersebut tidak mengizinkan respons percakapan atau kampanye untuk melewati registrasi, akses destinasi, atau opt-out seseorang.

Sebelum membalas, klasifikasikan pesan masuk. Permintaan STOP atau bantuan harus mengikuti alur penanganan yang berlaku, bukan memicu respons otomatis yang tidak terkait. Persyaratan pengirim dan penanganan keyword menjelaskan pemeriksaan yang relevan.

Apa biaya dua arah yang tidak ada di satu arah?

Empat hal, tidak ada yang opsional begitu Anda menerima balasan.

  1. Endpoint yang memverifikasi dan memproses event secara andal. Pesan masuk di-push; perhitungkan percobaan ulang dan pengiriman duplikat. Penanganan webhook membahas tanda tangan, percobaan ulang, dan replay. Identitas event berada di header webhook-id, di luar body. Gunakan nilainya sebagai kunci deduplikasi Anda.
  2. Nomor di setiap destinasi yang memerlukannya. Pengirim alfanumerik tidak bisa menjadi bagian dari program dua arah, jadi kampanye yang mencampurnya perlu rencana untuk destinasi di mana hanya nama yang tersedia. Memilih satu arah juga bukan jalan keluar dari kewajiban: rezim yang memberikan hak opt-out dapat mewajibkan pengirim satu arah untuk menyatakan bahwa balasan tidak berfungsi dan menawarkan jalur lain, yang diuraikan dalam apa itu TCPA.
  3. Menangani pesan yang tidak Anda rancang. Orang membalas notifikasi. Sebagian balasan itu berupa pertanyaan, sebagian opt-out, dan sebagian lagi bukan keduanya.
  4. Memantau sisi masuk dari nomor Anda sendiri. Bird melaporkan volume masuk secara terpisah dari volume keluar, jadi program dua arah memiliki set nomor kedua yang perlu dipantau.

Jika tak satu pun berlaku, satu arah bukan penurunan kualitas. Ini adalah komitmen yang lebih kecil, dan pengirim alfanumerik memberi Anda nama yang mudah dikenali di kolom pengirim di destinasi yang mendukungnya. Tipe pengirim mana yang sebaiknya saya gunakan membahas pertimbangannya secara lengkap, dan SMS dua arah membahas apa yang disediakan Bird untuk sisi balasan.

Singkatnya

  1. Satu arah adalah sifat pengirim, bukan pengaturan.

    Nama tidak memiliki alamat, jadi tidak ada yang bisa dikirim balik ke sana. Pengirim numerik tetap memerlukan kapabilitas SMS dan rute masuk; pengirim alfanumerik tidak bisa menerima balasan.

  2. Sebuah destinasi bisa bersifat satu arah untuk tipe yang sebenarnya didukungnya.

    Setiap tipe pengirim yang didukung sebuah negara melaporkan arahnya sendiri, jadi tipe nomor yang sama bisa dua arah di satu destinasi dan satu arah di destinasi lain.

  3. Balasan tiba sebagai event, bukan sebagai poll.

    Bird menyimpan pesan masuk dan mengirimkan sms.received berisi isi pesan, rincian segmen, kedua nomor, dan operator jika carrier melaporkannya.

  4. Balasan API Anda adalah pengiriman dengan pemeriksaannya sendiri.

    Gunakan pengirim yang memenuhi syarat dan hormati permintaan penerima. Konfirmasi keyword internal tidak memberi aplikasi Anda pengecualian registrasi atau supresi.

Terapkan dalam praktik.

Lanjutkan dengan dokumentasi, panduan, dan contoh untuk topik ini. Sumber daya tersedia dalam bahasa Inggris.

Dapatkan ringkasan implementasi

Bangun di jaringan yang sama.

Kunci API uji coba langsung tersedia untuk Anda. Akses produksi terbuka saat Anda menambahkan metode pembayaran dan memverifikasi pengirim.

Ide Anda berikutnya.
Siap terhubung.