Definition
SMPP (Short Message Peer-to-Peer) ist ein offenes Binärprotokoll über TCP, mit dem Anwendungen (ESMEs) und SMS-Anbieter SMS mit einem SMSC austauschen. Version 3.4 ist am weitesten verbreitet.
Eine SMPP-Session beginnt mit einem Bind (Transmitter, Receiver oder Transceiver). Anschließend sendet der Client Nachrichten mit submit_sm und empfängt eingehende Nachrichten und Zustellberichte als deliver_sm. enquire_link hält die Session aufrecht, unbind beendet sie.
Jede PDU hat einen 16 Oktette langen Header: command_length, command_id, command_status und sequence_number. Antworten geben die Sequenznummer zurück, sodass viele Requests gleichzeitig unterwegs sein können (Windowing) – genau das macht SMPP für hohe Volumina effizient.
SMPP eignet sich für Aggregatoren, Reseller und Unternehmen mit großen Versandvolumina oder vorhandener SMS-Software. Für die meisten Anwendungsentwickler ist eine HTTP-SMS-API einfacher.
Das Basisprotokoll bietet keine Verschlüsselung. Verbindungen sollten daher über TLS oder ein VPN laufen; IP-Allowlisting ist üblich.
OmniChannels.ai bietet SMPP 3.4 über TLS, mit Binds, die pro Account bereitgestellt werden.
Beispiel
bind_transceiver → bind_transceiver_resp → submit_sm → submit_sm_resp (message_id) → deliver_sm (Zustellbericht) → deliver_sm_resp