Tạo không gian

Hướng dẫn này giải thích cách sử dụng phương thức create trên tài nguyên Space của API Google Chat để tạo một không gian được đặt tên.

Tài nguyên Space đại diện cho nơi mọi người và các ứng dụng trong Chat có thể gửi tin nhắn, chia sẻ tệp và cộng tác. Có một số loại không gian:

  • Tin nhắn trực tiếp (DM) là các cuộc trò chuyện giữa hai người dùng hoặc một người dùng và một ứng dụng trong Chat.
  • Cuộc trò chuyện nhóm là cuộc trò chuyện giữa ba người dùng trở lên và các ứng dụng Chat.
  • Không gian được đặt tên là những địa điểm cố định nơi mọi người gửi tin nhắn, chia sẻ tệp và cộng tác.

Không gian được đặt tên là nơi mọi người gửi tin nhắn, chia sẻ tệp và cộng tác. Các không gian được đặt tên có thể bao gồm các ứng dụng trong Chat. Không gian được đặt tên bao gồm những tính năng bổ sung mà các cuộc trò chuyện nhóm và tin nhắn trực tiếp chưa đặt tên không có, chẳng hạn như người quản lý không gian có thể áp dụng các chế độ cài đặt quản trị, nội dung mô tả cũng như thêm hoặc xoá người và ứng dụng. Sau khi tạo một không gian được đặt tên, thành viên duy nhất của không gian là người dùng đã xác thực. Không gian này không bao gồm những người hoặc ứng dụng khác, kể cả ứng dụng Chat tạo không gian đó. Để thêm người dùng, hãy tạo thành viên trong không gian bằng cách gọi phương thức create trên tài nguyên Member. Để tìm hiểu cách thực hiện, hãy xem bài viết Tạo gói thành viên.

Để tạo một không gian được đặt tên có nhiều thành viên – một cuộc trò chuyện nhóm chưa đặt tên giữa 3 người trở lên hoặc cuộc trò chuyện qua tin nhắn trực tiếp giữa 2 người hoặc một người và ứng dụng Chat gọi API Chat, hãy thiết lập một không gian.

Điều kiện tiên quyết

Python

  • Python 3.6 trở lên
  • Công cụ quản lý gói pip
  • Các thư viện ứng dụng mới nhất của Google dành cho Python. Để cài đặt hoặc cập nhật các thành phần này, hãy chạy lệnh sau trong giao diện dòng lệnh:

    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    
  • Một dự án trên Google Cloud đã bật và định cấu hình API Google Chat. Để biết các bước, hãy xem bài viết Tạo ứng dụng Google Chat.
  • Đã định cấu hình uỷ quyền cho ứng dụng Chat. Để tạo không gian, bạn cần thực hiện Xác thực người dùng với phạm vi uỷ quyền chat.spaces.create hoặc chat.spaces.

Node.js

  • Node.js và npm
  • Các thư viện ứng dụng mới nhất của Google dành cho Node.js. Để cài đặt các trình xử lý sự kiện đó, hãy chạy lệnh sau trong giao diện dòng lệnh:

    npm install @google-cloud/local-auth @googleapis/chat
    
  • Một dự án trên Google Cloud đã bật và định cấu hình API Google Chat. Để biết các bước, hãy xem bài viết Tạo ứng dụng Google Chat.
  • Đã định cấu hình uỷ quyền cho ứng dụng Chat. Để tạo không gian, bạn cần thực hiện Xác thực người dùng với phạm vi uỷ quyền chat.spaces.create hoặc chat.spaces.

Tạo không gian được đặt tên

Để tạo một không gian được đặt tên, hãy truyền nội dung sau vào yêu cầu:

  • Chỉ định phạm vi uỷ quyền chat.spaces.create hoặc chat.spaces.
  • Gọi phương thức create trên tài nguyên Space.
  • Đặt spaceType thành SPACE.
  • Đặt displayName thành tên của không gian mà người dùng nhìn thấy được. Trong ví dụ sau, displayName được đặt thành API-made.
  • Bạn có thể đặt các thuộc tính khác của không gian, chẳng hạn như spaceDetails (nội dung mô tả mà người dùng thấy được và bộ nguyên tắc của không gian).

Dưới đây là cách tạo một không gian được đặt tên:

Python

  1. Trong thư mục đang làm việc, hãy tạo một tệp có tên chat_space_create_named.py.
  2. Đưa mã sau vào chat_space_create_named.py:

    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient.discovery import build
    
    # Define your app's authorization scopes.
    # When modifying these scopes, delete the file token.json, if it exists.
    SCOPES = ["https://www.googleapis.com/auth/chat.spaces.create"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then creates a Chat space.
        '''
    
        # Authenticate with Google Workspace
        # and get user authorization.
        flow = InstalledAppFlow.from_client_secrets_file(
                          'client_secrets.json', SCOPES)
        creds = flow.run_local_server()
    
        # Build a service endpoint for Chat API.
        chat = build('chat', 'v1', credentials=creds)
    
        # Use the service endpoint to call Chat API.
        result = chat.spaces().create(
    
          # Details about the space to create.
          body = {
    
            # To create a named space, set spaceType to SPACE.
            'spaceType': 'SPACE',
    
            # The user-visible name of the space.
            'displayName': 'API-made'
          }
    
          ).execute()
    
        # Prints details about the created space.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. Trong thư mục đang làm việc, hãy tạo và chạy mẫu:

    python3 chat_space_create_named.py
    

Node.js

  1. Trong thư mục đang làm việc, hãy tạo một tệp có tên create-space.js.
  2. Đưa mã sau vào create-space.js:

    const chat = require('@googleapis/chat');
    const {authenticate} = require('@google-cloud/local-auth');
    
    /**
    * Creates a new chat space.
    * @return {!Promise<!Object>}
    */
    async function createSpace() {
      const scopes = [
        'https://www.googleapis.com/auth/chat.spaces.create',
      ];
    
      const authClient =
          await authenticate({scopes, keyfilePath: 'client_secrets.json'});
    
      const chatClient = await chat.chat({version: 'v1', auth: authClient});
    
      return await chatClient.spaces.create(
          {requestBody: {spaceType: 'SPACE', displayName: 'API-made'}});
    }
    
    createSpace().then(console.log);
    
  3. Trong thư mục đang làm việc, hãy chạy mẫu:

    node create-space.js
    

Một không gian được đặt tên đã được tạo. Để chuyển đến không gian, hãy sử dụng mã nhận dạng tài nguyên của không gian để tạo URL của không gian. Bạn có thể tìm thấy mã tài nguyên ở không gian name trong nội dung phản hồi của Google Chat. Ví dụ: nếu name của không gian là spaces/1234567, bạn có thể chuyển đến không gian bằng URL sau: https://mail.google.com/chat/u/0/#chat/space/1234567.