Cards v1

卡片

卡片是一种界面元素,可以包含文本和图片等界面 widget。

JSON 表示法
{
  "header": {
    object (CardHeader)
  },
  "sections": [
    {
      object (Section)
    }
  ],
  "cardActions": [
    {
      object (CardAction)
    }
  ],
  "name": string
}
字段
header

object (CardHeader)

卡片的标题。标头通常包含标题和图片。

sections[]

object (Section)

各部分之间用线条分隔符分隔。

cardActions[]

object (CardAction)

此卡片的操作。

name

string

卡片的名称。

CardHeader

JSON 表示法
{
  "title": string,
  "subtitle": string,
  "imageStyle": enum (ImageStyle),
  "imageUrl": string
}
字段
title

string

必须指定标题。标题的高度是固定的:如果同时指定了标题和副标题,则每个标题占一行。如果仅指定标题,则会占用两行内容。

subtitle

string

卡片标题的副标题。

imageStyle

enum (ImageStyle)

图片的类型(例如方形边框或圆形边框)。

imageUrl

string

卡片标题中的图片的网址。

ImageStyle

枚举
IMAGE_STYLE_UNSPECIFIED
IMAGE 方形边框。
AVATAR 圆形边框。

章节

版块包含一组按照指定顺序呈现(垂直)的 widget。在所有平台上,卡片都采用固定的窄宽度,因此目前不需要布局属性(例如浮动)。

JSON 表示法
{
  "header": string,
  "widgets": [
    {
      object (WidgetMarkup)
    }
  ]
}
字段
header

string

该部分的标题。支持设置格式的文本。如需详细了解如何设置文本格式,请参阅在 Google Chat 应用中设置文本格式在 Google Workspace 插件中设置文本格式

widgets[]

object (WidgetMarkup)

一个版块必须包含至少一个 widget。

WidgetMarkup

widget 是用于显示文本和图片的界面元素。

JSON 表示法
{
  "buttons": [
    {
      object (Button)
    }
  ],

  // Union field data can be only one of the following:
  "textParagraph": {
    object (TextParagraph)
  },
  "image": {
    object (Image)
  },
  "keyValue": {
    object (KeyValue)
  }
  // End of list of possible types for union field data.
}
字段
buttons[]

object (Button)

按钮列表。Buttons 也为 oneof data,并且应仅设置其中一个字段。

联合字段 dataWidgetMarkup 只能包含以下各项之一。您可以使用多个 WidgetMarkup 字段显示更多项。 data 只能是下列其中一项:
textParagraph

object (TextParagraph)

在此 widget 中显示文本段落。

image

object (Image)

在此 widget 中显示图片。

keyValue

object (KeyValue)

在此 widget 中显示一个键值对。

TextParagraph

一段文本。支持格式化文本。如需详细了解如何设置文本格式,请参阅在 Google Chat 应用中设置文本格式在 Google Workspace 插件中设置文本格式

JSON 表示法
{
  "text": string
}
字段
text

string

图片

通过网址指定的图片,可以包含 onclick 操作。

JSON 表示法
{
  "imageUrl": string,
  "onClick": {
    object (OnClick)
  },
  "aspectRatio": number
}
字段
imageUrl

string

图片的网址。

onClick

object (OnClick)

onclick 操作。

aspectRatio

number

此图片的宽高比(宽度和高度)。通过此字段,您可以在等待图片加载期间为其预留合适的高度。它不应替换图片的内置宽高比。如果未设置,服务器会通过预加载图片来填充该值。

OnClick

onclick 操作(例如,打开链接)。

JSON 表示法
{

  // Union field data can be only one of the following:
  "action": {
    object (FormAction)
  },
  "openLink": {
    object (OpenLink)
  }
  // End of list of possible types for union field data.
}
字段

联合字段 data

data 只能是下列其中一项:

action

object (FormAction)

如果指定,则此 onclick 操作会触发表单操作。

FormAction

表单操作用于描述表单提交时的行为。例如,您可以调用 Apps 脚本来处理表单。

JSON 表示法
{
  "actionMethodName": string,
  "parameters": [
    {
      object (ActionParameter)
    }
  ]
}
字段
actionMethodName

string

方法名称用于标识表单的哪个部分触发了表单提交。系统会在卡片点击事件中将此信息回传给 Chat 应用。您可以为触发常见行为的多个元素使用相同的方法名称。

parameters[]

object (ActionParameter)

操作参数列表。

ActionParameter

调用操作方法时要提供的字符串参数列表。例如,假设有三个延后按钮:立即延后、延后一天、延后下周。您可以使用 action method = snooze(),在字符串参数列表中传递闹钟暂停类型和暂停时间。

JSON 表示法
{
  "key": string,
  "value": string
}
字段
key

string

操作脚本的参数名称。

value

string

参数的值。

KeyValue

界面元素包含键(标签)和值(内容)。此元素还可以包含一些操作,例如 onclick 按钮。

JSON 表示法
{
  "topLabel": string,
  "content": string,
  "contentMultiline": boolean,
  "bottomLabel": string,
  "onClick": {
    object (OnClick)
  },

  // Union field icons can be only one of the following:
  "icon": enum (Icon),
  "iconUrl": string
  // End of list of possible types for union field icons.

  // Union field control can be only one of the following:
  "button": {
    object (Button)
  }
  // End of list of possible types for union field control.
}
字段
topLabel

string

顶部标签的文本。支持格式化文本。如需详细了解如何设置文本格式,请参阅设置 Google Chat 应用中的文本格式设置 Google Workspace 插件中的文本格式

content

string

内容的文本。支持格式化文本,且始终需要提供。如需详细了解如何设置文本格式,请参阅设置 Google Chat 应用中的文本格式设置 Google Workspace 插件中的文本格式

contentMultiline

boolean

是否应为多行内容。

bottomLabel

string

底部标签的文本。支持格式化文本。如需详细了解如何设置文本格式,请参阅在 Google Chat 应用中设置文本格式在 Google Workspace 插件中设置文本格式

onClick

object (OnClick)

onclick 操作。只有顶部标签、底部标签和内容区域是可点击的。

联合字段 icons。必须至少定义图标 top_labelbottom_label 中的一个。 icons只能是以下其中一项:
icon

enum (Icon)

一个枚举值,Chat API 会将其替换为相应的图标图片。

iconUrl

string

由网址指定的图标。

联合字段 control。一个控制微件。您可以设置 buttonswitch_widget,但不能同时设置这两者。 control 只能是下列其中一项:
button

object (Button)

可以点击以触发操作的按钮。

图标

支持的一组图标。

枚举
ICON_UNSPECIFIED
AIRPLANE
BOOKMARK
BUS
CAR
CLOCK
CONFIRMATION_NUMBER_ICON
DOLLAR
DESCRIPTION
EMAIL
EVENT_PERFORMER
EVENT_SEAT
FLIGHT_ARRIVAL
FLIGHT_DEPARTURE
HOTEL
HOTEL_ROOM_TYPE
INVITE
MAP_PIN
MEMBERSHIP
MULTIPLE_PEOPLE
OFFER
PERSON
PHONE
RESTAURANT_ICON
SHOPPING_CART
STAR
STORE
TICKET
TRAIN
VIDEO_CAMERA
VIDEO_PLAY

按钮

一个按钮。可以是文本按钮或图片按钮。

JSON 表示法
{

  // Union field type can be only one of the following:
  "textButton": {
    object (TextButton)
  },
  "imageButton": {
    object (ImageButton)
  }
  // End of list of possible types for union field type.
}
字段

联合字段 type

type 只能是下列其中一项:

textButton

object (TextButton)

一个包含文本和 onclick 操作的按钮。

imageButton

object (ImageButton)

一个包含图片和 onclick 操作的按钮。

TextButton

一个包含文本和 onclick 操作的按钮。

JSON 表示法
{
  "text": string,
  "onClick": {
    object (OnClick)
  }
}
字段
text

string

按钮的文字。

onClick

object (OnClick)

按钮的 onclick 操作。

ImageButton

具有 onclick 操作的图片按钮。

JSON 表示法
{
  "onClick": {
    object (OnClick)
  },
  "name": string,

  // Union field icons can be only one of the following:
  "icon": enum (Icon),
  "iconUrl": string
  // End of list of possible types for union field icons.
}
字段
onClick

object (OnClick)

onclick 操作。

name

string

用于无障碍功能的此 imageButton 的名称。如果未指定此名称,则提供默认值。

联合字段 icons。图标可以由 Icon enum 或网址指定。 icons 只能是下列其中一项:
icon

enum (Icon)

enum 指定的图标,用于索引 Chat API 提供的图标。

iconUrl

string

由网址指定的图标。

CardAction

卡片操作是指与卡片关联的操作。对于账单卡,典型操作包括:删除账单、通过电子邮件发送账单或在浏览器中打开账单。

Google Chat 应用不支持。

JSON 表示法
{
  "actionLabel": string,
  "onClick": {
    object (OnClick)
  }
}
字段
actionLabel

string

用于在操作菜单项中显示的标签。

onClick

object (OnClick)

此操作项的 onClick 操作。