API del SDK de iOS
Descripción de la interfaz del SDK
- MTMAService: Contiene todas las interfaces relacionadas con la funcionalidad de MA en el SDK.
- MTMAConfig, la clase de información de configuración de la aplicación.
- MTMAUserID, el modelo de identificación de usuario.
- MTMAUserContact, el modelo de información de contacto del usuario.
- MTMACollectControl, el modelo de control de recopilación de datos.
Iniciar la función empresarial de MA
Versiones compatibles
Compatible a partir de la versión 5.0.0
Definición de la interfaz
- + start:(MTMAConfig * )config;
- Descripción de la interfaz:
- Habilitar la función MA de EngageLab.
- La interfaz start es el punto de entrada para otras interfaces y se debe llamar primero antes de poder utilizar cualquier otra interfaz.
- Descripción de los parámetros
- config clase de configuración
- Descripción de la interfaz:
Ejemplo de llamada
MTMAConfig *config = [[MTMAConfig alloc] init];
[MTMAService start:config];
Establecer la información de contacto del usuario
Versiones compatibles
Compatible a partir de la versión 5.0.0
Definición de la interfaz
- + (void)setUserContact:(MTMAUserContact * )contact;
- Descripción de la interfaz:
- Establecer la información de contacto del usuario.
- Descripción de los parámetros
- contacts: Establecer múltiples datos de contacto. La clave es el nombre del dato de contacto y el valor es el valor del dato de contacto. Actualmente, se admiten 4 tipos de datos de contacto: email, mobile_phone, landline_phone y whatsapp_phone.
- Descripción de la interfaz:
Ejemplo de llamada
MTMAUserContact *contact = [[MTMAUserContact alloc] init];
contact.contacts = @{@"Work Mobile Phone":@"13*********"};
contact.completion = ^(NSInteger code, NSString * _Nonnull message) { };
[MTMAService setUserContact:contact];
Informe de eventos
Versiones compatibles
Compatible a partir de la versión 5.0.0
Definición de la interfaz
- **+ (void)eventRecord:(MTMAEventObject )event;*
- Descripción de la interfaz:
- Informar un evento.
- Descripción de los parámetros
- El modelo de informe de eventos
- eventName: El nombre del evento informado
- property: Propiedades del evento, donde la clave es el nombre de la propiedad y el valor es el valor de la propiedad
- Descripción de la interfaz:
Ejemplo de llamada
MTMAEventObject *object = [[MTMAEventObject alloc] init];
object.eventName = @"sndefineevent2";
object.property = @{
@"key1":@"value1",
@"key2":@"value2",
};
[MTMAService eventRecord:object];
Establecer la identificación del usuario
Versiones compatibles
Compatible a partir de la versión 5.0.0
Definición de la interfaz
- + (void)identifyAccount:(MTMAUserID * )userID;
- Descripción de la interfaz:
- Establecer la identificación del usuario.
- Descripción de los parámetros
- El modelo de identificación de usuario
- userID: Establecer aquí el identificador único del usuario que ha iniciado sesión.
- anonymousID: Cuando el usuario no ha iniciado sesión, pero se proporciona otra información identificable, se puede establecer como el ID anónimo, como una dirección de correo electrónico o un ID de identificación generado por un tercero.
- Descripción de la interfaz:
Ejemplo de llamada
MTMAUserID *userid = [[MTMAUserID alloc] init];
userid.anonymousID = @"xxx";
userid.userID = @"xxx";
[MTMAService identifyAccount:userid];
Establecer el intervalo de envío de los datos subidos
Versiones compatibles
Compatible a partir de la versión 5.0.0
Definición de la interfaz
- + (void)setReportInterval:(NSInteger)interval;
- Descripción de la interfaz:
- Establecer el intervalo de envío de los datos subidos. Cuando no se llama a esta interfaz, los datos de eventos se informan una vez cada 10 segundos de forma predeterminada.
- El intervalo de envío se almacena en caché en memoria y es necesario llamarlo en cada ciclo de vida de la aplicación para que surta efecto.
- Descripción de los parámetros
- interval El intervalo de envío, en s (segundos)
- Descripción de la interfaz:
Ejemplo de llamada
[MTMAService setReportInterval:10];
Establecer el límite superior de entradas de caché de eventos
Versiones compatibles
Compatible a partir de la versión 5.0.0.
Definición de la interfaz
- + (void)setMaxEventCacheCount:(NSInteger)count;
- Descripción de la interfaz:
- Establecer el límite superior del número de entradas de caché de eventos, que es 50 de forma predeterminada y no puede superar los 500.
- Cuando se supera la cantidad de caché, se informarán todos los datos.
- Descripción de los parámetros
- count El límite superior del número de entradas de caché de eventos
- Descripción de la interfaz:
Ejemplo de llamada
[MTMAService setMaxEventCacheCount:50];
Establecer el tiempo de espera de la sesión
Versiones compatibles
Compatible a partir de la versión 5.0.0
Definición de la interfaz
- + (void)setNoActiveSessionEndDurationTime:(NSInteger)interval;
- Descripción de la interfaz:
- Establecer el tiempo de espera de la sesión, que es de 30 minutos de forma predeterminada.
- Cuando la aplicación pasa a segundo plano, se inicia el temporizador de tiempo de espera de la sesión. Si no hay actividad dentro del periodo de tiempo de espera, la sesión actual finalizará.
- Descripción de los parámetros
- interval La duración del tiempo de espera, en s (segundos)
- Descripción de la interfaz:
Ejemplo de llamada
[MTMAService setNoActiveSessionEndDurationTime:50];
Obtener EUID
Versiones compatibles
Compatible a partir de la versión 5.0.0
Definición de la interfaz
- + (NSString * )EUID;
- Descripción de la interfaz:
- Obtener el EUID de EngageLab MA.
- Descripción de la interfaz:
Ejemplo de llamada
[MTMAService EUID];
Establecer propiedades UTM
Versiones compatibles
Compatible a partir de la versión 5.0.0
Definición de la interfaz
- + (void)setUtmProperties:(NSDictionary * )property;
- Descripción de la interfaz:
- Las propiedades UTM son propiedades de eventos estándar. Si los desarrolladores pueden identificar desde qué anuncio accedió el usuario a la aplicación, se recomienda establecer la información UTM, y se transmitirá este parámetro al informar eventos. Actualmente, las propiedades UTM que se pueden establecer son:
- utm_source La fuente de la campaña publicitaria
- utm_medium El medio de la campaña publicitaria
- utm_term El término de la campaña publicitaria
- utm_content El contenido de la campaña publicitaria
- utm_campaign El nombre de la campaña publicitaria
- utm_id El ID de la campaña publicitaria
- Las propiedades UTM son propiedades de eventos estándar. Si los desarrolladores pueden identificar desde qué anuncio accedió el usuario a la aplicación, se recomienda establecer la información UTM, y se transmitirá este parámetro al informar eventos. Actualmente, las propiedades UTM que se pueden establecer son:
- Descripción de la interfaz:
Ejemplo de llamada
[MTMAService setUtmProperties:@{@"utm_source":@"value"}];
Establecer propiedades del usuario
Sobrescribir y actualizar propiedades del usuario
- + (void)setProperty:(NSDictionary * )userinfo completion:(void (^)(NSInteger code, NSString * message))completion;
- Descripción de la interfaz:
- El contenido de estas propiedades de usuario se almacena en un NSDictionary, donde la clave es el nombre de la propiedad de usuario y debe ser un NSString, y el valor es el contenido de la propiedad de usuario, que solo admite tipos como NSString, NSNumber, NSSet y NSArray.
- Actualmente, los elementos en el valor de tipo NSSet o NSArray solo admiten ser NSString.
- Si una determinada propiedad de usuario ya existía previamente, en esta ocasión se sobrescribirá; si no existe, se creará. Por ejemplo: el nivel de membresía del usuario.
- Ejemplo de llamada:
- Descripción de la interfaz:
[MTMAService setProperty:@{@"key":@"value"} completion:^(NSInteger code, NSString * _Nonnull message) {
}];
- + (void)setProperty:(NSString * )key to:(id)value completion:(void (^)(NSInteger code, NSString * message))completion;
- Descripción de la interfaz:
- Establecer el contenido de una única propiedad de usuario.
- El contenido de estas propiedades de usuario se almacena en un NSDictionary, donde la clave es el nombre de la propiedad de usuario y debe ser un NSString, y el valor es el contenido de la propiedad de usuario, que solo admite tipos como NSString, NSNumber, NSSet y NSArray.
- Actualmente, los elementos en el valor de tipo NSSet o NSArray solo admiten ser NSString.
- Si una determinada propiedad de usuario ya existía previamente, en esta ocasión se sobrescribirá; si no existe, se creará. Por ejemplo: el nivel de membresía del usuario.
- Ejemplo de llamada:
- Descripción de la interfaz:
[MTMAService setProperty:@"key" to:@"value" completion:^(NSInteger code, NSString * _Nonnull message) {
}];
Incrementar y actualizar propiedades del usuario
- **+ (void)increaseProperty:(NSString )key by:(NSNumber )amount completion:(void (^)(NSInteger code, NSString * message))completion;
- Descripción de la interfaz:
- Añadir un valor a una propiedad de usuario numérica y acumular todos los datos informados, como el importe de consumo acumulado.
- Esta interfaz solo se puede llamar para propiedades de usuario de tipo NSNumber; de lo contrario, se ignorará. Si esta propiedad de usuario no existía previamente, el valor inicial se considera 0.
- Ejemplo de llamada:
- Descripción de la interfaz:
[MTMAService increaseProperty:@"key" by:@(2) completion:^(NSInteger code, NSString * _Nonnull message) {
}];
- **+ (void)increaseProperty:(NSDictionary )userinfo completion:(void (^)(NSInteger code, NSString * message))completion;*
- Descripción de la interfaz:
- Añadir valores a varias propiedades de usuario numéricas y acumular todos los datos informados, como el importe de consumo acumulado.
- Esta interfaz solo se puede llamar para propiedades de usuario de tipo NSNumber; de lo contrario, se ignorará. Si esta propiedad de usuario no existía previamente, el valor inicial se considera 0.
- Ejemplo de llamada:
- Descripción de la interfaz:
[MTMAService increaseProperty:@{@"key1":@(5),@"key2":@(3)} completion:^(NSInteger code, NSString * _Nonnull message) {
}];
Añadir propiedades del usuario
- **+ (void)addProperty:(NSString )key by:(NSObject
)content completion:(void (^)(NSInteger code, NSString * message))completion - Descripción de la interfaz:
- Añadir algunos valores a una propiedad de tipo NSSet o NSArray.
- Como se mencionó anteriormente, los elementos de este NSSet o NSArray deben ser NSString; de lo contrario, se ignorará. Al mismo tiempo, si la propiedad de usuario a la que se van a añadir valores no existía previamente, se inicializará un NSSet o NSArray vacío.
- Ejemplo de llamada:
- Descripción de la interfaz:
[MTMAService addProperty:@"key" by:@[@"value"] completion:^(NSInteger code, NSString * _Nonnull message) {
}];
- **+ (void)addProperty:(NSDictionary )userinfo completion:(void (^)(NSInteger, NSString * _Nonnull))completion;*
- Descripción de la interfaz:
- Añadir algunos valores a varias propiedades de tipo NSSet o NSArray.
- Como se mencionó anteriormente, los elementos de este NSSet o NSArray deben ser NSString; de lo contrario, se ignorará. Al mismo tiempo, si la propiedad de usuario a la que se van a añadir valores no existía previamente, se inicializará un NSSet o NSArray vacío.
- Ejemplo de llamada:
- Descripción de la interfaz:
[MTMAService addProperty:@{@"key1":@[@"value"],@"key2":@[@"value"]} completion:^(NSInteger code, NSString * _Nonnull message) {
}];
Eliminar valores de propiedades del usuario
- **+ (void)removeProperty:(NSString * )key by:(NSObject
)content completion:(void (^)(NSInteger code, NSString * message))completion;* - Descripción de la interfaz:
- Eliminar algunos valores de una propiedad de tipo NSSet o NSArray.
- El parámetro content es de tipo NSSet o NSArray, y los elementos internos deben ser NSString.
- Ejemplo de llamada:
- Descripción de la interfaz:
[MTMAService removeProperty:@"key" by:@[@"value"] completion:^(NSInteger code, NSString * _Nonnull message) {
}];
Eliminar propiedades del usuario
Versiones compatibles
Compatible a partir de la versión 5.0.0
Definición de la interfaz
- + (void)deleteProperty:(NSString * )key completion:(void (^)(NSInteger code, NSString * message))completion;
- Descripción de la interfaz:
- Eliminar todo el contenido de una determinada propiedad de usuario.
- Si esta propiedad de usuario no existía previamente, se ignorará directamente.
- Descripción de la interfaz:
Ejemplo de llamada
[MTMAService deleteProperty:@"key" completion:^(NSInteger code, NSString * _Nonnull message) {
}];
Control de recopilación de datos
Versiones compatibles
Compatible a partir de la versión 5.0.0
Definición de la interfaz
- **+ (void)setCollectControl:(MTMACollectControl )control;*
- Descripción de la interfaz:
- Controlar si se recopilan los elementos de datos de la clase MTMACollectControl.
- Descripción de la interfaz:
Ejemplo de llamada
MTMACollectControl *collectControl = [[MTMACollectControl alloc] init];
collectControl.idfa = YES;
collectControl.idfv = YES;
collectControl.carrier = YES;
[MTMAService setCollectControl:collectControl];
Clase MTMAConfig
Clase de información de configuración de la aplicación. A continuación se describen las propiedades:
| Nombre del parámetro | Tipo de parámetro | Descripción del parámetro |
|---|---|---|
| userID | MTMAUserID | El modelo de identificación de usuario. Cuando se establece esta propiedad, la identificación del usuario se establecerá durante la inicialización. |
| completion | (^)(NSInteger code, NSString * message) | La devolución de llamada del resultado de la solicitud, donde code: 0 significa éxito. |
Clase MTMAUserID
La clase de modelo de identificación de usuario. A continuación se describen las propiedades:
| Nombre del parámetro | Tipo de parámetro | Descripción del parámetro |
|---|---|---|
| userID | NSString | Establecer aquí el identificador único del usuario que ha iniciado sesión. |
| anonymousID | NSString | Cuando el usuario no ha iniciado sesión, pero se proporciona otra información identificable, se puede establecer como el ID anónimo, como una dirección de correo electrónico o un ID de identificación generado por un tercero. |
| completion | (^)(NSInteger code, NSString * message) | La devolución de llamada del resultado de la solicitud, donde code: 0 significa éxito. |
Clase MTMACollectControl
Clase de modelo de control de recopilación de datos del usuario. A continuación se describen las propiedades:
| Nombre del parámetro | Tipo de parámetro | Descripción del parámetro |
|---|---|---|
| idfa | BOOL | Si se recopila información idfa. Establecer en NO para no recopilar información idfa. El valor predeterminado es NO. |
| idfv | BOOL | Si se recopila información idfv. Establecer en NO para no recopilar información idfv. El valor predeterminado es NO. |
| carrier | BOOL | Si se recopila información del operador. Establecer en NO para no recopilar información del operador. El valor predeterminado es YES. |
Clase MTMAUserContact
La clase de modelo de información de contacto del usuario. A continuación se describen las propiedades:
Si no se establece o se establece en nil, se considera que no hay modificación. Cuando se establece en una cadena vacía "", se considera que se borra la información de contacto.
| Nombre del parámetro | Tipo de parámetro | Descripción del parámetro |
|---|---|---|
| contacts | NSDictionary | El diccionario de información de contacto, que admite 4 tipos de datos de contacto: email, mobile_phone, landline_phone y whatsapp_phone. |
| completion | (^)(NSInteger code, NSString * message) | La devolución de llamada del resultado de la solicitud, donde code: 0 significa éxito. |
Clase MTMAEventObject
La clase de objeto de evento personalizado. A continuación se describen las propiedades:
| Nombre del parámetro | Tipo de parámetro | Descripción del parámetro |
|---|---|---|
| eventName | NSString | El ID del evento, que es obligatorio y no puede estar vacío. |
| property | NSDictionary<NSString *, id> | Propiedades personalizadas (menores o iguales a 500). La clave es un NSString y solo puede contener números, letras y guiones bajos; el valor puede ser un NSString/NSNumber. |

