- JSON 表示法
- CommonEventObject
- TimeZone
- 输入
- StringInputs
- DateTimeInput
- DateInput
- TimeInput
- AppCommandMetadata
- SystemCommandMetadata
- CancelStream
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 应用命令的元数据。 |
systemCommandMetadata |
有关用户触发的系统命令(例如取消活跃的流消息)的元数据。 |
CommonEventObject
通用事件对象是整个事件对象的一部分,用于将与宿主无关的一般信息从用户客户端传递到插件。这些信息包括用户的语言区域、宿主应用和平台等详细信息。
除了首页和上下文触发器之外,当用户与 widget 互动时,插件还会构建事件对象并将其传递给操作回调函数。插件的回调函数可以查询通用事件对象,以确定用户客户端中打开的 widget 的内容。例如,您的插件可以在 eventObject.commentEventObject.formInputs 对象中找到用户在 TextInput widget 中输入的文本。
对于 Chat 应用,指用户在与微件互动时调用的函数的名称。
| JSON 表示法 |
|---|
{ "userLocale": string, "hostApp": enum ( |
| 字段 | |
|---|---|
userLocale |
默认处于停用状态。用户的语言和国家/地区标识符,格式为 ISO 639 语言代码-ISO 3166 国家/地区代码。例如 如需启用此字段,您必须在插件清单中将 |
hostApp |
指明生成事件对象时插件处于活动状态的主机应用。可能的值包括下列项:
|
platform |
平台枚举,用于指明事件源自哪个平台( |
timeZone |
默认处于停用状态。时区 ID 以及相对于世界协调时间 (UTC) 的偏移量。如需启用此字段,您必须在插件清单中将 仅支持事件类型 |
formInputs |
一个映射,其中包含所显示卡片中微件的当前值。映射键是分配给每个输入 widget(例如 映射值对象的结构取决于 widget 类型: 注意:以下示例已针对 Apps 脚本的 V8 运行时进行了格式设置。如果您使用的是 Rhino 运行时,则必须在值后面添加
示例:对于
示例:对于
示例:对于
示例:对于
示例:对于 |
parameters |
您使用 开发者预览版:对于扩展 Google Chat 的插件,如需根据用户在多选菜单中输入的内容推荐选项,请使用 |
invokedFunction |
要调用的函数的名称。 对于扩展 Google Chat 的 Google Workspace 插件,此字段不会填充。相反,如需接收标识符等函数数据,扩展 Chat 的插件应使用 |
TimeZone
时区 ID 以及相对于世界协调时间 (UTC) 的偏移量。仅支持事件类型 CARD_CLICKED 和 SUBMIT_DIALOG。
| JSON 表示法 |
|---|
{ "id": string, "offset": integer } |
| 字段 | |
|---|---|
id |
IANA TZ 时区数据库代码,例如“America/Toronto”。 |
offset |
用户时区相对于世界协调时间 (UTC) 的偏移量(以毫秒为单位)。 |
输入
用户可以在卡片或对话框中输入的数据类型。输入类型取决于微件接受的值类型。
| JSON 表示法 |
|---|
{ "stringInputs": { object ( |
| 字段 | |
|---|---|
| 以下是互斥字段的列表。在响应中,最多只能设置以下字段之一: | |
stringInputs |
表示用户在 widget 中输入的值的字符串列表。 如果微件仅接受一个值(例如 |
dateTimeInput |
来自 |
dateInput |
来自 |
timeInput |
来自仅接受时间值的 |
| 互斥字段结束。 | |
StringInputs
常规 widget 的输入参数。对于单值 widget,它是一个单值列表。对于多值微件(例如复选框),系统会显示所有值。
| JSON 表示法 |
|---|
{ "value": [ string ] } |
| 字段 | |
|---|---|
value[] |
用户输入的字符串列表。 |
DateTimeInput
日期和时间输入值。
| JSON 表示法 |
|---|
{ "msSinceEpoch": string, "hasDate": boolean, "hasTime": boolean } |
| 字段 | |
|---|---|
msSinceEpoch |
自纪元时间以来的时间(以毫秒为单位)。 |
hasDate |
|
hasTime |
|
DateInput
日期输入值。
| JSON 表示法 |
|---|
{ "msSinceEpoch": string } |
| 字段 | |
|---|---|
msSinceEpoch |
自纪元时间以来的时间(以毫秒为单位)。 |
TimeInput
时间输入值。
| JSON 表示法 |
|---|
{ "hours": integer, "minutes": integer } |
| 字段 | |
|---|---|
hours |
24 小时制的小时。 |
minutes |
整点过后的分钟数。有效值为 0 到 59。 |
AppCommandMetadata
Chat 应用命令的相关元数据。
| JSON 表示法 |
|---|
{
"appCommandId": integer,
"appCommandType": enum ( |
| 字段 | |
|---|---|
appCommandId |
Chat API 配置中指定的命令的 ID。 |
appCommandType |
Chat 应用命令的类型。 |
SystemCommandMetadata
由用户触发的系统命令的相关元数据。
| JSON 表示法 |
|---|
{
"cancelStream": {
object ( |
| 字段 | |
|---|---|
| 调用的系统命令。以下是互斥字段的列表。在响应中,最多只能设置以下字段之一: | |
cancelStream |
用于取消活跃流消息的命令。 |
| 互斥字段结束。 | |
CancelStream
用于取消活跃流消息的命令。
| JSON 表示法 |
|---|
{ "streamMessage": string } |
| 字段 | |
|---|---|
streamMessage |
必需。执行了取消命令的流消息的资源名称。 格式: |