En bref : mesurez la qualité de vos utilisateurs tout au long de leur parcours en enregistrant ces événements in-app suggérés pour votre app de télécommunication.
Télécommunication
Les applications de télécommunications permettent aux utilisateurs d'acheter et de gérer des plans de téléphonie cellulaire, des plans de données, etc. Les principaux événements que nous suggérons d'enregistrer incluent les achats, les recharges et les abonnements.
L'enregistrement de ces événements peut vous aider à déterminer :
- Quels forfaits d'opérateur sont les plus populaires
- Quels produits ou forfaits les utilisateurs peuvent se permettre d'acheter
- Quels forfaits sont susceptibles de générer le plus d'engagement à long terme chez les clients
Important !
- Veillez à lire les instructions à l'attention des marketeurs pour implémenter les événements in-app.
- Pour simplifier l'implémentation, téléchargez un fichier CSV contenant tous les événements in-app de base décrits dans cet article, puis modifiez les événements en fonction des besoins de votre entreprise. Une fois terminé, partagez le fichier avec votre développeur.
- Pour chaque événement recommandé que contient cet article, vous trouverez des extraits de code pour les développeurs iOS, Android et Unity.
- Si votre développeur a besoin d'instructions détaillées, elles se trouvent dans le hub des développeurs AppsFlyer.
Pour plus d'informations sur l'enregistrement des événements in-app, consultez le guide des événements in-app riches.
Structures recommandées pour les événements prédéfinis
La section suivante fournit une liste des structures d'événements typiques du secteur des télécommunications. Chaque structure donne un nom d'événement prédéfini, ainsi que des suggestions de paramètres d'événement à appliquer. Veuillez noter que les événements in-app peuvent inclure tous les paramètres d'événement qui correspondent à vos besoins
Connexion (af_login)
Objectif
Comprendre le taux de rétention de vos utilisateurs inscrits
Déclencheur
Dès que l'utilisateur se connecte avec succès
Paramètres d'événement
Peut être envoyé sans paramètre supplémentaire
Exemples de code
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.LOGIN, null);
[[AppsFlyerLib shared] logEvent:AFEventLogin withValues: nil];
AppsFlyerLib.shared().logEvent(AFEventLogin, withValues: nil);
AppsFlyer.sendEvent ("af_login", null);
Inscription terminée (af_complete_registration)
Objectif
Découvrir combien d'utilisateurs ont installé l'app et sont allés au bout du processus d'inscription, et quelles méthodes d'inscription vos utilisateurs privilégient.
Déclencheur
Lorsque l'utilisateur finalise le processus d'inscription
Paramètres d'événement
Nom | Description | Exemple de valeur |
---|---|---|
af_registration_method | Le type de méthode d'inscription | email, facebook |
Exemples de code
Map<String, Object> eventValue = new HashMap<>();
eventValue.put(AFInAppEventParameterName.REGISTRATION_METHOD, "Facebook");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.COMPLETE_REGISTRATION, eventValue);
[[AppsFlyerLib shared] logEvent:AFEventCompleteRegistration
withValues: @{
AFEventParamRegistrationMethod: @"Facebook"
}];
AppsFlyerLib.shared().logEvent(AFEventCompleteRegistration,
withValues: [
AFEventParamRegistrationMethod: "Facebook"
]);
Dictionary<string, string> CompleteRegistrationEvent = new Dictionary<string, string>();
CompleteRegistrationEvent.Add("af_registration_method", "Facebook");
AppsFlyer.sendEvent ("af_complete_registration", CompleteRegistrationEvent);
Affichage du contenu (af_content_view)
Objectif
Déterminer le taux d'affichage de certains produits et :
- Mettre en corrélation les vues du produit avec les ventes du produit.
- Comprendre quelles catégories sont les plus populaires selon les vues du produit.
- Voir la corrélation entre la devise des acheteurs et les produits qu'ils consultent
Déclencheur
Lorsque l'utilisateur consulte la page d'informations d'un certain produit
Paramètres d'événement
Nom | Description | Exemple de valeur |
---|---|---|
af_price | Prix du produit | 200 |
af_content_id | ID du produit | 102 |
af_content_type | Catégorie du produit | Forfaits internet |
af_currency | La devise sur la page d'informations du produit | THB, USD |
Exemples de code
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.PRICE, 200);
eventValue.put(AFInAppEventParameterName.CONTENT_ID, "102";
eventValue.put(AFInAppEventParameterName.CONTENT_TYPE, "Internet packages");
eventValue.put(AFInAppEventParameterName.CURRENCY, "USD");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.CONTENT_VIEW, eventValue);
[[AppsFlyerLib shared] logEvent:AFEventContentView
withValues: @{
AFEventParamPrice: @200,
AFEventParamContentId: @"102",
AFEventParamContentType: @"Internet packages",
AFEventParamCurrency: @"USD"
}];
AppsFlyerLib.shared().logEvent(AFEventContentView,
withValues: [
AFEventParamPrice: 200,
AFEventParamContentId: "102",
AFEventParamContentType: "Internet packages",
AFEventParamCurrency: "USD"
]);
Dictionary<string, string> ContentViewEvent = new Dictionary<string, string>();
ContentViewEvent.Add("af_price", "200");
ContentViewEvent.Add("af_content_type", "Internet packages");
ContentViewEvent.Add("af_currency", "USD");
AppsFlyer.sendEvent("af_content_view", ContentViewEvent);
Affichage de la liste (af_list_view)
Objectif
Enregistrer les listes que les acheteurs consultent le plus (ex : derniers produits ajoutés, produits connexes ou produits recommandés).
Déclencheur
Lorsque l'utilisateur consulte une liste spécifique
Paramètres d'événement
Nom | Description | Exemple de valeur |
---|---|---|
af_content_type | Type de liste | connexe, recommandé, nouveautés |
af_content_list | Liste des ID contenu de la catégorie | 001, 092 |
Exemples de code
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.CONTENT_TYPE, "related products");
eventValue.put(AFInAppEventParameterName.CONTENT_LIST, new String[] {"001", "092"});
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), "af_list_view", eventValue);
[[AppsFlyerLib shared] logEvent:AFEventListView
withValues: @{
AFEventParamContentType: @"related products",
AFEventParamContentList: @[@"001", @"092"]
}];
AppsFlyerLib.shared().logEvent(AFEventListView,
>withValues: [
AFEventParamContentType: "related products",
AFEventParamContentList: ["001", "092"]
]);
Dictionary<string, string> ListViewEvent = new Dictionary<string, string>();
ListViewEvent.Add("af_content_type", "related products");
ListViewEvent.Add("af_content_list", "['001', '092']");
AppsFlyer.sendEvent("af_list_view", ListViewEvent);
Achat (af_purchase)
Objectif
De nombreuses apps de télécommunications permettent aux utilisateurs d'acheter des articles, comme des données supplémentaires. L'enregistrement de cet évènement peut vous aider à :
- Déterminer la LTV de vos utilisateurs et le ROI de vos campagnes sur les réseaux publicitaires et les agences de publicité
- Déterminer quelles offres sont les plus populaires auprès de vos utilisateurs
- Réaliser une référence croisée de campagne avec les articles qui ont été achetés afin d'optimiser le ciblage de vos campagnes
Déclencheur
Lorsque l'utilisateur atterrit sur la page de remerciement une fois l'achat terminé
Paramètres d'événement
Nom | Description | Exemple de valeur |
---|---|---|
af_revenue | Le revenu estimé provenant de l'achat | 2050.50 |
af_currency | Code de devise | THB |
af_content_type | Nom du forfait acheté | 5G |
af_order_id | ID de la commande | 9277 |
payment_method_type | Le type de méthode de paiement | carte de crédit, paiement local |
Exemples de code
Map<String, Object> eventValue = new HashMap<>();
eventValue.put(AFInAppEventParameterName.REVENUE, 2050.50);
eventValue.put(AFInAppEventParameterName.CURRENCY, "THB");
eventValue.put(AFInAppEventParameterName.CONTENT_TYPE, "5G");
eventValue.put("AFInAppEventParameterName.ORDER_ID", "9277");
eventValue.put("payment_method_type", "credit_card");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(),AFInAppEventType.PURCHASE, eventValue);
[[AppsFlyerLib shared] logEvent:AFEventPurchase
withValues: @{
AFEventParamRevenue: @2050.50,
AFEventParamCurrency: @"THB",
AFEventParamContentType: @"5G",
AFEventParamContentTypeOrderId: @"9277",
@"payment_method_type": @"credit_card"
}];
AppsFlyerLib.shared().logEvent(AFEventPurchase,
withValues: [
AFEventParamRevenue: 2050.50,
AFEventParamCurrency: "THB",
AFEventParamContentType: "5G",
AFEventParamContentTypeOrderId: "9277",
"payment_method_type": "credit_card",
]);
Dictionary<string, string> purchaseEvent = new Dictionary<string, string>();
purchaseEvent.Add("af_revenue", "2050.50");
purchaseEvent.Add("af_currency", "THB");
purchaseEvent.Add("af_content_type", "5G");
purchaseEvent.Add("af_order_id", "9277");
purchaseEvent.Add("payment_method_type", "credit_card");
AppsFlyer.sendEvent ("af_purchase", purchaseEvent);
Structures recommandées pour les événements personnalisés
La section suivante fournit une structure d'événement qui comprend un nom d'événement personnalisé et les suggestions de paramètres d'événement à utiliser. Veuillez noter que les événements in-app peuvent inclure tous les paramètres d'événement qui correspondent à vos besoins.
Sélection du forfait (select_package)
Objectif
Enregistrez lorsqu'un utilisateur décide d'acheter un forfait, et avant que le paiement a été effectué. Vous pouvez par exemple utiliser ces données pour recibler les utilisateurs et leur envoyer des offres en lien avec d'autres services.
Déclencheur
Lorsque l'utilisateur sélectionne un forfait mais ne finalise pas le paiement
Paramètres d'événement
Nom | Description | Exemple de valeur |
---|---|---|
price | Prix de l'abonnement | 50000 |
af_content_type | Type de contenu sélectionné par l'utilisateur | 5 Go de données |
Exemples de code
Map<String, Object> eventValue = new HashMap<>();
eventValue.put("price", "50000");
eventValue.put("af_content_type ", "Data 5 GB ");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), "select_package", eventValue);
[[AppsFlyerLib shared] logEvent:@"select_package" withValues: @{
@"price": @"50000",
@"af_content_type ": @"Data 5 GB "}];
AppsFlyerLib.shared().logEvent("select_package", withValues:
[ "price": "50000",
"af_content_type ": "Data 5 GB "])
Dictionary<string, string> SelectPackageEvent= new Dictionary<string, string>();
SelectPackageEvent.Add("price", "50000");
SelectPackageEvent.Add("af_content_type ", "Data 5 GB ");
AppsFlyer.sendEvent ("select_package", SelectPackageEvent);
Recharge réussie (top_up_success)
Objectif
Les fonds de recharge peuvent être utilisés pour acheter n'importe quel forfait ou tout autre service offert dans l'app. Enregistrer cet évènement et le comparer avec d'autres données pour en savoir plus sur vos utilisateurs. Par exemple, vous pouvez apprendre quels montants les utilisateurs sont prêts à déposer sur leurs comptes, puis utiliser les montants de recharge pour les cibler avec des campagnes personnalisées en accord avec leur budget.
Déclencheur
Lorsque l'utilisateur finalise l'ajout d'une recharge
Paramètres d'événement
Nom | Description | Exemple de valeur |
---|---|---|
af_revenue | Montant de la recharge | 2050.50 |
top_up_id | L'ID de la recharge | 397 |
payment_method_type | Le type de méthode de paiement | carte de crédit, paiement local |
Exemples de code
Map<String, Object> eventValue = new HashMap<>();eventValue.put(AFInAppEventParameterName.REVENUE, 2050.50); eventValue.put("top_up_id", "397"); eventValue.put("payment_method_type", "credit_card");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), "top_up_success", eventValue);
[[AppsFlyerLib shared] logEvent :"top_up_success"
withValues : @{
AFEventParamRevenue: @2050.50,
@"top_up_id": @"397",
@"payment_method_type": @"credit_card"
}] ;
AppsFlyerLib.shared().logEvent("top_up_success",
withValues: [
AFEventParamRevenue: 2050.50,
"top_up_id": "397",
"payment_method_type": "credit_card",
]);
Dictionary<string, string> TopUpSuccessEvent = new Dictionary<string, string>();
TopUpSuccessEvent.Add("af_revenue", "2050.50");
TopUpSuccessEvent.Add("top_up_id", "397");
TopUpSuccessEvent.Add("payment_method_type", "credit_card");
AppsFlyer.sendEvent ("top_up_success", TopUpSuccessEvent);
Échec de la recharge (top_up_unsuccessful)
Objectif
Enregistrer cet évènement et le comparer avec d'autres données pour en savoir plus sur vos utilisateurs. Par exemple, vous pouvez savoir combien d'utilisateurs essaient de recharger mais n'y parviennent pas.
Déclencheur
Lorsque l'utilisateur essaie de recharger mais que l'action échoue
Paramètres d'événement
Nom | Description | Exemple de valeur |
---|---|---|
error_reason | Motif de l'échec de la recharge | exceeded_daily_limit |
Exemples de code
Map<String, Object> eventValue = new HashMap<>();
eventValue.put("error_reason", "exceeded_daily_limit");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), "top_up_unsuccessful", eventValue);
[[AppsFlyerLib shared] logEvent:@"top_up_unsuccessful" withValues: @{
@"error_reason": @"exceeded_daily_limit"}];
AppsFlyerLib.shared().logEvent("top_up_unsuccessful",withValues:
["error_reason": "exceeded_daily_limit" ])
Dictionary<string, string> TopUpUnsuccessfulEvent = new Dictionary<string, string>() ;
ErrorReasonEvent.Add("error_reason", "exceeded_daily_limit") ;
AppsFlyer.sendEvent (" top_up_unsuccessful
" , TopUpUnsuccessfulEvent) ;
Abonnement terminé (subscription_complete)
Objectif
L'enregistrement de cet évènement peut vous aider à :
- Voir quelles campagnes produisent des utilisateurs qui s'inscrivent
- Comparer le nombre d'utilisateurs inscrits avec le nombre d'utilisateurs non inscrits
- Enregistrer les revenus générés par les abonnements et les attribuer aux campagnes et aux sources média
Déclencheur
- Lorsque l'utilisateur s'inscrit avec succès
- Lorsqu'un abonnement est renouvelé
Paramètres d'événement
Nom | Description | Exemple de valeur |
---|---|---|
subscription_type | Type d'abonnement | 30 Go par mois |
af_revenue | Montant de l'abonnement | 555.50 |
Exemples de code
Map<String, Object> eventValue = new HashMap<>();
eventValue.put("subscription_type", "Monthly 30 GB");
eventValue.put(AFInAppEventParameterName.REVENUE, "555.50");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), "subscription_complete", eventValue);
[AppsFlyerLib shared] logEvent:@"subscription_complete" withValues:@{
@"subscription_type": @"Monthly 30 GB",
AFEventParamRevenue
: @"555.50"}];
ApAppsFlyerLib.shared().logEvent(" subscription_complete" ,
withValues:
[ "subscription_type": "Monthly 30 GB",
"af_revenue": "555.50"])
Dictionary<string, string> SubscriptionCompleteEvent = new Dictionary<string, string>();
SubscriptionCompleteEvent.Add("subscription_type", "Monthly 30 GB");
SubscriptionCompleteEvent.Add("af_revenue", "555.50");
AppsFlyer.sendEvent("subscription_complete", SubscriptionCompleteEvent);