logoDocumentation
Rechercher

Découvrez SMSHook

SMSHook est le canal par lequel les clients reçoivent leurs informations de transmission. Après qu'un utilisateur a envoyé une demande de SMS à EngageLab, EngageLab retourne de manière synchrone le « résultat de la demande » à l'utilisateur, et le « résultat d'envoi » ainsi que les « autres résultats d'événements » du SMS sont retournés de manière asynchrone à l'utilisateur via SMSHook.

Traitement de SMSHook

  • EngageLab fournit aux clients certains événements SMS qu'ils peuvent choisir de suivre.
  • Lorsqu'un événement se produit, EngageLab sera déclenché pour envoyer des données (POST) à l'URL définie par le client.
  • Le type de données envoyé par EngageLab est « Content-Type : application/json ».
  • Le client reçoit les données, analyse l'événement et les données, et doit retourner le code d'état HTTP 200 dans les 3 secondes. Sinon, EngageLab renverra le message.

Méthode d'utilisation

  • Les utilisateurs peuvent écrire leurs propres services HTTP pour gérer les événements correspondants, analyser les données pertinentes et ouvrir les URL correspondantes.
  • Les utilisateurs sélectionnent les événements à suivre dans le SMSHook d'EngageLab et configurent l'URL pour recevoir les données.

Vérification de la signature

Pour garantir que l'identité de la source du message est EngageLab, vous pouvez choisir d'effectuer une authentification de sécurité sur la source des données POST (sans vérification, il est également possible d'analyser directement les données POST).

Les méthodes d'authentification de sécurité sont les suivantes :

  • Obtenez le APP SECRET via [Paramètres d'envoi] - [SMSHook]
  • Récupérez le X-SMSHook-Timestamp dans l'en-tête
  • Récupérez le X-SMSHook-AppKey dans l'en-tête
  • Récupérez le X-SMSHook-Signature dans l'en-tête
  • Générez une signature en utilisant md5 (timestamp+appkey+secret) et comparez-la avec X-SMSHook-Signature

Traitement de la réponse

Après avoir reçu le callback d'EngageLab, le service développeur doit répondre dans les 3 secondes selon les exigences suivantes.

Réception réussie : le code d'état de la réponse HTTP doit retourner 200 ou 204, et aucun message de réponse n'a besoin d'être retourné.

Échec de la réception : le code d'état de la réponse HTTP doit retourner 5XX ou 4XX, et un message de réponse doit être retourné en même temps, au format suivant :

{"code":2002,"message":"failed"}

Paramètre Type Obligatoire/Optionnel Description
code int Optionnel Code d'erreur
message string Optionnel Détails de l'erreur

Traitement des tentatives de renvoi

En cas d'erreur d'accès à l'URL ou de dépassement de délai, EngageLab retentera au maximum 7 fois. L'intervalle maximal entre chaque tentative est de 3 min, 10 min, 30 min, 1 h, 6 h, 12 h et 24 h. Vous disposez donc de suffisamment de temps pour réparer l'URL avant que le message ne soit perdu.

Si le nombre de tentatives est dépassé, EngageLab abandonnera le message.

Pour chaque traitement d'événement et analyse de données, vous devez retourner [Réponse reçue avec succès] dans les 3 secondes. Sinon, EngageLab renverra ce message.

Icon Solid Transparent White Qiyu
Contactez-nous