Kako konfigurirati SMPP polje Registered Delivery

Što je polje Registered Delivery?

Polje Registered Delivery u SMPP-u je 1-bajtna bitmask u PDU-ovima poput submit_sm i data_sm koja kontrolira potvrde o isporuci i potvrde o prijemu. Omogućuje pošiljateljima da prate status isporuke poruka putem potvrda generiranih od strane SMSC-a. Ključne funkcije uključuju:

  • Zahtjev za konačnim potvrdama o isporuci (uspjeh/neuspjeh)
  • Omogućavanje međuobavijesti o isporuci
  • Rukovanje potvrdama SME (Short Message Entity)

Struktura polja i bitmask

Definirano u SMPP v3.4, polje koristi sljedeću strukturu bitmaske:

Bit Opis
0 SMSC potvrda o isporuci (0 = onemogućeno, 1 = omogućeno)
1 SME potvrda o prijemu (0 = onemogućeno, 1 = omogućeno)
2 Međuobavijest (0 = onemogućeno, 1 = omogućeno)
3-7 Rezervirano
Napomena: Mnogi SMSC-ovi podržavaju samo bit 0 (SMSC potvrde). Provjerite mogućnosti sa svojim davateljem usluga.

Uobičajene vrijednosti

Vrijednost (Hex) Binarno Opis
0x00 00000000 Nema zahtjeva za potvrdama
0x01 00000001 Samo SMSC potvrda o isporuci
0x03 00000011 SMSC potvrda + SME potvrda o prijemu
0x05 00000101 SMSC potvrda + međuobavijesti

Primjeri korištenja

1. Osnovne potvrde o isporuci

registered_delivery: 0x01  // Zahtjev za konačnim statusom isporuke
    

2. Poruke visoke pouzdanosti

registered_delivery: 0x05  // Potvrda + međuobavijesti
    

3. Dvosmjerna komunikacija

registered_delivery: 0x03  // Potvrda i SMSC i SME isporuke
    

Primjeri SMPP PDU-ova

Primjer 1: Bez potvrda (0x00)

0000001D  // Duljina naredbe (29 bajtova)
00000004  // ID naredbe (SubmitSM)
00000001  // Redni broj
00        // Izvorni TON
00        // Izvorni NPI
736F7572636500  // Izvorna adresa ("source")
00        // Odredišni TON
00        // Odredišni NPI
36353433323100  // Odredišna adresa ("654321")
00        // ESM klasa
00        // ID protokola
00        // Zastavica prioriteta
00        // Vrijeme planirane isporuke
00        // Rok valjanosti
00        // Registered Delivery (0x00: Bez potvrda)
00        // Zamijeni ako postoji
00        // Kodiranje podataka (DCS=0x00)
00        // Zadani ID poruke
07        // Duljina poruke (7 septeta)
C8329BFD06DDDF72  // Sadržaj ("Hello!")
    

Primjer 2: SMSC potvrda o isporuci (0x01)

0000001D  // Duljina naredbe (29 bajtova)
00000004  // ID naredbe (SubmitSM)
00000002  // Redni broj
...
00        // Rok valjanosti
01        // Registered Delivery (0x01: SMSC potvrda)
00        // Zamijeni ako postoji
...
    

Primjer 3: Međuobavijesti (0x05)

0000001D  // Duljina naredbe (29 bajtova)
00000004  // ID naredbe (SubmitSM)
00000003  // Redni broj
...
05        // Registered Delivery (0x05: SMSC potvrda + međuobavijesti)
...
    

Format potvrde o isporuci

SMSC-ovi vraćaju potvrde putem deliver_sm PDU-ova sa sadržajem formatiranim kao:

id:IIIIIIIIII sub:SSS dlvrd:DDD submit date:YYMMDDhhmm done date:YYMMDDhhmm stat:STATUS err:EEE
    

Primjer potvrde za isporučenu poruku:

id:1896384752 sub:001 dlvrd:001 submit date:2310151430 done date:2310151431 stat:DELIVRD err:000
    

Interakcije s drugim poljima

  • esm_class: Bit 6 (zastavica potvrde o isporuci) mora biti usklađen s postavkama registered_delivery
  • validity_period: Određuje koliko dugo će SMSC pokušavati isporuku prije slanja potvrde o neuspjehu
  • message_id: Ključno za povezivanje potvrda s izvornim porukama

Uobičajene zamke

  • Omogućavanje potvrda ali ne slušanje deliver_sm PDU-ova
  • Pretpostavka da svi SMSC-ovi podržavaju SME potvrde (0x02)
  • Neusklađenost registered_delivery i esm_class zastavica
  • Zanemarivanje ograničenja brzine SMSC-a za generiranje potvrda
Napomena o naplati:
Neki davatelji usluga naplaćuju dodatno za potvrde o isporuci. Provjerite cijene prije omogućavanja.

Zaključak

Polje Registered Delivery ključno je za praćenje statusa isporuke SMS-ova u SMPP-u. Dok je osnovno rukovanje potvrdama (0x01) široko podržano, napredne značajke poput međuobavijesti zahtijevaju testiranje specifično za SMSC. Uvijek implementirajte robusno parsiranje potvrda i povezujte poruke koristeći message_id. Za detaljno ponašanje, konzultirajte SMPP v3.4 Odjeljak 5.2.17 i dokumentaciju svog davatelja usluga.

More information