Gestion des codes erreurs

Le présent document présente la gestion des erreurs temporaires et métiers avec la mise en place d’une politique de traitement de ces erreurs.

Notre documentation API vous présente les mécanismes mis en place par intentPlatform pour vous communiquer les erreurs lors de l’utilisation de nos APIs.

Généralités

Dans le cadre du développement de votre interface push, vous devez mettre en place une politique de gestion des codes retours pour assurer une qualité du connecteur.

Vous pouvez rencontrer 2 typologies d'échec lorsque vous faites appel à nos APIs :
    .1Erreurs temporaires
    .aConnexion au provider temporairement impossible
    .bConnexion réussie, erreur temporaire du provider
    .2Erreurs métiers
    .aConnexion réussie, erreur métier : par exemple, le client web service n'a pas renseigné tous les champs obligatoires dans le message échangé.

Dans le cadre des erreurs temporaires, il est nécessaire que vous mettiez en place une politique de renvoi des messages à intervalle régulier. Dans le cadre des erreurs métiers, il est fort probable qu'une tentative de renvoi du même message provoque la même erreur indéfiniment. Ces problèmes devront être résolus via une intervention humaine de votre côté. 

Erreurs temporaires

Une politique de renvoi automatique des messages suite à des erreurs temporaires doit impérativement être mise en place.
Lorsque le nombre de réessai maximal est atteint, vous devez pouvoir retrouver tous les messages qui ont abouti à un échec définitif de l’échange. Il est nécessaire de limiter toute perte de données et d'éviter que certains échanges ne soient pas transmis.

Par défaut, nous considérons comme erreurs temporaires :
  • 408 - Timeout
  • 500 et 502 - Problème interne au serveur

Par conséquent, tout ce qui n’est pas listé comme une erreur temporaire sera considéré comme une erreur métier et aucun ré-essai ne sera effectué, ce qui implique une action manuelle des utilisateurs.

Politique de renvoi

La politique de renvoi des messages que vous mettrez en place doit impérativement inclure deux paramètres :
  • une temporisation entre deux essais pour le même message.
  • un nombre maximum de tentatives afin d'éviter des messages qui restent indéfiniment dans les files de messages. Au delà de ce nombre de tentatives, le message est considéré en erreur. Une action manuelle de l’utilisateur est nécessaire.

Nous pouvons imaginer une fréquence de renvoi des messages :
→ Echec de l’envoi (t0)
  • 1er renvoi à +1min
  • 2ème renvoi à +10 min
  • 3ème renvoi à +1 heure
  • 4ème renvoi à +24 heures
  • Action humaine