Konfiguration des SMPP Registered Delivery Felds

Was ist das Registered Delivery Feld?

Das Registered Delivery-Feld in SMPP ist eine 1-Byte-Bitmaske in PDUs wie submit_sm und data_sm, die Zustellungsbestätigungen und Bestätigungen steuert. Es ermöglicht Absendern, den Nachrichtenstatus über SMSC-generierte Bestätigungen zu verfolgen. Wichtige Funktionen sind:

  • Anfordern von endgültigen Zustellungsbestätigungen (Erfolg/Misserfolg)
  • Aktivieren von Zwischenbenachrichtigungen
  • Verarbeiten von SME (Short Message Entity)-Bestätigungen

Feldstruktur und Bitmaske

Definiert in SMPP v3.4 verwendet das Feld die folgende Bitmasken-Struktur:

Bit Beschreibung
0 SMSC-Zustellungsbestätigung (0 = deaktiviert, 1 = aktiviert)
1 SME-Bestätigung (0 = deaktiviert, 1 = aktiviert)
2 Zwischenbenachrichtigung (0 = deaktiviert, 1 = aktiviert)
3-7 Reserviert
Hinweis: Viele SMSCs unterstützen nur Bit 0 (SMSC-Bestätigungen). Klären Sie die Fähigkeiten mit Ihrem Anbieter ab.

Häufige Werte

Wert (Hex) Binär Beschreibung
0x00 00000000 Keine Bestätigungen angefordert
0x01 00000001 Nur SMSC-Zustellungsbestätigung
0x03 00000011 SMSC-Bestätigung + SME-Bestätigung
0x05 00000101 SMSC-Bestätigung + Zwischenbenachrichtigungen

Anwendungsfälle

1. Einfache Zustellungsbestätigungen

registered_delivery: 0x01  // Endgültigen Zustellungsstatus anfordern
    

2. Hochzuverlässige Nachrichtenübermittlung

registered_delivery: 0x05  // Bestätigung + Zwischenbenachrichtigungen
    

3. Zwei-Wege-Kommunikation

registered_delivery: 0x03  // Bestätigung von SMSC und SME
    

Beispiel-SMPP-PDUs

Beispiel 1: Keine Bestätigungen (0x00)

0000001D  // Befehlslänge (29 Bytes)
00000004  // Befehls-ID (SubmitSM)
00000001  // Sequenznummer
00        // Source TON
00        // Source NPI
736F7572636500  // Quelladresse ("source")
00        // Dest TON
00        // Dest NPI
36353433323100  // Zieladresse ("654321")
00        // ESM Class
00        // Protokoll-ID
00        // Prioritätsflag
00        // Zeitplan für Zustellung
00        // Gültigkeitsdauer
00        // Registered Delivery (0x00: Keine Bestätigungen)
00        // Replace-if-Present
00        // Datenkodierung (DCS=0x00)
00        // Standard-Nachrichten-ID
07        // SM-Länge (7 Septets)
C8329BFD06DDDF72  // Nutzlast ("Hello!")
    

Beispiel 2: SMSC-Zustellungsbestätigung (0x01)

0000001D  // Befehlslänge (29 Bytes)
00000004  // Befehls-ID (SubmitSM)
00000002  // Sequenznummer
...
00        // Gültigkeitsdauer
01        // Registered Delivery (0x01: SMSC-Bestätigung)
00        // Replace-if-Present
...
    

Beispiel 3: Zwischenbenachrichtigungen (0x05)

0000001D  // Befehlslänge (29 Bytes)
00000004  // Befehls-ID (SubmitSM)
00000003  // Sequenznummer
...
05        // Registered Delivery (0x05: SMSC-Bestätigung + Zwischenbenachrichtigungen)
...
    

Format der Zustellungsbestätigung

SMSCs senden Bestätigungen via deliver_sm-PDUs mit folgendem Format:

id:IIIIIIIIII sub:SSS dlvrd:DDD submit date:YYMMDDhhmm done date:YYMMDDhhmm stat:STATUS err:EEE
    

Beispiel-Bestätigung für eine zugestellte Nachricht:

id:1896384752 sub:001 dlvrd:001 submit date:2310151430 done date:2310151431 stat:DELIVRD err:000
    

Interaktionen mit anderen Feldern

  • esm_class: Bit 6 (Zustellungsbestätigungsflag) muss mit den registered_delivery-Einstellungen übereinstimmen
  • validity_period: Legt fest, wie lange das SMSC die Zustellung versucht, bevor eine Fehlerbestätigung gesendet wird
  • message_id: Wichtig für die Zuordnung von Bestätigungen zu ursprünglichen Nachrichten

Häufige Fallstricke

  • Bestätigungen aktivieren, aber keine deliver_sm-PDUs abhören
  • Annehmen, dass alle SMSCs SME-Bestätigungen (0x02) unterstützen
  • Nicht übereinstimmende registered_delivery- und esm_class-Flags
  • SMSC-Ratenlimits für Bestätigungen ignorieren
Hinweis zur Abrechnung:
Einige Anbieter berechnen zusätzliche Gebühren für Zustellungsbestätigungen. Klären Sie die Preise vor der Aktivierung.

Fazit

Das Registered Delivery-Feld ist entscheidend für die Verfolgung des SMS-Zustellungsstatus in SMPP. Während grundlegende Bestätigungen (0x01) weit verbreitet sind, erfordern erweiterte Funktionen wie Zwischenbenachrichtigungen SMSC-spezifische Tests. Implementieren Sie immer eine robuste Bestätigungsanalyse und korrelieren Sie Nachrichten mit message_id. Für detailliertes Verhalten konsultieren Sie SMPP v3.4 Abschnitt 5.2.17 und die Dokumentation Ihres Anbieters.

More information