API SDK iOS
Description de l'interface SDK
- MTMAService : Contient toutes les interfaces liées à la fonctionnalité MA dans le SDK.
- MTMAConfig : classe d'informations de configuration de l'application.
- MTMAUserID : modèle d'identification utilisateur.
- MTMAUserContact : modèle d'informations de contact utilisateur.
- 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
- Description de l'interface :
Exemple d'appel
MTMAConfig *config = [[MTMAConfig alloc] init];
[MTMAService start:config];
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.
- Description de l'interface :
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];
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é
- Description de l'interface :
Exemple d'appel
MTMAEventObject *object = [[MTMAEventObject alloc] init];
object.eventName = @"sndefineevent2";
object.property = @{
@"key1":@"value1",
@"key2":@"value2",
};
[MTMAService eventRecord:object];
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.
- Description de l'interface :
Exemple d'appel
MTMAUserID *userid = [[MTMAUserID alloc] init];
userid.anonymousID = @"xxx";
userid.userID = @"xxx";
[MTMAService identifyAccount:userid];
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)
- Description de l'interface :
Exemple d'appel
[MTMAService setReportInterval:10];
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
- Description de l'interface :
Exemple d'appel
[MTMAService setMaxEventCacheCount:50];
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)
- Description de l'interface :
Exemple d'appel
[MTMAService setNoActiveSessionEndDurationTime:50];
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.
- Description de l'interface :
Exemple d'appel
[MTMAService EUID];
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
- 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 :
- Description de l'interface :
Exemple d'appel
[MTMAService setUtmProperties:@{@"utm_source":@"value"}];
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 :
- Description de l'interface :
[MTMAService setProperty:@{@"key":@"value"} completion:^(NSInteger code, NSString * _Nonnull message) {
}];
- + (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 :
- Description de l'interface :
[MTMAService setProperty:@"key" to:@"value" completion:^(NSInteger code, NSString * _Nonnull message) {
}];
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 :
- Description de l'interface :
[MTMAService increaseProperty:@"key" by:@(2) completion:^(NSInteger code, NSString * _Nonnull message) {
}];
- **+ (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 :
- Description de l'interface :
[MTMAService increaseProperty:@{@"key1":@(5),@"key2":@(3)} completion:^(NSInteger code, NSString * _Nonnull message) {
}];
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 :
- Description de l'interface :
[MTMAService addProperty:@"key" by:@[@"value"] completion:^(NSInteger code, NSString * _Nonnull message) {
}];
- **+ (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 :
- Description de l'interface :
[MTMAService addProperty:@{@"key1":@[@"value"],@"key2":@[@"value"]} completion:^(NSInteger code, NSString * _Nonnull message) {
}];
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 :
- Description de l'interface :
[MTMAService removeProperty:@"key" by:@[@"value"] completion:^(NSInteger code, NSString * _Nonnull message) {
}];
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.
- Description de l'interface :
Exemple d'appel
[MTMAService deleteProperty:@"key" completion:^(NSInteger code, NSString * _Nonnull message) {
}];
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.
- Description de l'interface :
Exemple d'appel
MTMACollectControl *collectControl = [[MTMACollectControl alloc] init];
collectControl.idfa = YES;
collectControl.idfv = YES;
collectControl.carrier = YES;
[MTMAService setCollectControl:collectControl];
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. |

