Codes d’erreur du SDK MA iOS
Définition des codes d’erreur client
Ce guide s’applique au SDK MTMA autonome v5.5.0 et versions ultérieures.
| Code | Description | Détails |
|---|---|---|
| 0 | Requête réussie | La requête API a réussi |
| -1 | Échec de la requête | Erreur réseau, format de réponse invalide, MA désactivé dans la configuration d’initialisation ou autre erreur inconnue |
| -2 | Échec de la requête | start: n’a pas été appelé, MTMA n’a pas été initialisé avec succès, ou la MA AppKey, le projet ou l’identité a changé avant l’exécution d’une requête en attente |
| -3 | Paramètre invalide | Échec de validation des paramètres, par exemple une MA AppKey ne comportant pas exactement 24 lettres ou chiffres, ou aucun identifiant utilisable après le nettoyage d’identifyAccount: |
| -4 | Projet désactivé | Une API détecte pendant l’exécution que MA est désactivé, ou le serveur renvoie une erreur de projet désactivé. Pour MA désactivé dans la configuration d’initialisation, voir -1 |
| -5 | Ancien code | Indiquait auparavant un échec d’inscription AppPush ; n’est plus utilisé par MTMA autonome |
| -6 | Projet changé | Le projet a changé ; rappelez start: pour initialiser |
| -7 | Requête en cours | Une API sans prise en charge de file d’attente a déjà une requête en cours. Les appels valides à start: ne renvoient pas ce code du fait d’une autre initialisation en cours ; les requêtes de canal Push tiers sont mises en file dans l’ordre |
Codes métier serveur
Le tableau ci-dessus répertorie les erreurs produites par le SDK lui-même. En cas d’échec métier côté serveur, le SDK renvoie le code métier et le message correspondants ; les callbacks peuvent donc contenir des codes positifs. Ces codes précis servent uniquement au diagnostic et leur stabilité entre versions n’est pas garantie. Ne les utilisez pas pour conditionner la logique applicative.
Utilisez MTMAInitResult.isSuccess pour déterminer la réussite de l’initialisation ; pour les autres API, code=0 indique que la requête a réussi. En cas d’échec inattendu, fournissez le code et le message d’origine au support technique.
- Pour
identifyAccount:,code=0ne signifie pas que tous les identifiants ont été définis avec succès. Consultez Définir les identifiants utilisateur. - Si une propriété object_array n’est pas définie côté serveur, les opérations sur ses éléments peuvent renvoyer
code=0sans modification. Pour les autres cas sans modification des données, consultez Définir les propriétés utilisateur. Confirmez le résultat effectif dans la console MA ou les propriétés utilisateur côté serveur.
| Scénario | code du callback | message du callback |
|---|---|---|
Le serveur renvoie un échec métier (HTTP 4xx/5xx, corps de réponse JSON valide contenant un code numérique) |
code serveur d’origine |
msg/message serveur d’origine |
| Erreur réseau ou code métier impossible à extraire du corps de réponse | -1 |
Message fixe du SDK |
Projet désactivé / projet changé (HTTP 400 + 40001/40002) |
-4 / -6 |
Voir le tableau ci-dessus |
Annexe : codes métier serveur courants
Les valeurs suivantes servent uniquement de référence pour le diagnostic ; leur stabilité entre versions du SDK ou du serveur n’est pas garantie :
| Code | Signification |
|---|---|
| 55004 | Paramètre métier invalide, par exemple un Bundle Identifier non associé ou différent de la configuration de la source MA, une AppKey de canal non associée au projet courant ou un channelId inexistant dans ce projet. Consultez message pour connaître la cause précise |
| 55108 | EUID invalide, par exemple lorsque l’EUID et le MA RID n’appartiennent pas au même utilisateur MA |
| 55110 | Requêtes trop fréquentes, par exemple lorsque le même RID AppPush fait l’objet d’associations simultanées. Réessayez plus tard |
| 55000 | Erreur système du serveur |
Résultats par identifiant
Les résultats suivants incluent la validation locale du SDK et les réponses serveur. Pour les règles de traitement des champs, consultez Classe MTMAUserID :
| Code | Signification |
|---|---|
| 0 | Cet identifiant utilisateur a été traité avec succès |
| 3001 | La valeur de l’identifiant utilisateur ne doit pas être vide (code serveur de référence ; cette version du SDK considère les valeurs vides de ses quatre champs d’identifiant publics comme omises et ne produit pas de résultat 3001 par champ) |
| 3002 | L’identifiant utilisateur n’est pas défini dans le projet courant |
| 3003 | La valeur de l’identifiant utilisateur dépasse la longueur maximale |
| 3013 | Le type ou le format de la valeur de l’identifiant utilisateur est invalide, y compris les types autres que NSString |










