quản lý phòng, thành viên và tin nhắn trong Chat.
Dịch vụ Chat nâng cao cho phép bạn sử dụng API Google Chat trong Google Apps Script. API này cho phép tập lệnh tìm, tạo và sửa đổi phòng Chat, thêm hoặc xoá thành viên khỏi phòng, cũng như đọc hoặc đăng tin nhắn có văn bản, thẻ, tệp đính kèm và biểu tượng cảm xúc.
Điều kiện tiên quyết
- Một ứng dụng Google Chat trong Apps Script được định cấu hình trên trang định cấu hình API Chat trong bảng điều khiển Google Cloud. Dự án Apps Script của ứng dụng phải sử dụng một dự án Google Cloud tiêu chuẩn thay vì dự án mặc định được tạo tự động cho các dự án Apps Script. Để tạo một ứng dụng Google Chat tương thích, hãy xem bài viết Tạo ứng dụng Google Chat bằng Google Apps Script.
- Xác thực được định cấu hình cho ứng dụng Chat. Việc thực hiện một hành động thay mặt cho người dùng đòi hỏi phải xác thực người dùng. Việc thực hiện một hành động dưới dạng ứng dụng Chat đòi hỏi phải xác thực ứng dụng bằng tài khoản dịch vụ. Để kiểm tra hình thức xác thực mà một phương thức API Chat hỗ trợ, hãy xem Các loại xác thực bắt buộc đối với lệnh gọi API Google Chat.
Đây là một dịch vụ nâng cao mà bạn phải bật trước khi sử dụng.
Tài liệu tham khảo
Để biết thêm thông tin về dịch vụ này, hãy xem tài liệu tham khảo API Chat . Giống như tất cả các dịch vụ nâng cao trong Apps Script, dịch vụ Chat sử dụng cùng các đối tượng, phương thức và tham số như API công khai.
Mã mẫu
Các mẫu này cho thấy cách thực hiện các hành động API Google Chat phổ biến bằng dịch vụ nâng cao.
Đăng tin nhắn bằng thông tin xác thực người dùng
Ví dụ sau đây minh hoạ cách đăng tin nhắn lên một phòng Chat thay mặt cho người dùng.
Thêm phạm vi uỷ quyền
chat.messages.createvào tệpappsscript.jsoncủa dự án Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.create" ]Thêm một hàm như hàm này vào mã của dự án Apps Script:
Đăng tin nhắn bằng thông tin xác thực ứng dụng
Ví dụ sau đây minh hoạ cách đăng tin nhắn lên một phòng Chat thay mặt cho ứng dụng. Việc sử dụng dịch vụ Chat nâng cao với tài khoản dịch vụ không yêu cầu bạn chỉ định phạm vi uỷ quyền trong appsscript.json. Để biết thông tin chi tiết về
việc xác thực bằng tài khoản dịch vụ, hãy xem
bài viết Xác thực dưới dạng ứng dụng Google Chat.
Lấy một phòng
Ví dụ sau đây minh hoạ cách lấy thông tin về một phòng Chat.
Thêm phạm vi uỷ quyền
chat.spaces.readonlyvào tệpappsscript.jsoncủa dự án Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.readonly" ]Thêm một hàm như hàm này vào mã của dự án Apps Script:
Tạo một phòng
Ví dụ sau đây minh hoạ cách tạo một phòng Chat.
Thêm phạm vi uỷ quyền
chat.spaces.createvào tệpappsscript.jsoncủa dự án Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.create" ]Thêm một hàm như hàm này vào mã của dự án Apps Script:
Liệt kê tư cách thành viên
Ví dụ sau đây minh hoạ cách liệt kê tất cả thành viên của một phòng Chat.
Thêm phạm vi uỷ quyền
chat.memberships.readonlyvào tệpappsscript.jsoncủa dự án Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.memberships.readonly" ]Thêm một hàm như hàm này vào mã của dự án Apps Script:
Khắc phục sự cố
Nếu bạn gặp phải Error 400: invalid_scope với thông báo lỗi Some requested scopes cannot be shown (Không thể hiển thị một số phạm vi được yêu cầu), điều đó có nghĩa là bạn chưa chỉ định phạm vi uỷ quyền nào trong tệp appsscript.json của dự án Apps Script. Trong hầu hết các trường hợp, Apps Script sẽ tự động xác định những phạm vi mà một tập lệnh cần, nhưng khi sử dụng dịch vụ Chat nâng cao, bạn phải thêm theo cách thủ công các phạm vi uỷ quyền mà tập lệnh sử dụng vào tệp kê khai của dự án Apps Script. Xem phần
Đặt phạm vi rõ ràng.
Để giải quyết lỗi này, hãy thêm các phạm vi uỷ quyền thích hợp vào tệp appsscript.json của dự án Apps Script trong mảng oauthScopes. Ví dụ: để gọi phương thức
spaces.messages.create
, hãy thêm như sau:
"oauthScopes": [
"https://www.googleapis.com/auth/chat.messages.create"
]
Giới hạn và lưu ý
Dịch vụ Chat nâng cao không hỗ trợ:
- Phương thức API Chat
media.download. - Các phương thức API Chat có trong Bản dùng trước cho nhà phát triển
Để tải tệp đính kèm tin nhắn xuống hoặc gọi phương thức bản dùng thử cho nhà phát triển, hãy sử dụng
UrlFetchApp thay thế.