Ce document explique comment la plate-forme RCS pour les entreprises gère l'envoi de messages et d'autres interactions avec les API, en distinguant les opérations synchrones et asynchrones.
Les interactions avec l'API RBM suivent généralement un modèle de requête-réponse synchrone au niveau HTTP. Toutefois, les résultats de nombreux appels d'API, en particulier la remise des messages, sont gérés de manière asynchrone via des Webhooks. Pour en savoir plus, consultez les sections suivantes.
Envoi de messages : requête synchrone, distribution asynchrone
La requête d'API phones.agentMessages.create
est traitée de manière synchrone du point de vue de l'API. Lorsque vous envoyez une requête HTTP à la plate-forme RCS for Business, le serveur répond presque immédiatement avec un code d'état HTTP standard (comme 200 OK
ou une erreur) pour indiquer si la requête a été reçue et est valide.
Toutefois, la remise effective du message à l'utilisateur final est traitée de manière asynchrone. Les facteurs suivants peuvent affecter ce processus :
- État du destinataire : l'utilisateur est peut-être hors connexion, sa batterie est peut-être déchargée ou il n'a peut-être pas activé le RCS.
- Conditions du réseau : les problèmes de réseau de l'opérateur peuvent retarder ou empêcher la distribution des messages.
La plate-forme RCS pour les entreprises fournit des mises à jour sur l'état de distribution des messages (comme les confirmations de lecture et de distribution) de manière asynchrone via des webhooks.
Par conséquent, bien que la requête API initiale soit synchrone, vous devez vous appuyer sur les événements webhook asynchrones pour suivre la distribution des messages. Ne vous attendez pas à recevoir une confirmation immédiate de l'état de distribution dans la réponse phones.agentMessages.create
.
Autres interactions avec l'API RBM
La plupart des autres API RBM basées sur HTTP fonctionnent également avec un modèle de requête/réponse synchrone. Ces API fournissent une réponse HTTP immédiate qui indique l'état de la requête (réussite ou erreur). Toutefois, bien que la requête soit synchrone, les actions qui en résultent peuvent impliquer des processus asynchrones. Par exemple, une réponse réussie à un appel d'API pour mettre à jour les informations sur l'agent ne signifie pas que la mise à jour est instantanément reflétée partout. Il peut y avoir un court délai de propagation.
Point de terminaison du webhook : événements asynchrones
Les événements suivants sont transmis de manière asynchrone à votre point de terminaison webhook :
- Messages utilisateur entrants : la plate-forme RCS pour les entreprises envoie les messages utilisateur entrants à votre point de terminaison de webhook. N'oubliez pas de vérifier les messages entrants.
- Accusés de réception et de lecture : les notifications d'état de réception et de lecture des messages sont envoyées via des webhooks.
- Événements de conversation : certains événements liés aux conversations, tels que les indicateurs de saisie, sont envoyés via des Webhooks.
- Événements d'expiration et de révocation des messages : la plate-forme RCS pour les entreprises envoie des événements pour confirmer si un message expiré a été révoqué avec succès.