- JSON 表示法
- CommonEventObject
- TimeZone
- 輸入內容
- StringInputs
- DateTimeInput
- DateInput
- TimeInput
- AppCommandMetadata
Google Chat 應用程式互動事件,代表使用者與 Chat 應用程式的互動,並包含相關資料。如要設定 Chat 應用程式接收互動事件,請參閱「接收及回應使用者互動」。
除了接收使用者互動事件,Chat 應用程式也能接收聊天室變更事件,例如在聊天室中新增成員。如要瞭解聊天室活動,請參閱「處理 Google Chat 的活動」。
注意:這項事件僅適用於即時通訊互動事件。如果您的 Chat 擴充應用程式是建構為 Google Workspace 外掛程式,請參閱外掛程式說明文件中的 Chat 事件物件。
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 |
地圖,內含顯示卡片中小工具的目前值。地圖鍵是指派給每個小工具的字串 ID。 地圖值物件的結構取決於小工具類型: 注意:下列範例是為 Apps Script 的 V8 執行階段格式化。如果您使用 Rhino 執行階段,必須在值後方加入
範例:如果文字輸入小工具的 ID 為
範例:如果是 ID 為
範例:如要存取 ID 為
範例:如要存取 ID 為
範例:如要存取 ID 為 |
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 表示法 |
---|
{ // Union field |
欄位 | |
---|---|
聯集欄位
|
|
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 應用程式指令的類型。 |