
AppboyKit (également connu sous le nom de SDK Objective-C) n’est plus pris en charge et a été remplacé par Swift SDK. Il ne recevra plus de nouvelles fonctionnalités, de corrections de bugs, de mises à jour de sécurité ou d’assistance technique - cependant, la messagerie et l’analyse continueront à fonctionner normalement. Pour en savoir plus, consultez Présentation du nouveau SDK Braze Swift.
Déclenchement personnalisé de messages in-app
Par défaut, les messages in-app sont déclenchés par des types d’événements enregistrés par le SDK. Si vous souhaitez déclencher des messages in-app par des événements envoyés par le serveur, vous pouvez également le faire.
Pour activer cette fonctionnalité, vous enverrez une notification push silencieuse à l’appareil, ce qui lui permet d’enregistrer un événement basé sur le SDK. Cet événement SDK déclenchera ensuite le message in-app visible par l’utilisateur.
Étape 1 : Gérer les notifications push silencieuses et les paires clé-valeur
Ajoutez le code suivant dans la méthode 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"]])
}
}
Lorsque la notification push silencieuse est reçue, un événement enregistré par le SDK « in-app message trigger » sera consigné dans le profil utilisateur. Notez que ces messages in-app ne se déclencheront que si la notification push silencieuse est reçue pendant que l’application se trouve au premier plan.
Étape 2 : Créer une campagne de notification push
Créez une campagne de notification push silencieuse déclenchée par l’événement envoyé par le serveur. Pour plus de détails sur la création d’une campagne de notification push silencieuse, reportez-vous aux notifications push silencieuses.

La campagne de notification push doit inclure des extras de paires clé-valeur, qui indiquent que cette campagne de notification push est envoyée pour enregistrer un événement personnalisé SDK. Cet événement sera utilisé pour déclencher le message in-app :

Le code de la méthode application(_:didReceiveRemoteNotification:fetchCompletionHandler:) vérifie la clé IS_SERVER_EVENT et enregistrera un événement personnalisé SDK si celle-ci est présente.
Vous pouvez modifier le nom de l’événement ou les propriétés d’événement en envoyant la valeur souhaitée dans les extras de paires clé-valeur du payload de la notification push. Lors de l’enregistrement de l’événement personnalisé, ces extras peuvent être utilisés comme paramètre du nom de l’événement ou comme propriété d’événement.
Étape 3 : Créer une campagne de messages in-app
Créez votre campagne de messages in-app visible par l’utilisateur depuis le tableau de bord de Braze. Cette campagne doit avoir une livraison par événement et être déclenchée par l’événement personnalisé enregistré depuis la méthode application(_:didReceiveRemoteNotification:fetchCompletionHandler:).
Dans l’exemple suivant, le message in-app spécifique à déclencher a été configuré en envoyant la propriété d’événement dans le cadre de la notification push silencieuse initiale.

Étant donné qu’une notification push est utilisée pour enregistrer un événement personnalisé consigné par le SDK, Braze devra stocker un jeton de notification push pour chaque utilisateur afin de permettre cette solution. Pour iOS et Android, Braze ne stocke un jeton qu’à partir du moment où l’utilisateur a reçu l’invite de notification push du système d’exploitation. Avant cela, l’utilisateur ne sera pas joignable par notification push, et la solution précédente ne sera pas possible.