Event

Ein Google Chat-App-Interaktionsereignis, das Daten zur Interaktion eines Nutzers mit einer Chat-App enthält. Informationen zum Konfigurieren Ihrer Chat-App für den Empfang von Interaktionsereignissen finden Sie unter Nutzerinteraktionen empfangen und darauf reagieren.

Chat-Apps können nicht nur Ereignisse aus Nutzerinteraktionen empfangen, sondern auch Ereignisse zu Änderungen an Bereichen, z. B. wenn einem Bereich ein neues Mitglied hinzugefügt wird. Weitere Informationen zu Gruppenbereichsereignissen finden Sie unter Mit Ereignissen aus Google Chat arbeiten.

Hinweis: Dieses Ereignis wird nur für Chat-Interaktionsereignisse verwendet. Wenn Ihre Chat-App als Google Workspace-Add‑on erstellt wurde, finden Sie weitere Informationen in der Add‑on-Dokumentation unter Chat event objects.

JSON-Darstellung
{
  "type": enum (EventType),
  "eventTime": string,
  "token": string,
  "threadKey": string,
  "message": {
    object (Message)
  },
  "user": {
    object (User)
  },
  "thread": {
    object (Thread)
  },
  "space": {
    object (Space)
  },
  "action": {
    object (FormAction)
  },
  "configCompleteRedirectUrl": string,
  "isDialogEvent": boolean,
  "dialogEventType": enum (DialogEventType),
  "common": {
    object (CommonEventObject)
  },
  "appCommandMetadata": {
    object (AppCommandMetadata)
  }
}
Felder
type

enum (EventType)

Der Typ der Nutzerinteraktion mit der Chat-App, z. B. MESSAGE oder ADDED_TO_SPACE.

eventTime

string (Timestamp format)

Der Zeitstempel, der angibt, wann das Interaktionsereignis aufgetreten ist.

token

string

Ein geheimer Wert, mit dem Legacy-Chat-Apps prüfen können, ob eine Anfrage von Google stammt. Google generiert das Token zufällig und sein Wert bleibt statisch. Sie können das Token auf der Konfigurationsseite der Chat API in der Google Cloud Console abrufen, widerrufen oder neu generieren.

Moderne Chat-Apps verwenden dieses Feld nicht. Sie fehlt in API-Antworten und auf der Seite zur Chat API-Konfiguration.

threadKey

string

Der von der Chat-App definierte Schlüssel für den Thread, der sich auf das Interaktionsereignis bezieht. Weitere Informationen finden Sie unter spaces.messages.thread.threadKey.

message

object (Message)

Für die Interaktionsereignisse ADDED_TO_SPACE, CARD_CLICKED und MESSAGE die Nachricht, die das Interaktionsereignis ausgelöst hat (falls zutreffend).

user

object (User)

Der Nutzer, der mit der Chat App interagiert hat.

thread

object (Thread)

Der Thread, in dem der Nutzer mit der Chat-App interagiert hat. Das kann ein neuer Thread sein, der durch eine neu gesendete Nachricht erstellt wurde. Dieses Feld wird ausgefüllt, wenn das Interaktionsereignis mit einer bestimmten Nachricht oder einem bestimmten Thread verknüpft ist.

space

object (Space)

Der Gruppenbereich, in dem der Nutzer mit der Chat-App interagiert hat.

action

object (FormAction)

Für CARD_CLICKED-Interaktionsereignisse die mit der Formularaktion verknüpften Daten, wenn ein Nutzer auf eine Karte oder ein Dialogfeld klickt. Weitere Informationen finden Sie unter Von Nutzern in Karten eingegebene Formulardaten lesen.

configCompleteRedirectUrl

string

Diese URL wird für Interaktionsereignisse vom Typ MESSAGE, ADDED_TO_SPACE und APP_COMMAND ausgefüllt. Nachdem Nutzer einen Autorisierungs- oder Konfigurationsvorgang außerhalb von Google Chat abgeschlossen haben, müssen sie zu dieser URL weitergeleitet werden, um Google Chat zu signalisieren, dass der Autorisierungs- oder Konfigurationsvorgang erfolgreich war. Weitere Informationen finden Sie unter Chat-App mit anderen Diensten und Tools verbinden.

isDialogEvent

boolean

Für CARD_CLICKED- und MESSAGE-Interaktionsereignisse wird angegeben, ob der Nutzer mit einem Dialogfeld interagiert oder kurz davor steht.

dialogEventType

enum (DialogEventType)

Der Typ des empfangenen Dialog-Interaktionsereignisses.

common

object (CommonEventObject)

Stellt Informationen zum Client des Nutzers dar, z. B. Sprache, Host-App und Plattform. Bei Chat-Apps umfasst CommonEventObject Informationen, die von Nutzern eingegeben werden, die mit Dialogfeldern interagieren, z. B. Daten, die auf einer Karte eingegeben werden.

appCommandMetadata

object (AppCommandMetadata)

Metadaten zu einem Chat-App-Befehl.

CommonEventObject

Das gemeinsame Ereignisobjekt ist der Teil des gesamten Ereignisobjekts, der allgemeine, hostunabhängige Informationen vom Client des Nutzers an das Add-on überträgt. Diese Informationen umfassen Details wie das Gebietsschema, die Host-App und die Plattform des Nutzers.

Zusätzlich zu Startseiten- und Kontext-Triggern erstellen Add-ons Ereignisobjekte und übergeben sie an Aktions-Callback-Funktionen, wenn der Nutzer mit Widgets interagiert. Mit der Callback-Funktion Ihres Add-ons kann das gemeinsame Ereignisobjekt abgefragt werden, um den Inhalt offener Widgets im Client des Nutzers zu ermitteln. Ihr Add-on kann beispielsweise den Text finden, den ein Nutzer in ein TextInput-Widget im eventObject.commentEventObject.formInputs-Objekt eingegeben hat.

Für Chat-Apps der Name der Funktion, die der Nutzer beim Interagieren mit einem Widget aufgerufen hat.

JSON-Darstellung
{
  "userLocale": string,
  "hostApp": enum (HostApp),
  "platform": enum (Platform),
  "timeZone": {
    object (TimeZone)
  },
  "formInputs": {
    string: {
      object (Inputs)
    },
    ...
  },
  "parameters": {
    string: string,
    ...
  },
  "invokedFunction": string
}
Felder
userLocale

string

Standardmäßig deaktiviert. Die Sprach- und Länder-/Regionskennung des Nutzers im Format ISO 639-Sprachcode-ISO 3166-Länder-/Regionscode. Beispiel: en-US

Wenn Sie dieses Feld aktivieren möchten, müssen Sie in der Manifestdatei Ihres Add-ons addOns.common.useLocaleFromApp auf true setzen. Die Bereichsliste Ihres Add-ons muss auch https://www.googleapis.com/auth/script.locale enthalten. Weitere Informationen finden Sie unter Auf das Gebietsschema und die Zeitzone des Nutzers zugreifen.

hostApp

enum (HostApp)

Gibt die Host-App an, in der das Add-on aktiv ist, wenn das Ereignisobjekt generiert wird. Mögliche Werte:

  • GMAIL
  • CALENDAR
  • DRIVE
  • DOCS
  • SHEETS
  • SLIDES
  • CHAT
platform

enum (Platform)

Die Plattform-Enumeration, die die Plattform angibt, auf der das Ereignis stattfindet (WEB, IOS oder ANDROID). Wird von Chat-Apps nicht unterstützt.

timeZone

object (TimeZone)

Standardmäßig deaktiviert. Die Zeitzonen-ID und der Zeitversatz gegenüber der koordinierten Weltzeit (UTC). Wenn Sie dieses Feld aktivieren möchten, müssen Sie in der Manifestdatei Ihres Add-ons addOns.common.useLocaleFromApp auf true setzen. Die Bereichsliste Ihres Add-ons muss auch https://www.googleapis.com/auth/script.locale enthalten. Weitere Informationen finden Sie unter Auf das Gebietsschema und die Zeitzone des Nutzers zugreifen.

Wird nur für die Ereignistypen CARD_CLICKED und SUBMIT_DIALOG unterstützt.

formInputs

map (key: string, value: object (Inputs))

Eine Karte mit den aktuellen Werten der Widgets auf der angezeigten Karte. Die Kartenschlüssel sind die String-IDs, die jedem Widget zugewiesen sind.

Die Struktur des Zuordnungswertobjekts hängt vom Widget-Typ ab:

Hinweis: Die folgenden Beispiele sind für die V8-Laufzeitumgebung von Apps Script formatiert. Wenn Sie die Rhino-Laufzeit verwenden, müssen Sie [""] nach dem Wert hinzufügen. Formatieren Sie das Ereignisobjekt beispielsweise als e.commonEventObject.formInputs.employeeName[""].stringInputs.value[0] anstelle von e.commonEventObject.formInputs.employeeName.stringInputs.value[0]. Weitere Informationen zu Laufzeitumgebungen in Apps Script finden Sie unter V8-Laufzeitumgebung – Übersicht.

  • Widgets mit einem einzelnen Wert (z. B. ein Textfeld): eine Liste von Strings (nur ein Element).

Beispiel: Für ein Texteingabe-Widget mit employeeName als ID greifen Sie mit e.commonEventObject.formInputs.employeeName.stringInputs.value[0] auf den Texteingabewert zu.

  • Mehrwertige Widgets (z. B. Checkbox-Gruppen): eine Liste von Strings.

Beispiel: Für ein Widget mit mehreren Werten und der ID participants greifen Sie mit e.commonEventObject.formInputs.participants.stringInputs.value auf das Werte-Array zu.

Beispiel: Für eine Auswahl mit der ID myDTPicker können Sie mit e.commonEventObject.formInputs.myDTPicker.dateTimeInput auf das Objekt DateTimeInput zugreifen.

Beispiel: Für eine Auswahl mit der ID myDatePicker können Sie mit e.commonEventObject.formInputs.myDatePicker.dateInput auf das Objekt DateInput zugreifen.

Beispiel: Für eine Auswahl mit der ID myTimePicker können Sie mit e.commonEventObject.formInputs.myTimePicker.timeInput auf das Objekt TimeInput zugreifen.

parameters

map (key: string, value: string)

Alle zusätzlichen Parameter, die Sie einer Aktion mit actionParameters oder Action.setParameters() übergeben.

Entwicklervorschau:Wenn Sie für Add-ons, die Google Chat erweitern, Elemente basierend auf dem vorschlagen möchten, was die Nutzer in Mehrfachauswahlmenüs eingeben, verwenden Sie den Wert des "autocomplete_widget_query"-Schlüssels (event.commonEventObject.parameters["autocomplete_widget_query"]). Sie können diesen Wert verwenden, um eine Datenbank abzufragen und den Nutzern beim Tippen auswählbare Elemente vorzuschlagen. Weitere Informationen finden Sie unter Informationen von Google Chat-Nutzern erheben und verarbeiten.

invokedFunction

string

Der Name der aufzurufenden Funktion.

Dieses Feld wird für Google Workspace-Add‑ons, die Google Chat erweitern, nicht ausgefüllt. Stattdessen sollten Add-ons, die Chat erweitern, das Feld parameters verwenden, um Funktionsdaten wie Kennungen zu empfangen. Weitere Informationen zum Erstellen interaktiver Benutzeroberflächen für Chat-Apps

TimeZone

Die Zeitzonen-ID und der Zeitversatz gegenüber der koordinierten Weltzeit (UTC). Wird nur für die Ereignistypen CARD_CLICKED und SUBMIT_DIALOG unterstützt.

JSON-Darstellung
{
  "id": string,
  "offset": integer
}
Felder
id

string

Der IANA-TZ-Zeitzonendatenbankcode, z. B. „America/Toronto“.

offset

integer

Der Zeitversatz der Nutzerzeitzone gegenüber der koordinierten Weltzeit (UTC) in Millisekunden.

Eingaben

Arten von Daten, die Nutzer auf Karten oder in Dialogfeldern eingeben können. Der Eingabetyp hängt vom Typ der Werte ab, die das Widget akzeptiert.

JSON-Darstellung
{

  // Union field inputs can be only one of the following:
  "stringInputs": {
    object (StringInputs)
  },
  "dateTimeInput": {
    object (DateTimeInput)
  },
  "dateInput": {
    object (DateInput)
  },
  "timeInput": {
    object (TimeInput)
  }
  // End of list of possible types for union field inputs.
}
Felder

Union-Feld inputs.

Für inputs ist nur einer der folgenden Werte zulässig:

stringInputs

object (StringInputs)

Eine Liste von Strings, die die Werte darstellen, die der Nutzer in ein Widget eingibt.

Wenn das Widget nur einen Wert akzeptiert, z. B. ein TextInput-Widget, enthält die Liste ein String-Objekt. Wenn das Widget mehrere Werte akzeptiert, z. B. ein SelectionInput-Widget mit Checkboxen, enthält die Liste für jeden Wert, den der Nutzer eingibt oder auswählt, ein String-Objekt.

dateTimeInput

object (DateTimeInput)

Eingabewerte für Datum und Uhrzeit aus einem DateTimePicker-Widget, das sowohl Datum als auch Uhrzeit akzeptiert.

dateInput

object (DateInput)

Datumseingabewerte aus einem DateTimePicker-Widget, das nur Datumswerte akzeptiert.

timeInput

object (TimeInput)

Zeit-Eingabewerte aus einem DateTimePicker-Widget, das nur Zeitwerte akzeptiert.

StringInputs

Eingabeparameter für reguläre Widgets. Bei Widgets mit einem einzelnen Wert ist es eine Liste mit einem einzelnen Wert. Bei Widgets mit mehreren Werten, z. B. Kontrollkästchen, werden alle Werte angezeigt.

JSON-Darstellung
{
  "value": [
    string
  ]
}
Felder
value[]

string

Eine Liste von Strings, die vom Nutzer eingegeben wurden.

DateTimeInput

Datums- und Uhrzeit-Eingabewerte.

JSON-Darstellung
{
  "msSinceEpoch": string,
  "hasDate": boolean,
  "hasTime": boolean
}
Felder
msSinceEpoch

string (int64 format)

Zeit seit der Epoche in Millisekunden.

hasDate

boolean

Gibt an, ob die datetime-Eingabe ein Kalenderdatum enthält.

hasTime

boolean

Gibt an, ob die datetime-Eingabe einen Zeitstempel enthält.

DateInput

Datumseingabewerte.

JSON-Darstellung
{
  "msSinceEpoch": string
}
Felder
msSinceEpoch

string (int64 format)

Zeit seit der Epoche in Millisekunden.

TimeInput

Zeiteingabewerte.

JSON-Darstellung
{
  "hours": integer,
  "minutes": integer
}
Felder
hours

integer

Die Stunde im 24‑Stunden-Format.

minutes

integer

Die Anzahl der Minuten nach der vollen Stunde. Gültige Werte sind 0 bis 59.

AppCommandMetadata

Metadaten zu einem Chat-App-Befehl.

JSON-Darstellung
{
  "appCommandId": integer,
  "appCommandType": enum (AppCommandType)
}
Felder
appCommandId

integer

Die ID für den in der Chat API-Konfiguration angegebenen Befehl.

appCommandType

enum (AppCommandType)

Der Typ des Chat-App-Befehls.