L’événement « Notifier l'événement de produit visité » sert à informer que le contact a visité un produit spécifique lors de sa navigation sur l’application. Pour cela, il envoie une notification via le Mobile SDK lorsqu’un utilisateur accède à une page de détail de produit en utilisant la méthode Connectif.sendProductVisit().
Comment l'utiliser
La notification de produit visité utilise l’objet Product, de la méthode sendProductVisit, pour enrichir les informations des événements envoyés.
Notifier les informations du produit visité
Voici les propriétés que nous pouvons envoyer dans notre objet Product :
| Nom | Obligatoire | Type | Description |
|---|---|---|---|
| productDetailUrl | Oui | String | URL de la page du produit (l’URL ne doit pas être encodée). |
| productId | Oui | String | Identifiant unique du produit (dans l’eCommerce). |
| name | Oui | String | Nom du produit. |
| description | Non | String | Description du produit. Peut contenir du code HTML. |
| imageUrl | Non | String | URL de l’image du produit. |
| unitPrice | Oui | BigDecimal | Prix unitaire du produit. |
| availability | Non | Availability | Peut prendre l’une des valeurs suivantes : IN_STOCK ou OUT_OF_STOCK. |
| categories | Non | List<String> | La catégorie à laquelle appartient le produit. Si l’eCommerce permet des sous-catégories, vous pouvez les indiquer en utilisant le chemin complet de la catégorie en séparant chaque niveau avec le caractère '/'. Par exemple : "/Informatique/Claviers/Logitech". |
| tags | Non | List<String> | Les tags associés au produit. |
| brand | Non | String | Marque du produit. |
| reviewCount | Non | Int | Nombre d’avis sur le produit. |
| rating | Non | Int | Évaluation du produit normalisée sur une échelle de 0 à 5. |
| ratingCount | Non | Int | Nombre d’évaluations du produit. |
| thumbnailUrl | Non | String | URL de l’image miniature du produit. |
| relatedExternalProductIds | Non | List<String> | Identifiants des produits associés. |
| priority | Non | Int | Priorité d’un produit. |
| unitPriceOriginal | Non | BigDecimal | Prix unitaire du produit avant remise. |
| unitPriceWithoutVAT | Non | BigDecimal | Prix unitaire original du produit hors TVA. |
| discountedAmount | Non | BigDecimal | Montant de la remise appliquée au produit. |
| discountedPercentage | Non | Int | Pourcentage de remise, compris entre 0 et 100 sans le symbole de pourcentage. |
| publishedAt | Non | Date | Date de publication du produit dans le catalogue de la boutique. |
| customField1 | Non | String | Champ personnalisé du produit. |
| customField2 | Non | String | Champ personnalisé du produit. |
| customField3 | Non | String | Champ personnalisé du produit. |
Ce type d’événement recueille automatiquement les informations suivantes :
- Système d'exploitation : Android ou iOS.
- Version de l’application.
- Version du système d’exploitation.
- Version du Connectif SDK.
Exemple
La notification aura cet aspect :
Connectif.sendProductVisit(
Product(
productDetailUrl = "https://example.com/product/12345",
productId = "12345",
name = "Produit Exemple",
unitPrice = BigDecimal("99.99"),
description = "Ceci est un produit exemple",
imageUrl = "https://example.com/product/images/12345.jpg",
availability = Product.Availability.IN_STOCK,
categories = listOf("Électronique", "Gadgets"),
tags = listOf("Tendance", "Nouvelle Arrivée"),
brand = "MarqueExemple",
reviewCount = 150,
rating = BigDecimal("4.5"),
ratingCount = 124,
thumbnailUrl = "https://example.com/product/thumbnails/12345.jpg",
relatedExternalProductIds = listOf("54321", "67890"),
priority = 1,
unitPriceOriginal = BigDecimal("120.00"),
unitPriceWithoutVAT = BigDecimal("80.00"),
discountedAmount = BigDecimal("20.00"),
discountedPercentage = BigDecimal("16.67"),
publishedAt = Date(),
customField1 = "Édition Spéciale",
customField2 = "Stock Limité",
customField3 = "Exclusivement en ligne"
)
)
Callbacks (Optionnel)
Si vous souhaitez obtenir un retour d'information sur les éventuelles erreurs lors de l'envoi d'événements, nous pouvons ajouter un EventCallbacks lorsque nous utilisons notre méthode.
object : EventCallbacks {
override fun onSuccess() {
//Gestion en cas de succès
}
override fun onError(message: String?) {
//Gestion en cas d'erreur
}
}
Poursuivez votre apprentissage !
Pour tirer pleinement parti de votre compte Connectif, nous vous recommandons de continuer avec les articles suivants :
- Android SDK Get Started, pour ajouter Connectif Mobile SDK à votre projet Android.
- Configuration Firebase Cloud Messaging, pour activer l’envoi et la réception de notifications push via le Mobile SDK Android.
- iOS SDK Get Started, pour ajouter Connectif Mobile SDK à votre projet iOS.
- Configuration Apple Push Notifications Service, pour activer l’envoi et la réception de notifications push via le Mobile SDK iOS.