Event

Google Chat 應用程式互動事件。

如要瞭解互動事件,請參閱「接收及回覆與 Google Chat 應用程式的互動情形」。如要瞭解事件類型和事件酬載示例,請參閱「Google Chat 應用程式互動事件類型」。

除了接收使用者互動的事件外,Chat 應用程式也可以接收聊天室異動事件,例如新成員加入聊天室。如要進一步瞭解聊天室活動,請參閱「使用 Google Chat 中的活動」。

JSON 表示法
{
  "type": enum (EventType),
  "eventTime": string,
  "token": string,
  "threadKey": string,
  "message": {
    object (Message)
  },
  "user": {
    object (User)
  },
  "space": {
    object (Space)
  },
  "action": {
    object (FormAction)
  },
  "configCompleteRedirectUrl": string,
  "isDialogEvent": boolean,
  "dialogEventType": enum (DialogEventType),
  "common": {
    object (CommonEventObject)
  }
}
欄位
type

enum (EventType)

互動事件的類型。詳情請參閱「Google Chat 應用程式互動事件類型」。

eventTime

string (Timestamp format)

指出互動事件發生時間的時間戳記。

token

string

舊版 Chat 專用應用程式的密鑰值,可用來驗證要求是否來自 Google。Google 會隨機產生權杖,但其值仍為靜態。您可以前往 Google Cloud 控制台的 Chat API 設定頁面取得、撤銷或重新產生權杖。

現代 Chat 應用程式不會使用這個欄位。不會顯示 API 回應和 Chat API 設定頁面

threadKey

string

與互動事件相關的討論串的 Chat 應用程式定義的索引鍵。詳情請參閱 spaces.messages.thread.threadKey

message

object (Message)

觸發互動事件的訊息 (如適用)。

user

object (User)

觸發互動事件的使用者。

space

object (Space)

發生互動事件所在的空間。

action

object (FormAction)

如果是 CARD_CLICKED 互動事件,這是指使用者點選資訊卡或對話方塊時相關的表單動作資料。詳情請參閱「閱讀使用者在資訊卡上輸入的表單資料」。

configCompleteRedirectUrl

string

使用者完成 Google Chat 外部的授權或設定流程後,Chat 應用程式應將使用者重新導向的網址。詳情請參閱「將 Chat 應用程式連結至其他服務和工具」。

isDialogEvent

boolean

如果是 CARD_CLICKED 互動事件,指出使用者是否與對話方塊互動。

dialogEventType

enum (DialogEventType)

收到的 dialog 互動事件類型。

common

object (CommonEventObject)

代表使用者的用戶端資訊,例如語言代碼、代管應用程式和平台。針對 Chat 應用程式,CommonEventObject 包含使用者與對話方塊互動時提交的資訊,例如在資訊卡中輸入的資料。

CommonEventObject

代表使用者的用戶端資訊,例如語言代碼、代管應用程式和平台。針對 Chat 應用程式,CommonEventObject 包含使用者與資訊卡互動時提交的資料,例如在對話方塊中輸入的資料。

JSON 表示法
{
  "userLocale": string,
  "hostApp": enum (HostApp),
  "platform": enum (Platform),
  "timeZone": {
    object (TimeZone)
  },
  "formInputs": {
    string: {
      object (Inputs)
    },
    ...
  },
  "parameters": {
    string: string,
    ...
  },
  "invokedFunction": string
}
欄位
userLocale

string

完整的 locale.displayName,格式為 [ISO 639 語言代碼]-[ISO 3166 國家/地區代碼],例如「en-US」。

hostApp

enum (HostApp)

HostApp 列舉,指出用來叫用外掛程式的應用程式。如為 Chat 應用程式,則一律設為 CHAT

platform

enum (Platform)

這是平台列舉,指出事件的來源平台 (WEBIOSANDROID)。Chat 應用程式不支援這項功能。

timeZone

object (TimeZone)

時區 ID 和與世界標準時間 (UTC) 的偏移量。僅適用於 CARD_CLICKEDSUBMIT_DIALOG 事件類型。

formInputs

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

這張地圖包含使用者在資訊卡或對話方塊輸入的小工具值。對應鍵是指派給每個小工具的字串 ID,值代表小工具的輸入內容。

詳情請參閱「處理使用者輸入的資訊」。

parameters

map (key: string, value: string)

傳遞至叫用函式的自訂參數。鍵和值都必須是字串。

invokedFunction

string

與小工具相關聯的叫用函式名稱。僅針對 Chat 應用程式設定。

TimeZone

時區 ID 和與世界標準時間 (UTC) 的偏移量。僅適用於 CARD_CLICKEDSUBMIT_DIALOG 事件類型。

JSON 表示法
{
  "id": string,
  "offset": integer
}
欄位
id

string

IANA TZ 時區資料庫代碼,例如「America/Toronto」。

offset

integer

使用者時區偏移,從世界標準時間 (UTC) 以毫秒為單位。

輸入

使用者可在資訊卡或對話方塊中輸入的資料類型。輸入類型視小工具接受的值類型而定。

JSON 表示法
{

  // 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.
}
欄位

聯集欄位 inputs

inputs 只能採用下列其中一種設定:

stringInputs

object (StringInputs)

代表使用者在小工具中輸入的值的字串清單。

如果小工具只接受一個值 (例如 TextInput 小工具),清單就會包含一個字串物件。如果小工具接受多個值 (例如核取方塊的 SelectionInput 小工具),清單就會根據使用者輸入或選取的每個值,顯示一個字串物件。

dateTimeInput

object (DateTimeInput)

DateTimePicker 小工具 (可接受日期和時間) 提供的日期和時間輸入值。

dateInput

object (DateInput)

DateTimePicker 小工具 (只接受日期值) 中的日期輸入值。

timeInput

object (TimeInput)

DateTimePicker 小工具中只接受時間值的時間輸入值。

StringInputs

一般小工具的輸入參數。對於單一值小工具,它是單一值清單。如果是多值小工具 (例如核取方塊),系統會顯示所有值。

JSON 表示法
{
  "value": [
    string
  ]
}
欄位
value[]

string

使用者輸入的字串清單。

DateTimeInput

日期和時間輸入值。

JSON 表示法
{
  "msSinceEpoch": string,
  "hasDate": boolean,
  "hasTime": boolean
}
欄位
msSinceEpoch

string (int64 format)

自 Epoch 紀元時間起算的時間,以毫秒為單位。

hasDate

boolean

輸入的 datetime 是否包含日曆日期。

hasTime

boolean

輸入的 datetime 是否包含時間戳記。

DateInput

日期輸入值。

JSON 表示法
{
  "msSinceEpoch": string
}
欄位
msSinceEpoch

string (int64 format)

自 Epoch 紀元時間起算的時間,以毫秒為單位。

TimeInput

時間輸入值。

JSON 表示法
{
  "hours": integer,
  "minutes": integer
}
欄位
hours

integer

24 小時制的小時。

minutes

integer

一小時後的分鐘數。有效值介於 0 至 59 之間。