Kako konfigurirati SMPP polje za planirano vrijeme isporuke
Što je polje za planirano vrijeme isporuke?
Polje Planirano vrijeme isporuke u SMPP (Short Message Peer-to-Peer Protocol) je opcijski parametar u submit_sm
PDU-u
koji omogućuje da se poruka stavi u red za isporuku u budućem datumu i vremenu. Ovo polje je ključno za:
- Odgađanje isporuke poruka izvan špica
- Planiranje vremenski osjetljivih kampanja (npr. rođendanske poruke)
- Koordinaciju poruka u različitim vremenskim zonama
Format i struktura polja
SMPP specifikacija v3.4 definira ovo polje kao C-Octet String
(null-terminiran) s određenim formatom datuma i vremena:
YYMMDDhhmmssnnp
Gdje:
Komponenta | Opis | Raspon |
---|---|---|
YY | Posljednje dvije znamenke godine | 00-99 |
MM | Mjesec | 01-12 |
DD | Dan | 01-31 |
hh | Sat (24h format) | 00-23 |
mm | Minuta | 00-59 |
ss | Sekunda | 00-59 |
nn | Desetinke sekunde (opcijski) | 00-99 |
p | Pomak vremenske zone (npr. +, -) | +/- praćeno s 4 znamenke (HHMM) |
-
NULL
(trenutna isporuka)-
000000000000000
(trenutna isporuka, stari sustavi)
Primjeri vremenskih nizova
Vremenski niz | Interpretacija |
---|---|
231015143000000+ |
15. listopada 2023. 14:30:00 UTC+0 |
231015143000000-0800 |
15. listopada 2023. 14:30:00 UTC-08:00 |
000000000000000 |
Trenutna isporuka (stari sustavi) |
NULL |
Trenutna isporuka (preporučeno) |
Primjeri upotrebe
1. Rođendanske poruke
Planirajte poruku za isporuku točno u ponoć na primateljev rođendan:
scheduled_delivery_time: "231016000000000+" // 16. listopada 2023. 00:00:00 UTC+0
2. Isporuka izvan špica
Izbjegnite zagušenje mreže slanjem masovnih poruka noću:
scheduled_delivery_time: "231015020000000+" // 15. listopada 2023. 02:00:00 UTC+0
3. Koordinacija vremenskih zona
Isporučite poruke u 9 ujutro lokalnog vremena za primatelje u New Yorku (UTC-5):
scheduled_delivery_time: "231015090000000-0500" // 15. listopada 2023. 09:00:00 UTC-05:00
Primjeri SMPP PDU-a
Primjer 1: Trenutna isporuka (NULL)
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 // Planirano vrijeme isporuke (NULL: trenutno) 00 // Valjanost 00 // Registrirana isporuka 00 // Zamijeni ako postoji 00 // Kodiranje podataka (DCS=0x00) 00 // Zadani ID poruke 07 // Duljina poruke (7 septeta) C8329BFD06DDDF72 // Sadržaj ("Hello!")
Primjer 2: Buduća isporuka (15. listopada 2023. 14:30 UTC)
0000002A // Duljina naredbe (42 bajta) 00000004 // ID naredbe (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 // Zastavica prioriteta 3233313031353134333030303030302B00 // "231015143000000+" (16 bajtova + null) 00 // Valjanost 00 // Registrirana isporuka 00 // Zamijeni ako postoji 00 // Kodiranje podataka (DCS=0x00) 00 // Zadani ID poruke 07 // Duljina poruke (7 septeta) C8329BFD06DDDF72 // Sadržaj ("Hello!")
Interakcije s drugim poljima
- validity_period: Definira koliko dugo će SMSC pokušavati isporuku. Brojanje počinje od planiranog vremena.
- priority_flag: Poruke s većim prioritetom mogu zaobići redove za planiranje na nekim SMSC-ovima.
Uobičajene zamke
- Korištenje lokalnog vremena bez navođenja pomaka vremenske zone.
- Pogrešno formatiranje niza datuma (npr. nevažeći mjesec "13").
- Pretpostavka da svi SMSC-ovi podržavaju planiranu isporuku (provjerite s pružateljem usluge).
- Postavljanje vremena u prošlosti, što uzrokuje trenutnu isporuku.
Neki SMSC-ovi ignoriraju djeliće sekundi (
nn
) ili ograničavaju koliko unaprijed se poruke mogu planirati (npr. maksimalno 7 dana).
Zaključak
Polje za planirano vrijeme isporuke omogućuje preciznu kontrolu nad vremenom isporuke SMS poruka. Pravilna upotreba zahtijeva pažljivo formatiranje vremenskih nizova i koordinaciju s mogućnostima SMSC-a. Uvijek testirajte planirane poruke s pružateljem usluge i pogledajte SMPP specifikaciju v3.4 za rubne slučajeve (npr. prijestupne godine, prijelazi vremenskih zona).
More information
- Kako konfigurirati polje SMPP vrsta usluge
- Kako konfigurirati polja SMPP telefonskih brojeva
- Kako konfigurirati polje SMPP ESM klasa
- Kako konfigurirati polje SMPP PID
- Kako konfigurirati polje SMPP prioritet
- Kako konfigurirati polje SMPP planirano vrijeme
- Kako konfigurirati polje SMPP rok valjanosti
- Kako konfigurirati polje SMPP registrirana isporuka
- Kako konfigurirati polje SMPP zamijeni ako postoji
- Kako konfigurirati polje sm_default_msg_id
- Kako konfigurirati polje SMPP DCS
- Kako izračunati polje SMPP SM duljina
- Kako staviti podatke u SMPP SM polje