So senden Sie SMS mit der SMPP-API auf Protokollebene

Die Short Message Peer-to-Peer (SMPP)-API ist ein weit verbreitetes Protokoll für den Austausch von SMS-Nachrichten zwischen SMS-Entitäten wie ESMEs (External Short Message Entities) und SMSCs (Short Message Service Centers). Für Benutzer der Ozeki SMS Gateway-Plattform ist das Verständnis der SMPP-Protokollebene entscheidend für die Optimierung der Leistung, Fehlerbehebung und benutzerdefinierte Integrationen. Diese Anleitung erklärt die SMPP-PDUs (Protocol Data Units), die erforderlich sind, um eine SMPP-API-Verbindung zum Senden von SMS-Nachrichten herzustellen, aufrechtzuerhalten und zu nutzen.

Herstellen einer SMPP-API-Verbindung

Um SMS über die SMPP-API zu senden, müssen Sie Ihren Client zunächst an den Ozeki SMS Gateway-Server binden. Es gibt drei Bindungstypen: bind_transmitter, bind_receiver und bind_transceiver. Jeder definiert die Richtung des Nachrichtenflusses.

Wichtige PDUs für die Verbindungseinrichtung

PDU Richtung Zweck Schlüsselparameter
bind_transmitter ESME → SMSC Initiiert eine Verbindung zum Senden von SMS
  • system_id: Client-Benutzername
  • password: Authentifizierungsdaten
  • system_type: Identifikator für die ESME
bind_receiver ESME → SMSC Richtet eine Verbindung zum Empfangen von SMS ein Wie bind_transmitter
bind_transceiver ESME → SMSC Ermöglicht bidirektionale Nachrichtenübermittlung Wie bind_transmitter

Bei erfolgreicher Bindung antwortet der Ozeki-Gateway mit einer bind_resp-PDU, die eine system_id-Bestätigung enthält. Bei fehlgeschlagener Authentifizierung wird ein Fehlercode wie ESME_RINVPASWD zurückgegeben.

Aufrechterhaltung der SMPP-API-Verbindung

SMPP-Verbindungen erfordern periodische Keep-Alive-Signale, um Timeouts zu vermeiden. Verwenden Sie die enquire_link-PDU:

PDU Richtung Zweck
enquire_link ESME ↔ SMSC Überprüft, ob die Verbindung aktiv ist
enquire_link_resp ESME ↔ SMSC Bestätigt die Aktivität

Beste Praxis: Senden Sie enquire_link alle 30-60 Sekunden. Der Ozeki SMS Gateway beendet inaktive Verbindungen standardmäßig nach 5 Minuten.

Senden einer SMS über die SMPP-API

Die submit_sm-PDU wird verwendet, um eine einzelne SMS zu senden. Ihre Struktur umfasst Quell-/Zieladressen und Nachrichteninhalt:

Parameter Beschreibung Beispiel
service_type Art des Dienstes (optional) “” (leer)
source_addr Absenderadresse der SMS “12345”
destination_addr Telefonnummer des Empfängers “+1234567890”
short_message Nachrichteninhalt (UTF-8 oder GSM-7) “Hallo Welt”

Beispiel submit_sm-Workflow

  1. ESME sendet submit_sm an den Ozeki SMS Gateway.
  2. Der Gateway antwortet mit submit_sm_resp, das eine message_id enthält.
  3. Der Gateway sendet deliver_sm für Zustellberichte (falls aktiviert).
  4. ESME antwortet mit deliver_sm_resp.

Umgang mit SMPP-API-Antworten und Fehlern

Der Ozeki SMS Gateway verwendet diese Antwort-PDUs:

PDU Zweck Kritische Felder
submit_sm_resp Bestätigt submit_sm message_id, command_status
generic_nack Zeigt eine fehlerhafte/ungültige PDU an command_status (z.B. ESME_RINVMSGLEN)

Fazit

Die Beherrschung von SMPP-API-PDUs wie bind_transmitter, enquire_link und submit_sm gewährleistet eine zuverlässige SMS-Übermittlung über den Ozeki SMS Gateway. Durch die Implementierung robuster Fehlerbehandlungs- und Keep-Alive-Routinen können Entwickler skalierbare SMS-Lösungen mit minimaler Ausfallzeit erstellen.

More information