Welcome to the WalkMe Help Center

Please login in order to continue:

Work flows better with WalkMe
Work flows better with WalkMe.

Móvil: ¿Qué son los callbacks de campaña para iOS y cómo se utilizan?

Last Updated agosto 7, 2025

Breve descripción general

A partir de la versión 1.6.0 del SDK de WalkMe Mobile, el SDK de WalkMe Mobile admite callbacks de campaña.

Los callbacks son una forma programática para que una aplicación se registre en los eventos de la campaña de WalkMe. Al implementar la interfaz de Campaign Callbacks, las aplicaciones pueden utilizar los datos transferidos a través de los objetos de Callback (incluida la información de la campaña y del usuario) y emplearlos para los fines de la aplicación, como pasar esa información a cualquier sistema de análisis o CRM no relacionado con WalkMe, o actualizar cualquier configuración de aplicaciones o usuarios basándose en cómo el usuario interactúe con la campaña.

Casos de uso

Los callbacks de campaña se pueden utilizar para lo siguiente y mucho más:

  • Realizar un seguimiento de la integración de usuarios desde cualquier sistema de análisis.
  • Genera oportunidades en un CRM basado en la interacción del usuario con WalkMe Shoutout, por ejemplo: "¿Estás interesado en una demostración gratuita? Sí / No".
  • Integra con los sistemas de soporte existentes para realizar un seguimiento y comparar el uso y la finalización de WalkThru con los principales temas de tickets de soporte.

A continuación se muestra una descripción de todos los pasos necesarios para implementar callbacks de campaña.

Uso de Callbacks de campaña.

Para poder registrarte en los callbacks de campaña, primero implementa este protocolo:

/**
 * Interface definition for a callback to be invoked in Campaign actions.
 */
@protocol WMCampaignInfoDelegate <NSObject>

/**
 * Called after campaign was dismissed.
 *
 * @param campaignInfo The dismissed campaign info.
 */
- (void)campaignDidDismiss:(WMCampaignInfo *)campaignInfo;

@end

Después de implementar el protocolo, utiliza el método para registrarse en los eventos de callback de la campaña:

/**
 * Register a delegate to campaign events
 *
 *@param delegate The delegate
 *
 */
+ (void)setCampaignInfoDelegate:(id<WMCampaignInfoDelegate>)delegate;

El objeto de retorno de callback será de la clase, que incluye la siguiente información:

Elemento Recuperado por: Descripción
CTA de la campaña campaginCta

El CTA de la campaña con el que ha interactuado el usuario de la aplicación.

Para todos los CTAs excepto el personalizado, el CTA devuelto será:
abbi://cta , por ejemplo: abbi://ok o abbi://never

ID de campaña campaignId El ID único asignado a la campaña.
ID de CTA de la campaña campaignCtaId El ID único para el CTA de la campaña.
Datos de usuario userData Un objeto que contiene información sobre el usuario que interactuó con la campaña. Consulta la descripción completa del objeto a continuación.
Datos de campaña campaignData Un objeto de marcador añadido para un posible uso futuro de datos adicionales añadidos a la campaña. Los datos de envío de la encuesta se rellenan aquí.
@interface WMCampaignInfo : NSObject

@property (nonatomic,strong) NSString* campaginCta;
@property (nonatomic,strong) NSString* campaignCtaId;
@property (nonatomic,strong) NSString* campaignId;
@property (nonatomic,strong) WMUserData* userData;
@property (nonatomic,strong) NSDictionary* campaignData;

@end

Como se mencionó anteriormente, incluye el objeto , que se describe a continuación:

Elemento Recuperado por Descripción
Atributos públicos de Usuarios *userAttributes Todos los atributos públicos del usuario que se establecieron para el usuario de la aplicación en el momento en que el usuario interactuó con la campaña. La lista siempre incluirá la clave de atributo y su valor, por ejemplo, { "lead_id" : "12345" , "account_type" : "family"}
Atributos privados del usuario *privateUserAttributes Todos los atributos privados del usuario que se establecieron para el usuario de la aplicación en el momento en que el usuario interactuó con la campaña. La lista siempre incluirá la clave de atributo y su valor, por ejemplo, { "lead_id" : "12345" , "account_type" : "family"}
Duración de la sesión Duración de la sesión Cuánto tiempo duró la sesión del usuario en el momento en que el usuario realizó la interacción de la campaña.
Versión para iOS Versión del sistema La versión del sistema operativo del usuario
ID único del dispositivo Identificador del dispositivo El ID único del dispositivo
Modelo de dispositivo modeloDispositivo El modelo del dispositivo del usuario.
Orientación del dispositivo orientaciónDispositivo La orientación del dispositivo en el momento en que el usuario interactuó con la campaña.
Versión de la aplicación appVersion La versión de la aplicación que está utilizando el usuario
Nombre de la aplicación appName El nombre de la aplicación
Locale configuración regional La configuración regional del dispositivo del usuario.
Versión del SDK sdkVer La versión del SDK integrada con la aplicación que está utilizando el usuario.
ID de sesión sessionId El ID de sesión único generado por WalkMe.
Estado de las notificaciones push estáPushHabilitado ¿Ha activado el usuario las notificaciones push para la aplicación (verdadero / falso). Si la aplicación no presenta notificaciones push, el valor será "falso".
Zona horaria del dispositivo zona horaria La zona horaria del usuario establecida en el dispositivo.
Red red El tipo de red que está utilizando el usuario: WiFi / Celular / Sin conexión.
Nombre del sistema nombreDelSistema El nombre del sistema operativo del usuario: en este caso siempre será "iOS".
Marca de tiempo del usuario actual marca de tiempo La marca de tiempo actual del usuario.

Esta es la estructura del objeto:

@interface WMUserData : NSObject

/** 
* User Attributes in current session.
*/
@property (nonatomic,strong) NSDictionary *userAttributes;

/**
* Private User Attributes in current session.
*/
@property (nonatomic,strong) NSDictionary *privateUserAttributes;

/**
 * User Session Duration in second.
 */
@property (nonatomic,strong)  NSNumber* sessionDuration;

/**
 * User's iOS version
 */
@property (nonatomic,strong)  NSString* systemVersion;

/**
 * Device Unique ID
 */
@property (nonatomic,strong)  NSString* deviceId;

/**
 * Device Model.
 */
@property (nonatomic,strong)  NSString* deviceModel;

/**
 * Device Orientation PRT_REG / LSL.
 */
@property (nonatomic,strong)  NSString* deviceOrientation;

/**
 * The application version.
 */
@property (nonatomic,strong)  NSString* appVersion;

/**
 * The application name.
 */
@property (nonatomic,strong)  NSString* appName;

/**
 * Locale language for user's device.
 */
@property (nonatomic,strong)  NSString* locale;

/**
 * WalkMe SDK version.
 */
@property (nonatomic,strong)  NSString* sdkVer;

/**
 * Session unique id.
 */
@property (nonatomic,strong)  NSString* sessionId;

/**
 * If Push notification approved for user.
 */
@property (nonatomic,strong)  NSString* isPushEnabled;

/**
 * User device timezone.
 */
@property (nonatomic,strong)  NSString* timezone;

/**
 * User current network ( WIFI / 3G ).
 */
@property (nonatomic,strong)  NSString* network;

/**
 * User OS System Name.
 */
@property (nonatomic,strong)  NSString* systemName;

/**
 * Current Timestamp for this User.
 */
@property (nonatomic,strong)  NSString* timestamp;

@end

Was this article helpful?

Thanks for your feedback!
×