Cette page décrit les événements utilisateur pour les applications de recherche et de recommandation de contenus multimédias, y compris les types d'événements utilisateur, les exigences et des exemples pour les types d'événements utilisateur. Les événements utilisateur sont obligatoires pour les applications multimédias.
Pour obtenir des informations générales sur la recherche et les recommandations de contenus multimédias, consultez Présentation de la recherche et des recommandations de contenus multimédias.
Pour obtenir de l'aide concernant l'enregistrement des événements utilisateur, consultez Enregistrer des événements utilisateur en temps réel. Pour importer des événements utilisateur passés de façon groupée, consultez Importer des événements utilisateur historiques.
Types d'événements utilisateur
Vous pouvez enregistrer les types d'événements utilisateur suivants lorsque les utilisateurs finaux parcourent ou recherchent votre site :
Nom de l'événement utilisateur | Action utilisateur |
---|---|
view-item |
Affiche les détails d'un document. |
view-home-page |
Permet d'afficher la page d'accueil. |
search |
Permet de rechercher dans le data store. |
media-play |
Clique sur un élément multimédia pour le lire. |
media-complete |
Arrête la lecture d'un élément multimédia, ce qui signifie que l'utilisateur a terminé de le regarder. |
Pour en savoir plus sur l'objet d'événement utilisateur, consultez la documentation de référence de l'API UserEvent
.
Exigences concernant les événements pour la recherche et les recommandations de contenus multimédias
Les types d'événements utilisateur dont vous avez besoin dépendent du fait que votre application soit une application de recherche ou de recommandations, de l'objectif (taux de clics, taux de conversion ou durée de visionnage) et, pour les applications de recommandations uniquement, du type de modèle que vous avez choisi. Pour en savoir plus sur les types de modèles de recommandation et les objectifs d'optimisation, consultez À propos des types de recommandations d'applications multimédias.
Pour déterminer les événements utilisateur que vous devez collecter, consultez le tableau suivant.
Événement | search |
view-home-page |
view-item |
media-play |
media-complete |
||
---|---|---|---|---|---|---|---|
Cas d'utilisation de la recherche | |||||||
Obligatoire | Non obligatoire |
Obligatoire | Obligatoire | Obligatoire | |||
Types de modèles "Recommandé pour vous", par objectif | |||||||
CTR | Non obligatoire |
Obligatoire pour le contexte de la page d'accueil Non obligatoire pour le contexte général |
view-item ou media-play est obligatoire. |
Fortement recommandé Obligatoire si la rétrogradation de l'historique est activée |
|||
CVR | Non obligatoire |
Obligatoire pour le contexte de la page d'accueil Non obligatoire pour le contexte général |
view-item ou media-play est obligatoire. |
Obligatoire | |||
Durée de visionnage | Non obligatoire |
Obligatoire pour le contexte de la page d'accueil Non obligatoire pour le contexte général |
view-item ou media-play est obligatoire. |
Obligatoire | |||
Type de modèle "Autres articles susceptibles de vous intéresser", par objectif | |||||||
CTR | Non obligatoire |
Non obligatoire |
view-item ou media-play est obligatoire. |
Fortement recommandé Obligatoire si la rétrogradation de l'historique est activée |
|||
CVR | Non obligatoire |
Non obligatoire |
view-item ou media-play est obligatoire. |
Obligatoire | |||
Durée de visionnage | Non obligatoire |
Non obligatoire |
view-item ou media-play est obligatoire. |
Obligatoire | |||
Type de modèle "Plus comme ceci", par objectif | |||||||
CTR | Non obligatoire |
Non obligatoire |
view-item ou media-play est obligatoire. |
Obligatoire si la rétrogradation de l'historique est activée | |||
CVR | Non obligatoire |
Non obligatoire |
view-item ou media-play est obligatoire. |
Obligatoire | |||
Durée de visionnage | Non obligatoire |
Non obligatoire |
view-item ou media-play est obligatoire. |
Obligatoire | |||
Type de modèle le plus populaire, par objectif | |||||||
CTR | Non obligatoire |
Non obligatoire |
Vous devez indiquer view-item ou media-play . |
Non obligatoire |
|||
CVR | Non obligatoire |
Non obligatoire |
Non obligatoire |
Non obligatoire |
Obligatoire |
Exigences concernant les événements utilisateur multimédias
Assurez-vous que vos événements utilisateur répondent aux exigences suivantes afin que vos applications multimédias puissent générer des résultats de qualité.
Type d'événement | Exigence | Impact |
---|---|---|
Tous les événements |
N'incluez pas de données synthétiques ni d'événements en double. |
Les événements synthétiques ou en double ont un impact négatif sur la qualité des résultats et peuvent vous empêcher de déployer votre application. Les événements en double peuvent entraîner des valeurs de métriques incorrectes. |
Incluez au moins 100 pseudo-identifiants utilisateur uniques pour chaque type d'événement ingéré. |
Incluez ces ID pour que les applications de recommandations de contenus multimédias disposent de suffisamment de données pour générer des résultats de qualité. |
|
Les pseudo-ID utilisateur doivent être mis en forme de manière identique lors de l'importation ou de l'enregistrement des événements, et dans les demandes de recommandations média. |
L'utilisation d'un format cohérent pour les pseudo-ID utilisateur aide les applications de recommandations de contenus multimédias à identifier correctement les habitudes des visiteurs et à fournir des résultats de meilleure qualité en fonction du comportement des utilisateurs. |
|
Le champ |
Un événement qui inclut un document sans champ |
|
Les documents inclus dans les événements doivent exister dans votre data store. |
Le ratio d'événements non associés doit être le plus bas possible. Un ratio élevé peut avoir un impact négatif sur la qualité des résultats. |
|
Certains événements utilisateur doivent avoir le même pseudo-ID utilisateur. |
Pour construire des historiques de séquences de comportement valides, les applications de recommandations multimédias doivent pouvoir voir plusieurs événements avec le même pseudo-ID utilisateur.
Par exemple, |
|
view-item |
Incluez un seul document par événement. |
Vous ne pouvez pas utiliser cet événement s'il n'existe aucun document. Si plusieurs documents sont inclus, l'événement est incorrect et ne peut pas être utilisé. |
search |
Incluez le |
|
media-play |
Incluez un seul document par événement. |
Si plusieurs documents sont inclus, l'événement est incorrect et ne peut pas être utilisé. |
Tags d'événements utilisateur pour les tests A/B
Si vous effectuez des tests A/B, veillez à ajouter des ID de tag à tous les événements utilisateur que vous collectez, en ajoutant un tag pour chaque groupe de test.
Par exemple, ajoutez le tag "tagIds": ["original"]
aux événements utilisateur de votre modèle actuel et le tag "tagIds": ["google"]
aux événements utilisateur de Vertex AI Search pour les contenus multimédias.
Exemples et schémas de types d'événements utilisateur
Cette section fournit les formats de données pour chaque type d'événement compatible avec les recommandations média. Des exemples sont fournis pour JavaScript Pixel. Pour BigQuery, le schéma de table complet est fourni pour chaque type.
Pour tous les types d'événements utilisateur, le champ userId
est facultatif.
Pour en savoir plus sur l'objet User Event, consultez la documentation de référence de l'API UserEvent
.
view-item
Les lignes suivantes présentent le format de données d'événement utilisateur view-item
.
Champs minimum requis pour l'objet view-item
Les exemples suivants affichent uniquement les champs obligatoires du format d'événement utilisateur view-item
.
Dans la plupart des cas, documents
contient les détails du document associé.
JavaScript Pixel
var user_event = {
"eventType": "view-item",
"userPseudoId": "user-pseudo-id",
"eventTime": "2020-01-01T03:33:33.000001Z",
"documents": [{
"id": "document-id"
}]
"panels": [
{
"panelId": "HOME_RFY_1",
"documents": [
{
"id": "123"
},
{
"id": "456"
}
],
"panelPosition": 1,
"totalPanels": 2
}
]
};
BigQuery
Il s'agit du schéma JSON complet pour ce type d'événement utilisateur. Spécifiez ce schéma lorsque vous créez des tables pour ce type d'événement utilisateur dans BigQuery.
Les modes des champs obligatoires sont définis sur REQUIRED
ou REPEATED
. Les modes des champs facultatifs sont définis sur NULLABLE
.
Notez que eventTime
est requis pour importer des événements avec BigQuery. eventTime
est une chaîne avec un format d'horodatage.
[ { "name": "eventType", "type": "STRING", "mode": "REQUIRED" }, { "name": "userPseudoId", "type": "STRING", "mode": "REQUIRED" }, { "name": "eventTime", "type": "STRING", "mode": "REQUIRED" }, { "name": "userInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "userId", "type": "STRING", "mode": "NULLABLE" }, { "name": "userAgent", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "pageInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "pageviewId", "type": "STRING", "mode": "NULLABLE" }, { "name": "uri", "type": "STRING", "mode": "NULLABLE" }, { "name": "referrerUri", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "attributionToken", "type": "STRING", "mode": "NULLABLE" }, { "name": "documents", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "id", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "tagIds", "type": "STRING", "mode": "REPEATED" }, { "name": "attributes", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "example_text_attribute", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "text", "type": "STRING", "mode": "REPEATED" } ] }, { "name": "example_number_attribute", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "numbers", "type": "NUMERIC", "mode": "REPEATED" } ] } ] } ]
view-home-page
Les lignes suivantes présentent le format d'événement utilisateur view-home-page
.
Champs minimum requis pour l'objet view-home-page
Les exemples suivants affichent uniquement les champs obligatoires du format d'événement utilisateur view-home-page
.
JavaScript Pixel
var user_event = {
"eventType": "view-home-page",
"userPseudoId": "user-pseudo-id",
"eventTime": "2020-01-01T03:33:33.000001Z",
"panels": [
{
"panelId": "HOME_RFY_1",
"documents": [
{
"id": "123"
},
{
"id": "456"
}
],
"panelPosition": 1,
"totalPanels": 2
}
]
};
BigQuery
Il s'agit du schéma JSON complet pour ce type d'événement utilisateur. Spécifiez ce schéma lorsque vous créez des tables pour ce type d'événement utilisateur dans BigQuery.
Les modes des champs obligatoires sont définis sur REQUIRED
ou REPEATED
. Les modes des champs facultatifs sont définis sur NULLABLE
.
Notez que eventTime
est requis pour importer des événements avec BigQuery. eventTime
est une chaîne avec un format d'horodatage.
[ { "name": "eventType", "type": "STRING", "mode": "REQUIRED" }, { "name": "userPseudoId", "type": "STRING", "mode": "REQUIRED" }, { "name": "eventTime", "type": "STRING", "mode": "REQUIRED" }, { "name": "userInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "userId", "type": "STRING", "mode": "NULLABLE" }, { "name": "userAgent", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "pageInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "pageviewId", "type": "STRING", "mode": "NULLABLE" }, { "name": "uri", "type": "STRING", "mode": "NULLABLE" }, { "name": "referrerUri", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "attributionToken", "type": "STRING", "mode": "NULLABLE" }, { "name": "documents", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "id", "type": "STRING", "mode": "NULLABLE" }, { "name": "quantity", "type": "INT64", "mode": "NULLABLE" } ] }, { "name": "tagIds", "type": "STRING", "mode": "REPEATED" }, { "name": "attributes", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "example_text_attribute", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "text", "type": "STRING", "mode": "REPEATED" } ] }, { "name": "example_number_attribute", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "numbers", "type": "NUMERIC", "mode": "REPEATED" } ] } ] } ]
Pour en savoir plus sur l'objet panels
, consultez À propos des panneaux.
search
Les lignes suivantes présentent le format d'événement utilisateur search
.
Champs minimum requis pour l'objet search
Les exemples suivants affichent uniquement les champs obligatoires du format d'événement utilisateur search
.
searchQuery
pour les événements de recherche où l'utilisateur a saisi une requête textuelle.
attributionToken
est renvoyé avec les résultats de la requête de recherche.
documents
doit inclure la liste des ID de document présentés à l'utilisateur final sur la page des résultats de recherche.
JavaScript Pixel
var user_event = {
eventType: "search",
userPseudoId: "user-pseudo-id",
eventTime: "2020-01-01T03:33:33.000001Z",
searchInfo: {
searchQuery: "search-query",
},
attributionToken: "attribution-token",
documents: [
{
id: "document-id1",
},
{
id: "document-id2",
},
]
};
BigQuery
Il s'agit du schéma JSON complet pour ce type d'événement utilisateur. Spécifiez ce schéma lorsque vous créez des tables pour ce type d'événement utilisateur dans BigQuery.
Les modes des champs obligatoires sont définis sur REQUIRED
ou REPEATED
. Les modes des champs facultatifs sont définis sur NULLABLE
.
Notez que eventTime
est requis pour importer des événements avec BigQuery. eventTime
est une chaîne avec un format d'horodatage.
[ { "name": "eventType", "type": "STRING", "mode": "REQUIRED" }, { "name": "userPseudoId", "type": "STRING", "mode": "REQUIRED" }, { "name": "eventTime", "type": "STRING", "mode": "REQUIRED" }, { "name": "searchInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "searchQuery", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "pageInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "pageCategory", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "attributionToken", "type": "STRING", "mode": "NULLABLE" }, { "name": "documents", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "id", "type": "STRING", "mode": "NULLABLE" } ] } ]
media-play
Les lignes suivantes présentent le format d'événement utilisateur media-play
.
Champs minimum requis pour l'objet media-play
Les exemples suivants affichent uniquement les champs obligatoires du format d'événement utilisateur media-play
.
JavaScript Pixel
var user_event = {
"eventType": "media-play",
"userPseudoId": "user-pseudo-id",
"eventTime": "2020-01-01T03:33:33.000001Z",
"documents": [
{
"id": "document-id1"
}
]
};
BigQuery
Il s'agit du schéma JSON complet pour ce type d'événement utilisateur. Spécifiez ce schéma lorsque vous créez des tables pour ce type d'événement utilisateur dans BigQuery.
Les modes des champs obligatoires sont définis sur REQUIRED
ou REPEATED
. Les modes des champs facultatifs sont définis sur NULLABLE
.
Notez que eventTime
est requis pour importer des événements avec BigQuery. eventTime
est une chaîne avec un format d'horodatage.
[ { "name": "eventType", "type": "STRING", "mode": "REQUIRED" }, { "name": "userPseudoId", "type": "STRING", "mode": "REQUIRED" }, { "name": "eventTime", "type": "STRING", "mode": "REQUIRED" }, { "name": "userInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "userId", "type": "STRING", "mode": "NULLABLE" }, { "name": "userAgent", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "pageInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "pageviewId", "type": "STRING", "mode": "NULLABLE" }, { "name": "uri", "type": "STRING", "mode": "NULLABLE" }, { "name": "referrerUri", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "attributionToken", "type": "STRING", "mode": "NULLABLE" }, { "name": "documents", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "id", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "tagIds", "type": "STRING", "mode": "REPEATED" }, { "name": "attributes", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "example_text_attribute", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "text", "type": "STRING", "mode": "REPEATED" } ] }, { "name": "example_number_attribute", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "numbers", "type": "NUMERIC", "mode": "REPEATED" } ] } ] } ]
media-complete
Les lignes suivantes présentent le format d'événement utilisateur media-complete
.
Champs minimum requis pour l'objet media-complete
Les exemples suivants affichent uniquement les champs obligatoires du format d'événement utilisateur media-complete
.
JavaScript Pixel
var user_event = {
"eventType": "media-complete",
"userPseudoId": "user-pseudo-id",
"eventTime": "2020-01-01T03:33:33.000001Z",
"documents": [
{
"id": "document-id1"
}
],
"mediaInfo": {
"mediaProgressDuration": "65s",
"mediaProgressPercentage": 0.2
}
};
BigQuery
Il s'agit du schéma JSON complet pour ce type d'événement utilisateur. Spécifiez ce schéma lorsque vous créez des tables pour ce type d'événement utilisateur dans BigQuery.
Les modes des champs obligatoires sont définis sur REQUIRED
ou REPEATED
. Les modes des champs facultatifs sont définis sur NULLABLE
.
Notez que eventTime
est requis pour importer des événements avec BigQuery. eventTime
est une chaîne avec un format d'horodatage.
[ { "name": "eventType", "type": "STRING", "mode": "REQUIRED" }, { "name": "userPseudoId", "type": "STRING", "mode": "REQUIRED" }, { "name": "eventTime", "type": "STRING", "mode": "REQUIRED" }, { "name": "userInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "userId", "type": "STRING", "mode": "NULLABLE" }, { "name": "userAgent", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "pageInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "pageviewId", "type": "STRING", "mode": "NULLABLE" }, { "name": "uri", "type": "STRING", "mode": "NULLABLE" }, { "name": "referrerUri", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "attributionToken", "type": "STRING", "mode": "NULLABLE" }, { "name": "documents", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "id", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "tagIds", "type": "STRING", "mode": "REPEATED" }, { "name": "attributes", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "example_text_attribute", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "text", "type": "STRING", "mode": "REPEATED" } ] }, { "name": "example_number_attribute", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "numbers", "type": "NUMERIC", "mode": "REPEATED" } ] } ] }, { "name": "mediaInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "mediaProgressDuration", "type": "STRING", "mode": "NULLABLE" }, { "name": "mediaProgressPercentage", "type": "NUMERIC", "mode": "NULLABLE" } ] } ]
Attributs personnalisés
Vous pouvez intégrer des attributs et des fonctionnalités personnalisés supplémentaires pour les événements utilisateur. Vous pouvez ainsi améliorer les résultats de vos utilisateurs.
Pour ajouter des attributs personnalisés, utilisez attributes
lorsque vous enregistrez un événement utilisateur.
Si vous fournissez des attributs personnalisés pour les événements utilisateur ingérés, il est important de les inclure également dans les événements utilisateur que vous associez aux requêtes de recommandation et de recherche. La mise en forme des attributs personnalisés doit être cohérente entre les événements importés et ceux fournis avec les requêtes. Cela permet aux applications multimédias d'utiliser ces attributs personnalisés pour améliorer la qualité.
Vous pouvez fournir des valeurs de texte personnalisées à l'aide du champ text
ou des valeurs numériques personnalisées à l'aide du champ numbers
.
Par exemple, voici la section attributes
d'une requête d'enregistrement d'un événement utilisateur :
attributes: { user_age: {text: ["teen", "young adult"]}, user_location: {text: ["CA"]}, user_zip: {numbers: [90210]} }
À propos des informations utilisateur
userPseudoId
représente l'identifiant d'utilisateur unique et est requis lorsque vous enregistrez un événement utilisateur.
Les informations sur les utilisateurs (UserInfo
) incluses lorsque vous enregistrez un événement utilisateur contiennent la valeur userPseudoId
et, si elle est disponible, la valeur userId
.
userId
est facultatif et peut être utilisé comme identifiant unique et persistant pour un utilisateur sur tous les appareils, chaque fois que ce dernier se connecte à votre site. Lorsque vous enregistrez le userId
d'un utilisateur, les applications de recherche et de recommandation de contenus multimédias peuvent générer des résultats plus personnalisés pour un utilisateur sur plusieurs appareils, tels qu'un appareil mobile et un navigateur Web.
À propos de l'horodatage
Lorsque vous enregistrez un événement utilisateur, veillez à inclure un horodatage précis de l'événement. Des codes temporels précis permettent de s'assurer que vos événements sont stockés dans le bon ordre. Les codes temporels sont enregistrés automatiquement pour les événements collectés à l'aide du pixel JavaScript. Lorsque vous importez des événements, vous devez spécifier l'horodatage dans le champ eventTime
au format indiqué par RFC 3339.
À propos des panneaux
Sur une page d'accueil, vous avez généralement un ou plusieurs panneaux, tels que "Tendances actuelles" et "Recommandations pour vous". Sur les pages d'informations, vous pouvez également trouver des panneaux, comme "Vous aimerez peut-être aussi".
Informations sur les panneaux pour les événements utilisateur
Les informations sur le panneau sont nécessaires pour les événements utilisateur de recommandation de type view-home-page
et view-item
. Les informations sur les panneaux sont obligatoires pour les pages d'accueil et les pages de détails qui affichent du contenu recommandé par Google.
Si vous effectuez des tests A/B pour un panel, vous devez enregistrer les événements utilisateur avec les informations sur le panel pour tous les contenus du test, quelle que soit la source. Pour les pages d'accueil et les pages d'informations sans contenu de panneau généré par Google, il est recommandé, mais pas obligatoire, de fournir des informations sur les panneaux dans les événements view-home-page
et view-item
. Ces exigences sont résumées dans le tableau suivant :
Source de l'événement utilisateur (view-home-page et view-item )
|
PanelInfo (obligatoire)
|
---|---|
Inclut les contenus recommandés par Google | Oui |
Inclut les contenus NON recommandés par Google et utilisés dans les tests A/B | Oui |
Inclut le contenu NON recommandé par Google et NON utilisé dans les tests A/B | Non |
Les informations sur le panneau (PanelInfo
) sont un ensemble de champs qui décrivent différents éléments du panneau :
Numéro d'identification du panneau
Nom à afficher
Position du panneau sur la page (par exemple, premier panneau (
1
) sur la page ou troisième panneau (3
) sur la page)Nombre total de panneaux sur la page
Liste des documents (
DocumentInfo
) présentés dans chaque panneau
Pour en savoir plus sur les objets PanelInfo
, consultez PanelInfo.
Précharger des panneaux ou les charger à la demande
Il existe deux méthodes courantes pour afficher des recommandations sur des pages Web ou mobiles.
La méthode que vous utilisez détermine le nombre et le contenu des événements utilisateur view-home-page
que vous enregistrez.
Préchargement : avec le préchargement, tous les éléments de recommandation sont générés lorsque l'utilisateur arrive sur la page. Dans ce cas, lorsque l'utilisateur charge la page d'accueil, vous enregistrez un événement utilisateur
view-home-page
(ouview-item
) avec tous les panneaux et documents.Chargement différé : avec le chargement différé, le contenu des panneaux n'est pas généré lorsque l'utilisateur arrive sur la page. Au lieu de cela, le contenu est chargé de manière dynamique lorsque l'utilisateur fait défiler la page vers le bas pour afficher les panneaux ou vers la droite pour voir plus de recommandations. Dans ce cas, lorsqu'un utilisateur charge la page d'accueil, vous enregistrez un événement utilisateur
view-home-page
(ouview-item
) initial, puis vous continuez à enregistrer d'autres événements lorsque l'utilisateur fait défiler la page pour générer plus de contenus recommandés. Dans les événements suivants, vous n'avez besoin d'inclure dans le tableaupanels
que l'incrément de documents affichés.
Exemple de scénario
La page d'accueil d'une entreprise média affiche deux panneaux de recommandations :
Un panneau "Tendances actuelles" optimisé par le modèle Les plus populaires.
Panneau de recommandations personnalisées en cours de test A/B. Certains utilisateurs voient un panneau de suggestions générées par le modèle Recommandations personnalisées (groupe A), tandis que d'autres voient des recommandations issues du modèle propriétaire de l'entreprise (groupe B).
Lorsqu'un utilisateur attribué au groupe B consulte cette page d'accueil, l'événement utilisateur au format JavaScript Pixel se présente comme suit :
var user_event = { "eventType": "view-home-page", "userPseudoId": "4003345673.123451357", "eventTime": "2025-07-01T03:33:33.000001Z", "userInfo": { "userId": "jane.doe@example.com", }, "tagIds": ["group-B"], "panels": [ { "panelId": "panel-1", "displayId": "Trending Now", "documents": [ { "id": "254722" }, { "id": "2951" }, ... { "id": "1201" } ], "panelPosition": 1, "totalPanels": 2 }, { "panelId": "panel-2", "displayId": "Recommended for You", "documents": [ { "id": "79132" }, { "id": "109487" }, ... { "id": "164179" } ], "panelPosition": 2, "totalPanels": 2 } ] };
Étapes suivantes
- Découvrez comment enregistrer des événements utilisateur.