
AppboyKit (también conocido como SDK Objective-C) ya no recibe soporte y ha sido sustituido por Swift SDK. Ya no recibirá nuevas características, correcciones de errores, actualizaciones de seguridad ni soporte técnico; sin embargo, la mensajería y los análisis seguirán funcionando con normalidad. Para obtener más información, consulta Presentación del nuevo SDK Swift de Braze.
Desencadenado personalizado de mensajes dentro de la aplicación
Por defecto, los mensajes dentro de la aplicación se desencadenan por tipos de eventos registrados por el SDK. Si quieres desencadenar mensajes dentro de la aplicación mediante eventos enviados por el servidor, también puedes conseguirlo.
Para habilitar esta característica, enviarías un push silencioso al dispositivo, lo que permitiría al dispositivo registrar un evento basado en el SDK. Este evento del SDK desencadenaría posteriormente el mensaje dentro de la aplicación dirigido al usuario.
Paso 1: Manejar el push silencioso y los pares clave-valor
Añade el siguiente código dentro del método application(_:didReceiveRemoteNotification:fetchCompletionHandler:):
1
2
3
4
5
6
- (void)handleExtrasFromPush:(NSDictionary *)userInfo {
NSLog(@"A push was received.");
if (userInfo !=nil && userInfo[@"IS_SERVER_EVENT"] !=nil && userInfo[@"CAMPAIGN_NAME"]!=nil) {
[[Appboy sharedInstance] logCustomEvent:@"IAM Trigger" withProperties:@{@"campaign_name": userInfo[@"CAMPAIGN_NAME"]}];
}
};
1
2
3
4
5
6
func handleExtras(userInfo: [AnyHashable : Any]) {
NSLog("A push was received");
if userInfo != nil && (userInfo["IS_SERVER_EVENT"] as? String) != nil && (userInfo["CAMPAIGN_NAME"] as? String) != nil {
Appboy.sharedInstance()?.logCustomEvent("IAM Trigger", withProperties: ["campaign_name": userInfo["CAMPAIGN_NAME"]])
}
}
Cuando se reciba el push silencioso, se registrará un evento del SDK “desencadenante de mensaje dentro de la aplicación” en el perfil de usuario. Ten en cuenta que estos mensajes dentro de la aplicación solo se desencadenarán si se recibe el push silencioso mientras la aplicación está en primer plano.
Paso 2: Crear una Campaign push
Crea una Campaign push silenciosa que se desencadene a través del evento enviado por el servidor. Para más detalles sobre cómo crear una Campaign push silenciosa, consulta las notificaciones push silenciosas.

La Campaign push debe incluir extras de par clave-valor, que indiquen que esta Campaign push se envía para registrar un evento personalizado del SDK. Este evento se utilizará para desencadenar el mensaje dentro de la aplicación:

El código del método application(_:didReceiveRemoteNotification:fetchCompletionHandler:) comprueba si existe la clave IS_SERVER_EVENT y registrará un evento personalizado del SDK si está presente.
Puedes modificar el nombre del evento o las propiedades del evento enviando el valor deseado dentro de los extras del par clave-valor de la carga útil push. Al registrar el evento personalizado, estos extras se pueden utilizar como parámetro del nombre del evento o como una propiedad del evento.
Paso 3: Crear una Campaign de mensajes dentro de la aplicación
Crea tu Campaign de mensajes dentro de la aplicación, visible para el usuario, desde el dashboard de Braze. Esta Campaign debe tener una entrega basada en acciones y desencadenarse desde el evento personalizado registrado en el método application(_:didReceiveRemoteNotification:fetchCompletionHandler:).
En el siguiente ejemplo, el mensaje específico dentro de la aplicación que se va a desencadenar se ha configurado enviando la propiedad del evento como parte del push silencioso inicial.

Debido a que se utiliza un mensaje push para registrar un evento personalizado del SDK, Braze necesitará almacenar un token de notificaciones push para cada usuario para habilitar esta solución. Tanto para iOS como para Android, Braze solo almacenará un token a partir del momento en que el usuario haya recibido el aviso push del sistema operativo. Antes de esto, el usuario no será localizable mediante push, y la solución anterior no será posible.