Envoi d'un message avec basculement
Lorsque vous envoyez des messages avec l'API Messages de Vonage, ils peuvent être rejetés. En une seule demande API, des messages de basculement peuvent être définis pour être envoyés à leur place. Par exemple, si l'appareil d'un client ne prend pas en charge votre canal principal, tel que RCS, il continuera à recevoir vos messages par le biais de canaux alternatifs.
Ce guide vous explique comment configurer le basculement des messages dans votre requête et comment surveiller l'état de la livraison par le biais de rappels.
Envoi d'une demande avec basculement des messages
Dans cet exemple, un message texte RCS est envoyé en premier, suivi d'un message SMS en cas d'échec. La structure de la demande est la même que pour l'envoi d'un message standard pour le canal principal ; le message de basculement est ensuite défini dans un fichier failover comme suit :
{
"to": "447700900000",
"from": "Vonage",
"channel": "rcs",
"message_type": "image",
"image": {
"url": "https://example.com/image.jpg",
"caption": "This is an image sent via RCS using the Vonage Messages API."
},
"failover": [
{
"to": "447700900000",
"from": "447700900001",
"channel": "sms",
"message_type": "text",
"text": "This is an SMS sent using the Vonage Messages API."
}
]
}
Vous pouvez définir autant de canaux de basculement que nécessaire ; les messages de basculement seront envoyés dans l'ordre où ils sont définis dans le tableau.
Chaque message au sein du réseau de basculement nécessite sa propre channel, message_type from, toet le contenu du message ; de plus amples informations sur chaque canal et ses paramètres requis sont disponibles dans la rubrique Spécification API. Vous devez également veiller à ce que le contenu du message soit adapté aux capacités de chaque canal de secours.
Des exemples de requêtes utilisant cURL et les SDK de Vonage peuvent être trouvés sur la page Envoyer un message avec basculement page d'extraits de code.
Suivi de l'état et des rappels
Lorsque votre message est envoyé, l'API renvoie rappels d'état à l'URL de votre webhook. Ceux-ci suivent la progression et le résultat de chaque message dans la séquence de basculement. Un exemple de flux pour le basculement de RCS vers SMS serait le suivant :
- RCS soumis → Message envoyé au canal primaire (dans ce cas RCS).
- RCS Rejeté → Échec de la transmission du message.
- SMS soumis → Message de basculement envoyé par SMS.
- SMS livrés → Message délivré avec succès.
Exemples de rappels
Les exemples de rappel suivants montrent les mises à jour de l'état d'un message RCS rejeté et d'un message SMS livré. Dans les deux rappels, vous verrez ces champs :
workflow.workflow_id- ID unique pour le flux de travail de basculement.workflow.items_number- Indique la séquence des messages envoyés (par exemple, "1" pour le primaire, "2" pour le premier basculement).workflow.items_total- Nombre total de messages tentés dans ce flux de travail.status- Indique l'état de la livraison. Ces valeurs varient en fonction du canal, mais sont l'une des suivantessubmitted,delivered,rejected,undeliverableouread. Des informations spécifiques pour chaque canal peuvent être trouvées dans le manuel de l'utilisateur. Spécification API.
RCS Rejeté
SMS livrés
Utilisez ces rappels pour savoir où et comment les messages sont délivrés, et pour déclencher les actions suivantes ou les journaux.