- JSON 表示法
- CommonEventObject
- TimeZone
- 輸入內容
- StringInputs
- DateTimeInput
- DateInput
- TimeInput
- AppCommandMetadata
Google Chat 應用程式互動事件,代表並包含使用者與 Chat 應用程式互動的資料。如要設定 Chat 應用程式接收互動事件,請參閱「接收及回應使用者互動」。
除了接收使用者互動事件外,Chat 擴充應用程式也能接收聊天室變更事件,例如有新成員加入聊天室。如要瞭解聊天室事件,請參閱「使用 Google Chat 的事件」。
警告:這個事件物件僅適用於非外掛程式的 Chat 應用程式。如果 Chat 擴充應用程式是建構為 Google Workspace 外掛程式,請改為參閱外掛程式說明文件中的「外掛程式事件物件」。如要確認應用程式收到的事件類型,請參閱「判斷事件類型」。
| JSON 表示法 |
|---|
{ "type": enum ( |
| 欄位 | |
|---|---|
type |
使用者與 Chat 擴充應用程式互動的類型,例如 |
eventTime |
互動事件發生的時間戳記。 |
token |
舊版 Chat 擴充應用程式可用來驗證要求是否來自 Google 的密鑰值。Google 會隨機產生權杖,且其值會保持不變。您可以前往 Google Cloud 控制台的 Chat API 設定頁面,取得、撤銷或重新產生權杖。 新版 Chat 擴充應用程式不會使用這個欄位。API 回應和 Chat API 設定頁面不會顯示這項資訊。 |
threadKey |
Chat 應用程式定義的鍵,用於與互動事件相關的討論串。詳情請參閱 |
message |
如果是 |
user |
與 Chat 擴充應用程式互動的使用者。 |
thread |
使用者與 Chat 擴充應用程式互動的討論串。這可能是新傳送的訊息建立的新討論串。如果互動事件與特定訊息或討論串相關聯,系統就會填入這個欄位。 |
space |
使用者與 Chat 應用程式互動的聊天室。 |
action |
如果是 |
configCompleteRedirectUrl |
系統會為 |
isDialogEvent |
針對 |
dialogEventType |
收到的對話互動事件類型。 |
common |
代表使用者用戶端的相關資訊,例如語言代碼、主機應用程式和平台。如果是 Chat 應用程式, |
appCommandMetadata |
Chat 擴充應用程式指令的中繼資料。 |
CommonEventObject
通用事件物件是整體事件物件的一部分,會將與主機無關的一般資訊,從使用者用戶端傳送至外掛程式。包括使用者的語言代碼、主機應用程式和平台等詳細資料。
除了首頁和情境觸發條件外,外掛程式也會在使用者與小工具互動時,建構事件物件並傳遞至動作回呼函式。外掛程式的回呼函式可以查詢通用事件物件,判斷使用者用戶端中開啟的小工具內容。舉例來說,外掛程式可以找出使用者在 eventObject.commentEventObject.formInputs 物件的 TextInput 小工具中輸入的文字。
如果是 Chat 擴充應用程式,則為使用者與小工具互動時叫用的函式名稱。
| JSON 表示法 |
|---|
{ "userLocale": string, "hostApp": enum ( |
| 欄位 | |
|---|---|
userLocale |
預設停用。使用者的語言和國家/地區 ID,格式為 ISO 639 語言代碼-ISO 3166 國家/地區代碼。例如: 如要啟用這個欄位,請在外掛程式資訊清單中將 |
hostApp |
指出產生事件物件時,外掛程式在何種主機應用程式中啟用。可能的值如下:
|
platform |
平台列舉,表示事件來源平台 ( |
timeZone |
預設停用。時區 ID 和與世界標準時間 (UTC) 的時差。如要啟用這個欄位,請在外掛程式資訊清單中將 僅支援 |
formInputs |
包含顯示卡片中目前小工具值的對應。對應鍵是為每個輸入小工具 (例如 地圖值物件的結構取決於小工具類型: 注意:下列範例的格式適用於 Apps Script 的 V8 執行階段。如果使用 Rhino 執行階段,則必須在值後面加上
範例:如果文字輸入小工具的
範例:如果多值小工具的
範例:如果挑選器的
範例:如果挑選器的
範例:如果挑選器的 |
parameters |
您使用 開發人員預覽版:如果是擴充 Google Chat 的外掛程式,如要根據使用者在多選選單中輸入的內容建議項目,請使用 |
invokedFunction |
要叫用的函式名稱。 如果是擴充 Google Chat 的 Google Workspace 外掛程式,系統不會填入這個欄位。如要接收 ID 等函式資料,擴充 Chat 的外掛程式應改用 |
TimeZone
時區 ID 和與世界標準時間 (UTC) 的時差。僅支援 CARD_CLICKED 和 SUBMIT_DIALOG 事件類型。
| JSON 表示法 |
|---|
{ "id": string, "offset": integer } |
| 欄位 | |
|---|---|
id |
IANA TZ 時區資料庫代碼,例如「America/Toronto」。 |
offset |
使用者時區與世界標準時間 (UTC) 的差距,以毫秒為單位。 |
輸入內容
使用者可在資訊卡或對話方塊中輸入的資料類型。輸入類型取決於小工具接受的值類型。
| JSON 表示法 |
|---|
{ "stringInputs": { object ( |
| 欄位 | |
|---|---|
| 以下是互斥欄位清單。回應中最多會設定下列其中一個欄位: | |
stringInputs |
這份字串清單代表使用者在小工具中輸入的值。 如果小工具只接受一個值 (例如 |
dateTimeInput |
|
dateInput |
|
timeInput |
|
| 互斥欄位結束。 | |
StringInputs
一般小工具的輸入參數。如果是單一值小工具,則會是單一值清單。如果是多值小工具 (例如核取方塊),則會顯示所有值。
| JSON 表示法 |
|---|
{ "value": [ string ] } |
| 欄位 | |
|---|---|
value[] |
使用者輸入的字串清單。 |
DateTimeInput
日期和時間輸入值。
| JSON 表示法 |
|---|
{ "msSinceEpoch": string, "hasDate": boolean, "hasTime": boolean } |
| 欄位 | |
|---|---|
msSinceEpoch |
自 Epoch 時間起算的時間 (以毫秒為單位)。 |
hasDate |
|
hasTime |
|
DateInput
日期輸入值。
| JSON 表示法 |
|---|
{ "msSinceEpoch": string } |
| 欄位 | |
|---|---|
msSinceEpoch |
自 Epoch 時間起算的時間 (以毫秒為單位)。 |
TimeInput
時間輸入值。
| JSON 表示法 |
|---|
{ "hours": integer, "minutes": integer } |
| 欄位 | |
|---|---|
hours |
24 小時制的小時。 |
minutes |
整點過後的分鐘數。有效值為 0 到 59。 |
AppCommandMetadata
Chat 擴充應用程式指令的中繼資料。
| JSON 表示法 |
|---|
{
"appCommandId": integer,
"appCommandType": enum ( |
| 欄位 | |
|---|---|
appCommandId |
Chat API 設定中指定的指令 ID。 |
appCommandType |
Chat 擴充應用程式指令的類型。 |