Nutzerereignisse

Auf dieser Seite werden Nutzerereignisse für Medien-Apps beschrieben, einschließlich Nutzerereignissen Anforderungen und Beispiele für Nutzerereignistypen.

Für Apps mit Medienempfehlungen ist das Aufzeichnen von Nutzerereignissen erforderlich. Medien Empfehlungs-Apps verwenden Nutzerereignisse in Echtzeit, um Empfehlungen zu generieren. Für andere App-Typen sind keine Nutzerereignisse erforderlich.

In der folgenden Tabelle ist aufgeführt, für welche App-Typen Nutzerereignisse hochgeladen werden sollten:

App-Typ Sind Nutzerereignisse erforderlich?
Medienempfehlungen Ja
Mediensuche Nein, aber dringend empfohlen
Allgemeine Empfehlungen Nein
Allgemeine Suche Nein, aber dringend empfohlen

Informationen zum Aufzeichnen von Nutzerereignissen finden Sie unter Nutzerereignisse in Echtzeit aufzeichnen

Nutzerereignistypen

Sie können die folgenden Arten von Nutzerereignissen aufzeichnen, wenn Endnutzer Ihre Website besuchen:

Name des Nutzerereignisses Nutzeraktion
view-category-page Eine Kategorieseite wird aufgerufen, z. B. „Startseite“ > „Serien“ > „Dramen“ oder „Startseite“ > „Filme“ > „Action“.
view-item Ruft die Detailseite eines Dokuments auf.
view-home-page Ruft die Startseite auf.
search Durchsucht den Datenspeicher.
media-play Klicks auf ein Medienelement.
media-complete Stoppt die Wiedergabe eines Medienelements, was auf das Ende der Wiedergabe hinweist.

Weitere Informationen zum UserEvent-Objekt finden Sie in der UserEvent API-Referenz.

Anforderungen und Best Practices für Nutzerereignisse in Medien-Apps

In den folgenden Tabellen sind die Anforderungen und Best Practices für Nutzerereignistypen aufgeführt die Apps für Medienempfehlungen verwenden. Prüfen Sie, ob Ihre Nutzerereignisse diese Kriterien erfüllen Anforderungen erfüllt, damit Ihre App qualitativ hochwertige Ergebnisse liefern kann.

Im Hilfeartikel Empfehlungen für Medien-Apps werden die Arten von Nutzerereignissen, die je nach Empfehlungstyp und Optimierungsziel, das Sie verwenden möchten.

Ereignistyppriorität für Medienempfehlungen

In der folgenden Tabelle wird die Priorität von Nutzerereignistypen für Medien beschrieben. Empfehlungen. Für die Verwendung von Medienempfehlungen sind einige Nutzerereignisse erforderlich. Andere werden empfohlen, um Ihre Ergebnisse zu verbessern, sind aber nicht erforderlich.

Priorität Nutzerereignisse
Erforderlich für den ersten Live-Test mit Medienempfehlungen

view-item

view-home-page

media-play

media-complete

Wichtig für die Verbesserung der Ergebnisqualität von Medienempfehlungen

view-category-page

Anforderungen an Medienempfehlungen

Achten Sie darauf, dass Ihre Nutzerereignisse die folgenden Anforderungen erfüllen, damit Ihre Apps für Medienempfehlungen qualitativ hochwertige Ergebnisse generieren können.

Ereignistyp Anforderung Auswirkungen
Alle Ereignisse

Synthetische Daten oder doppelte Ereignisse dürfen nicht enthalten sein.

Synthetische oder doppelte Ereignisse wirken sich negativ auf die Qualität der Ergebnisse aus und können die Bereitstellung Ihrer App verhindern. Doppelte Ereignisse können zu falschen Messwerten führen.

Geben Sie für jeden aufgenommenen Ereignistyp mindestens 100 eindeutige Nutzer-Pseudo-IDs an.

Dadurch wird sichergestellt, dass Apps mit Medienempfehlungen genügend Daten haben, um Inhalte zu generieren. qualitativ hochwertige Ergebnisse zu liefern.

Nutzer-Pseudo-IDs müssen beim Ereignisimport oder bei der Ereignisaufzeichnung und in Anfragen für Medienempfehlungen genau gleich formatiert sein.

Ein einheitliches Format für Nutzer-Pseudo-IDs hilft Medien dabei, Empfehlungs-Apps die Besuchermuster korrekt identifizieren und qualitativ hochwertigeren Ergebnisse basierend auf dem Nutzerverhalten.

Das Feld DocumentInfo.name oder das Feld DocumentInfo.id ist für alle Dokumente erforderlich.

Ein Ereignis, das ein Dokument ohne DocumentInfo.name-Feld oder DocumentInfo.id-Feld enthält, kann nicht von Apps für Medienempfehlungen verwendet werden.

Die in den Ereignissen enthaltenen Dokumente sollten in Ihrem Datenspeicher vorhanden sein.

Das Verhältnis von nicht verbundenen Ereignissen sollte so niedrig wie möglich sein. Ein hohes Verhältnis kann sich negativ auf die Qualität der Ergebnisse auswirken.

Einige Nutzerereignisse sollten dieselbe Pseudo-ID haben.

Medienempfehlungen zum Erstellen gültiger Sequenzverläufe Apps müssen mehrere Ereignisse mit derselben Nutzer-Pseudo-ID sehen können.

Beispiel: visitor123 hat sich fünf Elemente angesehen und bei zwei davon auf „Wiedergabe“ geklickt. Wenn diese Ereignisse dieselbe einheitlich formatierte Nutzer-Pseudo-ID enthalten, kann eine App für Medienempfehlungen diese Verhaltenssequenz in ihren Ergebnissen berücksichtigen.

view-item

Fügen Sie genau ein Dokument pro Ereignis ein.

Das Ereignis kann nicht verwendet werden, wenn kein Dokument vorhanden ist. Wenn mehrere Dokumente angegeben sind, ist das Ereignis fehlerhaft und kann nicht verwendet werden.

media-play

Geben Sie genau ein Dokument pro Ereignis an.

Wenn mehrere Dokumente enthalten sind, ist der Termin fehlerhaft und kann nicht verwendet werden können.

Beispiele für Nutzerereignistypen und Schemas

In diesem Abschnitt werden die Datenformate für jeden von Medienempfehlungen unterstützten Ereignistyp bereitgestellt.

Beispiele für JavaScript Pixel werden bereitgestellt. Für BigQuery wird das vollständige Tabellenschema für jeden Typ bereitgestellt.

Für alle Nutzerereignistypen ist userId optional.

Hinweis:

  • Das Feld tagIds ist nur erforderlich, wenn Sie einen A/B-Test machen.
  • Das Feld attributionToken ist optional. Es wird verwendet, um die Leistung zu messen. search und view-item Ereignisse, die über Medienempfehlungen generiert werden Klicks sollten ein Attributionstoken haben, damit die Ereignisse basierend auf den Empfehlungen.

Weitere Informationen zum Nutzerereignisobjekt finden Sie in der UserEvent API-Referenzdokumentation

view-category-page

Im Folgenden sehen Sie das Nutzerereignisformat view-category-page.

Mindestens erforderliches view-category-page-Objekt

In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats view-category-page gezeigt.

Obwohl normalerweise nur eine Kategorie mit einer Seite verknüpft ist, unterstützt das Feld pageCategories auch eine Kategoriehierarchie, die Sie als Liste bereitstellen können.

JavaScript Pixel

var user_event = {
  "eventType": "view-category-page",
  "userPseudoId": "user-pseudo-id",
  "eventTime": "2020-01-01T03:33:33.000001Z",
  "pageInfo": {
    "pageCategory": "category1 > category2"
  }
};

BigQuery

Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.

Die Modi für Pflichtfelder werden auf REQUIRED oder REPEATED gesetzt. Die Modi für optionale Felder sind auf NULLABLE gesetzt.

eventTime ist erforderlich, um Ereignisse zu importieren, BigQuery eventTime ist ein String im Zeitstempelformat.

[
  {
    "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": "pageCategory",
        "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-item

Im Folgenden sehen Sie das Datenformat des Nutzerereignisses view-item.

Mindestens erforderliches view-item-Objekt

In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats view-item gezeigt.

In den meisten Fällen enthält documents Details zum zugehörigen Dokument.

JavaScript Pixel

var user_event = {
  "eventType": "view-item",
  "userPseudoId": "user-pseudo-id",
  "eventTime": "2020-01-01T03:33:33.000001Z",
  "documents": [{
    "id": "document-id"
  }]
};

BigQuery

Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.

Die Modi für Pflichtfelder werden auf REQUIRED oder REPEATED gesetzt. Die Modi für optionale Felder sind auf NULLABLE gesetzt.

eventTime ist erforderlich, um Ereignisse zu importieren, BigQuery eventTime ist ein String im Zeitstempelformat.

[
  {
    "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

Im Folgenden sehen Sie das Nutzerereignisformat view-home-page.

Mindestens erforderliches view-home-page-Objekt

In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats view-home-page gezeigt.

JavaScript Pixel

var user_event = {
  "eventType": "view-home-page",
  "userPseudoId": "user-pseudo-id",
  "eventTime": "2020-01-01T03:33:33.000001Z",
};

BigQuery

Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.

Die Modi für Pflichtfelder werden auf REQUIRED oder REPEATED gesetzt. Die Modi für optionale Felder sind auf NULLABLE gesetzt.

eventTime ist erforderlich, um Ereignisse zu importieren, BigQuery eventTime ist ein String im Zeitstempelformat.

[
  {
    "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"
          }
        ]
      }
    ]
  }
]

Im Folgenden sehen Sie das Nutzerereignisformat search.

Mindestens erforderliches search-Objekt

In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats search gezeigt.

Mindestens eines der Felder searchQuery oder pageCategory ist erforderlich:

  • Geben Sie searchQuery für Suchereignisse an, bei denen der Nutzer Text eingegeben hat Abfrage.

  • Geben Sie pageCategory an, wenn der Nutzer durch Stöbern zu den gewünschten Elementen gelangt ist, also durch Klicken auf Kategorien statt durch Eingabe einer Textabfrage.

documents sollte die Liste der Dokument-IDs enthalten, die der Endnutzer in auf der Suchergebnisseite.

JavaScript Pixel

var user_event = {
  eventType: "search",
  userPseudoId: "user-pseudo-id",
  eventTime: "2020-01-01T03:33:33.000001Z",
  searchInfo: {
    searchQuery: "search-query",
  },
  pageInfo: {
    pageCategory: "category1 > category2",
  },
  documents: [
    {
      id: "document-id1",
    },
    {
      id: "document-id2",
    },
  ]
};

BigQuery

Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.

Die Modi für Pflichtfelder werden auf REQUIRED oder REPEATED gesetzt. Die Modi für optionale Felder sind auf NULLABLE gesetzt.

Beachten Sie, dass eventTime zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime ist ein String im Zeitstempelformat.

[
  {
    "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": "documents",
    "type": "RECORD",
    "mode": "REPEATED",
    "fields": [
      {
        "name": "id",
        "type": "STRING",
        "mode": "NULLABLE"
      }
    ]
  }
]

Media-Wiedergabe

Im Folgenden sehen Sie das Nutzerereignisformat media-play.

Erforderliches Minimum für Media-Play-Objekt

In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats media-play gezeigt.

JavaScript Pixel

var user_event = {
  "eventType": "media-play",
  "userPseudoId": "user-pseudo-id",
  "eventTime": "2020-01-01T03:33:33.000001Z",
  "documents": [
    {
      "id": "document-id1"
    }
  ]
};

BigQuery

Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.

Die Modi für Pflichtfelder werden auf REQUIRED oder REPEATED gesetzt. Die Modi für optionale Felder sind auf NULLABLE gesetzt.

eventTime ist erforderlich, um Ereignisse zu importieren, BigQuery eventTime ist ein String im Zeitstempelformat.

[
  {
    "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

Im Folgenden sehen Sie das Nutzerereignisformat media-complete.

Erforderliches Objekt für die vollständige Medienwiedergabe (Minimum)

In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats media-complete gezeigt.

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": 1.2
  }
};

BigQuery

Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.

Die Modi für Pflichtfelder werden auf REQUIRED oder REPEATED gesetzt. Die Modi für optionale Felder sind auf NULLABLE gesetzt.

Beachten Sie, dass eventTime zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime ist ein String im Zeitstempelformat.

[
  {
    "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"
      }
    ]
  }
]

Benutzerdefinierte Attribute

Sie können zusätzliche benutzerdefinierte Attribute und Funktionen für Nutzerereignisse hinzufügen. Dies kann zu besseren, spezifischeren Empfehlungen für Ihre Nutzer führen. Um benutzerdefinierte Attribute hinzuzufügen, verwenden Sie attributes, wenn Sie Nutzerereignis aufzeichnen.

Wenn Sie benutzerdefinierte Attribute für aufgenommene Nutzerereignisse angeben, ist es wichtig, sie auch in die Nutzerereignisse aufnehmen, die Sie mit Empfehlungen verknüpfen -Anfragen. Die Formatierung benutzerdefinierter Attribute muss zwischen importierte Ereignisse und Ereignisse, die mit Empfehlungsanfragen bereitgestellt werden. Dadurch können Apps für Medienempfehlungen verwenden diese benutzerdefinierten Attribute, um die Qualität zu verbessern.

Sie können benutzerdefinierte Textwerte mit dem Feld text oder benutzerdefinierte numerische Werte mit dem Feld numbers angeben.

Das folgende Beispiel zeigt den Abschnitt attributes aus einer Anfrage zum Aufzeichnen eines Nutzerereignisses:

  attributes: {
    user_age: {text: ["teen", "young adult"]},
    user_location: {text: ["CA"]},
    user_zip: {numbers: [90210]}
  }

Über Nutzerinformationen

userPseudoId steht für die eindeutige Nutzerkennung und ist erforderlich, wenn Sie ein Nutzerereignis aufzeichnen.

Die Nutzerinformationen (UserInfo), die beim Aufzeichnen eines Nutzerereignisses einbezogen werden, enthalten den Wert userPseudoId und, falls verfügbar, den Wert userId. userId ist optional und kann als eindeutige, dauerhafte Kennung für ein geräteübergreifend Nutzer, wenn sich ein Nutzer auf Ihrer Website anmeldet. Wenn Sie den userId für einen Nutzer aufzeichnen, können Apps für Medienempfehlungen für einen Nutzer persönlichere Ergebnisse über mehrere Geräte hinweg generieren, z. B. sowohl ein Mobilgerät als auch einen Webbrowser.

Informationen zum Zeitstempel

Wenn Sie ein Nutzerereignis aufzeichnen, müssen Sie einen genauen Zeitstempel für das Ereignis angeben. Mit genauen Zeitstempeln werden Ihre Ereignisse in die richtige Reihenfolge bringen. Für erfasste Ereignisse werden automatisch Zeitstempel aufgezeichnet mit dem JavaScript Pixel. Beim Importieren von Ereignissen müssen Sie den Zeitstempel im Feld eventTime in dem von RFC 3339 angegebenen Format festlegen.

Nächste Schritte