SMPP

SMPP est le protocole binaire pour soumettre des SMS à un centre de messagerie et recevoir les accusés, via un bind émetteur-récepteur ou récepteur.

Définitions uniquement : un terme expliqué ici n’est pas un service que nous vendons.

Short Message Peer-to-Peer (SMPP) est un protocole binaire qui permet de soumettre des SMS à un centre de messagerie et de recevoir les accusés sur la même session TCP lorsqu’elle est liée comme émetteur-récepteur, ou sur un bind récepteur distinct. Un bind ouvre la session et une fenêtre limite les messages en attente.

Un bind déclare un rôle d’émetteur, de récepteur ou d’émetteur-récepteur, et les échanges de keep-alive maintiennent la session ouverte. La connexion est détaillée dans Qu’est-ce que SMPP.

Soumettre, puis attendre l’accusé

Le client soumet avec submit_sm et reçoit un submit_sm_resp contenant un identifiant de message ; l’accusé arrive plus tard sous forme de deliver_sm. Une fenêtre plafonne les soumissions en attente : le débit dépend donc de la taille de la fenêtre et du temps aller-retour.

Bind, soumission, accusé

  1. Application (ESME)
  2. bind_transceiver Ouvrir la session
  3. SMSC
  4. submit_sm_resp Accepté pour remise
  5. Accusé de remise
La session s’ouvre une seule fois ; l’accusé arrive plus tard.
Description textuelle

L’application établit une liaison avec le centre de messagerie comme émetteur-récepteur. Le centre accepte la soumission avec submit_sm_resp, et l’accusé de remise arrive ensuite sur la même session.

Questions fréquentes

SMPP est-il une API web ?

Non. Il est binaire sur une connexion TCP persistante, et non une API HTTP de requête-réponse.

Quel type de bind un client doit-il utiliser ?

Un émetteur-récepteur pour envoyer et recevoir sur une même session ; des binds distincts lorsque l’architecture ou le fournisseur l’exige.

Qu’est-ce qui limite le débit ?

Le quota de TPS du fournisseur, la taille de fenêtre et le temps aller-retour.

En savoir plus

Sources

  1. 3GPP TS 23.040 : réalisation technique du service de messages courts
  2. 3GPP TS 23.038 : alphabets et informations linguistiques pour les SMS
  3. SMPP v3.4 : modes de bind et deliver_sm