Jak nakonfigurovat pole Validity Period v SMPP
Co je pole Validity Period?
Validity Period v SMPP (Short Message Peer-to-Peer Protocol) je pole ukončené nulou v PDU jako submit_sm
, které definuje, jak dlouho se SMSC bude pokoušet doručit zprávu, než ji zahodí. Toto pole je klíčové pro:
- Zabránění neomezeným pokusům o doručení nedoručitelných zpráv
- Správu úložných zdrojů SMSC
- Zpracování časově citlivého obsahu (např. OTP, akce)
Formát a struktura pole
Platnost používá stejný formát absolutního času jako naplánovaný čas doručení (specifikace SMPP v3.4):
RRMMDDhhmmssnnp
Kde komponenty odpovídají formátu naplánovaného času doručení. Podporovány jsou také běžné zkratky relativního formátu:
Formát | Příklad | Popis |
---|---|---|
Absolutní | 231215235959000+ |
15. prosince 2023 23:59:59 UTC+0 |
Relativní | 000003000000000R |
3 dny od odeslání |
-
NULL
: Použije výchozí platnost SMSC (obvykle 24-72 hodin)-
00
: Výchozí platnost SMSC (starší systémy)
Klíčové formáty platnosti
1. Absolutní časový formát
RRMMDDhhmmssnnp // Úplný formát 231215143000000+ // 15. prosince 2023 14:30:00 UTC+0
2. Relativní časový formát
00000X000000000R // X = Dny (00-99) 000003000000000R // Platnost 3 dny
Příklady použití
1. Vypršení OTP (krátká platnost)
validity_period: "000000010000000R" // Platnost 1 hodina
2. Propagační kampaň (prodloužená platnost)
validity_period: "000007000000000R" // Platnost 7 dní
3. Vypršení o půlnoci (absolutní čas)
validity_period: "231215235959000+" // Vyprší 15. prosince 2023 23:59:59 UTC+0
Příklady SMPP PDU
Příklad 1: 24hodinová platnost (relativní formát)
0000001D // Délka příkazu (29 bajtů) 00000004 // ID příkazu (SubmitSM) 00000001 // Číslo sekvence ... 00 // Příznak priority 00 // Naplánovaný čas doručení 303030303234303030303030305200 // "00002400000000R" (24 hodin) 00 // Registrované doručení ...
Příklad 2: Absolutní čas vypršení
0000002A // Délka příkazu (42 bajtů) 00000004 // ID příkazu (SubmitSM) 00000002 // Číslo sekvence ... 00 // Naplánovaný čas doručení 3233313231323332353935393030302B00 // "231212235959000+" (12. prosince 2023 23:59:59 UTC+0) ...
Interakce s dalšími poli
- scheduled_delivery_time: Odpočet platnosti začíná od naplánovaného času, pokud je nastaven
- priority_flag: Vysoce prioritní zprávy mohou na některých SMSC přepsat nastavení platnosti
- registered_delivery: Potvrzení o doručení jsou odesílána i po vypršení platnosti
Běžné problémy
- Použití relativního formátu bez přípony 'R'
- Nastavení platnosti delší než limity SMSC (např. max. 30 dní)
- Nesoulad časových pásem mezi naplánovaným časem a platností
- Předpoklad, že všechny SMSC podporují relativní formát (ověřte u poskytovatele)
Mnoho SMSC převádí relativní období na absolutní časová razítka při přijetí zprávy. Odpočet pokračuje, i když se SMSC restartuje.
Platnost vs. výchozí hodnoty SMSC
Hodnota platnosti | Chování SMSC |
---|---|
NULL nebo 00 | Použije výchozí hodnotu SMSC (liší se podle poskytovatele) |
Explicitní hodnota | Respektuje hodnotu (v rámci limitů SMSC) |
Časová značka v minulosti | Zpráva je okamžitě zahozena |
Závěr
Pole Validity Period je nezbytné pro řízení životního cyklu zpráv v SMPP. Zatímco absolutní časová razítka poskytují přesnost, relativní formáty nabízejí jednoduchost pro běžné případy použití. Vždy koordinujte nastavení platnosti s politikami SMSC a testujte hraniční případy (např. přechody na letní čas). Pro podrobné implementace se řiďte SMPP v3.4, oddíl 5.2.18 a dokumentací GSM 03.40.
More information
- Jak nakonfigurovat pole Typ služby SMPP
- Jak nakonfigurovat pole Telefonní čísla SMPP
- Jak nakonfigurovat pole Třída ESM SMPP
- Jak nakonfigurovat pole PID SMPP
- Jak nakonfigurovat pole Priorita SMPP
- Jak nakonfigurovat pole Naplánovaný čas SMPP
- Jak nakonfigurovat pole Platnost SMPP
- Jak nakonfigurovat pole Registrované doručení SMPP
- Jak nakonfigurovat pole Nahradit pokud existuje SMPP
- Jak nakonfigurovat pole sm_default_msg_id
- Jak nakonfigurovat pole DCS SMPP
- Jak vypočítat pole Délka SM SMPP
- Jak vložit data do pole SMPP SM