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-Ereignisobjekte.

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 ist in API-Antworten und auf der Seite zur Chat API-Konfiguration nicht vorhanden.

threadKey

string

Der von der Chat-App definierte Schlüssel für den Thread, der mit dem Interaktionsereignis verknüpft ist. 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 in einem neuen 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 dem Klicken auf eine Karte oder ein Dialogfeld verknüpften Formularaktionsdaten. Weitere Informationen finden Sie unter Formulareingaben von Nutzern auf Karten 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 enthält 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 Google Chat-App-Befehl.

CommonEventObject

Das allgemeine 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 die Sprache des Nutzers, die Host-App und die Plattform.

Zusätzlich zu Startseiten- und Kontext-Triggern erstellen Add-ons Ereignisobjekte und übergeben sie an Aktions-Callback-Funktionen, wenn der Nutzer mit Widgets interagiert. Die Callback-Funktion Ihres Add-ons kann das gemeinsame Ereignisobjekt abfragen, 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 Ihrem Add-on-Manifest addOns.common.useLocaleFromApp auf true festlegen. Die Liste der Bereiche Ihres Add-ons muss auch https://www.googleapis.com/auth/script.locale enthalten. Weitere Informationen finden Sie unter Auf Nutzer-Locale und ‑Zeitzone 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-Enum, 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 Ihrem Add-on-Manifest addOns.common.useLocaleFromApp auf true festlegen. Die Liste der Bereiche Ihres Add-ons muss auch https://www.googleapis.com/auth/script.locale enthalten. Weitere Informationen finden Sie unter Auf Nutzer-Locale und ‑Zeitzone 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: Wenn Sie auf ein Auswahlfeld mit der ID myDTPicker zugreifen möchten, verwenden Sie e.commonEventObject.formInputs.myDTPicker.dateTimeInput, um auf das Objekt DateTimeInput zuzugreifen.

Beispiel: Wenn Sie auf ein Auswahlfeld mit der ID myDatePicker zugreifen möchten, verwenden Sie e.commonEventObject.formInputs.myDatePicker.dateInput, um auf das Objekt DateInput zuzugreifen.

Beispiel: Wenn Sie auf ein Auswahlfeld mit der ID myTimePicker zugreifen möchten, verwenden Sie e.commonEventObject.formInputs.myTimePicker.timeInput, um auf das Objekt TimeInput zuzugreifen.

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 finden Sie unter Interaktive Benutzeroberflächen für Chat-Apps erstellen.

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
{

  "stringInputs": {
    object (StringInputs)
  },
  "dateTimeInput": {
    object (DateTimeInput)
  },
  "dateInput": {
    object (DateInput)
  },
  "timeInput": {
    object (TimeInput)
  }
}
Felder
Im Folgenden finden Sie eine Liste von sich gegenseitig ausschließenden Feldern. In einer Antwort wird höchstens eines der Felder festgelegt:
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 Kästchen, 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.

Ende der sich gegenseitig ausschließenden Felder.

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 Epochenzeit in Millisekunden.

hasDate

boolean

Gibt an, ob die Eingabe datetime 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 Epochenzeit 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.