Nutzerereignisse

Auf dieser Seite werden Nutzerereignisse für Gemini Enterprise-Apps beschrieben, einschließlich Nutzerereignistypen, Anforderungen und Beispielen für Nutzerereignistypen.

Wenn Sie die Gemini Enterprise-APIs in Ihren eigenen Apps verwenden, müssen Sie die Suche in Ihrer App konfigurieren, um die Nutzerereignisse abzurufen, und dann die Daten zu Nutzerereignissen in Ihre Gemini Enterprise-App einfügen.

Wenn Sie Ihre App über dieGoogle Cloud Console erstellen, müssen Sie Nutzerereignisse nicht manuell importieren und diese Seite nicht lesen.

Informationen zum Aufzeichnen von Nutzerereignissen finden Sie unter Nutzerereignisse in Echtzeit aufzeichnen. Informationen zum Bulk-Import von bisherigen Nutzerereignissen finden Sie unter Bisherige Nutzerereignisse importieren.

Nutzerereignistypen

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

Name des Nutzerereignisses Nutzeraktion
view-item Details eines Dokuments ansehen
search Sucht Daten in der Gemini Enterprise-App.

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

Beispiele für Nutzerereignistypen und Schemas

In diesem Abschnitt werden die Datenformate für jeden von Gemini Enterprise-Apps 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.

Weitere Informationen zum Nutzerereignisobjekt finden Sie in der API-Referenzdokumentation für UserEvent.

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.

Beachten Sie, dass eventTime zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime ist ein String mit einem 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"
          }
        ]
      }
    ]
  }
]

Im Folgenden sehen Sie das Nutzerereignisformat search.

Mindestens erforderliches search-Objekt

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

Geben Sie searchQuery für Suchereignisse an, bei denen der Nutzer eine Textanfrage eingegeben hat.

Die attributionToken wird mit den Suchergebnissen zurückgegeben.

documents sollte die Liste der Dokument-IDs enthalten, die dem Endnutzer auf der Suchergebnisseite angezeigt werden.

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

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

Ü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 permanente Kennzeichnung für einen Nutzer auf allen Geräten verwendet werden, wenn sich ein Nutzer auf Ihrer Website anmeldet. Wenn Sie die userId für einen Nutzer aufzeichnen, können Gemini Enterprise-Apps 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. Genaue Zeitstempel sorgen dafür, dass Ihre Ereignisse in der richtigen Reihenfolge gespeichert werden. Für Ereignisse, die mit dem JavaScript Pixel erfasst wurden, werden Zeitstempel automatisch erfasst. Beim Importieren von Ereignissen müssen Sie den Zeitstempel im Feld eventTime in dem von RFC 3339 angegebenen Format festlegen.