Skip to main content
La seule direction où vous êtes le serveur. Demandez-le avec "dlr": "yes" et un dlr_url sur l’envoi.

json — le défaut

Un POST avec Content-Type: application/json :

Champs

Les champs à null sont omis plutôt qu’envoyés comme null, donc un accusé pour un message qui n’a jamais atteint un vendor n’arrive pas rempli de clés vides. Chaque appel porte User-Agent: FireFlo/<version>.
Il n’y a pas de champ err. Jasmin en envoie un ; le résolveur de FireFlo reçoit seulement l’état de livraison, jamais de code d’erreur, donc en émettre un signifierait l’inventer.vendor est absent tant que votre fournisseur ne l’active pas. Il nomme quel fournisseur transporte votre trafic, ce qui est retenu aux clients par construction ailleurs.

kannel — substitution de placeholders

Un simple GET sur l’URL enregistrée avec deux placeholders substitués. Rien n’est ajouté.
Une URL sans placeholders reçoit une requête qui ne porte absolument rien — pas de corps, pas de query, pas d’identifiant. L’endpoint est touché à l’heure, renvoie 200, et l’intégration a l’air de “fonctionner mais vide”.Rien dans le système ne le signale, car un callback vide est indiscernable d’un callback correctement configuré qui n’a rien à porter.
Le format est choisi par votre fournisseur avec smsg.dlr.forward.format, pas par vous. dlr-method est accepté sur un envoi mais ne le sélectionne pas.

Livraison et retries

Un 302 vers une page de connexion compte comme succès et avale l’accusé. Idem pour tout 2xx d’un proxy qui n’a jamais atteint votre application. Si les accusés “arrivent” mais votre handler ne s’exécute jamais, regardez ce qui est en amont.
La livraison est at-least-once. Rendez votre handler idempotent sur id plus level, pas sur id seul, puisqu’un message peut légitimement produire un niveau 1 puis un niveau 2.

Quels accusés vous recevez

dlr_level sur l’envoi : 1 progression uniquement, 2 l’issue (défaut), 3 les deux. En SMPP, le même choix est l’octet registered_delivery. 0x11 est l’écriture SMPP de dlr_level: 3.

Chaque accusé est enregistré

Qu’il soit transféré ou non. Supprimer un accusé est une décision sur ce qui vous est dit, jamais sur ce qui est enregistré. Donc “je n’ai jamais reçu d’accusé” a toujours une réponse côté fournisseur.

Voir aussi

Accusés de livraison

Construire contre ceci, avec le piège du niveau expliqué.

Callbacks qui n'arrivent pas

Diagnostiquer le silence.