Kako konfigurisati SMPP polje za planirano vreme isporuke
Šta je polje za planirano vreme isporuke?
Polje Planirano vreme isporuke u SMPP (Short Message Peer-to-Peer Protocol) je opcioni parametar u submit_sm
PDU
koji omogućava poruci da bude stavljena u red za isporuku u budućem datumu i vremenu. Ovo polje je ključno za:
- Odlaganje isporuke poruka u vanšpijske sate
- Planiranje vremenski osetljivih kampanja (npr. rođendanske poruke)
- Koordinaciju poruka u različitim vremenskim zonama
Format i struktura polja
SMPP v3.4 specifikacija definiše ovo polje kao C-Octet String
(null-terminiran) sa specifičnim formatom datuma i vremena:
YYMMDDhhmmssnnp
Gde:
Komponenta | Opis | Opseg |
---|---|---|
YY | Poslednje dve cifre godine | 00-99 |
MM | Mesec | 01-12 |
DD | Dan | 01-31 |
hh | Sat (24h format) | 00-23 |
mm | Minut | 00-59 |
ss | Sekunda | 00-59 |
nn | Deseti delovi sekunde (opciono) | 00-99 |
p | Vremenska zona (npr. +, -) | +/- praćeno sa 4 cifre (HHMM) |
-
NULL
(trenutna isporuka)-
000000000000000
(trenutna isporuka, stari sistemi)
Primeri vremenskih stringova
Vremenski string | Interpretacija |
---|---|
231015143000000+ |
15. oktobar 2023. 14:30:00 UTC+0 |
231015143000000-0800 |
15. oktobar 2023. 14:30:00 UTC-08:00 |
000000000000000 |
Trenutna isporuka (stari sistemi) |
NULL |
Trenutna isporuka (preporučeno) |
Primeri upotrebe
1. Rođendanske poruke
Planirajte poruku da se isporuči tačno u ponoć na primalačev rođendan:
scheduled_delivery_time: "231016000000000+" // 16. oktobar 2023. 00:00:00 UTC+0
2. Isporuka van špica
Izbegnite zagušenje mreže slanjem masovnih poruka noću:
scheduled_delivery_time: "231015020000000+" // 15. oktobar 2023. 02:00:00 UTC+0
3. Koordinacija vremenskih zona
Isporučite poruke u 9 ujutro po lokalnom vremenu za primaloce u Njujorku (UTC-5):
scheduled_delivery_time: "231015090000000-0500" // 15. oktobar 2023. 09:00:00 UTC-05:00
Primeri SMPP PDU-a
Primer 1: Trenutna isporuka (NULL)
0000001D // Dužina komande (29 bajtova) 00000004 // ID komande (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 // Prioritetni flag 00 // Planirano vreme isporuke (NULL: trenutno) 00 // Period važenja 00 // Registrovana isporuka 00 // Zameni ako postoji 00 // Kodiranje podataka (DCS=0x00) 00 // Podrazumevani ID poruke 07 // Dužina poruke (7 septeta) C8329BFD06DDDF72 // Sadržaj ("Zdravo!")
Primer 2: Buduća isporuka (15. oktobar 2023. 14:30 UTC)
0000002A // Dužina komande (42 bajta) 00000004 // ID komande (SubmitSM) 00000002 // 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 // Prioritetni flag 3233313031353134333030303030302B00 // "231015143000000+" (16 bajtova + null) 00 // Period važenja 00 // Registrovana isporuka 00 // Zameni ako postoji 00 // Kodiranje podataka (DCS=0x00) 00 // Podrazumevani ID poruke 07 // Dužina poruke (7 septeta) C8329BFD06DDDF72 // Sadržaj ("Zdravo!")
Interakcije sa drugim poljima
- validity_period: Definiše koliko dugo će SMSC pokušavati isporuku. Brojanje počinje od planiranog vremena.
- priority_flag: Poruke sa višim prioritetom mogu zaobići redove za planiranje na nekim SMSC-ovima.
Uobičajene greške
- Korišćenje lokalnog vremena bez navođenja vremenske zone.
- Nepravilno formatiranje datuma (npr. nevažeći mesec "13").
- Pretpostavka da svi SMSC-ovi podržavaju planiranu isporuku (proverite sa provajderom).
- Postavljanje vremena u prošlosti, što uzrokuje trenutnu isporuku.
Neki SMSC-ovi ignorišu delove sekunde (
nn
) ili ograničavaju koliko unapred se poruke mogu planirati (npr. maksimalno 7 dana).
Zaključak
Polje za planirano vreme isporuke omogućava preciznu kontrolu nad vremenom isporuke SMS poruka. Pravilna upotreba zahteva pažljivo formatiranje vremenskih stringova i koordinaciju sa mogućnostima SMSC-a. Uvek testirajte planirane poruke sa svojim provajderom i konsultujte SMPP v3.4 specifikaciju za granične slučajeve (npr. prestupne godine, promene vremenskih zona).
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