Az SMPP Érvényességi Idő mező konfigurálása
Mi az az Érvényességi Idő mező?
Az Érvényességi Idő az SMPP (Short Message Peer-to-Peer Protocol) protokollban egy nullával lezárt sztring mező, amely olyan PDU-kban (pl. submit_sm
) található, és meghatározza, hogy az SMSC meddig próbálkozik egy üzenet kézbesítésével, mielőtt eldobná. Ez a mező kritikus fontosságú a következőkhez:
- Megakadályozza a végtelen újraküldéseket kézbesíthetetlen üzenetek esetén
- Kezeli az SMSC tároló erőforrásait
- Időérzékeny tartalmak kezelése (pl. OTP-k, promóciók)
A mező formátuma és szerkezete
Az érvényességi idő ugyanazt az abszolút időformátumot használja, mint az ütemezett kézbesítési idő (SMPP v3.4 specifikáció):
YYMMDDhhmmssnnp
Ahol az összetevők megegyeznek az ütemezett kézbesítési idő formátumával. A relatív formátumú rövidítések is támogatottak:
Formátum | Példa | Leírás |
---|---|---|
Abszolút | 231215235959000+ |
2023. dec. 15., 23:59:59 UTC+0 |
Relatív | 000003000000000R |
3 nap a beküldés időpontjától |
-
NULL
: Az SMSC alapértelmezett érvényességi idejét használja (általában 24-72 óra)-
00
: SMSC alapértelmezett érvényességi idő (régi rendszerek)
Kulcsfontosságú érvényességi idő formátumok
1. Abszolút időformátum
YYMMDDhhmmssnnp // Teljes formátum 231215143000000+ // 2023. dec. 15., 14:30:00 UTC+0
2. Relatív időformátum
00000X000000000R // X = Napok (00-99) 000003000000000R // 3 nap érvényesség
Használati esetek
1. OTP lejárat (rövid érvényesség)
validity_period: "000000010000000R" // 1 óra érvényesség
2. Promóciós kampány (hosszabb érvényesség)
validity_period: "000007000000000R" // 7 nap érvényesség
3. Éjféli lejárat (abszolút idő)
validity_period: "231215235959000+" // Lejár 2023. dec. 15., 23:59:59 UTC+0-kor
Példa SMPP PDU-k
1. példa: 24 órás érvényesség (relatív formátum)
0000001D // Parancs hossza (29 bájt) 00000004 // Parancs azonosító (SubmitSM) 00000001 // Sorszám ... 00 // Prioritás jelző 00 // Ütemezett kézbesítési idő 303030303234303030303030305200 // "00002400000000R" (24 óra) 00 // Regisztrált kézbesítés ...
2. példa: Abszolút lejárati idő
0000002A // Parancs hossza (42 bájt) 00000004 // Parancs azonosító (SubmitSM) 00000002 // Sorszám ... 00 // Ütemezett kézbesítési idő 3233313231323332353935393030302B00 // "231212235959000+" (2023. dec. 12., 23:59:59 UTC+0) ...
Kapcsolat más mezőkkel
- scheduled_delivery_time: Az érvényességi idő visszaszámlálása az ütemezett időponttól kezdődik, ha be van állítva
- priority_flag: A magas prioritású üzenetek felülírhatják az érvényességi idő beállításokat egyes SMSC-eken
- registered_delivery: A kézbesítési visszaigazolások akkor is elküldésre kerülnek, ha az érvényességi idő lejárt
Gyakori buktatók
- A relatív formátum használata 'R' utótag nélkül
- Túl hosszú érvényességi idő beállítása az SMSC korlátokhoz képest (pl. max. 30 nap)
- Időzóna eltérés az ütemezett idő és az érvényességi idő között
- Az feltételezés, hogy minden SMSC támogatja a relatív formátumot (ellenőrizze a szolgáltatóval)
Sok SMSC a relatív időtartamokat abszolút időbélyegekké alakítja az üzenet fogadásakor. A visszaszámlálás tovább folytatódik, még akkor is, ha az SMSC újraindul.
Érvényességi idő vs SMSC alapértelmezések
Érvényességi idő érték | SMSC viselkedés |
---|---|
NULL vagy 00 | Az SMSC alapértelmezett értékét használja (szolgáltatótól függően változik) |
Explicit érték | Figyelembe veszi az értéket (az SMSC korlátain belül) |
Múltbeli időbélyeg | Az üzenet azonnal elvetésre kerül |
Összegzés
Az Érvényességi Idő mező létfontosságú az SMPP-ben történő üzenetéletciklus szabályozásához. Míg az abszolút időbélyegek pontosságot biztosítanak, a relatív formátumok egyszerűséget nyújtanak a gyakori használati esetekhez. Mindig koordinálja az érvényességi beállításokat az SMSC szabályzatokkal, és tesztelje a határeseteket (pl. nyári időszámítás átmenet). Részletes megvalósításokhoz tekintse meg az SMPP v3.4 5.2.18 szakaszát és a GSM 03.40 dokumentációt.
More information
- How to configure the SMPP Service Type field
- How to configure the SMPP Phone Number fields
- How to configure the SMPP ESM Class field
- How to configure the SMPP PID field
- How to configure the SMPP Prioirity field
- How to configure the SMPP Scheduled Time field
- How to configure the SMPP Validity Period field
- How to configure the SMPP Registered Delivery field
- How to configure the SMPP Replace if Present field
- How to configure the sm_default_msg_id field
- How to configure the SMPP DCS field
- How to calculate the SMPP SM Length field
- How to put data into the SMPP SM field