SMPP

Schnittstelleninformationen (Interface Information) für das SMPP-Protokoll

Dieses Protokoll definiert das SMPP-Kommunikationsprotokoll für SMS-Dienste mit dem Ziel, eine effiziente und zuverlässige Nachrichtenübermittlung sowie Statusberichte über TCP-Verbindungen zu gewährleisten. Die Schnittstelleninformationen umfassen IP-Adresse, Port und Authentifizierungsdaten. Bitte stellen Sie sicher, dass die über autorisierte Kanäle bereitgestellten Zugangsdaten korrekt konfiguriert sind.

SMPP-Adresse

Bitte beziehen Sie die folgenden Informationen über autorisierte Kanäle (z. B. Vertrieb oder technischer Support):

  • IP-Adresse: { ip }
  • Port: { port }
  • Account: { system_id }
  • Passwort: { password }

Verbindungsaufbau

Client-Datenpaket

Nach dem Aufbau einer TCP-Verbindung muss das erste Datenpaket den Befehl BindTransceiver (0x00000009) zur Authentifizierung senden. Das Paket muss die folgenden Felder enthalten:

  • system_id: Das dem Client zugewiesene Systemkonto zur Identitätsprüfung.
  • password: Das zugehörige Zugangspasswort für die Authentifizierung des Systemkontos.

Server-Antwort

Erfolgreiche Antwort

  • Der Server sendet als Antwort den Befehl BindTransceiverResp (0x80000009).
  • Das Feld system_id enthält den Wert aus dem empfangenen system_id-Feld.

Fehlgeschlagene Antwort

  • Bei fehlgeschlagener Authentifizierung trennt der Server die TCP-Verbindung und protokolliert den Grund.

Nachrichtenversand

Server-Logik

Der Nachrichtenversand erfolgt über den Befehl SUBMIT_SM (0x00000004) zur Übermittlung von Nachrichtenanfragen. Die Server-Logik ist wie folgt:

  1. Der Server analysiert den Inhalt der Anfrage und nutzt den SMS-Kanal zur Zustellung.
  2. Die Zustellung erfolgt synchron, das Ergebnis wird mit dem Befehl SUBMIT_SM_RESP (0x80000004) beantwortet.
  3. Zustellberichte werden gemäß Abschnitt Zustellbericht gesendet.
  4. Es wird empfohlen, die UCS2-Kodierung zu verwenden, um Sonderzeichen und Internationalisierung zu unterstützen.

Client-Datenpaket

Der Client sendet den Befehl SUBMIT_SM (0x00000004) zum Übermitteln von Nachrichten mit folgenden Feldern:

  1. service_type
    • Werte: MSG / CODE / MRKT
    • Standardwert: MSG
  2. source_addr
    • Kann leer bleiben; wird aktuell für SMS nicht verwendet.
  3. destination_addr
    • Ziel der Nachricht, muss im internationalen Telefonnummernformat angegeben werden (z. B. +6598765432).
  4. short_message
    • Der Nachrichteninhalt im JSON-Format, wie unten dargestellt:
      { "id": "xxx", // Template-ID "language": "default", // Sprache, Standard ist "default" "code": "xx", // Verifizierungscode, wird bei service_type "code" verwendet "params": { // Benutzerdefinierte Schlüssel-Wert-Paare "key1": "val1" // Wert muss ein String sein } }
                    
                    {
        "id": "xxx",          // Template-ID
        "language": "default", // Sprache, Standard ist "default"
        "code": "xx",          // Verifizierungscode, wird bei service_type "code" verwendet
        "params": {            // Benutzerdefinierte Schlüssel-Wert-Paare
          "key1": "val1"       // Wert muss ein String sein
        }
      }
      
                  
      Diesen Codeblock im schwebenden Fenster anzeigen
  5. data_coding
    • Es wird empfohlen, die UCS2-Kodierung zu verwenden, damit Sonderzeichen {} korrekt verarbeitet werden.
    • Falls {} direkt gesendet werden können, kann die Standardkodierung (0x00) verwendet werden.
  6. header status
    • Setzen Sie auf 0x00000000.

Server-Antwort

Der Server antwortet auf Nachrichtenanfragen mit dem Befehl SUBMIT_SM_RESP (0x80000004).

Erfolgreiche Antwort

  • Wert des header status-Feldes: 0x00000000
  • MESSAGE_ID-Feld: Die Nachrichten-ID zur Zuordnung von Zustellberichten.

Fehlgeschlagene Antwort

  • Der Server füllt das header status-Feld aus, um den Fehlergrund anzugeben:
Statuscode Beschreibung Wert
ESME_RINVPARAM Ungültige Parameter, bitte das Anfrageformat prüfen 0x00000032
ESME_RSYSERR Interner Serverfehler, später erneut versuchen 0x00000008
ESME_RSUBMITFAIL Zustellung fehlgeschlagen, evtl. Template-Problem 0x00000045
ESME_RINVNUMMSGS Ungültiges short_message-Format 0x00000055
ESME_RUNKNOWNERR Unbekannter Fehler, technischen Support kontaktieren 0x000000FF

Zustellbericht

Der Server meldet Zustellergebnisse über den Befehl DELIVER_SM (0x00000005). Die Felder sind wie folgt:

  1. service_type
    • Fester Wert: MSG
  2. source_addr
    • Leer.
  3. destination_addr
    • Entspricht dem Feld destination_addr im Befehl SUBMIT_SM.
  4. data_coding
    • Kodierungsmethode: Standardwert 0x00.
  5. esm_class
    • Setzen Sie auf 0x00.
  6. short_message
    • Enthält den Zustellbericht im Format „delivery receipt“.
  7. ReceiptedMessageID in tlv
    • Die Nachrichten-ID zur Zuordnung.
  8. MessageState in tlv
    • Nachrichtenstatus, Feldwert 0x0427.

Statusauswertung

Das Feld short_message enthält den Wert stat, der Folgendes angibt:

Status Bedeutung
DELIVRD Erfolgreich zugestellt
UNDELIV Zustellung fehlgeschlagen

Weitere Informationen

Ungültige Befehle

Bei ungültigen Befehlen vom Client sendet der Server den Befehl GENERIC_NACK (0x80000000) und protokolliert das Ereignis. Der Server unterstützt nur die folgenden Befehle:

  1. EnquireLink-Befehl (0x00000015)
  2. Unbind-Befehl (0x00000006)
  3. SubmitSM-Befehl (0x00000004)
  4. DeliverSMResp-Befehl (0x80000005)
  5. BindTransceiver-Befehl (0x00000009)

Verbindung aufrechterhalten

Der Client muss alle 30 Sekunden (±5 Sekunden) den Befehl EnquireLink (0x00000015) senden, um die Verbindung aktiv zu halten.

Bedeutung der Zustellstatus

Statuscode Bedeutung
ESME_RINVPARAM Ungültige Parameter, bitte das Anfrageformat prüfen
ESME_RINVNUMMSGS Ungültiges short_message-Format
ESME_RSUBMITFAIL Zustellung fehlgeschlagen, evtl. Template-Problem
ESME_RSYSERR Interner Serverfehler, später erneut versuchen
ESME_RUNKNOWNERR Unbekannter Fehler, technischen Support kontaktieren
DELIVRD Erfolgreich zugestellt
UNDELIV Zustellung fehlgeschlagen

Begriffsdefinitionen

  • SMPP: Short Message Peer-to-Peer Protocol für den Nachrichtenaustausch zwischen SMS-Gateways.
  • SUBMIT_SM: SMPP-Befehl zum Übermitteln von Nachrichten.
  • DELIVER_SM: SMPP-Befehl zur Übermittlung des Zustellstatus.

Bei Fragen wenden Sie sich bitte an den Technischen Support.


SEO-Hinweis: Dieses Dokument beschreibt die Schnittstelleninformationen und den Ablauf für das SMPP-Protokoll und SMS-Gateways.

Icon Solid Transparent White Qiyu
Vertrieb kontaktieren