API SDK iOS

Description de l'interface SDK

  1. MTMAService : Contient toutes les interfaces liées à la fonctionnalité MA dans le SDK.
  2. MTMAConfig : classe d'informations de configuration de l'application.
  3. MTMAUserID : modèle d'identification utilisateur.
  4. MTMAUserContact : modèle d'informations de contact utilisateur.
  5. MTMACollectControl : modèle de contrôle de la collecte des données.

Démarrer la fonction métier MA

Versions prises en charge

Pris en charge à partir de la version 5.0.0

Définition de l'interface

  • + start:(MTMAConfig * )config;
    • Description de l'interface :
      • Active la fonction EngageLab MA.
      • L'interface start est le point d'entrée des autres interfaces et doit être appelée en premier avant de pouvoir utiliser toute autre interface.
    • Description des paramètres
      • Classe de configuration config

Exemple d'appel

MTMAConfig *config = [[MTMAConfig alloc] init]; [MTMAService start:config];
              
                  MTMAConfig *config = [[MTMAConfig alloc] init];
    [MTMAService start:config];

            
Afficher ce bloc de code dans la fenêtre flottante

Définir les informations de contact utilisateur

Versions prises en charge

Pris en charge à partir de la version 5.0.0

Définition de l'interface

  • + (void)setUserContact:(MTMAUserContact * )contact;
    • Description de l'interface :
      • Définit les informations de contact utilisateur.
    • Description des paramètres
      • contacts : Définit plusieurs informations de contact. La clé est le nom de l'information de contact, et la valeur est la valeur de l'information de contact. Actuellement, 4 types d'informations de contact sont pris en charge : email, mobile_phone, landline_phone et whatsapp_phone.

Exemple d'appel

MTMAUserContact *contact = [[MTMAUserContact alloc] init]; contact.contacts = @{@"Téléphone mobile professionnel":@"13*********"}; contact.completion = ^(NSInteger code, NSString * _Nonnull message) { }; [MTMAService setUserContact:contact];
              
                  MTMAUserContact *contact = [[MTMAUserContact alloc] init];
    contact.contacts = @{@"Téléphone mobile professionnel":@"13*********"};
    contact.completion = ^(NSInteger code, NSString * _Nonnull message) { };
    [MTMAService setUserContact:contact];

            
Afficher ce bloc de code dans la fenêtre flottante

Remontée d'événement

Versions prises en charge

Pris en charge à partir de la version 5.0.0

Définition de l'interface

  • **+ (void)eventRecord:(MTMAEventObject )event;*
    • Description de l'interface :
      • Remonte un événement.
    • Description des paramètres
      • Le modèle de remontée d'événement
      • eventName : Le nom de l'événement remonté
      • property : Propriétés de l'événement, où la clé est le nom de la propriété et la valeur est la valeur de la propriété

Exemple d'appel

MTMAEventObject *object = [[MTMAEventObject alloc] init]; object.eventName = @"sndefineevent2"; object.property = @{ @"key1":@"value1", @"key2":@"value2", }; [MTMAService eventRecord:object];
              
                  MTMAEventObject *object = [[MTMAEventObject alloc] init];
    object.eventName = @"sndefineevent2";
    object.property = @{
        @"key1":@"value1",
        @"key2":@"value2",
    };
    [MTMAService eventRecord:object];

            
Afficher ce bloc de code dans la fenêtre flottante

Définir l'identification utilisateur

Versions prises en charge

Pris en charge à partir de la version 5.0.0

Définition de l'interface

  • + (void)identifyAccount:(MTMAUserID * )userID;
    • Description de l'interface :
      • Définit l'identification utilisateur.
    • Description des paramètres
      • Le modèle d'identification utilisateur
      • userID : Définir ici l'identifiant unique de l'utilisateur connecté.
      • anonymousID : Lorsque l'utilisateur n'est pas connecté mais que d'autres informations identifiables sont fournies, cela peut être défini comme l'ID anonyme, tel qu'une adresse email ou un identifiant généré par un tiers.

Exemple d'appel

MTMAUserID *userid = [[MTMAUserID alloc] init]; userid.anonymousID = @"xxx"; userid.userID = @"xxx"; [MTMAService identifyAccount:userid];
              
                  MTMAUserID *userid = [[MTMAUserID alloc] init];
    userid.anonymousID = @"xxx";
    userid.userID = @"xxx";
    [MTMAService identifyAccount:userid];

            
Afficher ce bloc de code dans la fenêtre flottante

Définir l'intervalle de remontée des données envoyées

Versions prises en charge

Pris en charge à partir de la version 5.0.0

Définition de l'interface

  • + (void)setReportInterval:(NSInteger)interval;
    • Description de l'interface :
      • Définit l'intervalle de remontée des données envoyées. Si cette interface n'est pas appelée, les données d'événement sont remontées toutes les 10 secondes par défaut.
      • L'intervalle de remontée est mis en cache en mémoire et doit être appelé à chaque cycle de vie de l'application pour être effectif.
    • Description des paramètres
      • interval L'intervalle de remontée, en s (secondes)

Exemple d'appel

[MTMAService setReportInterval:10];
              
                  [MTMAService setReportInterval:10];

            
Afficher ce bloc de code dans la fenêtre flottante

Définir la limite supérieure du cache d'événements

Versions prises en charge

Pris en charge à partir de la version 5.0.0.

Définition de l'interface

  • + (void)setMaxEventCacheCount:(NSInteger)count;
    • Description de l'interface :
      • Définit la limite supérieure du nombre d'entrées du cache d'événements, qui est de 50 par défaut et ne peut pas dépasser 500 au maximum.
      • Lorsque la quantité en cache est dépassée, toutes les données seront remontées.
    • Description des paramètres
      • count La limite supérieure du nombre d'entrées du cache d'événements

Exemple d'appel

[MTMAService setMaxEventCacheCount:50];
              
                  [MTMAService setMaxEventCacheCount:50];

            
Afficher ce bloc de code dans la fenêtre flottante

Définir le délai d'expiration de la session

Versions prises en charge

Pris en charge à partir de la version 5.0.0

Définition de l'interface

  • + (void)setNoActiveSessionEndDurationTime:(NSInteger)interval;
    • Description de l'interface :
      • Définit le délai d'expiration de la session, qui est de 30 minutes par défaut.
      • Lorsque l'App passe en arrière-plan, le minuteur d'expiration de session démarre. S'il n'y a aucune activité pendant la période d'expiration, la session en cours prendra fin.
    • Description des paramètres
      • interval La durée d'expiration, en s (secondes)

Exemple d'appel

[MTMAService setNoActiveSessionEndDurationTime:50];
              
                  [MTMAService setNoActiveSessionEndDurationTime:50];

            
Afficher ce bloc de code dans la fenêtre flottante

Obtenir l'EUID

Versions prises en charge

Pris en charge à partir de la version 5.0.0

Définition de l'interface

  • + (NSString * )EUID;
    • Description de l'interface :
      • Obtenir l'EUID de EngageLab MA.

Exemple d'appel

[MTMAService EUID];
              
                  [MTMAService EUID];

            
Afficher ce bloc de code dans la fenêtre flottante

Définir les propriétés UTM

Versions prises en charge

Pris en charge à partir de la version 5.0.0

Définition de l'interface

  • + (void)setUtmProperties:(NSDictionary * )property;
    • Description de l'interface :
      • Les propriétés UTM sont des propriétés d'événement standard. Si les développeurs peuvent identifier de quelle publicité l'utilisateur provient pour accéder à l'App, il est recommandé de définir les informations UTM, et nous transmettrons ce paramètre lors de la remontée des événements. Actuellement, les propriétés UTM pouvant être définies sont :
        • utm_source : La source de la campagne publicitaire
        • utm_medium : Le support de la campagne publicitaire
        • utm_term : Le terme de la campagne publicitaire
        • utm_content : Le contenu de la campagne publicitaire
        • utm_campaign : Le nom de la campagne publicitaire
        • utm_id : L'ID de la campagne publicitaire

Exemple d'appel

[MTMAService setUtmProperties:@{@"utm_source":@"value"}];
              
                     [MTMAService setUtmProperties:@{@"utm_source":@"value"}];

            
Afficher ce bloc de code dans la fenêtre flottante

Définir les propriétés utilisateur

Écraser et mettre à jour les propriétés utilisateur

  • + (void)setProperty:(NSDictionary * )userinfo completion:(void (^)(NSInteger code, NSString * message))completion;
    • Description de l'interface :
      • Le contenu de ces propriétés utilisateur est stocké dans un NSDictionary, où la clé est le nom de la propriété utilisateur et doit être une NSString, et la valeur est le contenu de la propriété utilisateur, qui ne prend en charge que les types NSString, NSNumber, NSSet et NSArray.
      • Actuellement, les éléments dans la valeur de type NSSet ou NSArray ne peuvent être que NSString.
      • Si une certaine propriété utilisateur existait déjà auparavant, elle sera écrasée cette fois-ci ; si elle n'existe pas, elle sera créée. Exemple : le niveau d'adhésion de l'utilisateur.
    • Exemple d'appel :
[MTMAService setProperty:@{@"key":@"value"} completion:^(NSInteger code, NSString * _Nonnull message) { }];
              
                 [MTMAService setProperty:@{@"key":@"value"} completion:^(NSInteger code, NSString * _Nonnull message) {
       
   }];

            
Afficher ce bloc de code dans la fenêtre flottante
  • + (void)setProperty:(NSString * )key to:(id)value completion:(void (^)(NSInteger code, NSString * message))completion;
    • Description de l'interface :
      • Définit le contenu d'une seule propriété utilisateur.
      • Le contenu de ces propriétés utilisateur est stocké dans un NSDictionary, où la clé est le nom de la propriété utilisateur et doit être une NSString, et la valeur est le contenu de la propriété utilisateur, qui ne prend en charge que les types NSString, NSNumber, NSSet et NSArray.
      • Actuellement, les éléments dans la valeur de type NSSet ou NSArray ne peuvent être que NSString.
      • Si une certaine propriété utilisateur existait déjà auparavant, elle sera écrasée cette fois-ci ; si elle n'existe pas, elle sera créée. Exemple : le niveau d'adhésion de l'utilisateur.
    • Exemple d'appel :
[MTMAService setProperty:@"key" to:@"value" completion:^(NSInteger code, NSString * _Nonnull message) { }];
              
                 [MTMAService setProperty:@"key" to:@"value" completion:^(NSInteger code, NSString * _Nonnull message) {
       
   }];

            
Afficher ce bloc de code dans la fenêtre flottante

Incrémenter et mettre à jour les propriétés utilisateur

  • **+ (void)increaseProperty:(NSString )key by:(NSNumber )amount completion:(void (^)(NSInteger code, NSString * message))completion;
    • Description de l'interface :
      • Ajoute une valeur à une propriété utilisateur numérique et cumule toutes les données remontées, comme le montant de consommation cumulé.
      • Cette interface ne peut être appelée que pour des propriétés utilisateur de type NSNumber, sinon elle sera ignorée. Si cette propriété utilisateur n'existait pas auparavant, la valeur initiale est considérée comme 0.
    • Exemple d'appel :
[MTMAService increaseProperty:@"key" by:@(2) completion:^(NSInteger code, NSString * _Nonnull message) { }];
              
                  [MTMAService increaseProperty:@"key" by:@(2) completion:^(NSInteger code, NSString * _Nonnull message) {
    
    }];

            
Afficher ce bloc de code dans la fenêtre flottante
  • **+ (void)increaseProperty:(NSDictionary )userinfo completion:(void (^)(NSInteger code, NSString * message))completion;*
    • Description de l'interface :
      • Ajoute des valeurs à plusieurs propriétés utilisateur numériques et cumule toutes les données remontées, comme le montant de consommation cumulé.
      • Cette interface ne peut être appelée que pour des propriétés utilisateur de type NSNumber, sinon elle sera ignorée. Si cette propriété utilisateur n'existait pas auparavant, la valeur initiale est considérée comme 0.
    • Exemple d'appel :
[MTMAService increaseProperty:@{@"key1":@(5),@"key2":@(3)} completion:^(NSInteger code, NSString * _Nonnull message) { }];
              
                  [MTMAService increaseProperty:@{@"key1":@(5),@"key2":@(3)} completion:^(NSInteger code, NSString * _Nonnull message) {
    
    }];

            
Afficher ce bloc de code dans la fenêtre flottante

Ajouter des propriétés utilisateur

  • **+ (void)addProperty:(NSString )key by:(NSObject )content completion:(void (^)(NSInteger code, NSString * message))completion
    • Description de l'interface :
      • Ajoute des valeurs à une propriété de type NSSet ou NSArray.
      • Comme mentionné précédemment, les éléments de ce NSSet ou NSArray doivent être de type NSString, sinon ils seront ignorés. De plus, si la propriété utilisateur à ajouter n'existait pas auparavant, un NSSet ou NSArray vide sera initialisé.
    • Exemple d'appel :
[MTMAService addProperty:@"key" by:@[@"value"] completion:^(NSInteger code, NSString * _Nonnull message) { }];
              
                  [MTMAService addProperty:@"key" by:@[@"value"] completion:^(NSInteger code, NSString * _Nonnull message) {
    
    }];

            
Afficher ce bloc de code dans la fenêtre flottante
  • **+ (void)addProperty:(NSDictionary )userinfo completion:(void (^)(NSInteger, NSString * _Nonnull))completion;*
    • Description de l'interface :
      • Ajoute des valeurs à plusieurs propriétés de type NSSet ou NSArray.
      • Comme mentionné précédemment, les éléments de ce NSSet ou NSArray doivent être de type NSString, sinon ils seront ignorés. De plus, si la propriété utilisateur à ajouter n'existait pas auparavant, un NSSet ou NSArray vide sera initialisé.
    • Exemple d'appel :
[MTMAService addProperty:@{@"key1":@[@"value"],@"key2":@[@"value"]} completion:^(NSInteger code, NSString * _Nonnull message) { }];
              
                  [MTMAService addProperty:@{@"key1":@[@"value"],@"key2":@[@"value"]} completion:^(NSInteger code, NSString * _Nonnull message) {
    
    }];

            
Afficher ce bloc de code dans la fenêtre flottante

Supprimer des propriétés utilisateur

  • **+ (void)removeProperty:(NSString * )key by:(NSObject )content completion:(void (^)(NSInteger code, NSString * message))completion;*
    • Description de l'interface :
      • Supprime des valeurs d'une propriété de type NSSet ou NSArray.
      • Le paramètre content est de type NSSet ou NSArray, et les éléments à l'intérieur doivent être de type NSString.
    • Exemple d'appel :
[MTMAService removeProperty:@"key" by:@[@"value"] completion:^(NSInteger code, NSString * _Nonnull message) { }];
              
                  [MTMAService removeProperty:@"key" by:@[@"value"] completion:^(NSInteger code, NSString * _Nonnull message) {
    
    }];

            
Afficher ce bloc de code dans la fenêtre flottante

Supprimer des propriétés utilisateur

Versions prises en charge

Pris en charge à partir de la version 5.0.0

Définition de l'interface

  • + (void)deleteProperty:(NSString * )key completion:(void (^)(NSInteger code, NSString * message))completion;
    • Description de l'interface :
      • Supprime tout le contenu d'une certaine propriété utilisateur.
      • Si cette propriété utilisateur n'existait pas auparavant, elle sera directement ignorée.

Exemple d'appel

[MTMAService deleteProperty:@"key" completion:^(NSInteger code, NSString * _Nonnull message) { }];
              
                  [MTMAService deleteProperty:@"key" completion:^(NSInteger code, NSString * _Nonnull message) {
        
    }];

            
Afficher ce bloc de code dans la fenêtre flottante

Contrôle de la collecte des données

Versions prises en charge

Pris en charge à partir de la version 5.0.0

Définition de l'interface

  • **+ (void)setCollectControl:(MTMACollectControl )control;*
    • Description de l'interface :
      • Contrôle si les éléments de données de la classe MTMACollectControl sont collectés.

Exemple d'appel

MTMACollectControl *collectControl = [[MTMACollectControl alloc] init]; collectControl.idfa = YES; collectControl.idfv = YES; collectControl.carrier = YES; [MTMAService setCollectControl:collectControl];
              
                  MTMACollectControl *collectControl = [[MTMACollectControl alloc] init];
    collectControl.idfa = YES;
    collectControl.idfv = YES;
    collectControl.carrier = YES;
    [MTMAService setCollectControl:collectControl];

            
Afficher ce bloc de code dans la fenêtre flottante

Classe MTMAConfig

La classe d'informations de configuration de l'application. Voici la description des propriétés :

Nom du paramètre Type du paramètre Description du paramètre
userID MTMAUserID Le modèle d'identification utilisateur. Lorsque cette propriété est définie, l'identification utilisateur sera définie lors de l'initialisation.
completion (^)(NSInteger code, NSString * message) Le callback du résultat de la requête, où code : 0 signifie succès.

Classe MTMAUserID

La classe du modèle d'identification utilisateur. Voici la description des propriétés :

Nom du paramètre Type du paramètre Description du paramètre
userID NSString Définir ici l'identifiant unique de l'utilisateur connecté.
anonymousID NSString Lorsque l'utilisateur n'est pas connecté mais que d'autres informations identifiables sont fournies, cela peut être défini comme l'ID anonyme, tel qu'une adresse email ou un identifiant généré par un tiers.
completion (^)(NSInteger code, NSString * message) Le callback du résultat de la requête, où code : 0 signifie succès.

Classe MTMACollectControl

La classe du modèle de contrôle de la collecte des données utilisateur. Voici la description des propriétés :

Nom du paramètre Type du paramètre Description du paramètre
idfa BOOL Indique si les informations idfa sont collectées. Définir à NO pour ne pas collecter les informations idfa. La valeur par défaut est NO.
idfv BOOL Indique si les informations idfv sont collectées. Définir à NO pour ne pas collecter les informations idfv. La valeur par défaut est NO.
carrier BOOL Indique si les informations de l'opérateur sont collectées. Définir à NO pour ne pas collecter les informations de l'opérateur. La valeur par défaut est YES.

Classe MTMAUserContact

La classe du modèle de canal utilisateur. Voici la description des propriétés :
Si elle n'est pas définie ou définie à nil, cela signifie qu'il n'y a pas de modification. Lorsqu'elle est définie sur une chaîne vide "", cela signifie que l'information de contact est effacée.

Nom du paramètre Type du paramètre Description du paramètre
contacts NSDictionary Le dictionnaire des informations de contact, prenant en charge 4 types d'informations de contact : email, mobile_phone, landline_phone et whatsapp_phone.
completion (^)(NSInteger code, NSString * message) Le callback du résultat de la requête, où code : 0 signifie succès.

Classe MTMAEventObject

La classe d'objet événement personnalisé. Voici la description des propriétés :

Nom du paramètre Type du paramètre Description du paramètre
eventName NSString L'ID de l'événement, obligatoire et ne peut pas être vide.
property NSDictionary<NSString *, id> Propriétés personnalisées (inférieur ou égal à 500). La clé est une NSString et ne peut contenir que des chiffres, lettres et underscores ; la valeur peut être une NSString/NSNumber.
icon
Contactez-nous