- Biểu diễn dưới dạng JSON
- CardHeader
- Section
- Tiện ích
- TextParagraph
- TextSyntax
- Hình ảnh
- DecoratedText
- VerticalAlignment
- SwitchControl
- ControlType
- TextInput
- Loại
- Đề xuất
- SuggestionItem
- Xác thực
- InputType
- HostAppDataSourceMarkup
- ChatClientDataSourceMarkup
- SpaceDataSource
- WorkflowDataSourceMarkup
- Loại
- SelectionInput
- SelectionType
- PlatformDataSource
- CommonDataSource
- DataSourceConfig
- DateTimePicker
- DateTimePickerType
- Divider
- Lưới
- GridItem
- ImageComponent
- ImageCropStyle
- ImageCropType
- BorderStyle
- BorderType
- GridItemLayout
- Cột
- Cột
- HorizontalSizeStyle
- HorizontalAlignment
- VerticalAlignment
- Tiện ích
- ChipList
- Bố cục
- Khối
- Băng chuyền
- CarouselCard
- NestedWidget
- Chế độ hiển thị
- EventAction
- Điều kiện kích hoạt
- CommonWidgetAction
- UpdateVisibilityAction
- CollapseControl
- DividerStyle
- CardAction
- CardFixedFooter
- DisplayStyle
- ExpressionData
- Tình trạng
- ExpressionDataCondition
- ConditionType
Giao diện thẻ xuất hiện trong tin nhắn trò chuyện trên Google Chat hoặc tiện ích bổ sung của Google Workspace.
Thẻ hỗ trợ bố cục được xác định, các phần tử trên giao diện người dùng tương tác như nút và nội dung đa phương tiện như hình ảnh. Sử dụng thẻ để trình bày thông tin chi tiết, thu thập thông tin từ người dùng và hướng dẫn người dùng thực hiện bước tiếp theo.
Thiết kế và xem trước thẻ bằng Trình tạo thẻ.
Mở Trình tạo thẻĐể tìm hiểu cách tạo thẻ, hãy xem tài liệu sau:
- Đối với ứng dụng Google Chat, hãy xem bài viết Thiết kế các thành phần của thẻ hoặc hộp thoại.
- Đối với tiện ích bổ sung của Google Workspace, hãy xem phần Giao diện dựa trên thẻ.
Lưu ý: Bạn có thể thêm tối đa 100 tiện ích cho mỗi thẻ. Nếu các tiện ích của một phần đẩy tổng số lượng lên trên 100, thì toàn bộ phần đó và tất cả các phần sau sẽ bị bỏ qua. Giới hạn này áp dụng cho cả tin nhắn dạng thẻ và hộp thoại trong ứng dụng Google Chat, cũng như cho thẻ trong các tiện ích bổ sung của Google Workspace.
Ví dụ: Tin nhắn dạng thẻ cho ứng dụng Google Chat

Để tạo tin nhắn dạng thẻ mẫu trong Google Chat, hãy sử dụng JSON sau:
{
"cardsV2": [
{
"cardId": "unique-card-id",
"card": {
"header": {
"title": "Sasha",
"subtitle": "Software Engineer",
"imageUrl":
"https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png",
"imageType": "CIRCLE",
"imageAltText": "Avatar for Sasha"
},
"sections": [
{
"header": "Contact Info",
"collapsible": true,
"uncollapsibleWidgetsCount": 1,
"widgets": [
{
"decoratedText": {
"startIcon": {
"knownIcon": "EMAIL"
},
"text": "sasha@example.com"
}
},
{
"decoratedText": {
"startIcon": {
"knownIcon": "PERSON"
},
"text": "<font color=\"#80e27e\">Online</font>"
}
},
{
"decoratedText": {
"startIcon": {
"knownIcon": "PHONE"
},
"text": "+1 (555) 555-1234"
}
},
{
"buttonList": {
"buttons": [
{
"text": "Share",
"onClick": {
"openLink": {
"url": "https://example.com/share"
}
}
},
{
"text": "Edit",
"onClick": {
"action": {
"function": "goToView",
"parameters": [
{
"key": "viewType",
"value": "EDIT"
}
]
}
}
}
]
}
}
]
}
]
}
}
]
}
| Biểu diễn dưới dạng JSON |
|---|
{ "header": { object ( |
| Trường | |
|---|---|
header |
Tiêu đề của thẻ. Tiêu đề thường chứa hình ảnh chính và tiêu đề. Tiêu đề luôn xuất hiện ở đầu thẻ. |
sections[] |
Chứa một tập hợp các tiện ích. Mỗi phần có tiêu đề riêng (không bắt buộc). Các phần được phân tách bằng một đường kẻ. Để xem ví dụ về ứng dụng Google Chat, hãy xem bài viết Xác định một phần của thẻ. |
sectionDividerStyle |
Kiểu đường phân cách giữa tiêu đề, các phần và chân trang. |
cardActions[] |
Thao tác của thẻ. Các thao tác được thêm vào trình đơn trên thanh công cụ của thẻ. Hỗ trợ tối đa 10 mục
Ví dụ: JSON sau đây tạo một trình đơn thao tác trên thẻ với các lựa chọn |
name |
Tên thẻ. Dùng làm giá trị nhận dạng thẻ trong thao tác điều hướng thẻ.
|
fixedFooter |
Chân trang cố định xuất hiện ở cuối thẻ này. Việc đặt
|
displayStyle |
Trong tiện ích bổ sung của Google Workspace, hãy đặt thuộc tính hiển thị của
|
peekCardHeader |
Khi hiển thị nội dung theo bối cảnh, tiêu đề thẻ xem nhanh đóng vai trò là phần giữ chỗ để người dùng có thể di chuyển về phía trước giữa thẻ trang chủ và thẻ theo bối cảnh.
|
expressionData[] |
Dữ liệu biểu thức cho thẻ. Dành cho các tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio. Không dùng được cho các ứng dụng Google Chat. |
CardHeader
Đại diện cho tiêu đề thẻ. Để xem ví dụ về ứng dụng Google Chat, hãy xem phần Thêm tiêu đề.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{
"title": string,
"subtitle": string,
"imageType": enum ( |
| Trường | |
|---|---|
title |
Bắt buộc. Tiêu đề của phần đầu thẻ. Tiêu đề có chiều cao cố định: nếu bạn chỉ định cả tiêu đề và phụ đề, thì mỗi tiêu đề sẽ chiếm một dòng. Nếu chỉ có tiêu đề được chỉ định, thì tiêu đề đó sẽ chiếm cả hai dòng. |
subtitle |
Phụ đề của tiêu đề thẻ. Nếu được chỉ định, thì thông tin này sẽ xuất hiện trên dòng riêng bên dưới |
imageType |
Hình dạng dùng để cắt hình ảnh.
|
imageUrl |
URL loại HTTPS của hình ảnh trong tiêu đề thẻ. |
imageAltText |
Văn bản thay thế của hình ảnh này được dùng cho mục đích hỗ trợ tiếp cận. |
Phần
Một mục chứa một tập hợp các tiện ích được hiển thị theo chiều dọc theo thứ tự được chỉ định.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{ "header": string, "widgets": [ { object ( |
| Trường | |
|---|---|
header |
Văn bản xuất hiện ở đầu một phần. Hỗ trợ văn bản có định dạng HTML đơn giản. Để biết thêm thông tin về cách định dạng văn bản, hãy xem bài viết Định dạng văn bản trong ứng dụng Google Chat và Định dạng văn bản trong tiện ích bổ sung của Google Workspace. |
widgets[] |
Tất cả tiện ích trong mục này. Phải chứa ít nhất một tiện ích. Một thẻ hỗ trợ tối đa 100 tiện ích trên tất cả các mục. |
collapsible |
Cho biết liệu phần này có thể thu gọn hay không. Các mục có thể thu gọn sẽ ẩn một số hoặc tất cả tiện ích, nhưng người dùng có thể mở rộng mục đó để hiển thị các tiện ích bị ẩn bằng cách nhấp vào Hiện thêm. Người dùng có thể ẩn lại các tiện ích bằng cách nhấp vào Ẩn bớt. Để xác định tiện ích nào bị ẩn, hãy chỉ định |
uncollapsibleWidgetsCount |
Số lượng tiện ích không thể thu gọn vẫn hiển thị ngay cả khi một mục được thu gọn. Ví dụ: khi một mục chứa 5 tiện ích và |
id |
Mã nhận dạng duy nhất được chỉ định cho phần dùng để xác định phần cần thay đổi. Mã nhận dạng có giới hạn ký tự là 64 ký tự và phải có định dạng Dành cho các tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio. Không dùng được cho các ứng dụng Google Chat. |
collapseControl |
Không bắt buộc. Xác định nút mở rộng và thu gọn của mục. Nút này chỉ xuất hiện nếu phần này có thể thu gọn. Nếu bạn không đặt trường này, hệ thống sẽ sử dụng nút mặc định. |
Tiện ích
Mỗi thẻ được tạo thành từ các tiện ích.
Tiện ích là một đối tượng tổng hợp có thể đại diện cho một trong các loại đối tượng như văn bản, hình ảnh, nút và các loại đối tượng khác.
| Biểu diễn dưới dạng JSON |
|---|
{ "horizontalAlignment": enum ( |
| Trường | |
|---|---|
horizontalAlignment |
Chỉ định xem các tiện ích có căn chỉnh sang trái, phải hay giữa cột hay không. |
id |
Mã nhận dạng duy nhất được chỉ định cho tiện ích dùng để xác định tiện ích cần thay đổi. Mã nhận dạng có giới hạn ký tự là 64 ký tự và phải có định dạng Dành cho các tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio. Không dùng được cho các ứng dụng Google Chat. |
visibility |
Chỉ định xem tiện ích hiển thị hay bị ẩn. Giá trị mặc định là Dành cho các tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio. Không dùng được cho các ứng dụng Google Chat. |
eventActions[] |
Chỉ định các hành động sự kiện có thể thực hiện trên tiện ích. Dành cho các tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio. Không dùng được cho các ứng dụng Google Chat. |
| Một tiện ích chỉ có thể có một trong các mục sau. Bạn có thể sử dụng nhiều trường tiện ích để hiển thị nhiều mục hơn. Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi: | |
textParagraph |
Hiển thị một đoạn văn bản. Hỗ trợ văn bản có định dạng HTML đơn giản. Để biết thêm thông tin về cách định dạng văn bản, hãy xem bài viết Định dạng văn bản trong ứng dụng Google Chat và Định dạng văn bản trong tiện ích bổ sung của Google Workspace. Ví dụ: JSON sau đây tạo văn bản in đậm: |
image |
Hiển thị hình ảnh. Ví dụ: JSON sau đây tạo một hình ảnh có văn bản thay thế: |
decoratedText |
Hiển thị một mục văn bản được trang trí. Ví dụ: JSON sau đây tạo một tiện ích văn bản được trang trí cho thấy địa chỉ email: |
buttonList |
Danh sách các nút. Ví dụ: JSON sau đây tạo hai nút. Nút đầu tiên là nút văn bản màu xanh dương và nút thứ hai là nút hình ảnh mở ra một đường liên kết: |
textInput |
Hiển thị hộp văn bản mà người dùng có thể nhập vào. Ví dụ: JSON sau đây tạo một mục nhập văn bản cho địa chỉ email: Trong một ví dụ khác, JSON sau đây tạo một mục nhập văn bản cho ngôn ngữ lập trình có các đề xuất tĩnh: |
selectionInput |
Hiển thị một thành phần điều khiển lựa chọn cho phép người dùng chọn các mục. Thành phần điều khiển lựa chọn có thể là hộp đánh dấu, nút chọn, nút chuyển hoặc trình đơn thả xuống. Ví dụ: JSON sau đây tạo một trình đơn thả xuống cho phép người dùng chọn kích thước: |
dateTimePicker |
Hiển thị một tiện ích cho phép người dùng nhập ngày, giờ hoặc ngày và giờ. Ví dụ: JSON sau đây tạo một bộ chọn ngày giờ để lên lịch hẹn: |
divider |
Hiển thị đường phân chia ngang giữa các tiện ích. Ví dụ: JSON sau đây tạo một đường phân chia: |
grid |
Hiển thị lưới có một tập hợp các mục. Lưới hỗ trợ số lượng cột và mục bất kỳ. Số hàng được xác định bằng giới hạn trên của số lượng mặt hàng chia cho số cột. Một lưới có 10 mục và 2 cột sẽ có 5 hàng. Một lưới có 11 mục và 2 cột sẽ có 6 hàng.
Ví dụ: JSON sau đây tạo một lưới 2 cột với một mục duy nhất: |
columns |
Hiển thị tối đa 2 cột. Để thêm nhiều hơn 2 cột hoặc để sử dụng hàng, hãy dùng tiện ích Ví dụ: JSON sau đây tạo 2 cột, mỗi cột chứa các đoạn văn bản: |
carousel |
Chứa một tập hợp các mục |
chipList |
Danh sách khối. Ví dụ: JSON sau đây tạo hai khối. Đầu tiên là khối văn bản và thứ hai là khối biểu tượng mở một đường liên kết: |
| Kết thúc các trường loại trừ lẫn nhau. | |
TextParagraph
Một đoạn văn bản hỗ trợ định dạng. Để xem ví dụ về các ứng dụng Google Chat, hãy xem phần Thêm một đoạn văn bản được định dạng. Để biết thêm thông tin về cách định dạng văn bản, hãy xem bài viết Định dạng văn bản trong ứng dụng Google Chat và Định dạng văn bản trong tiện ích bổ sung của Google Workspace.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{
"text": string,
"maxLines": integer,
"textSyntax": enum ( |
| Trường | |
|---|---|
text |
Văn bản xuất hiện trong tiện ích. |
maxLines |
Số dòng văn bản tối đa hiển thị trong tiện ích. Nếu văn bản vượt quá số dòng tối đa được chỉ định, thì nội dung thừa sẽ bị ẩn sau nút hiện thêm. Nếu văn bản bằng hoặc ngắn hơn số dòng tối đa được chỉ định, thì nút hiện thêm sẽ không xuất hiện. Giá trị mặc định là 0, trong trường hợp đó, tất cả bối cảnh sẽ được hiển thị. Giá trị âm sẽ bị bỏ qua. |
textSyntax |
Cú pháp của văn bản. Nếu bạn không đặt, văn bản sẽ được hiển thị dưới dạng HTML.
|
TextSyntax
Cú pháp dùng để định dạng văn bản.
Có thể dùng cho các ứng dụng Google Chat và không thể dùng cho các tiện ích bổ sung của Google Workspace.
| Enum | |
|---|---|
TEXT_SYNTAX_UNSPECIFIED |
Văn bản được hiển thị dưới dạng HTML nếu không được chỉ định. |
HTML |
Văn bản được hiển thị dưới dạng HTML. Đây là giá trị mặc định. |
MARKDOWN |
Văn bản được hiển thị dưới dạng Markdown. |
Hình ảnh
Hình ảnh được chỉ định bằng một URL và có thể có thao tác onClick. Để biết ví dụ, hãy xem phần Thêm hình ảnh.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{
"imageUrl": string,
"onClick": {
object ( |
| Trường | |
|---|---|
imageUrl |
URL loại HTTPS lưu trữ hình ảnh. Ví dụ: |
onClick |
Khi người dùng nhấp vào hình ảnh, lượt nhấp sẽ kích hoạt hành động này. |
altText |
Văn bản thay thế của hình ảnh này được dùng cho mục đích hỗ trợ tiếp cận. |
DecoratedText
Một tiện ích hiển thị văn bản có các thành phần trang trí không bắt buộc, chẳng hạn như nhãn phía trên hoặc phía dưới văn bản, biểu tượng phía trước văn bản, tiện ích lựa chọn hoặc nút sau văn bản. Để xem ví dụ về ứng dụng Google Chat, hãy xem phần Hiển thị văn bản có văn bản trang trí.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{ "icon": { object ( |
| Trường | |
|---|---|
icon |
Ngừng sử dụng và thay bằng |
startIcon |
Biểu tượng xuất hiện trước văn bản. |
startIconVerticalAlignment |
Không bắt buộc. Căn chỉnh dọc biểu tượng bắt đầu. Nếu bạn không đặt, biểu tượng sẽ được căn giữa theo chiều dọc.
|
topLabel |
Văn bản xuất hiện phía trên |
topLabelText |
|
text |
Bắt buộc. Văn bản chính. Hỗ trợ định dạng đơn giản. Để biết thêm thông tin về cách định dạng văn bản, hãy xem bài viết Định dạng văn bản trong ứng dụng Google Chat và Định dạng văn bản trong tiện ích bổ sung của Google Workspace. |
contentText |
|
wrapText |
Chế độ cài đặt xuống dòng tự động. Nếu Chỉ áp dụng cho |
bottomLabel |
Văn bản xuất hiện bên dưới |
bottomLabelText |
|
onClick |
Hành động này được kích hoạt khi người dùng nhấp vào bất kỳ vị trí nào trên tiện ích |
Một nút, nút chuyển, hộp đánh dấu hoặc hình ảnh xuất hiện ở bên phải văn bản trong tiện ích decoratedText. Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi: |
|
button |
Nút mà người dùng có thể nhấp vào để kích hoạt một hành động. |
switchControl |
Một tiện ích nút chuyển mà người dùng có thể nhấp vào để thay đổi trạng thái và kích hoạt một hành động. |
endIcon |
Biểu tượng xuất hiện sau văn bản. Hỗ trợ biểu tượng tích hợp sẵn và biểu tượng tuỳ chỉnh. |
| Kết thúc các trường loại trừ lẫn nhau. | |
VerticalAlignment
Đại diện cho thuộc tính căn chỉnh dọc.
| Enum | |
|---|---|
VERTICAL_ALIGNMENT_UNSPECIFIED |
Loại không xác định. Không được dùng. |
TOP |
Căn chỉnh theo vị trí trên cùng. |
MIDDLE |
Căn chỉnh theo vị trí giữa. |
BOTTOM |
Căn chỉnh theo vị trí dưới cùng. |
SwitchControl
Nút chuyển kiểu bật/tắt hoặc hộp đánh dấu bên trong tiện ích decoratedText.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
Chỉ được hỗ trợ trong tiện ích decoratedText.
| Biểu diễn dưới dạng JSON |
|---|
{ "name": string, "value": string, "selected": boolean, "onChangeAction": { object ( |
| Trường | |
|---|---|
name |
Tên mà tiện ích nút chuyển được xác định trong sự kiện nhập biểu mẫu (dưới dạng khoá trong Để biết thông tin chi tiết về cách xử lý dữ liệu đầu vào của biểu mẫu, hãy xem phần Nhận dữ liệu biểu mẫu. |
value |
Giá trị được trả về trong Để biết thông tin chi tiết về cách xử lý dữ liệu đầu vào của biểu mẫu, hãy xem phần Nhận dữ liệu biểu mẫu. |
selected |
Khi |
onChangeAction |
Thao tác cần thực hiện khi trạng thái của nút chuyển thay đổi, chẳng hạn như hàm cần chạy. |
controlType |
Cách nút chuyển xuất hiện trong giao diện người dùng.
|
ControlType
Cách nút chuyển xuất hiện trong giao diện người dùng.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Enum | |
|---|---|
SWITCH |
Nút bật/tắt. |
CHECKBOX |
Ngừng sử dụng và thay bằng CHECK_BOX. |
CHECK_BOX |
Hộp đánh dấu. |
TextInput
Trường mà người dùng có thể nhập văn bản. Hỗ trợ các đề xuất và hành động khi thay đổi. Hỗ trợ xác thực việc gửi biểu mẫu. Khi Action.all_widgets_are_required được đặt thành true hoặc tiện ích này được chỉ định trong Action.required_widgets, hành động gửi sẽ bị chặn trừ phi bạn nhập một giá trị. Để xem ví dụ về các ứng dụng Google Chat, hãy xem phần Thêm trường mà người dùng có thể nhập văn bản.
Ứng dụng trò chuyện nhận và có thể xử lý giá trị của văn bản đã nhập trong các sự kiện nhập biểu mẫu. Để biết thông tin chi tiết về cách xử lý dữ liệu đầu vào của biểu mẫu, hãy xem phần Nhận dữ liệu biểu mẫu.
Khi bạn cần thu thập dữ liệu trừu tượng hoặc không xác định từ người dùng, hãy sử dụng phương thức nhập văn bản. Để thu thập dữ liệu đã xác định hoặc liệt kê từ người dùng, hãy sử dụng tiện ích SelectionInput.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{ "name": string, "label": string, "hintText": string, "value": string, "type": enum ( |
| Trường | |
|---|---|
name |
Tên dùng để xác định dữ liệu nhập bằng văn bản trong một sự kiện nhập dữ liệu vào biểu mẫu. Để biết thông tin chi tiết về cách xử lý dữ liệu đầu vào của biểu mẫu, hãy xem phần Nhận dữ liệu biểu mẫu. |
label |
Văn bản xuất hiện phía trên trường nhập dữ liệu trong giao diện người dùng. Chỉ định văn bản giúp người dùng nhập thông tin mà ứng dụng của bạn cần. Ví dụ: nếu bạn đang hỏi tên của ai đó nhưng cần biết chính xác họ của người đó, hãy viết Bắt buộc nếu bạn không chỉ định |
hintText |
Văn bản xuất hiện bên dưới trường nhập văn bản nhằm hỗ trợ người dùng bằng cách nhắc họ nhập một giá trị nhất định. Văn bản này luôn hiển thị. Bắt buộc nếu bạn không chỉ định |
value |
Giá trị do người dùng nhập, được trả về dưới dạng một phần của sự kiện nhập biểu mẫu. Để biết thông tin chi tiết về cách xử lý dữ liệu đầu vào của biểu mẫu, hãy xem phần Nhận dữ liệu biểu mẫu. |
type |
Cách trường nhập dữ liệu xuất hiện trong giao diện người dùng. Ví dụ: liệu trường đó là một dòng hay nhiều dòng. |
onChangeAction |
Việc cần làm khi có thay đổi trong trường nhập dữ liệu. Ví dụ: người dùng thêm vào trường hoặc xoá văn bản. Ví dụ về các hành động cần thực hiện bao gồm chạy một hàm tuỳ chỉnh hoặc mở một hộp thoại trong Google Chat. |
initialSuggestions |
Giá trị đề xuất mà người dùng có thể nhập. Các giá trị này xuất hiện khi người dùng nhấp vào bên trong trường nhập dữ liệu. Khi người dùng nhập, các giá trị được đề xuất sẽ tự động lọc để khớp với nội dung người dùng đã nhập. Ví dụ: một trường nhập dữ liệu cho ngôn ngữ lập trình có thể đề xuất Java, JavaScript, Python và C++. Khi người dùng bắt đầu nhập Giá trị đề xuất giúp hướng dẫn người dùng nhập các giá trị mà ứng dụng của bạn có thể hiểu được. Khi đề cập đến JavaScript, một số người dùng có thể nhập Khi được chỉ định,
|
autoCompleteAction |
Không bắt buộc. Chỉ định hành động cần thực hiện khi trường nhập dữ liệu văn bản đưa ra đề xuất cho người dùng tương tác với trường đó. Nếu không được chỉ định, các đề xuất sẽ do Nếu được chỉ định, ứng dụng sẽ thực hiện hành động được chỉ định tại đây, chẳng hạn như chạy một hàm tuỳ chỉnh.
|
validation |
Chỉ định quy trình xác thực định dạng đầu vào cần thiết cho trường văn bản này.
|
placeholderText |
Văn bản xuất hiện trong trường nhập dữ liệu khi trường này trống. Sử dụng văn bản này để nhắc người dùng nhập một giá trị. Ví dụ:
|
| Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi: | |
hostAppDataSource |
Một nguồn dữ liệu dành riêng cho một ứng dụng lưu trữ của Google Workspace, chẳng hạn như email trong Gmail, sự kiện trên Lịch Google hoặc tin nhắn trò chuyện trong Google Chat. Dành cho các tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio. Không dùng được cho các ứng dụng Google Chat. |
| Kết thúc các trường loại trừ lẫn nhau. | |
Loại
Cách trường nhập dữ liệu xuất hiện trong giao diện người dùng. Ví dụ: trường nhập dữ liệu một dòng hay nhiều dòng. Nếu bạn chỉ định initialSuggestions, thì type luôn là SINGLE_LINE, ngay cả khi được đặt thành MULTIPLE_LINE.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Enum | |
|---|---|
SINGLE_LINE |
Trường nhập dữ liệu có chiều cao cố định là một dòng. |
MULTIPLE_LINE |
Trường nhập dữ liệu văn bản có chiều cao cố định gồm nhiều dòng. |
RenderActions
Một tập hợp các hướng dẫn kết xuất cho thẻ biết cách thực hiện một hành động hoặc cho ứng dụng lưu trữ tiện ích bổ sung hoặc ứng dụng Chat biết cách thực hiện một hành động dành riêng cho ứng dụng.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Trường | |
|---|---|
action | |
Hành động
| Trường | |
|---|---|
navigations[] |
Đẩy, bật lên hoặc cập nhật thẻ. |
Nội dung đề xuất
Giá trị đề xuất mà người dùng có thể nhập. Các giá trị này xuất hiện khi người dùng nhấp vào bên trong trường nhập dữ liệu. Khi người dùng nhập, các giá trị được đề xuất sẽ tự động lọc để khớp với nội dung người dùng đã nhập.
Ví dụ: một trường nhập dữ liệu cho ngôn ngữ lập trình có thể đề xuất Java, JavaScript, Python và C++. Khi người dùng bắt đầu nhập Jav, danh sách đề xuất sẽ lọc để hiển thị Java và JavaScript.
Giá trị đề xuất giúp hướng dẫn người dùng nhập các giá trị mà ứng dụng của bạn có thể hiểu được. Khi đề cập đến JavaScript, một số người dùng có thể nhập javascript và những người khác nhập java script. Việc đề xuất JavaScript có thể chuẩn hoá cách người dùng tương tác với ứng dụng của bạn.
Khi được chỉ định, TextInput.type luôn là SINGLE_LINE, ngay cả khi được đặt thành MULTIPLE_LINE.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{
"items": [
{
object ( |
| Trường | |
|---|---|
items[] |
Danh sách các đề xuất dùng cho tính năng tự động hoàn thành trong các trường nhập văn bản. |
SuggestionItem
Một giá trị đề xuất mà người dùng có thể nhập vào trường nhập dữ liệu.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{ "text": string } |
| Trường | |
|---|---|
| Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi: | |
text |
Giá trị của dữ liệu đầu vào được đề xuất cho trường nhập dữ liệu văn bản. Điều này tương đương với những gì người dùng tự nhập. |
| Kết thúc các trường loại trừ lẫn nhau. | |
Xác thực
Biểu thị dữ liệu cần thiết để xác thực tiện ích mà dữ liệu này được đính kèm.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{
"characterLimit": integer,
"inputType": enum ( |
| Trường | |
|---|---|
characterLimit |
Chỉ định giới hạn ký tự cho các tiện ích nhập văn bản. Xin lưu ý rằng thuộc tính này chỉ được dùng cho phương thức nhập văn bản và bị bỏ qua đối với các tiện ích khác.
|
inputType |
Chỉ định loại tiện ích nhập.
|
InputType
Loại tiện ích nhập dữ liệu.
| Enum | |
|---|---|
INPUT_TYPE_UNSPECIFIED |
Loại không xác định. Không được dùng. |
TEXT |
Văn bản thông thường chấp nhận tất cả ký tự. |
INTEGER |
Một giá trị số nguyên. |
FLOAT |
Giá trị số thực. |
EMAIL |
Địa chỉ email. |
EMOJI_PICKER |
Một biểu tượng cảm xúc được chọn từ bộ chọn biểu tượng cảm xúc do hệ thống cung cấp. |
HostAppDataSourceMarkup
Nguồn dữ liệu từ một ứng dụng Google Workspace. Nguồn dữ liệu điền sẵn các mục có sẵn cho một tiện ích.
| Biểu diễn dưới dạng JSON |
|---|
{ "chatDataSource": { object ( |
| Trường | |
|---|---|
| Ứng dụng Google Workspace điền sẵn các mục có sẵn cho một tiện ích. Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi: | |
chatDataSource |
Nguồn dữ liệu từ Google Chat. |
workflowDataSource |
Một nguồn dữ liệu từ Google Workflow. |
| Kết thúc các trường loại trừ lẫn nhau. | |
ChatClientDataSourceMarkup
Đối với tiện ích sử dụng trình đơn nhiều lựa chọn, nguồn dữ liệu từ Google Chat. Nguồn dữ liệu điền sẵn các mục lựa chọn cho trình đơn nhiều lựa chọn. Ví dụ: người dùng có thể chọn các không gian trong Google Chat mà họ là thành viên.SelectionInput
Có thể dùng cho các ứng dụng Google Chat và không thể dùng cho các tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{
"spaceDataSource": {
object ( |
| Trường | |
|---|---|
| Nguồn dữ liệu Google Chat. Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi: | |
spaceDataSource |
Các không gian trong Google Chat mà người dùng là thành viên. |
| Kết thúc các trường loại trừ lẫn nhau. | |
SpaceDataSource
Một nguồn dữ liệu điền sẵn các không gian trong Google Chat dưới dạng các mục lựa chọn cho trình đơn chọn nhiều mục. Chỉ điền sẵn những không gian mà người dùng là thành viên.
Có thể dùng cho các ứng dụng Google Chat và không thể dùng cho các tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{ "defaultToCurrentSpace": boolean } |
| Trường | |
|---|---|
defaultToCurrentSpace |
Nếu bạn đặt thành |
WorkflowDataSourceMarkup
* Chỉ được hỗ trợ bởi Quy trình công việc của Google Workspace, chứ không phải ứng dụng Google Chat hoặc tiện ích bổ sung của Google Workspace.
Trong tiện ích hoặc TextInput có loại MULTI_SELECT hoặc SelectionInput, hãy cung cấp nguồn dữ liệu của Google.DateTimePicker
| Biểu diễn dưới dạng JSON |
|---|
{
"includeVariables": boolean,
"type": enum ( |
| Trường | |
|---|---|
includeVariables |
Có đưa các biến từ bước trước vào nguồn dữ liệu hay không. |
type |
Loại nguồn dữ liệu. |
Loại
Một enum đại diện cho loại nguồn dữ liệu của quy trình công việc.
| Enum | |
|---|---|
UNKNOWN |
Giá trị mặc định. Đừng sử dụng. |
USER |
Người dùng Google Workspace. Người dùng chỉ có thể xem và chọn người dùng trong tổ chức Google Workspace của họ. |
SPACE |
Các không gian trong Google Chat mà người dùng là thành viên. |
USER_WITH_FREE_FORM |
Người dùng có thể chọn xem và chọn thành viên hiện có trong tổ chức Google Workspace của họ hoặc nhập địa chỉ email hoặc miền hợp lệ theo cách thủ công. |
SelectionInput
Một tiện ích tạo một hoặc nhiều mục trên giao diện người dùng mà người dùng có thể chọn. Chỉ hỗ trợ xác thực việc gửi biểu mẫu cho trình đơn dropdown và multiselect. Khi Action.all_widgets_are_required được đặt thành true hoặc tiện ích này được chỉ định trong Action.required_widgets, hành động gửi sẽ bị chặn trừ phi bạn chọn một giá trị. Ví dụ: trình đơn thả xuống hoặc hộp đánh dấu. Bạn có thể sử dụng tiện ích này để thu thập dữ liệu có thể dự đoán hoặc liệt kê. Để xem ví dụ về các ứng dụng Google Chat, hãy xem bài viết Thêm các phần tử trên giao diện người dùng có thể chọn.
Ứng dụng Chat có thể xử lý giá trị của các mục mà người dùng chọn hoặc nhập. Để biết thông tin chi tiết về cách xử lý dữ liệu đầu vào của biểu mẫu, hãy xem phần Nhận dữ liệu biểu mẫu.
Để thu thập dữ liệu không xác định hoặc dữ liệu trừu tượng từ người dùng, hãy sử dụng tiện ích TextInput.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{ "name": string, "label": string, "type": enum ( |
| Trường | |
|---|---|
name |
Bắt buộc. Tên xác định dữ liệu đầu vào của lựa chọn trong một sự kiện nhập biểu mẫu. Để biết thông tin chi tiết về cách xử lý dữ liệu đầu vào của biểu mẫu, hãy xem phần Nhận dữ liệu biểu mẫu. |
label |
Văn bản xuất hiện phía trên trường nhập dữ liệu lựa chọn trong giao diện người dùng. Chỉ định văn bản giúp người dùng nhập thông tin mà ứng dụng của bạn cần. Ví dụ: nếu người dùng đang chọn mức độ khẩn cấp của một phiếu yêu cầu công việc trong trình đơn thả xuống, thì nhãn có thể là "Mức độ khẩn cấp" hoặc "Chọn mức độ khẩn cấp". |
type |
Loại mục hiển thị cho người dùng trong một tiện ích |
items[] |
Một mảng các mục có thể chọn. Ví dụ: một mảng các nút chọn hoặc hộp đánh dấu. Hỗ trợ tối đa 100 mục. |
onChangeAction |
Nếu được chỉ định, biểu mẫu sẽ được gửi khi lựa chọn thay đổi. Nếu không chỉ định, bạn phải chỉ định một nút riêng để gửi biểu mẫu. Để biết thông tin chi tiết về cách xử lý dữ liệu đầu vào của biểu mẫu, hãy xem phần Nhận dữ liệu biểu mẫu. |
multiSelectMinQueryLength |
Đối với trình đơn nhiều lựa chọn, đây là số ký tự văn bản mà người dùng nhập trước khi trình đơn trả về các mục lựa chọn được đề xuất. Nếu bạn không đặt, trình đơn nhiều lựa chọn sẽ sử dụng các giá trị mặc định sau:
|
dataSourceConfigs[] |
Không bắt buộc. Cấu hình nguồn dữ liệu cho thành phần điều khiển lựa chọn. Trường này giúp bạn kiểm soát nguồn dữ liệu một cách chi tiết hơn. Nếu được chỉ định, trường Dành cho các tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio. Dùng được cho |
multiSelectMaxSelectedItems |
Đối với trình đơn nhiều lựa chọn, đây là số lượng mục tối đa mà người dùng có thể chọn. Giá trị tối thiểu là 1 mặt hàng. Nếu không được chỉ định, thì giá trị mặc định là 3 mục. |
hintText |
Không bắt buộc. Văn bản xuất hiện bên dưới trường nhập dữ liệu lựa chọn nhằm hỗ trợ người dùng bằng cách nhắc họ nhập một giá trị nhất định. Văn bản này luôn hiển thị. Dành cho các tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio. Không dùng được cho các ứng dụng Google Chat. |
Đối với trình đơn nhiều lựa chọn, đây là nguồn dữ liệu tự động điền các mục lựa chọn.
|
|
externalDataSource |
Nguồn dữ liệu bên ngoài, chẳng hạn như cơ sở dữ liệu quan hệ. |
platformDataSource |
Một nguồn dữ liệu từ Google Workspace. |
| Kết thúc các trường loại trừ lẫn nhau. | |
SelectionType
Định dạng cho các mục mà người dùng có thể chọn. Mỗi lựa chọn hỗ trợ các loại tương tác khác nhau. Ví dụ: người dùng có thể chọn nhiều hộp đánh dấu, nhưng chỉ có thể chọn một mục trong trình đơn thả xuống.
Mỗi dữ liệu đầu vào lựa chọn hỗ trợ một loại lựa chọn. Ví dụ: không hỗ trợ việc kết hợp hộp đánh dấu và nút chuyển.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Enum | |
|---|---|
CHECK_BOX |
Một tập hợp các hộp đánh dấu. Người dùng có thể chọn một hoặc nhiều hộp đánh dấu. |
RADIO_BUTTON |
Một nhóm nút chọn. Người dùng có thể chọn một nút chọn. |
SWITCH |
Một bộ công tắc. Người dùng có thể bật một hoặc nhiều công tắc. |
DROPDOWN |
Trình đơn thả xuống. Người dùng có thể chọn một mục trong trình đơn. Đối với ứng dụng Google Chat, bạn có thể điền các mục bằng nguồn dữ liệu động và tự động đề xuất các mục khi người dùng nhập vào trình đơn. Ví dụ: người dùng có thể bắt đầu nhập tên của một không gian trong Google Chat và tiện ích sẽ tự động đề xuất không gian đó. Để tự động điền các mục cho trình đơn thả xuống, hãy sử dụng một trong các loại nguồn dữ liệu sau:
Để biết ví dụ về cách triển khai trình đơn thả xuống cho ứng dụng Chat, hãy xem bài viết Thêm trình đơn thả xuống và Điền sẵn trình đơn thả xuống một cách linh động.
|
MULTI_SELECT |
Một trình đơn có hộp văn bản. Người dùng có thể nhập và chọn một hoặc nhiều mục. Đối với các tiện ích bổ sung của Google Workspace, bạn phải điền các mục bằng một mảng tĩnh gồm các đối tượng Đối với ứng dụng Google Chat, bạn cũng có thể điền các mục bằng nguồn dữ liệu động và tự động đề xuất các mục khi người dùng nhập vào trình đơn. Ví dụ: người dùng có thể bắt đầu nhập tên của một không gian trong Google Chat và tiện ích sẽ tự động đề xuất không gian đó. Để tự động điền các mục cho trình đơn nhiều lựa chọn, hãy sử dụng một trong các loại nguồn dữ liệu sau:
Để xem ví dụ về cách triển khai trình đơn nhiều lựa chọn cho ứng dụng Chat, hãy xem phần Thêm trình đơn nhiều lựa chọn.
|
PlatformDataSource
Đối với tiện ích sử dụng trình đơn nhiều lựa chọn, nguồn dữ liệu từ Google Workspace. Dùng để điền sẵn các mục trong trình đơn nhiều lựa chọn.SelectionInput
Có thể dùng cho các ứng dụng Google Chat và không thể dùng cho các tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{ "commonDataSource": enum ( |
| Trường | |
|---|---|
| Nguồn dữ liệu. Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi: | |
commonDataSource |
Một nguồn dữ liệu được tất cả các ứng dụng Google Workspace dùng chung, chẳng hạn như người dùng trong một tổ chức Google Workspace. |
hostAppDataSource |
Một nguồn dữ liệu dành riêng cho một ứng dụng lưu trữ của Google Workspace, chẳng hạn như không gian trong Google Chat. Trường này hỗ trợ Thư viện ứng dụng API của Google nhưng không có trong Thư viện ứng dụng Cloud. Để tìm hiểu thêm, hãy xem bài viết Cài đặt thư viện ứng dụng. |
| Kết thúc các trường loại trừ lẫn nhau. | |
CommonDataSource
Một nguồn dữ liệu được chia sẻ bởi tất cả ứng dụng Google Workspace.
Có thể dùng cho các ứng dụng Google Chat và không thể dùng cho các tiện ích bổ sung của Google Workspace.
| Enum | |
|---|---|
UNKNOWN |
Giá trị mặc định. Đừng sử dụng. |
USER |
Người dùng Google Workspace. Người dùng chỉ có thể xem và chọn người dùng trong tổ chức Google Workspace của họ. |
DataSourceConfig
Đối tượng cấu hình giúp định cấu hình nguồn dữ liệu cho một tiện ích.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio.
| Biểu diễn dưới dạng JSON |
|---|
{ "remoteDataSource": { object ( |
| Trường | |
|---|---|
| Nguồn dữ liệu. Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi: | |
remoteDataSource |
Dữ liệu này là của một nhà cung cấp dữ liệu từ xa. |
platformDataSource |
Dữ liệu này là từ một ứng dụng của Google Workspace. |
| Kết thúc các trường loại trừ lẫn nhau. | |
minCharactersTrigger |
Số ký tự tối thiểu mà người dùng phải nhập trước khi nhà cung cấp dữ liệu này được kích hoạt (tức là trước khi bắt đầu trả về kết quả). |
DateTimePicker
Cho phép người dùng nhập ngày, giờ hoặc cả ngày và giờ. Hỗ trợ xác thực việc gửi biểu mẫu. Khi Action.all_widgets_are_required được đặt thành true hoặc tiện ích này được chỉ định trong Action.required_widgets, hành động gửi sẽ bị chặn trừ phi bạn chọn một giá trị. Để xem ví dụ về các ứng dụng Google Chat, hãy xem bài viết Cho phép người dùng chọn ngày và giờ.
Người dùng có thể nhập văn bản hoặc sử dụng bộ chọn để chọn ngày và giờ. Nếu người dùng nhập ngày hoặc giờ không hợp lệ, bộ chọn sẽ hiển thị lỗi nhắc người dùng nhập thông tin chính xác.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{ "name": string, "label": string, "type": enum ( |
| Trường | |
|---|---|
name |
Tên mà Để biết thông tin chi tiết về cách xử lý dữ liệu đầu vào của biểu mẫu, hãy xem phần Nhận dữ liệu biểu mẫu. |
label |
Văn bản nhắc người dùng nhập ngày, giờ hoặc ngày và giờ. Ví dụ: nếu người dùng đang lên lịch hẹn, hãy sử dụng nhãn như |
type |
Liệu tiện ích có hỗ trợ nhập ngày, giờ hoặc ngày và giờ hay không. |
valueMsEpoch |
Giá trị mặc định hiển thị trong tiện ích, tính bằng mili giây kể từ thời gian Unix. Chỉ định giá trị dựa trên loại bộ chọn (
|
timezoneOffsetDate |
Số đại diện cho độ lệch múi giờ so với giờ UTC, tính bằng phút. Nếu bạn đặt chính sách này, thì Lưu ý: Trường này được tính bằng phút, trong khi tải trọng sự kiện tương tác của người dùng thường cung cấp độ lệch múi giờ tính bằng mili giây (chia cho |
onChangeAction |
Được kích hoạt khi người dùng nhấp vào Lưu hoặc Xoá trong giao diện |
| Nguồn dữ liệu được chỉ định để biểu thị ngày và giờ. Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi: | |
hostAppDataSource |
Một nguồn dữ liệu dành riêng cho một ứng dụng lưu trữ của Google Workspace, chẳng hạn như email trong Gmail, sự kiện trên Lịch Google hoặc tin nhắn trò chuyện trong Google Chat. Dành cho các tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio. Không dùng được cho các ứng dụng Google Chat. |
| Kết thúc các trường loại trừ lẫn nhau. | |
DateTimePickerType
Định dạng ngày và giờ trong tiện ích DateTimePicker. Xác định xem người dùng có thể nhập ngày, giờ hay cả ngày và giờ hay không.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Enum | |
|---|---|
DATE_AND_TIME |
Người dùng nhập ngày và giờ. |
DATE_ONLY |
Người dùng nhập ngày. |
TIME_ONLY |
Người dùng nhập thời gian. |
Dải phân cách
Loại này không có trường nào.
Hiển thị đường phân chia giữa các tiện ích dưới dạng đường ngang. Để xem ví dụ về ứng dụng Google Chat, hãy xem phần Thêm đường phân chia ngang giữa các tiện ích.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
Ví dụ: JSON sau đây tạo một đường phân chia:
"divider": {}
Lưới
Hiển thị lưới có một tập hợp các mục. Các mục chỉ được chứa văn bản hoặc hình ảnh. Đối với các cột thích ứng hoặc để thêm nhiều nội dung hơn ngoài văn bản hoặc hình ảnh, hãy sử dụng . Để xem ví dụ về ứng dụng Google Chat, hãy xem phần Hiển thị lưới có tập hợp các mục.Columns
Lưới hỗ trợ số lượng cột và mục bất kỳ. Số hàng được xác định bằng cách lấy số mục chia cho số cột. Một lưới có 10 mục và 2 cột sẽ có 5 hàng. Một lưới có 11 mục và 2 cột sẽ có 6 hàng.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
Ví dụ: JSON sau đây tạo một lưới 2 cột với một mục duy nhất:
"grid": {
"title": "A fine collection of items",
"columnCount": 2,
"borderStyle": {
"type": "STROKE",
"cornerRadius": 4
},
"items": [
{
"image": {
"imageUri": "https://www.example.com/image.png",
"cropStyle": {
"type": "SQUARE"
},
"borderStyle": {
"type": "STROKE"
}
},
"title": "An item",
"textAlignment": "CENTER"
}
],
"onClick": {
"openLink": {
"url": "https://www.example.com"
}
}
}
| Biểu diễn dưới dạng JSON |
|---|
{ "title": string, "items": [ { object ( |
| Trường | |
|---|---|
title |
Văn bản xuất hiện trong tiêu đề lưới. |
items[] |
Các mục cần hiển thị trong lưới. |
borderStyle |
Kiểu đường viền để áp dụng cho từng mục trong lưới. |
columnCount |
Số cột cần hiển thị trong lưới. Giá trị mặc định sẽ được sử dụng nếu bạn không chỉ định trường này và giá trị mặc định đó sẽ khác nhau tuỳ thuộc vào vị trí hiển thị lưới (hộp thoại so với quảng cáo đồng hành). |
onClick |
Mỗi mục riêng lẻ trong lưới sẽ sử dụng lại lệnh gọi lại này, nhưng giá trị nhận dạng của mục sẽ được thêm vào các tham số của lệnh gọi lại (trong khoá |
GridItem
Đại diện cho một mục trong bố cục lưới. Các mục có thể chứa văn bản, hình ảnh hoặc cả văn bản và hình ảnh.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{ "id": string, "image": { object ( |
| Trường | |
|---|---|
id |
Giá trị nhận dạng do người dùng chỉ định cho mục lưới này. Giá trị nhận dạng này được trả về trong các tham số gọi lại |
image |
Hình ảnh hiển thị trong mục lưới. |
title |
Tiêu đề của mục trong lưới. |
subtitle |
Phụ đề của mục trong lưới. |
layout |
Bố cục dùng cho mục trong lưới. |
ImageComponent
Đại diện cho một hình ảnh.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{ "imageUri": string, "altText": string, "cropStyle": { object ( |
| Trường | |
|---|---|
imageUri |
URL hình ảnh. |
altText |
Nhãn hỗ trợ tiếp cận cho hình ảnh. |
cropStyle |
Kiểu cắt để áp dụng cho hình ảnh. |
borderStyle |
Kiểu đường viền sẽ áp dụng cho hình ảnh. |
ImageCropStyle
Biểu thị kiểu cắt được áp dụng cho hình ảnh.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
Ví dụ: sau đây là cách áp dụng tỷ lệ khung hình 16:9:
cropStyle {
"type": "RECTANGLE_CUSTOM",
"aspectRatio": 16/9
}
| Biểu diễn dưới dạng JSON |
|---|
{
"type": enum ( |
| Trường | |
|---|---|
type |
Loại cây trồng. |
aspectRatio |
Tỷ lệ khung hình cần sử dụng nếu loại cắt là Ví dụ: sau đây là cách áp dụng tỷ lệ khung hình 16:9: |
ImageCropType
Biểu thị kiểu cắt được áp dụng cho hình ảnh.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Enum | |
|---|---|
IMAGE_CROP_TYPE_UNSPECIFIED |
Đừng sử dụng. Không xác định. |
SQUARE |
Giá trị mặc định. Áp dụng thao tác cắt hình vuông. |
CIRCLE |
Áp dụng thao tác cắt hình tròn. |
RECTANGLE_CUSTOM |
Cắt hình chữ nhật theo tỷ lệ khung hình tuỳ chỉnh. Đặt tỷ lệ khung hình tuỳ chỉnh bằng aspectRatio. |
RECTANGLE_4_3 |
Cắt hình chữ nhật theo tỷ lệ khung hình 4:3. |
BorderStyle
Các lựa chọn về kiểu cho đường viền của thẻ hoặc tiện ích, bao gồm cả loại và màu đường viền.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{ "type": enum ( |
| Trường | |
|---|---|
type |
Loại đường viền. |
strokeColor |
Màu sắc cần sử dụng khi loại là Để đặt màu nét vẽ, hãy chỉ định một giá trị cho các trường Ví dụ: đoạn mã sau đây đặt màu đỏ ở cường độ tối đa: Trường |
cornerRadius |
Bán kính góc cho đường viền. |
BorderType
Biểu thị các loại đường viền được áp dụng cho tiện ích.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Enum | |
|---|---|
BORDER_TYPE_UNSPECIFIED |
Đừng sử dụng. Không xác định. |
NO_BORDER |
Không có đường viền. |
STROKE |
Giá trị mặc định. Outline. |
GridItemLayout
Đại diện cho nhiều lựa chọn bố cục có sẵn cho một mục trong lưới.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Enum | |
|---|---|
GRID_ITEM_LAYOUT_UNSPECIFIED |
Đừng sử dụng. Không xác định. |
TEXT_BELOW |
Tiêu đề và phụ đề xuất hiện bên dưới hình ảnh của mục trong lưới. |
TEXT_ABOVE |
Tiêu đề và phụ đề xuất hiện phía trên hình ảnh của mục trong lưới. |
Cột
Tiện ích Columns hiển thị tối đa 2 cột trong một thẻ hoặc hộp thoại. Bạn có thể thêm tiện ích vào mỗi cột; các tiện ích sẽ xuất hiện theo thứ tự được chỉ định. Để xem ví dụ về ứng dụng Google Chat, hãy xem bài viết Hiển thị thẻ và hộp thoại theo cột.
Chiều cao của mỗi cột được xác định theo cột cao hơn. Ví dụ: nếu cột đầu tiên cao hơn cột thứ hai, thì cả hai cột đều có chiều cao của cột đầu tiên. Vì mỗi cột có thể chứa số lượng tiện ích khác nhau, nên bạn không thể xác định hàng hoặc căn chỉnh tiện ích giữa các cột.
Các cột được hiển thị cạnh nhau. Bạn có thể tuỳ chỉnh chiều rộng của từng cột bằng trường HorizontalSizeStyle. Nếu chiều rộng màn hình của người dùng quá hẹp, thì cột thứ hai sẽ xuống dòng bên dưới cột thứ nhất:
- Trên web, cột thứ hai sẽ xuống dòng nếu chiều rộng màn hình nhỏ hơn hoặc bằng 480 pixel.
- Trên thiết bị iOS, cột thứ hai sẽ xuống dòng nếu chiều rộng màn hình nhỏ hơn hoặc bằng 300 pt.
- Trên thiết bị Android, cột thứ hai sẽ xuống dòng nếu chiều rộng màn hình nhỏ hơn hoặc bằng 320 dp.
Để thêm nhiều hơn hai cột hoặc để sử dụng hàng, hãy dùng tiện ích .Grid
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace. Các giao diện người dùng của tiện ích bổ sung hỗ trợ cột bao gồm:
- Hộp thoại xuất hiện khi người dùng mở tiện ích bổ sung từ một bản nháp email.
- Hộp thoại xuất hiện khi người dùng mở tiện ích bổ sung từ trình đơn Thêm tệp đính kèm trong một sự kiện trên Lịch Google.
| Biểu diễn dưới dạng JSON |
|---|
{
"columnItems": [
{
object ( |
| Trường | |
|---|---|
columnItems[] |
Một mảng các cột. Bạn có thể thêm tối đa 2 cột trong một thẻ hoặc hộp thoại. |
Cột
Một cột.
| Biểu diễn dưới dạng JSON |
|---|
{ "horizontalSizeStyle": enum ( |
| Trường | |
|---|---|
horizontalSizeStyle |
Chỉ định cách một cột lấp đầy chiều rộng của thẻ. |
horizontalAlignment |
Chỉ định xem các tiện ích có căn chỉnh sang trái, phải hay giữa cột hay không. |
verticalAlignment |
Chỉ định xem các tiện ích có căn chỉnh theo đầu, cuối hay giữa cột hay không. |
widgets[] |
Một mảng các tiện ích có trong một cột. Tiện ích xuất hiện theo thứ tự được chỉ định. |
HorizontalSizeStyle
Chỉ định cách một cột lấp đầy chiều rộng của thẻ. Chiều rộng của mỗi cột phụ thuộc vào cả HorizontalSizeStyle và chiều rộng của các tiện ích trong cột.
| Enum | |
|---|---|
HORIZONTAL_SIZE_STYLE_UNSPECIFIED |
Đừng sử dụng. Không xác định. |
FILL_AVAILABLE_SPACE |
Giá trị mặc định. Cột lấp đầy không gian có sẵn, tối đa 70% chiều rộng của thẻ. Nếu cả hai cột đều được đặt thành FILL_AVAILABLE_SPACE, thì mỗi cột sẽ lấp đầy 50% không gian. |
FILL_MINIMUM_SPACE |
Cột chiếm ít không gian nhất có thể và không quá 30% chiều rộng của thẻ. |
HorizontalAlignment
Chỉ định xem các tiện ích có căn chỉnh sang trái, phải hay giữa cột hay không.
Có thể dùng cho các ứng dụng Google Chat và không thể dùng cho các tiện ích bổ sung của Google Workspace.
| Enum | |
|---|---|
HORIZONTAL_ALIGNMENT_UNSPECIFIED |
Đừng sử dụng. Không xác định. |
START |
Giá trị mặc định. Căn chỉnh các tiện ích theo vị trí bắt đầu của cột. Đối với bố cục từ trái sang phải, hãy căn chỉnh sang bên trái. Đối với bố cục từ phải sang trái, hãy căn chỉnh sang bên phải. |
CENTER |
Căn chỉnh các tiện ích vào giữa cột. |
END |
Căn chỉnh các tiện ích theo vị trí cuối của cột. Đối với bố cục từ trái sang phải, hãy căn chỉnh các tiện ích sang bên phải. Đối với bố cục từ phải sang trái, hãy căn chỉnh các tiện ích sang bên trái. |
VerticalAlignment
Chỉ định xem các tiện ích có căn chỉnh theo đầu, cuối hay giữa cột hay không.
| Enum | |
|---|---|
VERTICAL_ALIGNMENT_UNSPECIFIED |
Đừng sử dụng. Không xác định. |
CENTER |
Giá trị mặc định. Căn chỉnh các tiện ích vào giữa một cột. |
TOP |
Căn chỉnh các tiện ích lên đầu cột. |
BOTTOM |
Căn chỉnh các tiện ích xuống cuối cột. |
Tiện ích
Các tiện ích được hỗ trợ mà bạn có thể đưa vào một cột.
| Biểu diễn dưới dạng JSON |
|---|
{ "textParagraph": { object ( |
| Trường | |
|---|---|
| Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi: | |
textParagraph |
|
image |
|
decoratedText |
|
buttonList |
|
textInput |
|
selectionInput |
|
dateTimePicker |
|
chipList |
|
| Kết thúc các trường loại trừ lẫn nhau. | |
ChipList
Danh sách các khối được bố trí theo chiều ngang, có thể cuộn theo chiều ngang hoặc xuống dòng tiếp theo.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{ "layout": enum ( |
| Trường | |
|---|---|
layout |
Bố cục dạng danh sách khối được chỉ định. |
chips[] |
Một mảng khối. |
Bố cục
Bố cục dạng danh sách khối.
| Enum | |
|---|---|
LAYOUT_UNSPECIFIED |
Đừng sử dụng. Không xác định. |
WRAPPED |
Giá trị mặc định. Danh sách khối sẽ xuống dòng tiếp theo nếu không có đủ không gian theo chiều ngang. |
HORIZONTAL_SCROLLABLE |
Khối có thể cuộn theo chiều ngang nếu không vừa với không gian có sẵn. |
Khối
Một khối văn bản, biểu tượng hoặc văn bản và biểu tượng mà người dùng có thể nhấp vào.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{ "icon": { object ( |
| Trường | |
|---|---|
icon |
Hình ảnh biểu tượng. Nếu bạn đặt cả |
label |
Văn bản xuất hiện bên trong khối. |
onClick |
Không bắt buộc. Thao tác cần thực hiện khi người dùng nhấp vào khối, chẳng hạn như mở một siêu liên kết hoặc chạy một hàm tuỳ chỉnh. |
enabled |
Không dùng nữa: Hãy sử dụng Liệu khối có đang ở trạng thái hoạt động và phản hồi các hành động của người dùng hay không. |
disabled |
Liệu khối có ở trạng thái không hoạt động và bỏ qua hành động của người dùng hay không. Giá trị mặc định là |
altText |
Văn bản thay thế được dùng cho tính năng hỗ trợ tiếp cận. Đặt văn bản mô tả cho người dùng biết chức năng của khối. Ví dụ: nếu một khối mở ra một siêu liên kết, hãy viết: "Mở một thẻ trình duyệt mới và chuyển đến tài liệu dành cho nhà phát triển Google Chat tại https://developers.google.com/workspace/chat". |
Băng chuyền
Xoay và hiển thị danh sách thẻ băng chuyền ở định dạng trình chiếu, có các nút để chuyển đến thẻ trước hoặc thẻ tiếp theo.
Ví dụ: đây là bản trình bày JSON của một băng chuyền chứa ba tiện ích đoạn văn bản.
{
"carouselCards": [
{
"widgets": [
{
"textParagraph": {
"text": "First text paragraph in carousel"
}
}
]
},
{
"widgets": [
{
"textParagraph": {
"text": "Second text paragraph in carousel"
}
}
]
},
{
"widgets": [
{
"textParagraph": {
"text": "Third text paragraph in carousel"
}
}
]
}
]
}
Có thể dùng cho các ứng dụng Google Chat và không thể dùng cho các tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{
"carouselCards": [
{
object ( |
| Trường | |
|---|---|
carouselCards[] |
Danh sách các thẻ có trong băng chuyền. |
CarouselCard
Một thẻ có thể hiển thị dưới dạng mục trong băng chuyền. Có thể dùng cho các ứng dụng Google Chat và không thể dùng cho các tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{ "widgets": [ { object ( |
| Trường | |
|---|---|
widgets[] |
Danh sách các tiện ích xuất hiện trong thẻ băng chuyền. Các tiện ích được hiển thị theo thứ tự mà chúng được chỉ định. |
footerWidgets[] |
Danh sách các tiện ích xuất hiện ở cuối thẻ băng chuyền. Các tiện ích được hiển thị theo thứ tự mà chúng được chỉ định. |
NestedWidget
Danh sách các tiện ích có thể hiển thị trong một bố cục chứa, chẳng hạn như CarouselCard. Có thể dùng cho các ứng dụng Google Chat và không thể dùng cho các tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{ "textParagraph": { object ( |
| Trường | |
|---|---|
| Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi: | |
textParagraph |
Tiện ích đoạn văn bản. |
buttonList |
Một tiện ích danh sách nút. |
image |
Một tiện ích hình ảnh. |
| Kết thúc các trường loại trừ lẫn nhau. | |
Chế độ hiển thị
Chỉ định xem một phần tử trên giao diện người dùng là hiển thị hay bị ẩn.
Dành cho các tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio. Không dùng được cho các ứng dụng Google Chat.
| Enum | |
|---|---|
VISIBILITY_UNSPECIFIED |
Chế độ hiển thị chưa xác định. Không được dùng. |
VISIBLE |
Phần tử trên giao diện người dùng hiển thị. |
HIDDEN |
Phần tử trên giao diện người dùng bị ẩn. |
EventAction
Đại diện cho một hành động có thể thực hiện trên một phần tử trên giao diện người dùng.
Dành cho các tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio. Không dùng được cho các ứng dụng Google Chat.
| Biểu diễn dưới dạng JSON |
|---|
{ "actionRuleId": string, "postEventTriggers": [ { object ( |
| Trường | |
|---|---|
actionRuleId |
Giá trị nhận dạng riêng biệt của ActionRule. |
postEventTriggers[] |
Danh sách các điều kiện kích hoạt sẽ được kích hoạt sau khi EventAction được thực thi. |
| Thao tác cần thực hiện. Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi: | |
commonWidgetAction |
Thao tác phổ biến với tiện ích. |
| Kết thúc các trường loại trừ lẫn nhau. | |
Trigger
Đại diện cho một điều kiện kích hoạt.
Dành cho các tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio. Không dùng được cho các ứng dụng Google Chat.
| Biểu diễn dưới dạng JSON |
|---|
{ "actionRuleId": string } |
| Trường | |
|---|---|
actionRuleId |
Giá trị nhận dạng riêng biệt của ActionRule. |
CommonWidgetAction
Đại diện cho một hành động không dành riêng cho một tiện ích.
Dành cho các tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio. Không dùng được cho các ứng dụng Google Chat.
| Biểu diễn dưới dạng JSON |
|---|
{
"updateVisibilityAction": {
object ( |
| Trường | |
|---|---|
| Thao tác cần thực hiện. Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi: | |
updateVisibilityAction |
Thao tác cập nhật chế độ hiển thị của một tiện ích. |
| Kết thúc các trường loại trừ lẫn nhau. | |
UpdateVisibilityAction
Đại diện cho một hành động cập nhật chế độ hiển thị của một tiện ích.
Dành cho các tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio. Không dùng được cho các ứng dụng Google Chat.
| Biểu diễn dưới dạng JSON |
|---|
{
"visibility": enum ( |
| Trường | |
|---|---|
visibility |
Chế độ hiển thị mới. |
CollapseControl
Đại diện cho một chế độ kiểm soát mở rộng và thu gọn.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Biểu diễn dưới dạng JSON |
|---|
{ "horizontalAlignment": enum ( |
| Trường | |
|---|---|
horizontalAlignment |
Căn chỉnh theo chiều ngang của nút mở rộng và thu gọn. |
expandButton |
Không bắt buộc. Xác định nút có thể tuỳ chỉnh để mở rộng phần này. Bạn phải đặt cả trường expandButton và collapseButton. Chỉ một nhóm trường sẽ không có hiệu lực. Nếu bạn không đặt trường này, hệ thống sẽ sử dụng nút mặc định. |
collapseButton |
Không bắt buộc. Xác định một nút có thể tuỳ chỉnh để thu gọn mục này. Bạn phải đặt cả trường expandButton và collapseButton. Chỉ một nhóm trường sẽ không có hiệu lực. Nếu bạn không đặt trường này, hệ thống sẽ sử dụng nút mặc định. |
DividerStyle
Kiểu đường phân chia của thẻ. Hiện chỉ dùng cho đường phân chia giữa các phần của thẻ.
Dành cho các ứng dụng Google Chat và tiện ích bổ sung của Google Workspace.
| Enum | |
|---|---|
DIVIDER_STYLE_UNSPECIFIED |
Đừng sử dụng. Không xác định. |
SOLID_DIVIDER |
Lựa chọn mặc định. Hiển thị một đường phân chia liền nét. |
NO_DIVIDER |
Nếu bạn đặt giá trị này, thì đường phân chia sẽ không được hiển thị. Kiểu này sẽ xoá hoàn toàn đường phân chia khỏi bố cục. Kết quả tương đương với việc không thêm đường phân chia nào cả. |
CardAction
Hành động trên thẻ là hành động liên quan đến thẻ. Ví dụ: thẻ hoá đơn có thể bao gồm các thao tác như xoá hoá đơn, gửi hoá đơn qua email hoặc mở hoá đơn trong trình duyệt.
Có trong các tiện ích bổ sung của Google Workspace và không có trong các ứng dụng Google Chat.
| Biểu diễn dưới dạng JSON |
|---|
{
"actionLabel": string,
"onClick": {
object ( |
| Trường | |
|---|---|
actionLabel |
Nhãn xuất hiện dưới dạng mục trong trình đơn thao tác. |
onClick |
Hành động |
DisplayStyle
Trong tiện ích bổ sung của Google Workspace, thuộc tính này xác định cách hiển thị thẻ.
Có trong các tiện ích bổ sung của Google Workspace và không có trong các ứng dụng Google Chat.
| Enum | |
|---|---|
DISPLAY_STYLE_UNSPECIFIED |
Đừng sử dụng. Không xác định. |
PEEK |
Tiêu đề của thẻ xuất hiện ở cuối thanh bên, che một phần thẻ trên cùng hiện tại của ngăn xếp. Khi nhấp vào tiêu đề, thẻ sẽ bật lên trong ngăn xếp thẻ. Nếu thẻ không có tiêu đề, thì tiêu đề được tạo sẽ được sử dụng. |
REPLACE |
Giá trị mặc định. Thẻ này xuất hiện bằng cách thay thế chế độ xem của thẻ trên cùng trong ngăn xếp thẻ. |
ExpressionData
Biểu thị dữ liệu được dùng để đánh giá một biểu thức.
Dành cho các tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio. Không dùng được cho các ứng dụng Google Chat.
| Biểu diễn dưới dạng JSON |
|---|
{ "id": string, "expression": string, "conditions": [ { object ( |
| Trường | |
|---|---|
id |
Giá trị nhận dạng riêng biệt của ExpressionData. |
expression |
Biểu thức chưa được biên dịch. |
conditions[] |
Danh sách các điều kiện được xác định theo kết quả đánh giá biểu thức. |
eventActions[] |
Danh sách các hành động mà ExpressionData có thể sử dụng. |
Điều kiện
Biểu thị một điều kiện có thể dùng để kích hoạt một hành động.
Dành cho các tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio. Không dùng được cho các ứng dụng Google Chat.
| Biểu diễn dưới dạng JSON |
|---|
{
"actionRuleId": string,
"expressionDataCondition": {
object ( |
| Trường | |
|---|---|
actionRuleId |
Giá trị nhận dạng riêng biệt của ActionRule. |
| Điều kiện. Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi: | |
expressionDataCondition |
Điều kiện được xác định bằng dữ liệu biểu thức. |
| Kết thúc các trường loại trừ lẫn nhau. | |
ExpressionDataCondition
Biểu thị một điều kiện được đánh giá bằng CEL.
Dành cho các tiện ích bổ sung của Google Workspace giúp mở rộng Google Workspace Studio. Không dùng được cho các ứng dụng Google Chat.
| Biểu diễn dưới dạng JSON |
|---|
{
"conditionType": enum ( |
| Trường | |
|---|---|
conditionType |
Loại điều kiện. |
ConditionType
Loại điều kiện.
| Enum | |
|---|---|
CONDITION_TYPE_UNSPECIFIED |
Loại điều kiện không xác định. |
EXPRESSION_EVALUATION_SUCCESS |
Đã đánh giá biểu thức thành công. |
EXPRESSION_EVALUATION_FAILURE |
Không đánh giá được biểu thức. |