Lewati ke konten
OmniChannels.ai

API dan SMPP

Bagaimana cara terhubung ke penyedia SMS melalui SMPP?

Diperbarui

Jawaban singkat

Untuk terhubung ke penyedia SMS melalui SMPP, ajukan permintaan bind dan daftarkan alamat IP sumber Anda, lalu buka koneksi TLS ke host dan port yang diberikan. Kirim bind_transceiver dengan system_id dan password Anda, kirim pesan dengan submit_sm, balas setiap delivery receipt deliver_sm, dan kirim enquire_link secara berkala agar sesi tetap aktif.

Apa yang diberikan penyedia

Akses SMPP biasanya disiapkan oleh penyedia, bukan diaktifkan sendiri. Sampaikan negara tujuan, Sender ID, perkiraan volume puncak, dan alamat IP publik yang akan Anda gunakan untuk terhubung.

ItemKeterangan
Host dan port TLSAlamat tempat klien Anda terhubung
system_id dan passwordKredensial bind; simpan sebagai secret
system_typeBiasanya kosong, kecuali penyedia menetapkan nilai tertentu
Bind dan throughputJumlah sesi yang boleh Anda buka dan kecepatan yang disepakati per bind
Allow-list IPHanya IP sumber yang terdaftar yang dapat melakukan bind

Membuka dan menjalankan sesi

Bind transceiver mengirim dan menerima dalam satu sesi. Gunakan bind transmitter dan receiver terpisah hanya jika klien Anda mengharuskannya.

  1. Buka koneksi TLS ke host dan port yang Anda terima.
  2. Kirim bind_transceiver dengan system_id dan password, lalu tunggu bind_transceiver_resp dengan command_status 0.
  3. Kirim setiap pesan dengan submit_sm dan simpan message_id dari submit_sm_resp.
  4. Terima delivery receipt sebagai deliver_sm dan balas setiap receipt dengan deliver_sm_resp.
  5. Kirim enquire_link saat sesi idle, lalu sambungkan ulang dengan backoff jika respons berhenti.
  6. Akhiri sesi dengan unbind dan tunggu unbind_resp.

Field submit_sm mana yang paling sering menyebabkan penolakan?

  • source_addr_ton dan source_addr_npi: 5 dan 0 untuk Sender ID alfanumerik, 1 dan 1 untuk nomor internasional.
  • destination_addr: kode negara ditambah nomor, tanpa tanda plus dan tanpa angka nol di depan.
  • data_coding: 0 untuk alfabet default GSM-7, 8 untuk UCS-2 (Arab, emoji, dan aksara lain).
  • registered_delivery: 1 untuk meminta delivery receipt.
  • short_message menampung hingga 254 oktet; untuk konten yang lebih panjang, gunakan TLV message_payload dengan sm_length 0, jangan keduanya sekaligus.

Error bind dan submit yang umum

OmniChannels.ai menyediakan bind SMPP 3.4 melalui TLS per akun, dengan IP sumber yang masuk allow-list, dan reseller serta mitra wholesale dapat memperoleh bind khusus.

command_statusKemungkinan penyebabSolusi
ESME_RBINDFAILsystem_id salah atau IP belum masuk allow-listPeriksa kredensial dan IP sumber
ESME_RINVPASWDPassword salahPeriksa kredensial
ESME_RINVSRCADRSender ID atau TON/NPI-nya tidak validPerbaiki sender dan TON/NPI
ESME_RTHROTTLEDPengiriman melebihi kecepatan yang disepakatiKurangi kecepatan dan coba lagi dengan backoff

Sumber resmi