Tổng quan về tin nhắn trong Google Chat

Trang này giải thích sự khác biệt giữa tin nhắn văn bản và tin nhắn thẻ.

Khi các ứng dụng Chat gửi tin nhắn văn bản để truyền tải thông tin cơ bản, tin nhắn sẽ xuất hiện ở dạng nội tuyến, giống như cách mọi người viết tin nhắn trong Google Chat. Để tạo tin nhắn có nhiều nội dung hơn văn bản hoặc để tạo tin nhắn mà người dùng có thể tương tác, các ứng dụng Chat có thể sử dụng thẻ. Các ứng dụng Chat cũng có thể thêm thẻ vào tin nhắn văn bản. Để nhắc người dùng hoàn tất các quy trình nhiều bước, chẳng hạn như hoàn thành biểu mẫu, các ứng dụng Chat cũng có thể tạo thẻ mở trong một cửa sổ mới dưới dạng hộp thoại.

Cấu trúc của tin nhắn văn bản

Trong API Google Chat, tin nhắn được biểu thị dưới dạng đối tượng JSON. Trong một tin nhắn, tin nhắn văn bản được biểu thị dưới dạng text đối tượng.

Trong ví dụ sau, một ứng dụng Chat tạo tin nhắn văn bản trong một Không gian dành cho nhóm nhà phát triển phần mềm rằng thời gian đóng băng mã đang đến gần:

{
  "text": "Attention <users/all>: Code freeze starts at `11:59 am` Pacific Standard Time! If you need a little more time, type `/moreTime` and I'll push the code freeze back one hour."
}

JSON trả về thông báo sau:

Ví dụ về tin nhắn văn bản trong Google Chat thông báo về việc ngừng cập nhật mã.

Cấu trúc của tin nhắn thẻ

Trong API Google Chat, tin nhắn được biểu thị dưới dạng đối tượng JSON. Trong một tin nhắn thẻ được biểu thị dưới dạng cardsV2 mảng và bao gồm những nội dung sau:

  • Một hoặc nhiều CardWithId đối tượng.
  • cardId dùng để xác định thẻ và được đặt trong phạm vi của một tin nhắn nhất định. (Các thẻ trong các tin nhắn khác nhau có thể có cùng mã nhận dạng.)
  • Đối tượng card, bao gồm những nội dung sau:

    • Đối tượng header chỉ định những nội dung như tiêu đề, tiêu đề phụ và hình ảnh theo kiểu hình đại diện.
    • Một hoặc nhiều section đối tượng mà mỗi đối tượng chứa ít nhất một tiện ích.
    • Một hoặc nhiều widget đối tượng. Mỗi tiện ích là một đối tượng tổng hợp có thể biểu thị văn bản, hình ảnh, nút và các loại đối tượng khác.

Ví dụ: tin nhắn thẻ sau đây chứa các đối tượng header, sectionwidget:

Ứng dụng Chat đang chạy một cuộc thăm dò ý kiến trong một không gian Chat bằng cách sử dụng một thông báo dạng thẻ

Mã sau đây biểu thị JSON của tin nhắn thẻ:

JSON

{
  "cardsV2": [
    {
      "cardId": "unique-card-id",
      "card": {
        "header": {
          "title": "Sasha",
          "subtitle": "Software Engineer",
          "imageUrl": "https://developers.google.com/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"
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            ]
          }
        ]
      }
    }
  ]
}


Sử dụng Trình tạo thẻ để thiết kế và xem trước giao diện người dùng và giao diện nhắn tin cho các ứng dụng Chat:

Mở Trình tạo thẻ