Konfiguration der SMPP-Telefonnummernfelder
SMPP (Short Message Peer-to-Peer) ist ein Protokoll, das von Telekomsystemen verwendet wird, um SMS-Nachrichten zwischen SMSC (Short Message Service Centers) und ESMEs (External Short Messaging Entities) auszutauschen. Eine Schlüsselkomponente des Protokolls ist die Kodierung von Telefonnummern (Quell- und Zieladressen) in der SMPP-PDU (Protocol Data Unit).
Adressparameter in SMPP
Die wichtigsten Felder zur Definition einer Telefonnummer in SMPP sind:
- addr_ton (Type of Number)
- addr_npi (Numbering Plan Indicator)
- address_range oder source_addr/destination_addr
Type of Number (TON)
Dieses Feld definiert das Format der Nummer. Häufige Werte sind:
Wert | TON | Beschreibung |
---|---|---|
0 | Unbekannt | Unbekanntes Format |
1 | International | Nummer enthält Ländercode |
2 | National | Lokales Nummernformat |
5 | Alphanumerisch | Wird für Absendernamen wie "MeineFirma" verwendet |
Numbering Plan Indicator (NPI)
Dieses Feld gibt das Nummernformat an. Häufige Werte:
Wert | NPI | Beschreibung |
---|---|---|
0 | Unbekannt | Unbekanntes Format |
1 | ISDN (E.164) | Standardmäßiges internationales Telefonnummernformat |
3 | Daten | Datenetzwerk (X.121) |
Kodierung einer Adresse
Bei der Kodierung einer Telefonnummer in SMPP wird die Nummer als nullterminierte ASCII-Zeichenkette zusammen mit den entsprechenden TON- und NPI-Werten gesendet.
Beispiel:
Telefonnummer: +14155552671 TON: 1 (International) NPI: 1 (ISDN/E.164) Kodiert als: 31 34 31 35 35 35 35 32 36 37 31 00 (ASCII "14155552671" + NULL)
Beispiel-SMPP-PDU
Unten ist ein Beispiel einer submit_sm-PDU mit einer Zielnummer:
0000003F // Befehlslänge (63 Bytes) 00000004 // Befehls-ID (submit_sm) 00000000 // Befehlsstatus 00000001 // Sequenznummer 74657374 // service_type: "test" 01 // source_addr_ton: International 01 // source_addr_npi: ISDN 31323334 // source_addr: "1234" (ASCII) 00 // NULL-Terminator 01 // dest_addr_ton: International 01 // dest_addr_npi: ISDN 2B393138 // destination_addr: "+918123456789" (ASCII, ohne +) 31323334 35363738 3900 // NULL-Terminator 00 // esm_class 00 // protocol_id 00 // priority_flag 00 // schedule_delivery_time (null) 00 // validity_period (null) 00 // registered_delivery 00 // replace_if_present_flag 00 // data_coding (Standard GSM) 00 // sm_default_msg_id 0D // sm_length (13) 48656C6C // Kurznachricht ("Hello, World!") 6F2C2057 6F726C64 2100
Beispiel für alphanumerischen Absender
Bei Verwendung eines alphanumerischen Absendernamens (üblich für Einweg-Massen-SMS):
Absender: "MeineMarke" TON: 5 (Alphanumerisch) NPI: 0 (Unbekannt oder irrelevant) Kodiert: ASCII-Zeichenkette "MeineMarke" + NULL-Terminator
Wichtige Hinweise
- Alphanumerische Absenderkennungen dürfen maximal 11 Zeichen lang sein.
- Alphanumerische Adressen werden nicht in allen Ländern unterstützt.
- Stellen Sie sicher, dass TON und NPI korrekt mit Ihrem Adressformat übereinstimmen, um Routing-Probleme zu vermeiden.
Fazit
Die SMPP-Nummernkodierung ist entscheidend für die korrekte Zustellung von Nachrichten. Durch die korrekte Einstellung von TON
, NPI
und die richtige Kodierung der Adresse in ASCII (nullterminiert) können Entwickler die Kompatibilität mit SMSCs und Mobilfunknetzen sicherstellen.
More information
- Wie man das SMPP Service Typ Feld konfiguriert
- Wie man die SMPP Telefonnummer Felder konfiguriert
- Wie man das SMPP ESM Class Feld konfiguriert
- Wie man das SMPP PID Feld konfiguriert
- Wie man das SMPP Prioritätsfeld konfiguriert
- Wie man das SMPP Geplante Zeit Feld konfiguriert
- Wie man das SMPP Gültigkeitsdauer Feld konfiguriert
- Wie man das SMPP Registrierte Zustellung Feld konfiguriert
- Wie man das SMPP Ersetzen falls vorhanden Feld konfiguriert
- Wie man das sm_default_msg_id Feld konfiguriert
- Wie man das SMPP DCS Feld konfiguriert
- Wie man das SMPP SM Länge Feld berechnet
- Wie man Daten in das SMPP SM Feld einfügt