Kako konfigurisati SMPP Registered Delivery polje
Šta je Registered Delivery polje?
Registered Delivery polje u SMPP-u je 1-bajtni bitmask u PDU-ima kao što su submit_sm
i data_sm
koja kontroliše
potvrde o isporuci i potvrde o prijemu. Omogućava pošiljaocima da prate status isporuke poruke putem potvrda generisanih od strane SMSC-a. Ključne funkcije uključuju:
- Zahtevanje finalnih potvrda o isporuci (uspeh/neuspeh)
- Omogućavanje intermedijarnih obaveštenja o isporuci
- Rukovanje SME (Short Message Entity) potvrdama
Struktura polja i bitmask
Definisano u SMPP v3.4, polje koristi sledeću strukturu bitmask-e:
Bit | Opis |
---|---|
0 | SMSC Delivery Receipt (0 = isključeno, 1 = uključeno) |
1 | SME Originated Acknowledgment (0 = isključeno, 1 = uključeno) |
2 | Intermediate Notification (0 = isključeno, 1 = uključeno) |
3-7 | Rezervisano |
Uobičajene vrednosti
Vrednost (Hex) | Binarno | Opis |
---|---|---|
0x00 | 00000000 | Nema zahteva za potvrde |
0x01 | 00000001 | Samo SMSC potvrda o isporuci |
0x03 | 00000011 | SMSC potvrda + SME potvrda |
0x05 | 00000101 | SMSC potvrda + intermedijarna obaveštenja |
Primeri upotrebe
1. Osnovne potvrde o isporuci
registered_delivery: 0x01 // Zahtev za finalni status isporuke
2. Poruke sa visokim nivoom pouzdanosti
registered_delivery: 0x05 // Potvrda + intermedijarna obaveštenja
3. Dvosmerna komunikacija
registered_delivery: 0x03 // Potvrda i SMSC i SME isporuke
Primeri SMPP PDU-a
Primer 1: Bez potvrda (0x00)
0000001D // Dužina komande (29 bajtova) 00000004 // ID komande (SubmitSM) 00000001 // Redni broj sekvence 00 // Source TON 00 // Source NPI 736F7572636500 // Source Address ("source") 00 // Dest TON 00 // Dest NPI 36353433323100 // Destination Address ("654321") 00 // ESM Class 00 // Protocol ID 00 // Priority Flag 00 // Schedule Delivery Time 00 // Validity Period 00 // Registered Delivery (0x00: Bez potvrda) 00 // Replace-if-Present 00 // Data Coding (DCS=0x00) 00 // SM Default Message ID 07 // SM Length (7 septeta) C8329BFD06DDDF72 // Payload ("Hello!")
Primer 2: SMSC potvrda o isporuci (0x01)
0000001D // Dužina komande (29 bajtova) 00000004 // ID komande (SubmitSM) 00000002 // Redni broj sekvence ... 00 // Validity Period 01 // Registered Delivery (0x01: SMSC potvrda) 00 // Replace-if-Present ...
Primer 3: Intermedijarna obaveštenja (0x05)
0000001D // Dužina komande (29 bajtova) 00000004 // ID komande (SubmitSM) 00000003 // Redni broj sekvence ... 05 // Registered Delivery (0x05: SMSC potvrda + intermedijarna obaveštenja) ...
Format potvrde o isporuci
SMSC-ovi vraćaju potvrde putem deliver_sm
PDU-a sa payload-om formatiranim kao:
id:IIIIIIIIII sub:SSS dlvrd:DDD submit date:YYMMDDhhmm done date:YYMMDDhhmm stat:STATUS err:EEE
Primer potvrde za isporučenu poruku:
id:1896384752 sub:001 dlvrd:001 submit date:2310151430 done date:2310151431 stat:DELIVRD err:000
Interakcije sa drugim poljima
- esm_class: Bit 6 (flag potvrde o isporuci) mora biti usklađen sa registered_delivery postavkama
- validity_period: Određuje koliko dugo će SMSC pokušavati isporuku pre slanja potvrde o neuspehu
- message_id: Ključno za povezivanje potvrda sa originalnim porukama
Uobičajene greške
- Omogućavanje potvrda ali ne osluškivanje
deliver_sm
PDU-a - Pretpostavka da svi SMSC-ovi podržavaju SME potvrde (0x02)
- Neusklađenost između
registered_delivery
iesm_class
flagova - Zanemarivanje SMSC ograničenja brzine za generisanje potvrda
Neki provajderi naplaćuju dodatno za potvrde o isporuci. Proverite cene pre omogućavanja.
Zaključak
Registered Delivery polje je ključno za praćenje statusa isporuke SMS-ova u SMPP-u. Dok je osnovna podrška za potvrde (0x01) široko rasprostranjena,
napredne funkcije kao što su intermedijarna obaveštenja zahtevaju SMSC-specifično testiranje. Uvek implementirajte robustno parsiranje potvrda i povezujte poruke
koristeći message_id
. Za detaljno ponašanje, konsultujte SMPP v3.4 Sekciju 5.2.17 i dokumentaciju vašeg provajdera.
More information
- Kako konfigurisati SMPP Tip usluge polje
- Kako konfigurisati SMPP polja za telefonske brojeve
- Kako konfigurisati SMPP ESM Class polje
- Kako konfigurisati SMPP PID polje
- Kako konfigurisati SMPP Prioritet polje
- Kako konfigurisati SMPP Zakazano vreme polje
- Kako konfigurisati SMPP Period važenja polje
- Kako konfigurisati SMPP Registrovana isporuka polje
- Kako konfigurisati SMPP Zameni ako postoji polje
- Kako konfigurisati sm_default_msg_id polje
- Kako konfigurisati SMPP DCS polje
- Kako izračunati SMPP SM Dužina polje
- Kako uneti podatke u SMPP SM polje