Trang này mô tả cách tạo thông báo hiển thị nội tuyến như khi người dùng nhập. Sử dụng tin nhắn văn bản để trình bày thông tin đơn giản cho người dùng. Để biết thông tin về cách tạo các thông báo phức tạp hơn giúp tạo thẻ trong cuộc trò chuyện, hãy xem phần Gửi tin nhắn thẻ.
Điều kiện tiên quyết
Để chạy các ví dụ trong hướng dẫn này, bạn cần đáp ứng các điều kiện tiên quyết sau:
Python
- Python 3.6 trở lên
- Công cụ quản lý gói pip
Thư viện ứng dụng Python của Google. Cài đặt thư viện ứng dụng:
pip3 install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib oauth2client
Một ứng dụng Chat đã phát hành có gói thành viên trong một phòng Chat:
- Để tạo và phát hành một ứng dụng nhắn tin, hãy xem phần Xây dựng ứng dụng Google Chat bằng chức năng đám mây.
- Để thêm một ứng dụng nhắn tin vào một phòng Chat, hãy xem bài viết Thêm ứng dụng vào không gian hoặc cuộc trò chuyện trong Google Chat.
Chế độ uỷ quyền được định cấu hình cho ứng dụng Chat:
- Xác thực tài khoản dịch vụ được hỗ trợ đầy đủ. Để thiết lập tài khoản dịch vụ, hãy xem phần Xác thực và ủy quyền tài khoản dịch vụ.
- Chương trình dùng thử nhà phát triển Google Workspace, cho phép truy cập sớm vào một số tính năng. Để thiết lập phương thức xác thực người dùng, hãy xem phần Xác thực và uỷ quyền người dùng (Bản dùng thử cho nhà phát triển). Bản dùng thử cho nhà phát triển: Xác thực người dùng được hỗ trợ trong
Phân tích thành phần của tin nhắn văn bản
Mọi tin nhắn trong Google Chat đều được biểu thị dưới dạng đối tượng JSON. Ví dụ sau đây là một thông báo cơ bản chỉ định một nội dung văn bản thuần tuý:
{
"text": "Your pizza delivery is here!"
}
Nếu bạn đăng lên Google Chat, ví dụ này sẽ hiển thị như sau:
Gửi tin nhắn văn bản không đồng bộ
Dưới đây là cách tạo thông báo text:
Python
- Trong thư mục đang hoạt động, hãy tạo một tệp có tên là
chat_create_text_message.py
. Đưa mã sau vào
chat_create_text_message.py
:from httplib2 import Http from oauth2client.service_account import ServiceAccountCredentials from apiclient.discovery import build # Specify required scopes. SCOPES = ['https://www.googleapis.com/auth/chat.bot'] # Specify service account details. CREDENTIALS = ServiceAccountCredentials.from_json_keyfile_name( 'service_account.json', SCOPES) # Build the URI and authenticate with the service account. chat = build('chat', 'v1', http=CREDENTIALS.authorize(Http())) # Create a Chat message. result = chat.spaces().messages().create( # The space to create the message in. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. parent='spaces/SPACE', # The message to create. body={'text': 'Hello, world!'} ).execute() print(result)
Trong mã, hãy thay thế
SPACE
bằng tên không gian mà bạn có thể lấy được từ phương thứcspaces.list()
trong API trò chuyện hoặc từ URL của một không gian.Trong thư mục đang hoạt động, hãy tạo và chạy mẫu:
python3 chat_create_text_message.py
Định dạng văn bản trong tin nhắn
Google Chat cho phép bạn thêm định dạng cơ bản vào văn bản tin nhắn, bao gồm cả kiểu in đậm, in nghiêng và gạch ngang chữ. Để định dạng văn bản, hãy gói văn bản đó bằng các ký hiệu sau:
Định dạng | Biểu tượng | Ví dụ: | Kết quả |
---|---|---|---|
In đậm | * | *xin chào* | xin chào |
In nghiêng | _ (dấu gạch dưới) | _xin chào_ | xin chào |
Gạch ngang chữ | ~ | ~xin chào~ | |
Phông chữ đơn cách | ` (dấu trích dẫn) | `xin chào` | hello |
Khối đơn cách | ``` (dấu ngoặc kép mở) | ``` Xin chào Thế giới ``` |
Hello |
Ví dụ: hãy xem xét JSON sau:
{
"text": "Your pizza delivery *has arrived*!\nThank you for using _Pizza Bot!_"
}
Thao tác này sẽ đặt một tin nhắn như sau vào phòng Chat:
Cú pháp đánh dấu văn bản này giống với cú pháp áp dụng cho các thông báo do người dùng nhập. Vì vậy, cú pháp này khác với định dạng dựa trên HTML áp dụng cho văn bản bên trong thẻ.
Bao gồm đường liên kết trong văn bản tin nhắn
Nếu bạn đưa một URL liên kết thuần tuý vào văn bản tin nhắn, chẳng hạn như http://example.com/
, thì Google Chat sẽ sử dụng URL này làm văn bản liên kết và tự động chuyển siêu liên kết văn bản đó đến URL đã chỉ định.
Để cung cấp văn bản liên kết thay thế cho đường liên kết của bạn, hãy sử dụng cú pháp sau:
Cú pháp | Kết xuất |
---|---|
<https://example.com/|LINK_TEXT> |
LINK_TEXT |
Văn bản đường liên kết và văn bản liên kết là không bắt buộc, do đó <https://example.com/>
và https://example.com/
là tương đương nhau.
Thư @đề cập đến người dùng cụ thể
Ứng dụng nhắn tin có thể đề cập đến một người dùng bằng tin nhắn @bằng cách cung cấp USER_ID
trong cú pháp sau. Để xác định USER_ID cho người dùng, hãy kiểm tra trường
sender
của thông báo đến từ người dùng.
<users/USER_ID>
Chuỗi này được thay thế bằng một lượt đề cập bằng @của người dùng đã chỉ định. Ví dụ: hãy xem xét JSON sau:
{
"text": "Hey <users/123456789012345678901>! Thank you for using _Pizza bot!_"
}
Thao tác này sẽ tạo ra một kết quả như sau:
Thư đề cập đến tất cả người dùng bằng @
Bạn có thể sử dụng mã nhận dạng người dùng all
để đề cập tất cả người dùng trong một không gian bằng tên @. Ví dụ:
{
"text": "Important message for <users/all>: Code freeze starts at midnight tonight!"
}