API REST pour SMS en vrac et la radiodiffusion vocale avec suivi de livraison
À retenir :
- Une API de messagerie en vrac bien conçu vous permet d'obtenir des milliers d'appel SMS ou voix en une seule demande et de suite chaque résultat de livraison via webhooks
- Les limites de taux et les plafonds de débit sont les problèmes les plus courants d'échelle, les compris avant le lancement de votre première campagne.
- Les clés d'Idempotency emploient l'envoi de duplica lors de la réessayage des demandes échouées, ce qui est critique pour les opérations en vrac
Construire une fonction de messagerie en vrac dans votre application signifie choisir une API qui ne devient pas un goulot d'étrangement à l'échelle. La différence entre une API de messagerie qui mère 500 messages et une API qui mère 500 000 n'est pas seulement du volume, c'est comment l'API mère la livraison async, la fiabilité webhook, la limitation des taux et la récupération des erreurs.
Ce guide comprend les décisions techniques qui comprennent en fait pour l'intégration des SMS et de la radiodiffusion vocale en bloc dans une application de production.
Anatomie d'une demande d'entrée en vrac
La plupart des API de messagerie présente en charge deux modèles pour les visiteurs groupés:
Modèle A: Diffusion unique
Un appel API avec une liste de destinations et un seul message. Plus rapide à mettre en œuvre, idéal pour des messages personnalisés à de nombreux destinaires. L'API retourne un ID de campagne; vous sondagez ou recevez des webhooks pour obtenir le statut de résidence individuelle.
Modèle B : Messages individuels
Un appel API par destinaire, chaque avec un contenu personnalisé. Plus soupele pour les messages dynamiques, mais nécessite une logique de loting à votre fin. Mieux pour les campagnes personnelles où le contenu du message varie par destinaire.
Pour la diffusion vocale en vrac, le modèle A est toujours le bon choix. Pour des campagnes SMS personnalisées avec des champs dynamiques, le modèle B avec des lots de 100 à 500 par demande est plus courant.
Structure de demande pour une campagne de SMS en vrac
Suivi de la livraison : Sondages contre Webhooks
Deux approches pour savoir ce qui est arrivé à chaque message :
| Sondage (GET/statut) | Bouchons de toile (Push) | |
|---|---|---|
| Latence | Dépend de l'intervalle de contrôle | Presque en temps réel (secondes) |
| Infrastructure | Plus simple — il suffit de faire des demandes GET | Nécessite un webhook public |
| Échelle | Faible pour les grandes campagnes (nombreuses demandes) | Excellent — push par événement |
| Fiabilité | Vous contrôlez la logique de réessayeur | Le fournisseur a répondu en votre nom |
| Meilleur pour | Développement, petites campagnes, contrôles de statut | Production, grandes campagnes, tableaux de bord en temps réel |
Pour la production de messages en vrac, les webhooks sont la bonne réponse. Le sondage de 50 000 états de message place une charge inutile sur votre application et l'API – et vous allez frapper les limites de caractères le faisant.
État de livraison Événements à gérer
Un gestionnaire de webhook complet devrait traiter ces états de livraison pour SMS:
- en tenue & #160;:Message accepté par l'API, en attente d'envoi
- envoyé :Expédié au réseau de transport
- Délivré:Transporteur confirmé livraison au combiné (tous les transporteurs ne soutiennent pas pas cela)
- Échoué:Défaut de livraison — vérifier le code d'erreur pour la raison (mauvais numérique, bloc de transporteur, etc.)
- non vivant:Transporteur accepté mais ne poussant pas livrer
- Offre :Le bénévole a répondu STOP—suppress de tout avoir futur immédiatement
En ce qui concerne la radiodiffusion vocale, les États concernés différents:
- réponse :Appel reçu par un humain
- Messagerie vocale :L'appel a été envoyé au répondant; le message a été laissé.
- occupant:Line était occupée au moment de l'appel
- sans réponse :Rang dehors sans réponse
- Échoué:L'appel ne peut pas se connecter (numéro invalide, erreur du transporteur)
Gestion des limites de taux à l'échelle
Chaque API de messagerie a des limites de taux. Les frapper sans stratégie de réessayer transforment un lancement de campagne en cascade d'erreur. Meilleurs pratiques:
Stratégie de traitement des limites de taux
- Posologie exponentiel:Sur HTTP 429 (Trop de demandes), assistez 1 seconde, réessayez. Si toujours 429, assistez 2 secondes, réessayez. Puis 4, 8, 16. Cap à 60 secondes.
- Envoi en fichier d'attente:N'écoutez pas 100 000 messages simultanément depuis votre application. Poussez vers une fiche d'attente d'emploi (Redis, SQS, RabbitMQ) et traitez à un rythme que votre API limite permet.
- Clés d'urgence :Chaque demande doit comprendre une clé d'hypothèse unique. Si une rencontre présente un appel API en double, la clé idempotency assure qu'un seul message est effectivement envoyé.
Pour plus de détails sur la façon dont l'API de Robotalker gérer les campagnes vocales et SMS en vrac, consultez notre guide pourAPI flexible pour SMS et appels automatisés.
Construisez des campagnes de SMS et de voix en vrac dans votre application
L'API REST de Robotalker prend en charge la diffusion vocale en vrac, les campagnes SMS et le suivi de la livraison en temps réel avec des callbacks Webhook.
- API unique pour voix et SMS en vrac
- En temps réel
- Traitement de la demande d'idépotent