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 圆形边框。

章节

一个部分包含一系列微件,这些微件会按照指定的顺序(垂直)呈现。在所有平台上,卡片都具有固定的窄宽度,因此目前不需要布局属性(例如 float)。

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

string

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

widgets[]

object (WidgetMarkup)

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

WidgetMarkup

微件是呈现文本和图片的界面元素。

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

  "textParagraph": {
    object (TextParagraph)
  },
  "image": {
    object (Image)
  },
  "keyValue": {
    object (KeyValue)
  }
}
字段
buttons[]

object (Button)

按钮列表。按钮也是 oneof data,并且只能设置其中一个字段。

WidgetMarkup 只能包含以下项之一。您可以使用多个 WidgetMarkup 字段来显示更多内容。以下是互斥字段的列表。在响应中,最多只能设置其中一个字段:
textParagraph

object (TextParagraph)

在此 widget 中显示文本段落。

image

object (Image)

在此微件中显示图片。

keyValue

object (KeyValue)

在此微件中显示键值对项。

互斥字段结束。

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 表示法
{

  "action": {
    object (FormAction)
  },
  "openLink": {
    object (OpenLink)
  }
}
字段
以下是互斥字段的列表。在响应中,最多只能设置其中一个字段:
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)
  },

  "icon": enum (Icon),
  "iconUrl": string

  "button": {
    object (Button)
  }
}
字段
topLabel

string

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

content

string

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

contentMultiline

boolean

内容是否应为多行。

bottomLabel

string

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

onClick

object (OnClick)

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

必须至少定义图标、top_label 和 bottom_label 中的一个。以下是互斥字段的列表。在响应中,最多只能设置其中一个字段:
icon

enum (Icon)

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

iconUrl

string

由网址指定的图标。

互斥字段结束。
一个控制 widget。您可以设置 button 或 switch_widget,但不能同时设置这两者。以下是互斥字段的列表。在响应中,最多只能设置其中一个字段:
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 表示法
{

  "textButton": {
    object (TextButton)
  },
  "imageButton": {
    object (ImageButton)
  }
}
字段
以下是互斥字段的列表。在响应中,最多只能设置其中一个字段:
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,

  "icon": enum (Icon),
  "iconUrl": string
}
字段
onClick

object (OnClick)

onclick 操作。

name

string

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

图标可以通过 Icon enum 或网址指定。以下是互斥字段的列表。在响应中,最多只能设置其中一个字段:
icon

enum (Icon)

由 enum 指定的图标,该图标指向 Chat API 提供的图标。

iconUrl

string

由网址指定的图标。

互斥字段结束。

CardAction

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

Google Chat 应用不支持。

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

string

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

onClick

object (OnClick)

此待办项的 onclick 操作。