logoDokumentation
Suchen

OTP SMPP Integration Guide - Enhance Your Security with SMPP

Schnittstelleninformationen

Dieses Protokoll definiert das SMPP-Protokoll für OTP-Dienste und gewährleistet eine effiziente und zuverlässige Nachrichtenübermittlung sowie Statusberichte über TCP-Verbindungen. Die Schnittstelleninformationen umfassen IP-Adresse, Port und Authentifizierungsdaten. Bitte stellen Sie sicher, dass die von autorisierten Kanälen bereitgestellten Zugangsdaten korrekt konfiguriert sind.

SMPP-Adresse

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

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

Verbindungsaufbau

Client-Datenpaket

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

  • system_id: Das dem Client zugewiesene Systemkonto zur Authentifizierung.
  • password: Das zugehörige Passwort zur Authentifizierung.

Server-Antwort

Erfolgreiche Antwort

  • Der Server sendet als Antwort den Befehl BindTransceiverResp (0x80000009).
  • Das Feld system_id wird mit dem im Request übermittelten Wert ausgefüllt.

Fehlgeschlagene Antwort

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

Nachrichtenübermittlung

Server-Logik

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

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

Client-Datenpaket

Der Client sendet den Befehl SUBMIT_SM (0x00000004) mit folgenden Feldern:

  1. service_type
    • Werte: MSG / CODE / MRKT
    • Standard: MSG
  2. source_addr
    • Kann leer bleiben; wird aktuell für OTP nicht verwendet.
  3. destination_addr
    • Zielnummer im internationalen Telefonnummernformat (z. B. +491701234567).
  4. short_message
    • Nachrichteninhalt im JSON-Format, Beispiel:
      { "id": "xxx", // Vorlagen-ID "language": "default", // Sprache, Standard ist "default" "code": "xx", // Verifizierungscode, bei service_type "CODE" "params": { // Benutzerdefinierte Schlüssel-Wert-Paare "key1": "val1" // Wert muss ein String sein } }
                    
                    {
        "id": "xxx",           // Vorlagen-ID
        "language": "default", // Sprache, Standard ist "default"
        "code": "xx",          // Verifizierungscode, bei service_type "CODE"
        "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, UCS2 zu verwenden, damit Sonderzeichen wie {} korrekt verarbeitet werden.
    • Falls {} direkt gesendet werden kann, kann die Standardcodierung (0x00) verwendet werden.
  6. header status
    • Auf 0x00000000 setzen.

Server-Antwort

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

Erfolgreiche Antwort

  • header status Feldwert: 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:
Status-Code Beschreibung Wert
ESME_RINVPARAM Ungültige Parameter, bitte prüfen Sie die Anfrage 0x00000032
ESME_RSYSERR Interner Serverfehler, später erneut versuchen 0x00000008
ESME_RSUBMITFAIL Zustellung fehlgeschlagen, evtl. Templatefehler 0x00000045
ESME_RINVNUMMSGS Ungültiges short_message-Format 0x00000055
ESME_RUNKNOWNERR Unbekannter Fehler, technischen Support kontaktieren 0x000000FF

Zustellbericht

Der Server übermittelt Zustellergebnisse mit dem 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
    • Codierungsmethode: Standardwert 0x00.
  5. esm_class
    • Auf 0x00 setzen.
  6. short_message
    • Enthält den Zustellbericht im delivery receipt-Format.
  7. ReceiptedMessageID in tlv
    • Nachrichten-ID zur Zuordnung.
  8. MessageState in tlv
    • Nachrichtenstatus, Feldwert 0x0427.

Statusauswertung

Das Feld short_message enthält das Attribut stat, das Folgendes angibt:

Status Bedeutung
DELIVRD Erfolgreich zugestellt
UNDELIV Zustellung fehlgeschlagen

Weitere Informationen

Ungültige Befehle

Bei ungültigen Befehlen antwortet der Server mit dem Befehl GENERIC_NACK (0x80000000) und protokolliert das Ereignis. Der Server unterstützt nur folgende Befehle:

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

Verbindung aufrechterhalten

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


Bedeutung der Zustellstatus

Status-Code Bedeutung
ESME_RINVPARAM Ungültige Parameter, bitte prüfen Sie die Anfrage
ESME_RINVNUMMSGS Ungültiges short_message-Format
ESME_RSUBMITFAIL Zustellung fehlgeschlagen, evtl. Templatefehler
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.

icon
Vertrieb kontaktieren